Quality Plane — v0.6
AI doesn't just err — it manufactures a convincing illusion of quality. The Quality Plane makes shipping conditional on human-selected Critical Moments that have machine evidence and a human verdict.
What shipped (the keystone — spec §14 P0)#
- Critical Moments on a work item: a deterministic propose of 4–5 moments, then human select / edit / reject / add + P0/P1/P2.
- Acceptance criteria + scenario generated per selected moment.
- Evidence Cards with
machine_verdict+human_verdict+ declaredraw_facts/ artifacts. - Human decision accept / reject / needs-rework / waive; reject creates a Feedback Constraint.
- Quality Gate (computed, not stored): READY iff every selected non-waived P0 moment has an evidence card that is
machine_verdict=passedANDhuman_verdict=accepted; else BLOCKED + blockers. - Wired into
/work/[id](the Quality Plane section) — the same UX as the demo, on real endpoints.
bash
POST /work-items/{id}/quality/propose
PATCH /work-items/{id}/quality/critical-moments/{cmId} # select/edit
POST /work-items/{id}/quality/critical-moments/{cmId}/criteria
POST /work-items/{id}/quality/evidence
POST /work-items/{id}/quality/evidence/{evId}/decision # reject → constraint
GET /work-items/{id}/quality # full subgraph + gateHonest scope#
Generation is a deterministic heuristic, not an LLM (the spec §12 prompt skeletons are an LLM task — gated). Evidence is declared: the keystone records the machine facts the caller states; it does not run Playwright/API/DB probes (gated, spec §14 P1) and never fabricates artifacts — fabricating evidence is the exact failure the plane exists to prevent. The API response says so in its note.