xcodeai 2.1.0

Autonomous AI coding agent — zero human intervention, sbox sandboxed, OpenAI-compatible
Documentation
7�-����i����>q���(����i����;�-$�YSQLite format 3@  *.��
����Wj�;
�
	��	l���7�R����r11�table_fts5_probe_config_fts5_probe_configCREATE TABLE '_fts5_probe_config'(k PRIMARY KEY, v) WITHOUT ROWIDv33�table_fts5_probe_docsize_fts5_probe_docsizeCREATE TABLE '_fts5_probe_docsize'(id INTEGER PRIMARY KEY, sz BLOB)q33�	table_fts5_probe_content_fts5_probe_contentCREATE TABLE '_fts5_probe_content'(id INTEGER PRIMARY KEY, c0)�++�?table_fts5_probe_idx_fts5_probe_idxCREATE TABLE '_fts5_probe_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWIDp--�table_fts5_probe_data_fts5_probe_dataCREATE TABLE '_fts5_probe_data'(id INTEGER PRIMARY KEY, block BLOB)V##wtable_fts5_probe_fts5_probeCREATE VIRTUAL TABLE _fts5_probe USING fts5(test_col)xC%�indexidx_observations_created_atobservationsCREATE INDEX idx_observations_created_at ON observations(created_at)i9%�indexidx_observations_topicobservationsCREATE INDEX idx_observations_topic ON observations(topic)e7%}indexidx_observations_typeobservations
CREATE INDEX idx_observations_type ON observations(type)xC%�indexidx_observations_session_idobservationsCREATE INDEX idx_observations_session_id ON observations(session_id)�;%�3triggerobservations_fts_updateobservationsCREATE TRIGGER observations_fts_update
AFTER UPDATE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�
;%�Itriggerobservations_fts_deleteobservationsCREATE TRIGGER observations_fts_delete
AFTER DELETE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
END�s;%�triggerobservations_fts_insertobservationsCREATE TRIGGER observations_fts_insert
AFTER INSERT ON observations BEGIN
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�B
�_tabletopicstopics
CREATE TABLE topics (
  topic             TEXT PRIMARY KEY,
  observation_count INTEGER NOT NULL DEFAULT 0,
  last_activity     TEXT NOT NULL,
  summary           TEXT
)+?indexsqlite_autoindex_topics_1topics�	;;�tableobservations_fts_configobservations_fts_config	CREATE TABLE 'observations_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID�==�tableobservations_fts_docsizeobservations_fts_docsizeCREATE TABLE 'observations_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB)�55�Itableobservations_fts_idxobservations_fts_idxCREATE TABLE 'observations_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID77�tableobservations_fts_dataobservations_fts_dataCREATE TABLE 'observations_fts_data'(id INTEGER PRIMARY KEY, block BLOB)�+--�tableobservations_ftsobservations_ftsCREATE VIRTUAL TABLE observations_fts USING fts5(
  title,
  content,
  topic,
  content='observations',
  content_rowid='id'
)P++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)�%%�stableobservationsobservationsCREATE TABLE observations (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  session_id  TEXT NOT NULL,
  type        TEXT NOT NULL CHECK(type IN ('decision', 'discovery', 'error_fix', 'preference', 'architecture', 'context')),
  topic       TEXT NOT NULL,
  title       TEXT NOT NULL,
  content     TEXT NOT NULL,
  content_hash TEXT NOT NULL UNIQUE,
  importance  INTEGER NOT NULL DEFAULT 5 CHECK(importance BETWEEN 1 AND 10),
  tags        TEXT NOT NULL DEFAULT '[]',
  created_at  TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
  accessed_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now'))
)7K%indexsqlite_autoindex_observations_1observationsf))�tableschema_versionschema_versionCREATE TABLE schema_version (
  version INTEGER PRIMARY KEY
)���i�����h�̜��
��

version���i����F�����
���

