Skip to content

Point the sample-dash rule at §8 and check section references - #274

Open
dajiaohuang wants to merge 1 commit into
blader:mainfrom
dajiaohuang:fix/sample-dash-section-reference
Open

dajiaohuang wants to merge 1 commit into
blader:mainfrom
dajiaohuang:fix/sample-dash-section-reference

Conversation

@dajiaohuang

Copy link
Copy Markdown

Fixes #273.

The fix

SKILL.md, Voice section. The sample-dash sentence named §6. Dashes are §8, because c2c6cad moved them there and updated the README number map but not this reference. One number changes.

The check

scripts/validate-package.py gains two assertions:

  • Every §reference in SKILL.md must point at a pattern that exists. A renumber that removes patterns can otherwise strand a reference outside the list.
  • The sample-dash rule must name the pattern whose heading covers dashes. The number comes from the heading, so a later renumber moves the rule and the check together.

README.md stays out of scope. Its §references sit in older version notes and use the old numbering on purpose.

Checks run

All three from AGENTS.md, against f0ee0c0:

$ python scripts/validate-package.py
Humanizer package v3.0.0 is valid

$ npx --yes skills@1.5.20 add . --list
Local path validated
Found 1 skill

$ claude plugin validate .
Validation passed

The new assertions fail on the unpatched file and pass on this one. Run against HEAD's SKILL.md:

$ python scripts/validate-package.py
Point the sample-dash rule at §8, the dash pattern
exit 1

And against a reference pushed out of range:

$ python scripts/validate-package.py
Point every SKILL.md section reference at a pattern from 1 to 25: [30]
exit 1

On the version

This changes a cross-reference and a check, so the version stays at 3.0.0. The last three commits that touched prose (9862685, a62daa3, c2c6cad) shipped the same way. Say the word and I will add a README note and bump instead.

🤖 Generated with Claude Code

The voice section tells the reader their writing sample overrides "§6".
Pattern 6 is forced triads. The dash rule is §8. Commit c2c6cad moved
dashes from §6 to §8 to match the current Wikipedia article and updated
the README number map, but this reference kept the old number.
AGENTS.md asks for every §reference to move with a renumber, and no
check enforced it.

Update the reference. Then teach the validator to catch the next one:
every §reference in SKILL.md must point at a pattern that exists, and
the sample-dash rule must name the pattern whose heading covers dashes.
@dajiaohuang
dajiaohuang force-pushed the fix/sample-dash-section-reference branch from f0ee0c0 to 30b8e07 Compare September 11, 2026 10:30
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.

SKILL.md voice rule points at §6, but the dash pattern is §8

1 participant