Skip to content

fix(bundles): reject a non-string skills.sh schema field - #3

Draft
vchamarthi wants to merge 2 commits into
mainfrom
fix/bundle-schema-field-type
Draft

vchamarthi wants to merge 2 commits into
mainfrom
fix/bundle-schema-field-type

Conversation

@vchamarthi

@vchamarthi vchamarthi commented Oct 16, 2026 •

Copy link
Copy Markdown
Owner

Summary

tools/validate_skills.py says skills.sh.json follows the skills.sh schema, then type-checks notGrouped and the bundle fields. It did not type-check $schema or schema. The published schema types both as string. A number or a list still exited 0.

Change

A present non-string value is now a FAIL. Absence is still allowed. A string is still allowed. format: uri is not asserted.

Evidence

  • base: d1202320f3938afc93982eed1a530e5236a9f985 (fork main; tree matches intel/skills 6e609e2dcc95af8047aab0f14d6bc688e2034906)
  • command: python3 tools/validate_skills.py --self-test
  • before: exit 1, FAIL --self-test: non-string $schema was accepted; non-string schema was accepted. The same file with "$schema": 1 and "schema": ["not-a-uri"] made python3 tools/validate_skills.py exit 0.
  • after: exit 0, PASS --self-test: non-string skills.sh schema fields are rejected. The mutated file then exited 1 with FAIL skills.sh.json: $schema must be a string, got int and FAIL skills.sh.json: schema must be a string, got list. The live file still exited 0.
  • not claimed: URI format validation, a skills.sh page render, skill efficacy, or a pull request on intel/skills. Not re-run after this blast-radius pass. Current main still has no schema must be a string check.

Blast radius

The change is tools/validate_skills.py only. No skill body changes. The live skills.sh.json still passes. A number or a list in $schema or schema fails the validator. URI format is not checked.


Created with Grok.

The check fails on current main: $schema 1 and schema ["not-a-uri"] are accepted.
skills.sh types $schema and schema as string. A number or a list used to exit 0.

This branch has not been deployed

No deployments
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