���i�����%��CJ�
���i����R�H��)
���i����N�����|
���i����O]��ZX�uSQLite format 3@  +.��
�R��Wj�;
�
	��	l���7�R�����r11�table_fts5_probe_config_fts5_probe_configCREATE TABLE '_fts5_probe_config'(k PRIMARY KEY, v) WITHOUT ROWIDv33�table_fts5_probe_docsize_fts5_probe_docsizeCREATE TABLE '_fts5_probe_docsize'(id INTEGER PRIMARY KEY, sz BLOB)q33�	table_fts5_probe_content_fts5_probe_contentCREATE TABLE '_fts5_probe_content'(id INTEGER PRIMARY KEY, c0)�Q++�?table_fts5_probe_idx_fts5_probe_idxCREATE TABLE '_fts5_probe_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID��--�table_fts5_probe_data_fts5_probe_dataCREATE TABLE '_fts5_probe_data'(id INTEGER PRIMARY KEY, block BLOB)�X##wtable_fts5_probe_fts5_probeCREATE VIRTUAL TABLE _fts5_probe USING fts5(test_col)xC%�indexidx_observations_created_atobservationsCREATE INDEX idx_observations_created_at ON observations(created_at)i9%�indexidx_observations_topicobservationsCREATE INDEX idx_observations_topic ON observations(topic)e7%}indexidx_observations_typeobservations
CREATE INDEX idx_observations_type ON observations(type)xC%�indexidx_observations_session_idobservationsCREATE INDEX idx_observations_session_id ON observations(session_id)�;%�3triggerobservations_fts_updateobservationsCREATE TRIGGER observations_fts_update
AFTER UPDATE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�
;%�Itriggerobservations_fts_deleteobservationsCREATE TRIGGER observations_fts_delete
AFTER DELETE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
END�s;%�triggerobservations_fts_insertobservationsCREATE TRIGGER observations_fts_insert
AFTER INSERT ON observations BEGIN
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�B
�_tabletopicstopics
CREATE TABLE topics (
  topic             TEXT PRIMARY KEY,
  observation_count INTEGER NOT NULL DEFAULT 0,
  last_activity     TEXT NOT NULL,
  summary           TEXT
)+?indexsqlite_autoindex_topics_1topics�	;;�tableobservations_fts_configobservations_fts_config	CREATE TABLE 'observations_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID�==�tableobservations_fts_docsizeobservations_fts_docsizeCREATE TABLE 'observations_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB)�55�Itableobservations_fts_idxobservations_fts_idxCREATE TABLE 'observations_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID77�tableobservations_fts_dataobservations_fts_dataCREATE TABLE 'observations_fts_data'(id INTEGER PRIMARY KEY, block BLOB)�+--�tableobservations_ftsobservations_ftsCREATE VIRTUAL TABLE observations_fts USING fts5(
  title,
  content,
  topic,
  content='observations',
  content_rowid='id'
)P++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)�%%�stableobservationsobservationsCREATE TABLE observations (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  session_id  TEXT NOT NULL,
  type        TEXT NOT NULL CHECK(type IN ('decision', 'discovery', 'error_fix', 'preference', 'architecture', 'context')),
  topic       TEXT NOT NULL,
  title       TEXT NOT NULL,
  content     TEXT NOT NULL,
  content_hash TEXT NOT NULL UNIQUE,
  importance  INTEGER NOT NULL DEFAULT 5 CHECK(importance BETWEEN 1 AND 10),
  tags        TEXT NOT NULL DEFAULT '[]',
  created_at  TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
  accessed_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now'))
)7K%indexsqlite_autoindex_observations_1observationsf))�tableschema_versionschema_versionCREATE TABLE schema_version (
  version INTEGER PRIMARY KEY
)���i�����#�=��V�
�

version���i����жwG�T

