Skip to content

test(skill): retire the paragraph check against the pre-split skill - #42

Merged
pasrom merged 1 commit into
mainfrom
test/retire-skill-baseline
Nov 7, 2026
Merged

pasrom merged 1 commit into
mainfrom
test/retire-skill-baseline

Conversation

@pasrom

@pasrom pasrom commented Nov 7, 2026

Copy link
Copy Markdown
Owner

Why

tests/skill_inventory.py checked that every paragraph of the frozen pre-split SKILL.md (tests/fixtures/skill-baseline.md) still appears in the split skill, with a REWRITES and a REWRAPPED list for every deliberate change. That was a one-off guard for the split in #41. Since then every ordinary edit of the skill has to register itself there, and the re-wrap of the Markdown planned next would trip it on every paragraph.

What changes

  • The paragraph containment check, the atoms check (headings, code spans and rule sentences of the baseline), REWRITES, REWRAPPED, --baseline and the fixture go. The atoms were computed from the baseline too, so they go with it.
  • The structural checks stay unchanged: 500 lines, CORE_BYTES = 12000, description <= 1024 characters, every reference file named by its full path and every such path resolving, a ## Contents list in a reference file over 100 lines, a dispatch row for every /km verb, help defined.
  • The verb list used to come from README plus the baseline. Without the baseline it comes from README plus the skill's own files, so approve, doctor, lint, pr and review, which the README does not name, stay covered.
  • A row now counts only where the verb opens a code span or a quoted phrase in the table (`review <doc>`, "check my setup"). Before, a bare word anywhere in the table passed, so removing the review/approve row went unnoticed because "review a brain PR" sits in the pr row. skill_smoke.sh gains a case: a copy of the skill without that row must fail for approve and review. It fails with the old match (checked).
  • README (Development) and evals/README.md no longer describe the retired check. CI runs skill_smoke.sh as before, nothing to change there.

Reviews

/simplify (reuse, simplification, efficiency, altitude): clean, no edits. Two cosmetic notes left: the script keeps its name skill_inventory.py (renaming touches README, CI and the smoke test for no behaviour), and the edited README line is longer than its hard-wrapped neighbours (the re-wrap PR makes the paragraph one line anyway).

/code-review, applied: the bare-word row match and the missing negative case (both above). Not applied:

  • With the baseline gone, removing a command from the table and from every mention in the skill passes. That is what removing a command looks like; a frozen list is the thing this PR retires.
  • Nothing replaces the atoms check for rule sentences (never, always, STOP). A list of protected sentences would bring back the upkeep this PR removes; the plugin evals cover the flows' key steps.
  • An example /km <word> in a reference file now becomes a required row. The failure names the verb, and the fix is a rewording or a row; acceptable.
  • files keyed by display name could be simplified: left, it is unchanged code.

All smoke tests pass locally. No change under skills/km/, so the plugin evals do not apply.

The check that every paragraph of the frozen pre-split SKILL.md still
appears in the split skill guarded one refactor (#41). Since then it
makes every ordinary edit of the skill register a rewrite entry. It goes
with its fixture; the structural checks stay: 500 lines, CORE_BYTES, the
description length, reference paths that resolve, contents lists, and a
dispatch row for every /km verb.

The verb check now reads the skill's own files instead of the baseline,
so approve, doctor, lint, pr and review, which the README does not name,
stay covered. A row counts only where the verb opens a code span or a
quoted phrase in the table, not where it is a word in another row's
text, and skill_smoke shows the check fails without the review/approve
row.
@pasrom
pasrom merged commit 4777eb7 into main Nov 7, 2026
4 checks passed
@pasrom
pasrom deleted the test/retire-skill-baseline branch November 7, 2026 20:38
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