Development record
The cold-reading assembler's exclusion floor carries no entry for the local ledger tier. internal/core/reading/include.go's Exclusions names .abcd/development/decisions, .abcd/work/issues, .abcd/work/DECISIONS.md and the readings family individually, but nothing for .abcd/.work.local — so every manifest the assembler writes is silent about the tier brief invariant 14 exists to keep out, and assertExclusions has nothing to enforce there. The tier IS excluded, by absence from the positive walk and by the .abcd deny segment, so this is a disclosure gap rather than a leak: a reader checking the manifest's asserted exclusions cannot tell that framing traces and declined construals were refused, and invariant 16 says an attestation never states less than the examination behind it establishes. Found while transcribing the exclusion table for itd-186's read-block eval, whose own family list does name the tier; the eval's local-tier falsifiers correctly need no Exclusions row removed, which is how the asymmetry showed up.
The cold-reading assembler's exclusion floor carries no entry for the local ledger tier. internal/core/reading/include.go's Exclusions names .abcd/development/decisions, .abcd/work/issues, .abcd/work/DECISIONS.md and the readings family individually, but nothing for .abcd/.work.local — so every manifest the assembler writes is silent about the tier brief invariant 14 exists to keep out, and assertExclusions has nothing to enforce there. The tier IS excluded, by absence from the positive walk and by the .abcd deny segment, so this is a disclosure gap rather than a leak: a reader checking the manifest's asserted exclusions cannot tell that framing traces and declined construals were refused, and invariant 16 says an attestation never states less than the examination behind it establishes. Found while transcribing the exclusion table for itd-186's read-block eval, whose own family list does name the tier; the eval's local-tier falsifiers correctly need no Exclusions row removed, which is how the asymmetry showed up.
Grounds
- pursued: a reader checking the manifest can see that framing traces and declined construals were refused, which invariant 16 requires an attestation not to understate; it would be shown wrong by a refused family that the manifest still does not name.
Frontmatter
| id | iss-2608311238236490 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | minor |
.abcd/work/issues/resolved/iss-2608311238236490-the-cold-reading-assembler-s-exclusion.md
open on GitHub ↗ · commit history ↗
mentions1
- itd-186The read-block eval falsifies the firewall — planted warm content that reaches a reading fails the build loudly