a2a-source-edit: write db/migrations/002_quote_judge_tables.sql
This commit is contained in:
34
db/migrations/002_quote_judge_tables.sql
Normal file
34
db/migrations/002_quote_judge_tables.sql
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
-- Additive QuoteJudge v1 schema. Keep this compatible with older app_records-only deployments.
|
||||||
|
CREATE TABLE IF NOT EXISTS quote_judge_comparisons (
|
||||||
|
id BIGSERIAL PRIMARY KEY,
|
||||||
|
tenant_key TEXT NOT NULL,
|
||||||
|
comparison_id TEXT NOT NULL,
|
||||||
|
recommendation_vendor TEXT NOT NULL,
|
||||||
|
result_json JSONB NOT NULL,
|
||||||
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||||
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||||
|
UNIQUE (tenant_key, comparison_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS quote_judge_comparisons_tenant_updated_idx
|
||||||
|
ON quote_judge_comparisons (tenant_key, updated_at DESC);
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS quote_judge_comparisons_recommendation_idx
|
||||||
|
ON quote_judge_comparisons (tenant_key, recommendation_vendor);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS quote_judge_receipts (
|
||||||
|
id BIGSERIAL PRIMARY KEY,
|
||||||
|
tenant_key TEXT NOT NULL,
|
||||||
|
comparison_id TEXT,
|
||||||
|
skill_name TEXT NOT NULL,
|
||||||
|
receipt_json JSONB NOT NULL,
|
||||||
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS quote_judge_receipts_tenant_idx
|
||||||
|
ON quote_judge_receipts (tenant_key, created_at DESC);
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS quote_judge_receipts_comparison_idx
|
||||||
|
ON quote_judge_receipts (tenant_key, comparison_id, created_at DESC);
|
||||||
|
|
||||||
|
ALTER TABLE app_records ADD COLUMN IF NOT EXISTS updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW();
|
||||||
Reference in New Issue
Block a user