Skip to content

fix(tree): accept quoted skill names during validation - #157

Open
OUAO-FRANK wants to merge 1 commit into
google-research:mainfrom
OUAO-FRANK:codex/issue-156-quoted-skill-names
Open

OUAO-FRANK wants to merge 1 commit into
google-research:mainfrom
OUAO-FRANK:codex/issue-156-quoted-skill-names

Conversation

@OUAO-FRANK

Copy link
Copy Markdown

Tree validation rejects name: "invoice-review" and name: 'invoice-review' even though both pinned substrates parse them as the directory name. Accept those two spellings alongside the bare name, so a valid skill proposal reaches the existing adapter validation.

Different names and unbalanced quotes remain rejected. Codex's optional-name behavior is preserved. This is a narrow spelling check; it adds no YAML dependency or general frontmatter parser.

Fixes #156.

Validation:

  • python -B -m unittest discover -s tests -p test_skill_names.py -v: all 4 tests pass on Windows/Python 3.12.12, covering both surfaces, quoted and bare matching names, mismatches, malformed quotes, optional names, and proposal acceptance.
  • python3 -B -m unittest discover -s tests -v: all 9 tests pass under WSL/Linux/Python 3.12.3.
  • ruff check harness2 tests, ruff format --check harness2/core/tree.py tests/test_skill_names.py, and git diff --check: pass.
  • Before the fix, the new suite reports 4 quoted-name validation errors and 1 failed proposal assertion. Executing the upstream tree.py in memory after the fix reproduces exactly those failures, while the mismatch and optional-name controls pass. The working tree stays fixed.

Checked the pinned Codex YAML loader and OpenCode markdown parser linked in the issue. No model calls or benchmark credentials are needed for these tests.

@kasatkamaria2-prog

Copy link
Copy Markdown

Tree validation rejects name: "invoice-review" and name: 'invoice-review' even though both pinned substrates parse them as the directory name. Accept those two spellings alongside the bare name, so a valid skill proposal reaches the existing adapter validation.

Different names and unbalanced quotes remain rejected. Codex's optional-name behavior is preserved. This is a narrow spelling check; it adds no YAML dependency or general frontmatter parser.

Fixes #156.

Validation:

  • python -B -m unittest discover -s tests -p test_skill_names.py -v: all 4 tests pass on Windows/Python 3.12.12, covering both surfaces, quoted and bare matching names, mismatches, malformed quotes, optional names, and proposal acceptance.
  • python3 -B -m unittest discover -s tests -v: all 9 tests pass under WSL/Linux/Python 3.12.3.
  • ruff check harness2 tests, ruff format --check harness2/core/tree.py tests/test_skill_names.py, and git diff --check: pass.
  • Before the fix, the new suite reports 4 quoted-name validation errors and 1 failed proposal assertion. Executing the upstream tree.py in memory after the fix reproduces exactly those failures, while the mismatch and optional-name controls pass. The working tree stays fixed.

Checked the pinned Codex YAML loader and OpenCode markdown parser linked in the issue. No model calls or benchmark credentials are needed for these tests.

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.

Tree validation rejects quoted YAML skill names that match their directory

2 participants