Rebuilds branch from upstream/staged (was previously merged from upstream/main, which brought in materialized plugin files that fail Check Plugin Structure on PRs targeting staged). Changes vs. staged: - Update skills/quality-playbook/ to v1.5.6 (31 bundled assets: SKILL.md + LICENSE.txt + 16 references/ + 9 phase_prompts/ + 3 agents/ + bin/citation_verifier.py + quality_gate.py). - Add agents/quality-playbook.agent.md (top-level orchestrator). name: quality-playbook (validator-compliant). - Update docs/README.skills.md quality-playbook row description + bundled-assets list to v1.5.6. - Fix 'unparseable' → 'unparsable' in quality_gate.py (5 instances; codespell preference, both spellings valid). Closes the v1.4.0 → v1.5.6 update in a single clean commit on top of upstream/staged. The preserved backup branch backup-bedbe84-pre-rebuild (SHA bedbe848fa3c0f0eda8e653c42b599a17dd2e354) holds the prior history for reference.
3.1 KiB
{skill_fallback_guide}
You are a quality engineer continuing a phase-by-phase quality playbook run. Phases 1-3 are complete.
Read these files to get context:
- quality/PROGRESS.md - run metadata, phase status, BUG tracker
- quality/REQUIREMENTS.md - derived requirements
- quality/BUGS.md - bugs found in Phase 3 (code review)
- SKILL.md - read the Phase 4 section ("Phase 4: Spec Audit and Triage"). Also read references/spec_audit.md. Resolve SKILL.md and the references/ directory via the documented fallback list above; do NOT assume any single install layout.
Execute Phase 4: Spec Audit + Triage + Layer-2 semantic citation check.
Part A — spec audit: Run the spec audit per quality/RUN_SPEC_AUDIT.md. Produce:
- Individual auditor reports at quality/spec_audits/YYYY-MM-DD-auditor-N.md (one per auditor)
- Triage synthesis at quality/spec_audits/YYYY-MM-DD-triage.md
- Executable triage probes at quality/spec_audits/triage_probes.sh
- Regression tests and patches for any net-new spec audit bugs
- Update BUGS.md and PROGRESS.md BUG tracker with any new findings
Part B — Layer-2 semantic citation check (v1.5.1): The gate's invariant #17 (schemas.md §10) requires three Council members to vote on each Tier 1/2 REQ's citation_excerpt. Execute these steps:
-
Generate per-Council-member prompts: python3 -m bin.quality_playbook semantic-check plan . This writes one or more prompt files to quality/council_semantic_check_prompts/.txt per member in the Council roster (bin/council_config.py: claude-opus-4.7, gpt-5.4, gemini-2.5-pro). For >15 Tier 1/2 REQs, prompts are split into batches of 5 (-batch.txt). If no Tier 1/2 REQs exist (Spec Gap run), this step writes an empty quality/citation_semantic_check.json directly — skip steps 2-4.
-
For each Council member's prompt file, feed the prompt to that model (the same roster that ran Part A) and capture its JSON-array response to quality/council_semantic_check_responses/.json. If the member was batched, concatenate the per-batch responses into a single array in the response file. Every entry must have req_id, verdict (supports|overreaches|unclear), and reasoning.
-
Assemble the semantic-check output: python3 -m bin.quality_playbook semantic-check assemble .
--member claude-opus-4.7 --response quality/council_semantic_check_responses/claude-opus-4.7.json
--member gpt-5.4 --response quality/council_semantic_check_responses/gpt-5.4.json
--member gemini-2.5-pro --response quality/council_semantic_check_responses/gemini-2.5-pro.json This writes quality/citation_semantic_check.json per schemas.md §9. -
Verify the output file exists. Phase 6's gate invariant #17 requires it on every Tier 1/2 run.
Mark Phase 4 (Spec audit + triage + semantic check) complete in PROGRESS.md (use the checkbox format - [x] Phase 4 - Spec Audit — the Phase 5 entry gate looks for that exact substring and will abort if it finds a table row or any other layout).
IMPORTANT: Do NOT proceed to Phase 5 (reconciliation). The next phase will handle reconciliation and TDD.