d148a661
docs: fix an unimplementable crash repair
The repair table claimed the reconciler recreates a proposal row from an orphan ref. It cannot: the id is a Postgres serial, and title, rationale, base_rev, agent and agent_session exist nowhere in a ref, since trailers live on commits and title lives nowhere in git. Splits the truth rule instead. Refs stay authoritative for merged-ness; the row is authoritative for existence and metadata. Row-first ordering is already forced by deriving the branch name from the serial, and it is also the safe order, so the unrecoverable case is designed out rather than repaired. Orphan refs and contentless rows are deleted, which is safe because an agent still holds the content and can re-propose. Also records the schema-enforced invariants, notably that merged implies a non-null approval so policy merges cannot be laundered as human ones.
bigbes <bigbes@gmail.com> — 2026-07-22 08:18:12 UTC
Commit d148a6612cdbe3021a1304b75fdb8c7c597696ef —
view raw patch
Parent(s):
dc1e5d0c
| File | Status | + | − |
|---|---|---|---|
docs/DESIGN.md
|
M | +41 | -10 |