���i�����+��E�
���i�����h�K�\�)
���i���޿%��k	�
���i����0��.>	�SQLite format 3@  1.��
����Wj�;
�
	��	l���7�R����r11�table_fts5_probe_config_fts5_probe_configCREATE TABLE '_fts5_probe_config'(k PRIMARY KEY, v) WITHOUT ROWIDv33�table_fts5_probe_docsize_fts5_probe_docsizeCREATE TABLE '_fts5_probe_docsize'(id INTEGER PRIMARY KEY, sz BLOB)q33�	table_fts5_probe_content_fts5_probe_contentCREATE TABLE '_fts5_probe_content'(id INTEGER PRIMARY KEY, c0)�++�?table_fts5_probe_idx_fts5_probe_idxCREATE TABLE '_fts5_probe_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWIDp--�table_fts5_probe_data_fts5_probe_dataCREATE TABLE '_fts5_probe_data'(id INTEGER PRIMARY KEY, block BLOB)V##wtable_fts5_probe_fts5_probeCREATE VIRTUAL TABLE _fts5_probe USING fts5(test_col)xC%�indexidx_observations_created_atobservationsCREATE INDEX idx_observations_created_at ON observations(created_at)i9%�indexidx_observations_topicobservationsCREATE INDEX idx_observations_topic ON observations(topic)e7%}indexidx_observations_typeobservations
CREATE INDEX idx_observations_type ON observations(type)xC%�indexidx_observations_session_idobservationsCREATE INDEX idx_observations_session_id ON observations(session_id)�;%�3triggerobservations_fts_updateobservationsCREATE TRIGGER observations_fts_update
AFTER UPDATE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�
;%�Itriggerobservations_fts_deleteobservationsCREATE TRIGGER observations_fts_delete
AFTER DELETE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
END�s;%�triggerobservations_fts_insertobservationsCREATE TRIGGER observations_fts_insert
AFTER INSERT ON observations BEGIN
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�B
�_tabletopicstopics
CREATE TABLE topics (
  topic             TEXT PRIMARY KEY,
  observation_count INTEGER NOT NULL DEFAULT 0,
  last_activity     TEXT NOT NULL,
  summary           TEXT
)+?indexsqlite_autoindex_topics_1topics�	;;�tableobservations_fts_configobservations_fts_config	CREATE TABLE 'observations_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID�==�tableobservations_fts_docsizeobservations_fts_docsizeCREATE TABLE 'observations_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB)�55�Itableobservations_fts_idxobservations_fts_idxCREATE TABLE 'observations_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID77�tableobservations_fts_dataobservations_fts_dataCREATE TABLE 'observations_fts_data'(id INTEGER PRIMARY KEY, block BLOB)�+--�tableobservations_ftsobservations_ftsCREATE VIRTUAL TABLE observations_fts USING fts5(
  title,
  content,
  topic,
  content='observations',
  content_rowid='id'
)P++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)�%%�stableobservationsobservationsCREATE TABLE observations (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  session_id  TEXT NOT NULL,
  type        TEXT NOT NULL CHECK(type IN ('decision', 'discovery', 'error_fix', 'preference', 'architecture', 'context')),
  topic       TEXT NOT NULL,
  title       TEXT NOT NULL,
  content     TEXT NOT NULL,
  content_hash TEXT NOT NULL UNIQUE,
  importance  INTEGER NOT NULL DEFAULT 5 CHECK(importance BETWEEN 1 AND 10),
  tags        TEXT NOT NULL DEFAULT '[]',
  created_at  TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
  accessed_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now'))
)7K%indexsqlite_autoindex_observations_1observationsf))�tableschema_versionschema_versionCREATE TABLE schema_version (
  version INTEGER PRIMARY KEY
)���i����Q�i�n��
���

���i����������
��

