/** * Every `work_items` shape this release can still FIND on disk, frozen: the v1 * public release, the pre-PLA-48 v2 with shadowed approval columns, and the * unreleased prerelease shell. Startup recognizes a database by matching its * stored DDL against these byte-for-byte, so none of them may ever be edited to * follow the live schema — an edit here silently stops recognizing the databases * it describes. * * The live v2 shape stays in `migrate.ts` with the migration that maintains it. */ /** The canonical-id CHECK, shared by every shape above and by the live one. * Kept beside the frozen shapes because they are its oldest consumers; the SQL * spelling of the rule `id.ts` enforces in TypeScript. */ export declare const CANONICAL_ID_SQL = "\n id GLOB '[A-Z][A-Z][A-Z]-[1-9]*'\n AND substr(id, 5) NOT GLOB '*[^0-9]*'\n AND CAST(substr(id, 5) AS INTEGER) BETWEEN 1 AND 9007199254740991\n AND printf('%lld', CAST(substr(id, 5) AS INTEGER)) = substr(id, 5)\n"; /** v1 (first public Todo release) work_items shape, byte-identical to what it * installed — the v1→v2 migration recognizes existing databases against it. */ export declare const V1_WORK_ITEMS_TABLE_DDL = "\nCREATE TABLE IF NOT EXISTS work_items (\n id TEXT PRIMARY KEY CHECK (\n id GLOB '[A-Z][A-Z][A-Z]-[1-9]*'\n AND substr(id, 5) NOT GLOB '*[^0-9]*'\n AND CAST(substr(id, 5) AS INTEGER) BETWEEN 1 AND 9007199254740991\n AND printf('%lld', CAST(substr(id, 5) AS INTEGER)) = substr(id, 5)\n),\n title TEXT NOT NULL,\n body TEXT,\n status TEXT NOT NULL DEFAULT 'backlog' CHECK (status IN ('backlog','assigned','executing','in_review','done','blocked','escalated','cancelled')),\n department TEXT,\n assignee TEXT,\n priority INTEGER NOT NULL DEFAULT 2 CHECK (priority BETWEEN 0 AND 3),\n rank REAL,\n version INTEGER NOT NULL DEFAULT 1 CHECK (version >= 1),\n source TEXT NOT NULL DEFAULT 'human' CHECK (source IN ('human','delegation','cron','workflow','session','connector','goal')),\n source_ref TEXT,\n acceptance TEXT,\n verify_policy TEXT,\n rounds INTEGER NOT NULL DEFAULT 0,\n budget_usd REAL,\n approval_state TEXT CHECK (approval_state IN ('pending','approved','rejected')),\n approval_request TEXT,\n approval_ref TEXT,\n approval_target TEXT,\n approval_target_kind TEXT CHECK (approval_target_kind IN ('employee','virtual','none')),\n approval_escalated_at TEXT,\n approval_decided_by TEXT,\n approval_decided_at TEXT,\n created_at TEXT NOT NULL,\n updated_at TEXT NOT NULL,\n closed_at TEXT\n)"; export declare const V1_WORK_ITEM_ID_ALLOCATOR_TABLE_DDL = "\nCREATE TABLE IF NOT EXISTS work_item_id_allocator (\n singleton INTEGER PRIMARY KEY CHECK (singleton = 1),\n prefix TEXT CHECK (prefix IS NULL OR (length(prefix) = 3 AND prefix GLOB '[A-Z][A-Z][A-Z]')),\n high_water INTEGER NOT NULL CHECK (high_water BETWEEN 0 AND 9007199254740991)\n)\n"; export declare const V1_WORK_ITEM_ID_BURNS_TABLE_DDL = "\nCREATE TABLE IF NOT EXISTS work_item_id_burns (\n ordinal INTEGER PRIMARY KEY CHECK (ordinal BETWEEN 1 AND 9007199254740991),\n claim_digest TEXT NOT NULL UNIQUE CHECK (length(claim_digest) = 64 AND claim_digest NOT GLOB '*[^0-9a-f]*'),\n burned_at TEXT NOT NULL\n)\n"; export declare const V1_WORK_ITEM_ID_ISSUANCES_TABLE_DDL = "\nCREATE TABLE IF NOT EXISTS work_item_id_issuances (\n ordinal INTEGER PRIMARY KEY CHECK (ordinal BETWEEN 1 AND 9007199254740991),\n issued_at TEXT NOT NULL\n)\n"; export declare const V1_WORK_ITEM_IDENTITY_TABLES_DDL = "\n\nCREATE TABLE IF NOT EXISTS work_item_id_allocator (\n singleton INTEGER PRIMARY KEY CHECK (singleton = 1),\n prefix TEXT CHECK (prefix IS NULL OR (length(prefix) = 3 AND prefix GLOB '[A-Z][A-Z][A-Z]')),\n high_water INTEGER NOT NULL CHECK (high_water BETWEEN 0 AND 9007199254740991)\n)\n;\nINSERT INTO work_item_id_allocator (singleton, prefix, high_water)\n SELECT 1, NULL, 0 WHERE NOT EXISTS (SELECT 1 FROM work_item_id_allocator);\n\nCREATE TABLE IF NOT EXISTS work_item_id_burns (\n ordinal INTEGER PRIMARY KEY CHECK (ordinal BETWEEN 1 AND 9007199254740991),\n claim_digest TEXT NOT NULL UNIQUE CHECK (length(claim_digest) = 64 AND claim_digest NOT GLOB '*[^0-9a-f]*'),\n burned_at TEXT NOT NULL\n)\n;\n\nCREATE TABLE IF NOT EXISTS work_item_id_issuances (\n ordinal INTEGER PRIMARY KEY CHECK (ordinal BETWEEN 1 AND 9007199254740991),\n issued_at TEXT NOT NULL\n)\n;\n"; /** Pre-PLA-48 v2 work_items shape, when approvals were also shadowed in eight * columns here. Frozen recognizer: a match is healed at boot. */ export declare const V2_APPROVAL_WORK_ITEMS_TABLE_DDL = "\nCREATE TABLE IF NOT EXISTS work_items (\n id TEXT PRIMARY KEY CHECK (\n id GLOB '[A-Z][A-Z][A-Z]-[1-9]*'\n AND substr(id, 5) NOT GLOB '*[^0-9]*'\n AND CAST(substr(id, 5) AS INTEGER) BETWEEN 1 AND 9007199254740991\n AND printf('%lld', CAST(substr(id, 5) AS INTEGER)) = substr(id, 5)\n),\n title TEXT NOT NULL,\n body TEXT,\n status TEXT NOT NULL DEFAULT 'backlog' CHECK (status IN ('backlog','assigned','executing','in_review','done','blocked','escalated','cancelled')),\n department TEXT,\n assignee TEXT,\n created_by TEXT NOT NULL,\n parent_id TEXT REFERENCES work_items(id),\n root_id TEXT NOT NULL,\n depth INTEGER NOT NULL DEFAULT 0 CHECK ((parent_id IS NULL AND depth = 0) OR (parent_id IS NOT NULL AND depth BETWEEN 1 AND 3)),\n due_at TEXT,\n priority INTEGER NOT NULL DEFAULT 2 CHECK (priority BETWEEN 0 AND 3),\n rank REAL,\n version INTEGER NOT NULL DEFAULT 1 CHECK (version >= 1),\n source TEXT NOT NULL DEFAULT 'human' CHECK (source IN ('human','delegation','cron','workflow','session','connector','goal')),\n source_ref TEXT,\n acceptance TEXT,\n verify_policy TEXT,\n rounds INTEGER NOT NULL DEFAULT 0,\n budget_usd REAL,\n approval_state TEXT CHECK (approval_state IN ('pending','approved','rejected')),\n approval_request TEXT,\n approval_ref TEXT,\n approval_target TEXT,\n approval_target_kind TEXT CHECK (approval_target_kind IN ('employee','virtual','none')),\n approval_escalated_at TEXT,\n approval_decided_by TEXT,\n approval_decided_at TEXT,\n created_at TEXT NOT NULL,\n updated_at TEXT NOT NULL,\n closed_at TEXT\n)"; /** The unreleased `wi_*` shape — the only prerelease table startup recognizes, * and only while it is empty. */ export declare const PRERELEASE_WORK_ITEMS_TABLE_SQL = "\nCREATE TABLE work_items (\n id TEXT PRIMARY KEY, title TEXT NOT NULL, body TEXT,\n status TEXT NOT NULL DEFAULT 'backlog' CHECK (status IN ('backlog','assigned','executing','in_review','done','blocked','escalated','cancelled')),\n department TEXT, assignee TEXT, priority INTEGER NOT NULL DEFAULT 2 CHECK (priority BETWEEN 0 AND 3),\n rank REAL, version INTEGER NOT NULL DEFAULT 1 CHECK (version >= 1),\n source TEXT NOT NULL DEFAULT 'human' CHECK (source IN ('human','delegation','cron','workflow','session','connector','goal')),\n source_ref TEXT, acceptance TEXT, verify_policy TEXT, rounds INTEGER NOT NULL DEFAULT 0, budget_usd REAL,\n approval_state TEXT CHECK (approval_state IN ('pending','approved','rejected')), approval_request TEXT, approval_ref TEXT,\n approval_target TEXT, approval_target_kind TEXT CHECK (approval_target_kind IN ('employee','virtual','none')),\n approval_escalated_at TEXT, approval_decided_by TEXT, approval_decided_at TEXT,\n created_at TEXT NOT NULL, updated_at TEXT NOT NULL, closed_at TEXT\n)"; //# sourceMappingURL=frozen-schemas.d.ts.map