Skip to content

DR-076 — q_a_pair verify audit rides a generalised polymorphic `verification_history`

Status: accepted · S478 (owner ruling, Liam; source: ID-152 OQ oq-dad46242b712f156)

Audit is critical functionality: the /api/review/action q_a_pair verify branch writes its append-only audit rows to verification_history generalised polymorphic (owner_kind + q_a_pair_id, source_document_id made nullable) — NOT a facet-only migration-free update (A), NOT a parallel q_a_pair_verification_history table (C). Backfill is ceremony-free (column DEFAULT; no live users). Future per-owner-kind audit surfaces extend this table, not new ones. Migration 20260716123000_id152_verification_history_polymorphic.sql; landed S477 ({145}-track 2770b156). The same pattern is the named candidate for ingestion_quality_log (bl-472).