Skip to content

feat: add issue_id_unique record-lint rule (iss-74)#115

Merged
REPPL merged 2 commits into
mainfrom
fix/iss-74-issue-id-uniqueness-lint
Jul 21, 2026
Merged

feat: add issue_id_unique record-lint rule (iss-74)#115
REPPL merged 2 commits into
mainfrom
fix/iss-74-issue-id-uniqueness-lint

Conversation

@REPPL

@REPPL REPPL commented Jul 21, 2026

Copy link
Copy Markdown
Owner

Flags any iss-N id claimed by 2+ ledger files, mirroring the intent-id rule via a shared validateIDUnique helper (one-canonical-primitive; intent rule refactored to delegate, byte-identical output). Runs in record-lint/preflight/CI; clean on the real ledger. ruthless: SHIP.

Ledger: resolves iss-74.

Assisted-by: Claude:claude-opus-4-8

REPPL added 2 commits July 21, 2026 10:58
The capture allocator only rejects a duplicate iss-N on the reservation
path; a hand-added issue file that bypassed it (how a past iss-56
collision arose) had no detector. Record-lint had a duplicate-INTENT-id
check but no issue-side equivalent scanning the ledger.

Add issue_id_unique: it scans the three status directories
(open/resolved/wontfix) and flags any iss-N id claimed by two or more
files, mirroring the intent-id rule. The id-uniqueness logic is now one
shared validateIDUnique primitive that both rules call, rather than a
third copy. Registered (blocker) in .abcd/record-lint.json so it runs in
every record-lint pass; reports zero duplicates against the current
ledger.

Assisted-by: Claude:claude-opus-4-8
@REPPL
REPPL merged commit cafa9a8 into main Jul 21, 2026
12 checks passed
@REPPL
REPPL deleted the fix/iss-74-issue-id-uniqueness-lint branch July 21, 2026 12:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant