dramirezbe/codeanvil-gcpds/g0-valid-req-and-gt
Claude Code and agent skill by dramirezbe/codeanvil-gcpds
- community
Checking that the SKILL.md file is still in the repository.
Trigger: G0, validate SRS, validate HCS, GT structural check, IEEE 29148. Deterministically validate Ground Truth structure; returns a line-numbered report.
Install
npx vskill@latest install dramirezbe/codeanvil-gcpds/g0-valid-req-and-gtSKILL.md
G0 — Structural Validation of Ground Truth Documents
Prerequisite and Cycle
G0 validates what S0 produced. Before running anything:
- Resolve the active cycle from
.codeanvil/project.yaml(thecycle:key).
If the key is missing, stop and ask the user for a cycle name (see AGENTS.md, ## Cycle). Never guess a cycle or reuse another one.
- If the latest iteration of
.codeanvil/report/<cycle-name>/RFD.mdholds a line
Superseded by cycle: <name>, this cycle is closed by an RFD and read-only: return exactly Cycle closed by RFD. Continue in cycle <name>. and write nothing.
- Check, in this order, writing no iteration when you stop:
.codeanvil/report/<cycle-name>/S0.mdis missing or its latest iteration is not
HITL: PASS: return exactly S0 must pass first. Run the S0 skill.
codeanvil statusmarksS0stale: return the same line.- G0's own latest iteration is
FEEDBACK. WithVerdict: RFD, return exactly
Cycle suspended by RFD. Run the RFD skill., unless the latest RFD.md iteration states Outcome: Withdrawn. Otherwise, if its Based on line names the current latest S0 iteration, nothing was reworked: return exactly S0 must rework first. Run the S0 skill.
- Create
.codeanvil/report/<cycle-name>/when it does not exist.
Activation Contract
Load this skill when the V-SIL Ground Truth pair — a StRS (Stakeholder Requirements Specification) and a SyRS (System Requirements Specification) .md file — needs structural validation, or when a G0 result must be deterministic and reproducible. G0 is the only deterministic gate of the flow; the human answers Gate H right after it.
Do not load it to judge requirement quality, measurement-method correctness, or metrological rigor, and do not use it for the design: that is S1 and G1.
Hard Rules
- Run the script. Never re-implement or hand-wave these checks in prose:
python templates/skills/G0_valid_req_and_GT/scripts/g0_validate.py <StRS.md> <SyRS.md>
- G0 is a pair gate. Both a StRS and a SyRS must be provided; a missing half is an
ERROR (exit 1) via the G0 gate report.
- The exit code is the gate verdict.
0pass,1errors block,2script error. Never
record G0 as passed on exit 1 or 2.
- Errors block; warnings do not. Report every ERROR. Never downgrade or suppress one.
- Never edit a GT document inside G0. A fix goes back to S0 (or to the author, for a
hand-written pair).
- Validate against the templates, never assumptions:
templates/GT/StRS.md,
templates/GT/SyRS.md.
- The validator is stdlib-only and side-effect free — it reads GT files and prints to
stdout; never patch it to write to the documents it checks. The skill (the agent) captures the output and writes the report.
- One report file, append-only. Never write a second
G0file and never edit an
earlier iteration.
Report Contract
Write exactly one file: .codeanvil/report/<cycle-name>/G0.md.
- First run: write the header and
## Iteration 1. - Later runs: append
## Iteration <N>, whereNis the number of existing
iterations plus one.
- Header fields:
Gate=G0,Cycle= the active cycle,Document= the two
input paths, Created = codeanvil now (header written once).
- Iteration fields:
Date=codeanvil now,Timestamp=codeanvil now --machine,
Iteration = N, Cycle = the active cycle, HITL = PASS or FEEDBACK.
HITLis written as one row,| HITL | PASS |or| HITL | FEEDBACK |, never both in
one row, which codeanvil status reads as UNKNOWN.
Descriptionstarts with the exact lineBased on: S0 iteration <N>, whereNis the
latest S0 iteration when the check starts. It then carries the full script output verbatim — the two document reports, the G0-X cross-document report, and the G0 gate report when the pair is incomplete — plus, on exit 0, the Gate H record: the answer verbatim, the date from codeanvil now, and Decided by: <name>.
Decision Gates
| Situation | Action | |
|---|---|---|
Exit 0 | Show the user the script output and the missing list from the latest S0.md iteration (placeholders the validator does not reject). Then ask Gate H: Requirements complete, bounded, and verifiable? Ask it as Asking the human says below. Write the iteration with that HITL value; PASS completes G0. | |
Gate H FEEDBACK | Collect the reasons one per line, each starting with the block ID it concerns, and write them verbatim. The route back is S0. Never suggest or complete a reason. | |
Exit 1 | HITL is forced to FEEDBACK, with no question to the human. Write the iteration with the full report so each ERROR is fixable by line + block ID. The route back is S0. | |
Exit 2 | Script error (bad args, unreadable file, undetectable doc type). Fix the invocation or the type heading and re-run. Write no iteration. | |
| Pair incomplete | The G0 GATE REPORT names the missing document; supply both files in one invocation. Write the iteration with HITL: FEEDBACK. |
Asking the human. Ask with your runtime's native question tool (AskUserQuestion in Claude Code): one single-select question with the options PASS and FEEDBACK, and a free-text answer allowed (the tool's type-your-own-answer choice). If the runtime has no question tool, ask the same question in chat and wait for the reply; never assume or default an answer. Any answer is recorded verbatim; a typed answer that does not choose PASS counts as FEEDBACK, never as PASS, and its text is the feedback. Then ask who is deciding, unless the human already said.
Execution Steps
- Resolve the active cycle and ensure the report directory exists.
- Confirm both target files exist: the StRS
.codeanvil/GT/StRS.md(`## Stakeholder Requirements
Specification (StRS) heading) and the SyRS .codeanvil/GT/SyRS.md (## System Requirements Specification (SyRS)` heading).
- From the project root, run the validator with both files in one invocation.
- Capture stdout (per-document reports plus the G0-X cross-document report) and the
exit code.
- Map the exit code through the Decision Gates table above and write the report
iteration. On a Gate H PASS, record the date and Decided by: <name> in the Description.
- Return the reports plus the verdict. For each ERROR, quote file, line number, block ID,
document tag (G0-X), message, and Expected: value so the fix needs no re-read.
Output Contract
Return all five:
- Verdict —
G0: PASS(script and Gate H) orG0: FEEDBACK (N errors, M warnings).
After a PASS, return G0 complete. Run the S1 skill.
- The full validation output exactly as printed by the script (two G0 VALIDATION
REPORTs, the G0-X CROSS-DOCUMENT REPORT, and — when the pair is incomplete — the G0 GATE REPORT).
- Fix list — when there are ERRORs, one entry per error: file · line · block ID ·
message · expected value.
- The observed exit code.
- The report path —
.codeanvil/report/<cycle-name>/G0.mdand the iteration number.
References
- references/RULES.md — full Phase 1–4 + G0-X rule tables, required
sections, enum values, block/field formats, the report format, and the script's internal architecture.
scripts/g0_validate.py— the deterministic validator (Python 3.9+, stdlib only).templates/GT/StRS.md,templates/GT/SyRS.md— the authoritative structure
definitions (repository-root relative).
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingtemplates/skills/G0_valid_req_and_GT/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/dramirezbe/codeanvil-gcpds/g0-valid-req-and-gt)