version���i�����v5b>LOT
���i�����XtRRV
���i����3x�&s��
���i�����<O��ϨSQLite format 3@  2.��
�R��Wj�;
�
	��	l���7�R�����r11�table_fts5_probe_config_fts5_probe_configCREATE TABLE '_fts5_probe_config'(k PRIMARY KEY, v) WITHOUT ROWIDv33�table_fts5_probe_docsize_fts5_probe_docsizeCREATE TABLE '_fts5_probe_docsize'(id INTEGER PRIMARY KEY, sz BLOB)q33�	table_fts5_probe_content_fts5_probe_contentCREATE TABLE '_fts5_probe_content'(id INTEGER PRIMARY KEY, c0)�Q++�?table_fts5_probe_idx_fts5_probe_idxCREATE TABLE '_fts5_probe_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID��--�table_fts5_probe_data_fts5_probe_dataCREATE TABLE '_fts5_probe_data'(id INTEGER PRIMARY KEY, block BLOB)�X##wtable_fts5_probe_fts5_probeCREATE VIRTUAL TABLE _fts5_probe USING fts5(test_col)xC%�indexidx_observations_created_atobservationsCREATE INDEX idx_observations_created_at ON observations(created_at)i9%�indexidx_observations_topicobservationsCREATE INDEX idx_observations_topic ON observations(topic)e7%}indexidx_observations_typeobservations
CREATE INDEX idx_observations_type ON observations(type)xC%�indexidx_observations_session_idobservationsCREATE INDEX idx_observations_session_id ON observations(session_id)�;%�3triggerobservations_fts_updateobservationsCREATE TRIGGER observations_fts_update
AFTER UPDATE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�
;%�Itriggerobservations_fts_deleteobservationsCREATE TRIGGER observations_fts_delete
AFTER DELETE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
END�s;%�triggerobservations_fts_insertobservationsCREATE TRIGGER observations_fts_insert
AFTER INSERT ON observations BEGIN
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�B
�_tabletopicstopics
CREATE TABLE topics (
  topic             TEXT PRIMARY KEY,
  observation_count INTEGER NOT NULL DEFAULT 0,
  last_activity     TEXT NOT NULL,
  summary           TEXT
)+?indexsqlite_autoindex_topics_1topics�	;;�tableobservations_fts_configobservations_fts_config	CREATE TABLE 'observations_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID�==�tableobservations_fts_docsizeobservations_fts_docsizeCREATE TABLE 'observations_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB)�55�Itableobservations_fts_idxobservations_fts_idxCREATE TABLE 'observations_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID77�tableobservations_fts_dataobservations_fts_dataCREATE TABLE 'observations_fts_data'(id INTEGER PRIMARY KEY, block BLOB)�+--�tableobservations_ftsobservations_ftsCREATE VIRTUAL TABLE observations_fts USING fts5(
  title,
  content,
  topic,
  content='observations',
  content_rowid='id'
)P++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)�%%�stableobservationsobservationsCREATE TABLE observations (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  session_id  TEXT NOT NULL,
  type        TEXT NOT NULL CHECK(type IN ('decision', 'discovery', 'error_fix', 'preference', 'architecture', 'context')),
  topic       TEXT NOT NULL,
  title       TEXT NOT NULL,
  content     TEXT NOT NULL,
  content_hash TEXT NOT NULL UNIQUE,
  importance  INTEGER NOT NULL DEFAULT 5 CHECK(importance BETWEEN 1 AND 10),
  tags        TEXT NOT NULL DEFAULT '[]',
  created_at  TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
  accessed_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now'))
)7K%indexsqlite_autoindex_observations_1observationsf))�tableschema_versionschema_versionCREATE TABLE schema_version (
  version INTEGER PRIMARY KEY
)���i���ޣ�+``Vf�

���i�����$!���	K
�

