SQL

CREATE TABLE conversation_state  (
  thread_id TEXT PRIMARY KEY,
  last_turn_id TEXT,
  last_source_event_id TEXT,
  rolling_summary TEXT,
  open_loops TEXT,
  intents TEXT,
  state_blob TEXT,
  salience REAL DEFAULT 0.0,
  updated_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now')),
  FOREIGN KEY (last_turn_id) REFERENCES conversation_turns(id) ON DELETE SET NULL DEFERRABLE INITIALLY DEFERRED,
  FOREIGN KEY (last_source_event_id) REFERENCES events(id) ON DELETE SET NULL DEFERRABLE INITIALLY DEFERRED
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
thread_id TEXT Rename | Drop
last_turn_id TEXT Rename | Drop
last_source_event_id TEXT Rename | Drop
rolling_summary TEXT Rename | Drop
open_loops TEXT Rename | Drop
intents TEXT Rename | Drop
state_blob TEXT Rename | Drop
salience REAL Rename | Drop
updated_at TEXT Rename | Drop

Foreign Keys

Column Destination
last_source_event_id events.id
last_turn_id conversation_turns.id

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_conversation_state_updated updated_at SQL
CREATE INDEX idx_conversation_state_updated
ON conversation_state (updated_at)
Drop
sqlite_autoindex_conversation_state_1 thread_id SQL
-- no sql found --
Drop