From 5bf5b4633e4c9a3e3e56a216a2adebc751577286 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 4 Sep 2026 23:36:03 +0000 Subject: [PATCH] docs(gap-baseline): record review_admission_controller.py coverage/docstring gap scripts/ci/review_admission_controller.py (added by #1862/#1863) is below this repo's own 100% coverage and 100% docstring hard gates on protected main, reproduced directly on a clean origin/main@a9aeee8f checkout: 99% coverage (95 statements / 77 branch-parts missed, effectively all of them this module's validation raise branches) and 98.3% docstrings (~21 missing on its public surface). Independently reproduced while merge-repairing #1812's unrelated fast-path change, confirming it predates that PR. Every open PR based on current main inherits both gate failures regardless of its own diff. Also resolves a stale note in the adjacent 2026-09-04 entry: the hourly-cron test it flagged as "not yet fixed" was in fact renamed and repaired by #1870's cron-pin work, now on main and passing. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4 --- docs/product-technical-gap-baseline.md | 33 ++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index d1967deb04..6bfa19790e 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -3210,3 +3210,36 @@ repository), but this test still asserts the old single hourly `cron: "23 * * * `test_strix_quick_gate.sh` org-sweep-cron staleness found and fixed on `#1503` the same day: a test left behind by a workflow redesign. Needs its own fix understanding the new staggered-daily design's actual intended contract before rewriting the assertion — left for a dedicated follow-up rather than guessed at here. + +**Resolved — 2026-09-04.** The test was renamed to `test_review_fix_caller_keeps_the_github_daily_recovery_slot` +and rewritten against the staggered-daily contract (`cron: "23 7 * * *"` present, both retired hourly/every-2-hour +forms absent) as part of the same `#1870` cron-pin work landing on protected `main`; confirmed present at +`main@a9aeee8f` and passing. No follow-up action remains open here. + +## `scripts/ci/review_admission_controller.py` below the 100% coverage/docstring gates on protected `main` — 2026-09-04 + +**Status:** found, not yet fixed. `#1862`/`#1863` ("bounded durable review admission core" and its scheduler +wiring) added `scripts/ci/review_admission_controller.py` — the fail-closed durable-state gate for admitting +Strix/OpenCode/Noema dispatches (symlink rejection, corrupt-state detection, stale/duplicate/out-of-order +request handling). Reproduced directly on a clean `origin/main@a9aeee8f` checkout, independent of any open +PR's own diff: + +- `coverage run -m pytest tests -q && coverage report --show-missing` → 99% (13,107 statements / 5,288 + branches; 95 statements and 77 branch-parts missed, effectively all of them + `scripts/ci/review_admission_controller.py`'s validation `raise` branches — `AdmissionRequest.create`'s + type/range checks, the durable-state JSON shape/consistency checks in `_read_state`, the symlink guards + around the state file and its lock/backup paths, and the stale-request/lease-mismatch branches in + `plan_dispatches`/`complete_dispatch`). This repo's own gate is `fail_under = 100`. +- `interrogate` → 98.3% on `scripts/ci`, missing ~21 docstrings, all on the same module's public surface + (`WorkerBoundary`, `AdmissionRequest` and its methods, `RequestRecord`, `DispatchLease`, `ControllerState` + and its methods, `_read_state`, `DispatchPlan`, `SchedulerAdmissionGate` and its nested closures). This + repo's own gate is `fail-under = 100`. + +Independently reproduced (same 95/77 miss counts, same missing-docstring set) while merge-repairing `#1812` +on this session's unrelated fast-path change, confirming it is a pre-existing gap on `main` rather than +anything introduced by that PR. No open PR was found already carrying a fix. This means every open PR based +on current `main` inherits both gate failures regardless of its own diff — a local `coverage`/`interrogate` +run against `main` cannot be used as clean baseline evidence until this is repaired. Repair needs targeted +unit tests for `AdmissionRequest.create`'s and `_read_state`'s error branches (invalid types, malformed/ +inconsistent durable state, symlinked state/lock/backup paths) plus docstrings on the module's public +classes/methods — left for a dedicated follow-up rather than folded into an unrelated PR's diff here.