The compare-masters skill is an aggregate meta-skill that borrows from
other masters and has no single lineage, dates, sources, or own corpus
directories. Treating it as a regular master made --strict CI fail on
all branches since 2026-04-08.
Introduce a kind field (default master) and skip the lineage/dates/
sources/citation_format and references/sources directory checks when
kind == meta-skill. compare/SKILL.md gains kind: meta-skill.
Required fields (name, description) and version/license are still
enforced for all skills.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- compare: add NO COMPARATIVE RANKING and NO FABRICATED DIALOGUE
iron laws with rationalization defense table
- create-master: add NO FABRICATED SOURCES iron law for the
generation pipeline
- Add 2 boundary tests for compare (sectarian ranking, fabricated
dialogue)
- Fix validate-fidelity.py to support compare's assertion fields
and no_fabricated_dialogue boundary type
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Update test-fidelity.py to support must_not_contain and
must_not_contain_first_turn fields for boundary/pressure tests
- Add validate-fidelity.py for structural validation of all
fidelity.jsonl files (no API needed)
- Add GitHub Actions workflow: runs validate + dry-run on every
push/PR touching prebuilt/scripts/prompts/tools
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>