version���i���ޛ��t�R��
���i����a�?���8
���i���ތ�e���'
���i���ީYF�#L�SQLite format 3@  8.��
����Wj�;
�
	��	l���7�R����r11�table_fts5_probe_config_fts5_probe_configCREATE TABLE '_fts5_probe_config'(k PRIMARY KEY, v) WITHOUT ROWIDv33�table_fts5_probe_docsize_fts5_probe_docsizeCREATE TABLE '_fts5_probe_docsize'(id INTEGER PRIMARY KEY, sz BLOB)q33�	table_fts5_probe_content_fts5_probe_contentCREATE TABLE '_fts5_probe_content'(id INTEGER PRIMARY KEY, c0)�++�?table_fts5_probe_idx_fts5_probe_idxCREATE TABLE '_fts5_probe_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWIDp--�table_fts5_probe_data_fts5_probe_dataCREATE TABLE '_fts5_probe_data'(id INTEGER PRIMARY KEY, block BLOB)V##wtable_fts5_probe_fts5_probeCREATE VIRTUAL TABLE _fts5_probe USING fts5(test_col)xC%�indexidx_observations_created_atobservationsCREATE INDEX idx_observations_created_at ON observations(created_at)i9%�indexidx_observations_topicobservationsCREATE INDEX idx_observations_topic ON observations(topic)e7%}indexidx_observations_typeobservations
CREATE INDEX idx_observations_type ON observations(type)xC%�indexidx_observations_session_idobservationsCREATE INDEX idx_observations_session_id ON observations(session_id)�;%�3triggerobservations_fts_updateobservationsCREATE TRIGGER observations_fts_update
AFTER UPDATE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�
;%�Itriggerobservations_fts_deleteobservationsCREATE TRIGGER observations_fts_delete
AFTER DELETE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
END�s;%�triggerobservations_fts_insertobservationsCREATE TRIGGER observations_fts_insert
AFTER INSERT ON observations BEGIN
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�B
�_tabletopicstopics
CREATE TABLE topics (
  topic             TEXT PRIMARY KEY,
  observation_count INTEGER NOT NULL DEFAULT 0,
  last_activity     TEXT NOT NULL,
  summary           TEXT
)+?indexsqlite_autoindex_topics_1topics�	;;�tableobservations_fts_configobservations_fts_config	CREATE TABLE 'observations_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID�==�tableobservations_fts_docsizeobservations_fts_docsizeCREATE TABLE 'observations_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB)�55�Itableobservations_fts_idxobservations_fts_idxCREATE TABLE 'observations_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID77�tableobservations_fts_dataobservations_fts_dataCREATE TABLE 'observations_fts_data'(id INTEGER PRIMARY KEY, block BLOB)�+--�tableobservations_ftsobservations_ftsCREATE VIRTUAL TABLE observations_fts USING fts5(
  title,
  content,
  topic,
  content='observations',
  content_rowid='id'
)P++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)�%%�stableobservationsobservationsCREATE TABLE observations (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  session_id  TEXT NOT NULL,
  type        TEXT NOT NULL CHECK(type IN ('decision', 'discovery', 'error_fix', 'preference', 'architecture', 'context')),
  topic       TEXT NOT NULL,
  title       TEXT NOT NULL,
  content     TEXT NOT NULL,
  content_hash TEXT NOT NULL UNIQUE,
  importance  INTEGER NOT NULL DEFAULT 5 CHECK(importance BETWEEN 1 AND 10),
  tags        TEXT NOT NULL DEFAULT '[]',
  created_at  TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
  accessed_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now'))
)7K%indexsqlite_autoindex_observations_1observationsf))�tableschema_versionschema_versionCREATE TABLE schema_version (
  version INTEGER PRIMARY KEY
)���i����\V�Q��C
��

version���i�����Ub;�5�
���

