Files
geo/server/migrations/20260417100050_enhance_kol_constraints.up.sql
root fd74ad703b feat(kol): enhance KOL constraints per review findings
- Add composite FK kol_usage_logs(prompt_id, prompt_revision_no) -> kol_prompt_revisions
  to enforce audit replay integrity
- Add CHECK constraint: active prompts must have a published revision
- Add tenant-leading index on kol_packages for list path performance

Addresses review feedback on commit 60fb8a4.
2026-04-17 08:04:56 +08:00

19 lines
797 B
SQL

-- Enhance KOL core tables with integrity constraints and missing index.
-- Follow-up to 20260417100000 addressing review findings:
-- 1. Composite FK for usage-log audit replay (prompt_id, prompt_revision_no)
-- 2. CHECK: active prompts must have a published revision
-- 3. Tenant-leading index on kol_packages for list paths
ALTER TABLE kol_usage_logs
ADD CONSTRAINT fk_kol_usage_logs_prompt_revision
FOREIGN KEY (prompt_id, prompt_revision_no)
REFERENCES kol_prompt_revisions(prompt_id, revision_no);
ALTER TABLE kol_prompts
ADD CONSTRAINT chk_kol_prompts_active_has_published_revision
CHECK (status <> 'active' OR published_revision_no IS NOT NULL);
CREATE INDEX idx_kol_package_tenant
ON kol_packages(tenant_id, created_at DESC)
WHERE deleted_at IS NULL;