From 0641e211e6655418aa109cc3557f0d8370b4c368 Mon Sep 17 00:00:00 2001 From: Shay Date: Mon, 27 Jul 2026 17:38:13 -0700 Subject: [PATCH] =?UTF-8?q?docs(assessment):=20H-12=20=E2=80=94=20the=20pr?= =?UTF-8?q?e-push=20hook=20asserts=20the=20parity=20too?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit scripts/hooks/pre-push describes its own step 1 as "the smoke suite — exact CI-gate parity" while running 23 files against the CI gate's 13. That is the second in-repo assertion of the parity H-12 falsifies, and it is inside the tooling that enforces the protocol. --- docs/assessment/31-hindrance-audit.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/assessment/31-hindrance-audit.md b/docs/assessment/31-hindrance-audit.md index 510bd9ac..58c82662 100644 --- a/docs/assessment/31-hindrance-audit.md +++ b/docs/assessment/31-hindrance-audit.md @@ -90,7 +90,7 @@ Ranked by leverage (cognitive/structural load removed ÷ effort), per the AGENTS **Verdict:** `strained` — a real asymmetry, *smaller* than it first looks · **Layers:** MV **Evidence:** `TEST_SUITES["smoke"]` is **23** files; `.github/workflows/smoke.yml` is 8 path patterns expanding to **13**. The ten local-only files are `test_audit_ledger_r7`, `test_cli_runner_contract`, `test_pack_draft_serve_boundary`, `test_workbench_deduction_provenance`, `test_prior_surface_deduction_binding`, `test_negation_survives_articulation`, `test_adr_status_governance`, `test_adr_index`, `test_volume_honesty`, `test_curriculum_polarity`. **State the counter-evidence first.** AGENTS.md §CI/CD is explicit that `.github/workflows/*.yml` are *"secondary observability only — never a substitute for local gates"*: the merge gate **is** the in-worktree run, and the in-worktree run is the **superset**. Eight of the ten files carry in-code comments saying they belong *"on the pre-push gate"* — which is exactly where they are. **Under doctrine, nothing is unguarded**, and any reading of this entry as "ten pins run nowhere" is wrong. -**Why it hinders, precisely:** (1) one comment overstates — the audio block says it is listed explicitly *"so the local-first pre-push gate (AGENTS.md protocol) **equals** the CI gate rather than silently narrowing it,"* which is accurate about the six audio files and false as the statement about the suite a reader will take it for; (2) the real exposure is the **push that skipped the local gate** — from a cloud session, another machine, or an agent — for which CI is the only automatic check, and for which ADR-0265's denial pin, both ADR-governance pins, volume honesty, and curriculum polarity currently run nowhere before merge. Six of these files were promoted *after* real silent-regression incidents (#136, #113, the 2026-07-20..24 register-axis drift), so the failure mode they exist to catch is demonstrated, not hypothetical. +**Why it hinders, precisely:** (1) **two independent places assert the parity** — the audio block in `core/cli_test.py` says it is listed explicitly *"so the local-first pre-push gate (AGENTS.md protocol) **equals** the CI gate rather than silently narrowing it,"* accurate about the six audio files and false as the statement about the suite a reader will take it for; and `scripts/hooks/pre-push`, the *automation of the AGENTS.md protocol itself*, describes its own step 1 as *"the `smoke` suite — **exact CI-gate parity**"* while running 23 files against CI's 13. A claim made twice inside the enforcement tooling is the strongest available evidence that the drift was never intended; (2) the real exposure is the **push that skipped the local gate** — from a cloud session, another machine, or an agent — for which CI is the only automatic check, and for which ADR-0265's denial pin, both ADR-governance pins, volume honesty, and curriculum polarity currently run nowhere before merge. Six of these files were promoted *after* real silent-regression incidents (#136, #113, the 2026-07-20..24 register-axis drift), so the failure mode they exist to catch is demonstrated, not hypothetical. **Better home:** the gate-parity pin in G-7 — the drift is only invisible because nothing measures it. Measured parity cost: **429 tests in 46s** on the Act runner's own hardware (`ubuntu-latest:host` = native macOS host). **Authority:** R-14 sets the direction (raise CI, or lower local, or keep them different and correct the comment); the pin itself is mechanical.