Kairo-Jinkendo/backend/migrations/011_roadmap_item_links.sql
Lars fdda8a9fae
Some checks failed
Deploy Development / deploy (push) Successful in 47s
Test Suite / pytest-backend (push) Failing after 1m31s
Test Suite / k6 /api/health Baseline (push) Has been skipped
Test Suite / playwright-smoke (push) Has been skipped
Test Suite / lint-backend (push) Successful in 1s
Test Suite / compose-smoke (push) Has been skipped
fix: Gate-Verify — Evidence an Plan-Element verknüpfen
Verify prüft akzeptiertes Evidence am RoadmapItem. Plan-UI schließt Gates mit Nachweis;
Journey erlaubt Plan-Zuordnung. Migration 011 roadmap_item_id auf evidence/reviews.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-05 19:24:18 +02:00

30 lines
1.0 KiB
SQL

-- AP1.4b: Plan-Ist-Verknüpfung für Evidence und Reviews
ALTER TABLE evidence
ADD COLUMN roadmap_item_id UUID NULL REFERENCES roadmap_items(id) ON DELETE SET NULL;
ALTER TABLE reviews
ADD COLUMN roadmap_item_id UUID NULL REFERENCES roadmap_items(id) ON DELETE SET NULL;
CREATE INDEX idx_evidence_roadmap_item ON evidence(tenant_id, roadmap_item_id)
WHERE roadmap_item_id IS NOT NULL;
CREATE INDEX idx_reviews_roadmap_item ON reviews(tenant_id, roadmap_item_id)
WHERE roadmap_item_id IS NOT NULL;
-- Bestehende milestone_id-Verknüpfungen spiegeln (RoadmapItem behält oft dieselbe UUID)
UPDATE evidence e
SET roadmap_item_id = e.milestone_id
WHERE e.milestone_id IS NOT NULL
AND EXISTS (
SELECT 1 FROM roadmap_items ri
WHERE ri.id = e.milestone_id AND ri.tenant_id = e.tenant_id
);
UPDATE reviews r
SET roadmap_item_id = r.milestone_id
WHERE r.milestone_id IS NOT NULL
AND EXISTS (
SELECT 1 FROM roadmap_items ri
WHERE ri.id = r.milestone_id AND ri.tenant_id = r.tenant_id
);