���i�����eG�%Ku^
���i����w����t�
���i����'��H�
���i����,��Q�T�SQLite format 3@  9.��
�R��Wj�;
�
	��	l���7�R�����r11�table_fts5_probe_config_fts5_probe_configCREATE TABLE '_fts5_probe_config'(k PRIMARY KEY, v) WITHOUT ROWIDv33�table_fts5_probe_docsize_fts5_probe_docsizeCREATE TABLE '_fts5_probe_docsize'(id INTEGER PRIMARY KEY, sz BLOB)q33�	table_fts5_probe_content_fts5_probe_contentCREATE TABLE '_fts5_probe_content'(id INTEGER PRIMARY KEY, c0)�Q++�?table_fts5_probe_idx_fts5_probe_idxCREATE TABLE '_fts5_probe_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID��--�table_fts5_probe_data_fts5_probe_dataCREATE TABLE '_fts5_probe_data'(id INTEGER PRIMARY KEY, block BLOB)�X##wtable_fts5_probe_fts5_probeCREATE VIRTUAL TABLE _fts5_probe USING fts5(test_col)xC%�indexidx_observations_created_atobservationsCREATE INDEX idx_observations_created_at ON observations(created_at)i9%�indexidx_observations_topicobservationsCREATE INDEX idx_observations_topic ON observations(topic)e7%}indexidx_observations_typeobservations
CREATE INDEX idx_observations_type ON observations(type)xC%�indexidx_observations_session_idobservationsCREATE INDEX idx_observations_session_id ON observations(session_id)�;%�3triggerobservations_fts_updateobservationsCREATE TRIGGER observations_fts_update
AFTER UPDATE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�
;%�Itriggerobservations_fts_deleteobservationsCREATE TRIGGER observations_fts_delete
AFTER DELETE ON observations BEGIN
  INSERT INTO observations_fts(observations_fts, rowid, title, content, topic)
    VALUES ('delete', old.id, old.title, old.content, old.topic);
END�s;%�triggerobservations_fts_insertobservationsCREATE TRIGGER observations_fts_insert
AFTER INSERT ON observations BEGIN
  INSERT INTO observations_fts(rowid, title, content, topic)
    VALUES (new.id, new.title, new.content, new.topic);
END�B
�_tabletopicstopics
CREATE TABLE topics (
  topic             TEXT PRIMARY KEY,
  observation_count INTEGER NOT NULL DEFAULT 0,
  last_activity     TEXT NOT NULL,
  summary           TEXT
)+?indexsqlite_autoindex_topics_1topics�	;;�tableobservations_fts_configobservations_fts_config	CREATE TABLE 'observations_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID�==�tableobservations_fts_docsizeobservations_fts_docsizeCREATE TABLE 'observations_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB)�55�Itableobservations_fts_idxobservations_fts_idxCREATE TABLE 'observations_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID77�tableobservations_fts_dataobservations_fts_dataCREATE TABLE 'observations_fts_data'(id INTEGER PRIMARY KEY, block BLOB)�+--�tableobservations_ftsobservations_ftsCREATE VIRTUAL TABLE observations_fts USING fts5(
  title,
  content,
  topic,
  content='observations',
  content_rowid='id'
)P++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)�%%�stableobservationsobservationsCREATE TABLE observations (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  session_id  TEXT NOT NULL,
  type        TEXT NOT NULL CHECK(type IN ('decision', 'discovery', 'error_fix', 'preference', 'architecture', 'context')),
  topic       TEXT NOT NULL,
  title       TEXT NOT NULL,
  content     TEXT NOT NULL,
  content_hash TEXT NOT NULL UNIQUE,
  importance  INTEGER NOT NULL DEFAULT 5 CHECK(importance BETWEEN 1 AND 10),
  tags        TEXT NOT NULL DEFAULT '[]',
  created_at  TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
  accessed_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ', 'now'))
)7K%indexsqlite_autoindex_observations_1observationsf))�tableschema_versionschema_versionCREATE TABLE schema_version (
  version INTEGER PRIMARY KEY
)���i������u٩U
�

version���i����k����v0

���i����'Y�MHj�
���i����sV�~��
���i����d�I%��p