justinmclean opened a new pull request, #336:
URL: https://github.com/apache/airflow-steward/pull/336

   
   ## Summary
   
   validate spec frontmatter and b…ody sections
   
   Adds tools/spec-validator/, a stdlib-only uv tool analogous to 
tools/skill-validator/ that validates every .md file carrying a YAML 
frontmatter block in tools/spec-loop/specs/:
   
     1. Required frontmatter keys (title, status, kind, mode, source, 
acceptance)
     2. Valid status / kind / mode values
     3. Non-empty acceptance list
     4. Required body sections (What it does, Where it lives, Behaviour & 
contract, Out of scope, Acceptance criteria, Validation)
     5. Validation section contains at least one fenced code block
   
   Files without frontmatter (README.md, overview.md) are silently skipped. 56 
tests pass; 11 live specs from the control branch validate clean.
   
   Note: all 7 IMPLEMENTATION_PLAN.md items were found to be merged or 
in-flight before this iteration; this item was derived from the Known gap in 
specs/meta-and-quality-tooling.md ("a spec validator analogous to the skill 
validator"). A plan/update beat should reconcile.
   
   Generated-by: Claude (Opus 4.7)
   
   ## Summary
   
   ## Type of change
   
   <!-- Tick all that apply. -->
   
   - [ ] Skill change (`.claude/skills/<name>/`) — eval fixtures updated below
   - [ ] Tool / bridge contract (`tools/<system>/*.md`)
   - [ ] Python package (`tools/*/` with `pyproject.toml`)
   - [ ] Groovy reference impl
   - [ ] Cross-cutting (RFC, AGENTS.md, sandbox, privacy-LLM)
   - [ ] Documentation (`docs/`, `README.md`, `CONTRIBUTING.md`)
   - [ ] Project template (`projects/_template/`)
   - [X] CI / dev loop (`prek`, workflows, validators)
   - [ ] Other:
   
   ## Test plan
   
   - [X ] `prek run --all-files` passes
   - [ ] For Python packages touched: `uv run pytest` / `ruff check` / `mypy` 
passes
   - [ ] For Groovy bridges touched: command-line invocation tested end-to-end
   - [ ] For skill changes: eval suite passes for the affected skill
         (`PYTHONPATH=tools/skill-evals/src python3 -m skill_evals.runner 
tools/skill-evals/evals/<skill>/`)
   - [ ] For skill *behaviour* changes: a new or updated eval fixture is 
included in this PR
         (a regression test for the bug fixed / the behaviour added — see 
CONTRIBUTING.md)
   - [X ] Other: also run teh tool - no issues
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to