add evidence-grounded ai assistance
This commit is contained in:
@@ -254,3 +254,29 @@ CREATE TABLE IF NOT EXISTS saved_filters (
|
||||
UNIQUE(organization_id,user_id,name)
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS idx_saved_filters_org_user ON saved_filters(organization_id,user_id,updated_at DESC,id DESC);
|
||||
|
||||
-- Phase 13 optional, evidence-bounded AI assistance. Outputs are drafts only.
|
||||
CREATE TABLE IF NOT EXISTS ai_runs (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
organization_id TEXT NOT NULL REFERENCES organizations(id) ON DELETE CASCADE,
|
||||
business_id INTEGER REFERENCES businesses(id) ON DELETE SET NULL,
|
||||
input_evidence_hashes_json TEXT NOT NULL DEFAULT '[]',
|
||||
model TEXT NOT NULL DEFAULT '', provider TEXT NOT NULL DEFAULT '', version TEXT NOT NULL DEFAULT '',
|
||||
prompt_metadata_json TEXT NOT NULL DEFAULT '{}', data_minimization_json TEXT NOT NULL DEFAULT '{}',
|
||||
status TEXT NOT NULL CHECK(status IN ('not_configured','succeeded','failed','rejected')),
|
||||
approval_state TEXT NOT NULL DEFAULT 'pending' CHECK(approval_state IN ('pending','approved','rejected')),
|
||||
output_json TEXT NOT NULL DEFAULT '{}',
|
||||
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP, approved_at TEXT, rejected_at TEXT,
|
||||
actor_user_id INTEGER REFERENCES users(id) ON DELETE SET NULL
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS idx_ai_runs_org_created ON ai_runs(organization_id,created_at DESC,id DESC);
|
||||
CREATE INDEX IF NOT EXISTS idx_ai_runs_business ON ai_runs(organization_id,business_id,created_at DESC,id DESC);
|
||||
CREATE TABLE IF NOT EXISTS ai_suggestions (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
ai_run_id INTEGER NOT NULL REFERENCES ai_runs(id) ON DELETE CASCADE,
|
||||
organization_id TEXT NOT NULL REFERENCES organizations(id) ON DELETE CASCADE,
|
||||
business_id INTEGER REFERENCES businesses(id) ON DELETE SET NULL,
|
||||
suggestion_type TEXT NOT NULL, citations_json TEXT NOT NULL DEFAULT '[]', output_json TEXT NOT NULL DEFAULT '{}',
|
||||
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS idx_ai_suggestions_run ON ai_suggestions(organization_id,ai_run_id,id);
|
||||
|
||||
Reference in New Issue
Block a user