Repository navigation
v1.2.1 — validate the normalized document, not just the frontmatter
IntentSpec defines two markdown serializations, and this Action only read one of them.
A conforming sectioned intent.md, the shape real authoring templates produce, was rejected for missing fields it visibly contained: the validator read YAML frontmatter and validated that object, so lists living under ## headings were invisible to it. SPEC.md section 1 is explicit that a validator reading only frontmatter is the defective party, and this was that validator.
What changed
src/normalize.ts implements SPEC.md section 2, vendored from the reference implementation in pathmodeio/intentspec:
- frontmatter wins for scalars, a non-empty section wins for lists
- fenced code blocks and HTML comments are stripped before structure is read, so template guidance never becomes content
## Verificationflattens to an array of strings, because the schema defines no object form- malformed frontmatter fails the whole document rather than silently falling back to the body
Behavioral parity is held by running the standards repo's conformance fixtures here, including one built from the real pathmode-intent OpenSpec template.
Compatibility
Frontmatter-only documents validate exactly as before; the v1.0 and v1.2 fixtures still pass unchanged. This release only adds the documents that should always have been accepted.
Also removes a debug log that printed the environment on every run.
Usage is unchanged: uses: pathmodeio/validate-intentspec-action@v1