Skip to content

Unify the SKILL.md project-check checkers on a markdown-contract harness

Status: closed/done · Impact: medium · Complexity: medium

Three project-check checkers in the SKILL.md family each re-parsed SKILL.md their own way. Reframe markdown-contract as the unified validation harness for them: one shared SKILL.md contract (lenient frontmatter Zod + open H2 body plane) with each behavioral check expressed as an injected docRule, so the three checkers share one parse and one finding surface.

  • The three SKILL.md-family checkers (pipe-tail, legacy-script-path, skill-doc mermaid + step-coverage) are unified on one shared SKILL.md contract.
  • A new skill_md_harness.ts owns the contract; the three checker scripts become thin renderers.
  • Each behavioral check is an injected docRule doing its own IO/shell-out (mmdc, sibling reads, cross-file coverage).
  • Output is byte-stable — markers, per-error text, and 0/1/2 exit codes are verified identical before and after across the corpus and fixtures.
  • The invariants.yaml legacy scan stays a direct YAML scan (unprojected) through the same shared core, keeping its existing finding id.

← Back to Tasks