-- Migration 005: canonical request-to-work association and origination idempotency.
BEGIN IMMEDIATE;
CREATE TABLE origination_requests (
session_id TEXT NOT NULL REFERENCES sessions(id),
operation_id TEXT NOT NULL,
work_item_id TEXT NOT NULL REFERENCES work_items(id),
event_seq INTEGER NOT NULL REFERENCES events(seq),
payload TEXT NOT NULL CHECK(json_valid(payload)),
created_ms INTEGER NOT NULL CHECK(created_ms >= 0),
PRIMARY KEY (session_id, operation_id)
) STRICT;
CREATE INDEX idx_origination_requests_work ON origination_requests(work_item_id);
PRAGMA user_version = 5;
COMMIT;