Repository navigation
fix(tools): the ADR index keeps a wrapped Resolves or Amends bullet whole - #53
Merged
Merged
Conversation
…hole The Resolves / amends column read one line per label, so a Traceability bullet wrapped over two lines lost its continuation, and the cell ended mid-list on a dangling comma or semicolon. The value is now the list item's whole first paragraph: indented and lazy continuation lines join it with single spaces, and a blank line, the next item (nested or not), a heading or a code fence ends it. A label whose value starts on the next line is read too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Summary
sdd-check generatefills the ADR index's Resolves / amends column from each ADR's Traceability list, one line per label. A bullet wrapped over two or more lines lost its continuation: the cell ended mid-list, on a dangling comma or semicolon, and dropped whatever the later lines named. With 0.11.1 reading emphasised labels, these cells started filling in, so the truncation became visible; on one real ADR set, six of thirty-one cells were cut short.The value is now the list item's whole first paragraph. Indented and lazy continuation lines join it with single spaces; a blank line, the next item (nested or not), a heading or a code fence ends it. A label whose value starts on the line after it (
- **Amends:**then an indented line) is read too, where it was skipped.Docs
CHANGELOG.md: oneFixedline under Unreleased.Verification
./scripts/validate.sh— passes (validate.py, thenhooks-test: OK);python3 scripts/validate.pyalone exits 0.python3 -m unittest discover -s tools/tests—OK;python3 tools/sdd-check.py selftest—OK — 26 cases.claude plugin validate .—Validation passed.test_a_wrapped_label_keeps_its_continuation_linesfails against the parser onmain(the cell readschange),; Resolves: STRAND-02;; Amends: …) and passes with the fix; the three existing ADR-index tests are unchanged and pass.generate --verifywith the fixed tool on a repository with six wrapped bullets: each of the six cells now carries its full list, and no other cell changes.Notes for review
_traceability_refsand_ITEM_END_REintools/sdd-check.py./sdd-scaffold --upgrade, followed bysdd-check generate.Checklist
hooks/session-start.shsynced when components changed (no component changed)CHANGELOG.mdand this branch's commit messages🤖 Generated with Claude Code