Development record
ADR-23: Transport Agnostic Core (probe)
record-lint cannot see a decision-shaped document filed outside the record stores
record_schema is scoped to the record stores it is configured with
(decisions/adrs, intents, specs). Anything outside them is not a
malformed record to the engine; it is not a record at all. So the checks that
would catch a decision-shaped document never run on one filed in the wrong
place.
Probe, run 2026-08-23 in a clean worktree. A file
research/notes/zz-recurrence-probe.md containing:
# ADR-23: Transport Agnostic Core (probe)
## Status
Accepted (locked)
reuses an id that a real ADR already holds
(adr-23),
declares itself accepted, and carries no frontmatter. make record-lint exits
0 with zero findings.
This is the general form of iss-2608221457227162, which is one instance that reached the record and survived a full architecture change. That instance was plausibly excused by abcd's own genesis, since the conventions did not exist when the document was written. The probe removes that excuse: the same defect authored today, in this repo or in any abcd-managed repo, is equally invisible.
Why the id-collision half matters most: a duplicate id is objectively wrong and cheap to detect, whereas "this reads like a decision" is a judgement call. A rule that catches only the collision would have caught the known instance.
Frontmatter
| id | iss-2608230752354926 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | major |
.abcd/work/issues/resolved/iss-2608230752354926-record-lint-cannot-see-a-decision-shaped.md
open on GitHub ↗ · commit history ↗
References1
- itd-161record-lint cannot see a decision-shaped document filed outside the record storesrelated
mentions3
- adr-23A transport-agnostic Go core behind thin front doors
- iss-2608221457227162a superseded Phase-0 pseudo-ADR sits in research/notes/ claiming ADR-01, outside every record gate
- iss-2608230847432286a gate that validates a proxy for a claim switches off the vigilance an absent gate would have preserved