CREATE TABLE IF NOT EXISTS quote_comparisons (
    tenant_key TEXT NOT NULL,
    comparison_id TEXT NOT NULL,
    recommendation_vendor TEXT NOT NULL,
    result JSONB NOT NULL,
    created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
    updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
    PRIMARY KEY (tenant_key, comparison_id)
);

CREATE INDEX IF NOT EXISTS quote_comparisons_tenant_updated_idx
    ON quote_comparisons (tenant_key, updated_at DESC);

CREATE TABLE IF NOT EXISTS quote_judge_receipts (
    receipt_id TEXT PRIMARY KEY,
    tenant_key TEXT NOT NULL,
    comparison_id TEXT NOT NULL,
    tool_name TEXT NOT NULL,
    status TEXT NOT NULL,
    input_hash TEXT NOT NULL,
    payload JSONB NOT NULL,
    created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
);

CREATE INDEX IF NOT EXISTS quote_judge_receipts_tenant_comparison_idx
    ON quote_judge_receipts (tenant_key, comparison_id, created_at DESC);
