Development record
2026-07-24 — iss-35 resolves: everything it stayed open for is verified
decisiondcn-2607240000000001
2026-07-24 — iss-35 resolves: everything it stayed open for is verified shipped (surface_coverage armed as blocker, 16 surface chapters incl. docs/history/version, skills→commands relabel, machine-checked staged Status column, crosscheck wired as release gate). The only residue is iss-122. Decided in a maintainer grill interview this date.
Frontmatter
| id | dcn-2607240000000001 |
|---|---|
| type | decision |
| date | 2026-07-24 |
.abcd/work/decisions/dcn-2607240000000001-iss-35-resolves-everything-it-stayed.md
open on GitHub ↗ · commit history ↗
mentions2
- iss-35brief-vs-shipped-surface reconciliation: 05-internals/08-skills.md claims abcd ships zero user-facing skills and six top-level commands while 04-surfaces/README.md itself tables nine and /abcd:consult and /abcd:ingest are shipped; the shipped skills violate the brief criterion that any artefact mutation is a command, not a skill; the skills/ layout described (abcd-ahoy, commit-attribution, secrets-and-pii) is fictional vs the real consult/ and ingest/; the implemented, user-reachable abcd docs lint and abcd history verbs have no home in 04-surfaces at all; the operator-internal paragraph contradicts the commands/ directory that exists. Detector (per spec-moves-with-the-surface): a record-lint cross-check that every entry under commands/ and skills/ resolves to a brief surface row, and every brief surface row resolves to a shipped or explicitly staged surface. Acceptance corpus: each falsified claim above — the check fails on all of them today. Fix amends the criterion or the surface in one change, never silently.
- iss-122The iss35 crosscheck's scope and depth are unpinned, so the gate is not reproducible: v0.3.0's receipt records zero findings four days ago while a full-depth run (17 brief docs, both directions, 22 checkers) returns 102 discrepancies, and the receipt's own promptHash field is the literal 'no-pinned-prompt' admission. The maintainer choosing briefDocs per run means two honest runs of the same gate can disagree by two orders of magnitude; the gate needs a pinned input manifest and depth so a PROMOTE means the same thing every release.