afv-library/scripts
k-j-kim 37ab25279e
feat(validate-skills): require js-yaml-parsable SKILL frontmatter @W-21338965@ (#91)
* feat(validate-skills): require js-yaml-parsable SKILL frontmatter

Validate the raw YAML between --- delimiters with js-yaml so frontmatter
matches strict parsers (e.g. descriptions with unquoted colon+space).

- Add js-yaml devDependency
- Extract parseFrontmatterBlock for shared delimiter parsing
- On YAMLException, report reason, line/column, character index, and snippet

Made-with: Cursor

* refactor(validate-skills): address PR review (YAMLException, JSON_SCHEMA, context)

- Catch only YAMLException; re-throw unexpected errors
- Parse frontmatter with yaml.JSON_SCHEMA
- Add rawFrontmatter to SkillContext; single parseFrontmatterBlock per file
- Type-guard mark fields and reason in formatYamlFrontmatterParseError
- Rename delimiterLen to fullMatchLen
- Collapse error message into one template literal

Made-with: Cursor
2026-03-23 17:34:29 -07:00
..
sync-react-b2e-sample.js feat: add first pass at b2e sample 2026-02-27 14:56:57 -06:00
sync-react-b2x-sample.js chore: add b2e to GHA flow 2026-03-02 14:05:26 -06:00
sync-webapp-skills.js feat: syncing webapp skills sync to afv @W-21338965@ (#57) 2026-03-19 22:46:27 +05:30
validate-skills.ts feat(validate-skills): require js-yaml-parsable SKILL frontmatter @W-21338965@ (#91) 2026-03-23 17:34:29 -07:00