Skip to main content

INITIAL_MIGRATION_SQL

Constant INITIAL_MIGRATION_SQL 

Source
pub const INITIAL_MIGRATION_SQL: &str = "PRAGMA journal_mode = WAL;\r\nPRAGMA foreign_keys = ON;\r\n\r\nCREATE TABLE events (\r\n    id TEXT PRIMARY KEY,\r\n    schema_version INTEGER NOT NULL,\r\n    observed_at TEXT NOT NULL,\r\n    recorded_at TEXT NOT NULL,\r\n    source_json TEXT NOT NULL CHECK (json_valid(source_json)),\r\n    event_type TEXT NOT NULL,\r\n    trace_id TEXT NULL,\r\n    session_id TEXT NULL,\r\n    domain_tags_json TEXT NOT NULL CHECK (json_valid(domain_tags_json)),\r\n    payload_json TEXT NOT NULL CHECK (json_valid(payload_json)),\r\n    payload_hash TEXT NOT NULL,\r\n    prev_event_hash TEXT NULL,\r\n    event_hash TEXT NOT NULL UNIQUE\r\n);\r\n\r\nCREATE TABLE traces (\r\n    id TEXT PRIMARY KEY,\r\n    schema_version INTEGER NOT NULL,\r\n    opened_at TEXT NOT NULL,\r\n    closed_at TEXT NULL,\r\n    trace_type TEXT NOT NULL,\r\n    status TEXT NOT NULL\r\n);\r\n\r\nCREATE TABLE trace_events (\r\n    trace_id TEXT NOT NULL REFERENCES traces(id),\r\n    event_id TEXT NOT NULL REFERENCES events(id),\r\n    ordinal INTEGER NOT NULL,\r\n    PRIMARY KEY (trace_id, event_id),\r\n    UNIQUE (trace_id, ordinal)\r\n);\r\n\r\nCREATE TABLE episodes (\r\n    id TEXT PRIMARY KEY,\r\n    trace_id TEXT NOT NULL REFERENCES traces(id),\r\n    source_events_json TEXT NOT NULL CHECK (json_valid(source_events_json)),\r\n    summary TEXT NOT NULL,\r\n    domains_json TEXT NOT NULL CHECK (json_valid(domains_json)),\r\n    entities_json TEXT NOT NULL CHECK (json_valid(entities_json)),\r\n    candidate_meaning TEXT NULL,\r\n    extracted_by_json TEXT NOT NULL CHECK (json_valid(extracted_by_json)),\r\n    confidence REAL NOT NULL CHECK (confidence >= 0 AND confidence <= 1),\r\n    status TEXT NOT NULL\r\n);\r\n\r\nCREATE TABLE memories (\r\n    id TEXT PRIMARY KEY,\r\n    memory_type TEXT NOT NULL,\r\n    status TEXT NOT NULL,\r\n    claim TEXT NOT NULL,\r\n    source_episodes_json TEXT NOT NULL CHECK (json_valid(source_episodes_json)),\r\n    source_events_json TEXT NOT NULL CHECK (json_valid(source_events_json)),\r\n    domains_json TEXT NOT NULL CHECK (json_valid(domains_json)),\r\n    salience_json TEXT NOT NULL CHECK (json_valid(salience_json)),\r\n    confidence REAL NOT NULL CHECK (confidence >= 0 AND confidence <= 1),\r\n    authority TEXT NOT NULL,\r\n    applies_when_json TEXT NOT NULL CHECK (json_valid(applies_when_json)),\r\n    does_not_apply_when_json TEXT NOT NULL CHECK (json_valid(does_not_apply_when_json)),\r\n    created_at TEXT NOT NULL,\r\n    updated_at TEXT NOT NULL\r\n);\r\n\r\nCREATE TABLE principles (\r\n    id TEXT PRIMARY KEY,\r\n    statement TEXT NOT NULL,\r\n    status TEXT NOT NULL,\r\n    supporting_memories_json TEXT NOT NULL CHECK (json_valid(supporting_memories_json)),\r\n    contradicting_memories_json TEXT NOT NULL CHECK (json_valid(contradicting_memories_json)),\r\n    domains_observed_json TEXT NOT NULL CHECK (json_valid(domains_observed_json)),\r\n    applies_when_json TEXT NOT NULL CHECK (json_valid(applies_when_json)),\r\n    does_not_apply_when_json TEXT NOT NULL CHECK (json_valid(does_not_apply_when_json)),\r\n    confidence REAL NOT NULL CHECK (confidence >= 0 AND confidence <= 1),\r\n    validation REAL NOT NULL CHECK (validation >= 0 AND validation <= 1),\r\n    brightness REAL NOT NULL CHECK (brightness >= 0 AND brightness <= 1),\r\n    created_by_json TEXT NOT NULL CHECK (json_valid(created_by_json)),\r\n    created_at TEXT NOT NULL,\r\n    updated_at TEXT NOT NULL\r\n);\r\n\r\nCREATE TABLE doctrine (\r\n    id TEXT PRIMARY KEY,\r\n    source_principle TEXT NOT NULL REFERENCES principles(id),\r\n    rule TEXT NOT NULL,\r\n    force TEXT NOT NULL,\r\n    promotion_reason TEXT NOT NULL,\r\n    promoted_by_json TEXT NOT NULL CHECK (json_valid(promoted_by_json)),\r\n    created_at TEXT NOT NULL\r\n);\r\n\r\nCREATE TABLE contradictions (\r\n    id TEXT PRIMARY KEY,\r\n    left_ref TEXT NOT NULL,\r\n    right_ref TEXT NOT NULL,\r\n    contradiction_type TEXT NOT NULL,\r\n    status TEXT NOT NULL,\r\n    interpretation TEXT NULL,\r\n    created_at TEXT NOT NULL,\r\n    updated_at TEXT NOT NULL\r\n);\r\n\r\nCREATE TABLE context_packs (\r\n    id TEXT PRIMARY KEY,\r\n    task TEXT NOT NULL,\r\n    pack_json TEXT NOT NULL CHECK (json_valid(pack_json)),\r\n    selection_audit TEXT NOT NULL,\r\n    created_at TEXT NOT NULL\r\n);\r\n\r\nCREATE TABLE audit_records (\r\n    id TEXT PRIMARY KEY,\r\n    operation TEXT NOT NULL,\r\n    target_ref TEXT NOT NULL,\r\n    before_hash TEXT NULL,\r\n    after_hash TEXT NOT NULL,\r\n    reason TEXT NOT NULL,\r\n    actor_json TEXT NOT NULL CHECK (json_valid(actor_json)),\r\n    source_refs_json TEXT NOT NULL CHECK (json_valid(source_refs_json)),\r\n    created_at TEXT NOT NULL\r\n);\r\n";
Expand description

Initial SQLite schema for the MVP store (LANES T-2.A.1).