fix: relocate memory-lint + scanner runtime output out of .abcd/logbook (iss-73) - #52
Merged
Merged
Conversation
…ok (iss-73)
.abcd/logbook/ is a retired runtime-output location (iss-36/iss-56). The
2026-07-12 maintainer adjudication placed runtime artefacts in the gitignored
.abcd/.work.local/logs/ tier. Two Go sites still named the retired location:
- memory lint wrote its report dir under .abcd/logbook/memory/ (lint.go)
- the PII scanner's defaultSkipFragments referenced .abcd/logbook/pii-scan/
and .abcd/logbook/audit-history/ (scanner.go)
Both now use .abcd/.work.local/logs/. No reader hardcoded the old path (memory
lint returns ReportDir; the scanner uses the fragments only to skip its own
output), so the relocation is transparent.
The shipped plugin doc for the verb (commands/abcd/memory.md) is updated to the
new report path (a correctness-review FIX-FIRST: it is a user-facing front door,
not the deferred .abcd/development markdown).
Detector-first: TestNoRetiredLogbookLocationInSource walks internal/ and fails
if any non-test Go source names the retired 'logbook' location. Watched it flag
both sites, then pass after the relocation.
Purely-internal (gitignored runtime output, no committed/API surface), so no
CHANGELOG entry. Arming the .abcd/logbook record-lint markdown ban (iss-36/
iss-56) is a separate follow-up: record-lint scans .abcd/development/**/*.md,
where several research notes still reference the path (some historical, one
current, plus an unimplemented publish spec) -- a markdown reconciliation pass
out of scope here.
Assisted-by: Claude:claude-opus-4-8
Assisted-by: Claude:claude-opus-4-8
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
.abcd/logbook/is a retired runtime-output location (iss-36/iss-56). The2026-07-12 maintainer adjudication placed runtime artefacts in the gitignored
.abcd/.work.local/logs/tier. Two Go sites still named the retired location:.abcd/logbook/memory/(lint.go)defaultSkipFragmentsreferenced.abcd/logbook/pii-scan/and
.abcd/logbook/audit-history/(scanner.go)Both now use
.abcd/.work.local/logs/.Detector-first
TestNoRetiredLogbookLocationInSourcewalksinternal/and fails if any non-testGo source names the retired
logbooklocation. Watched it flag both sites, thenpass after the relocation.
Transparent / safe
No reader hardcoded the old path — memory lint returns
ReportDir; the scanneruses the fragments only to skip its own output. Security review: PROMOTE, and
it flagged the change as a net improvement — the old
.abcd/logbook/was notgitignored (a publishable-yet-skipped path), while the new tier is gitignored, so
the launch bundle excludes it before the scanner runs.
Review-driven fix
Correctness review FIX-FIRST:
commands/abcd/memory.md(the shipped plugin docfor this verb) still named the old path — updated to the new one.
Scope note (deferred)
Arming the
.abcd/logbookrecord-lint markdown ban (iss-36/iss-56) is aseparate follow-up: record-lint scans
.abcd/development/**/*.md, where severalresearch notes still reference the path (some historical, one current, plus an
unimplemented publish spec). That markdown reconciliation is out of scope here
and will be tracked/captured on
main. iss-56 (logbook) resolution is likewisedeferred to the ledger-cleanup pass (it shares an id with a second issue —
iss-74).
make preflightgreen. Part of drain #2. Chain: branched frommain;independent of iss-76/iss-79.
Assisted-by: Claude:claude-opus-4-8