# Patch Release: v0.25.14

**Date:** 2026-04-22
**Previous Version:** 0.25.13
**Tag:** v0.25.13

## Qualifying GHIs

| # | Title | Status | Warning |
|---|-------|--------|---------|
| 238 | brief evidence sections must use H3 — add gz validate --brief-headings scope | diff_only | GHI #238 has commits touching src/gzkit/ but no 'runtime' label |
| 239 | Add PostToolUse ruff check --no-fix hook to backstop import-colocation rule | diff_only | GHI #239 has commits touching src/gzkit/ but no 'runtime' label |
| 241 | gz adr promote parses all Target Scope bullets as OBPIs, ignoring ## Proposed OBPI Decomposition table | diff_only | GHI #241 has commits touching src/gzkit/ but no 'runtime' label |
| 247 | sync_copilot_instructions skipped when canonical rules exist (template edits to copilot.md do not propagate) | diff_only | GHI #247 has commits touching src/gzkit/ but no 'runtime' label |
| 249 | Residual Heavy/Foundation bucketing in docs/governance/ surfaces (runbook + GovZero runtime-contract docs) | excluded |  |
| 250 | Closeout ceremony: skill Step 5 direction vs CLI 'I await your decision' prompt is ambiguous | diff_only | GHI #250 has commits touching src/gzkit/ but no 'runtime' label |
| 258 | ADR-0.0.18 brief cites ADR-0.0.15 as feature example, but 0.0.x is foundation | excluded |  |
| 259 | closeout ceremony Step 2: render ADR intent vs OBPI delivery side-by-side | diff_only | GHI #259 has commits touching src/gzkit/ but no 'runtime' label |
| 260 | closeout ceremony: agent speedruns walkthrough demos instead of one-at-a-time operator-paced execution | diff_only | GHI #260 has commits touching src/gzkit/ but no 'runtime' label |
| 261 | agent produces post-hoc competing-directives narrative to rationalize rule violations (reporting-pathway drift) | excluded |  |
| 262 | closeout ceremony skill has no model-class directive; ceremonies run on whatever model defaulted | excluded |  |
| 263 | agent invents CLI incantations from training memory instead of verifying the runtime surface (Claude Code /model) | excluded |  |
| 265 | product_proof checker has no concepts_page proof type; Foundation-doctrine ADRs always trip closeout blocker | diff_only | GHI #265 has commits touching src/gzkit/ but no 'runtime' label |
| 266 | gz-adr-closeout-ceremony skill references nonexistent 'gz adr reconcile' verb | diff_only | GHI #266 has commits touching src/gzkit/ but no 'runtime' label |
| 267 | gz obpi complete does not fail-closed on empty implementation-summary / key-proof; pipeline skill doesn't gate on it either | diff_only | GHI #267 has commits touching src/gzkit/ but no 'runtime' label |
| 269 | chores: fileExists criterion type declared but not wired — parser never populates 'expected' path | diff_only | GHI #269 has commits touching src/gzkit/ but no 'runtime' label |
| 270 | fix(rules): reconcile tests.md semantics vs Invariant 3 via unit/fixture separation | diff_only | GHI #270 has commits touching src/gzkit/ but no 'runtime' label |
| 271 | fix(skills): cite defect-fix-routing.md thresholds from gz-plan and gz-design Step 1 | excluded |  |
| 272 | fix(skills): gz-adr-audit Step 2 cites tests.md semantics; disambiguate remediation | excluded |  |
| 273 | fix(skills): gz-adr-closeout-ceremony Evidence Summary uses canonical ARB invocations | excluded |  |
| 274 | fix(rules): name reconcile-freshness bootstrap carve-out in CLAUDE.md AB rule 4 | excluded |  |
| 275 | feat(validate): extend --utf8-prefix to fresh-interpreter helpers and non-Python doc blocks | diff_only | GHI #275 has commits touching src/gzkit/ but no 'runtime' label |
| 276 | feat(validate): reverse --behave-req-tags direction to OBPI→feature | diff_only | GHI #276 has commits touching src/gzkit/ but no 'runtime' label |
| 279 | fix(adr-create,report): canonicalize bare-ID vs slugged-ID ledger events; reject duplicate adr_created | diff_only | GHI #279 has commits touching src/gzkit/ but no 'runtime' label |
| 280 | gz patch release closure regex ignores fix(scope): ... (GHI #N) subject form — 0 GHIs discovered despite 29 fixed since v0.25.13 | diff_only | GHI #280 has commits touching src/gzkit/ but no 'runtime' label |

## Operator Approval

Approved by gz patch release
