fix(I-24): parity_block.py — a zero or empty COMPARATOR band is a named refusal, never a ZeroDivisionError traceback; case table both polarities wired into guard-runner-labels (PMAT-972, #2887, #2735) - #3006
Open
noahgift wants to merge 7 commits into
Conversation
Pmat-Ticket: PMAT-972
…and is a ZeroDivisionError traceback, not a verdict (#2735) Pmat-Ticket: PMAT-972
…ed refusal (band <c> comparator: non-positive rate / no samples is not a measurement), never a ZeroDivisionError; every median-as-divisor site guarded through _comparator_median; _executor_side/_executor_lane/build/main decomposed to fit the complexity gate (PMAT-972, #2887, #2735) Pmat-Ticket: PMAT-972
…t comparison to check_thresholds_in_matrix.sh; check_parity_block_refusals.sh --selftest wired into guard-runner-labels (PMAT-972) Pmat-Ticket: PMAT-972
…comparator band is a named refusal, never a traceback; README contract count 1812 (PMAT-972, #2887) Pmat-Ticket: PMAT-972
…e rows Pmat-Ticket: PMAT-972
noahgift
enabled auto-merge
September 6, 2026 06:12
|
§13.11 rung 1 — quorum shadow verdict Shadow mode: this records a verdict and merges nothing. A refusal |
…ork dir, not /usr/bin/apr (check_apr_bin_pinned ABS-APR, guard-runner-labels red on #3006) Pmat-Ticket: PMAT-972
noahgift
disabled auto-merge
September 7, 2026 11:53
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PP-066 DAG row I-24 (issue #2887; defect #2735; epic #2873; ticket PMAT-972; owner perf-gate; receipt
docs/audits/impl-PMAT-972-receipt.md,status: partialuntil merged).The defect (#2735, verified on main): a zero-token SUBJECT band refused cleanly, a zero-token COMPARATOR band reached
median(subject) / median(comparator)and died with a PythonZeroDivisionErrortraceback — a crash where a verdict belongs.What lands:
_comparator_median(values, label)inscripts/lib/parity_block.py— every median-as-divisor site goes through it; an empty comparator band refusesband <c> comparator: no samples is not a measurement, a non-positive median refusesband <c> comparator: non-positive rate is not a measurement, both through the script's existing refusal path (exit 1); the subject refusal is untouched.scripts/check_parity_block_refusals.sh --selftest(RED first at 72383a9): four generated fixtures — control rc 0; zero comparator, zero subject, empty comparator rc 1 with their texts — every row also asserting noTraceback; wired intoguard-runner-labels. Contractcontracts/apr-parity-block-refusals-v1.yaml(kind: pattern); README 1812 contracts._executor_side/_executor_lane/build/maindecomposed by pure code motion because the pre-commit complexity gate refused the file over debt three of them carried on main already.Acceptance, re-run by the orchestrator
bash scripts/check_parity_block_refusals.sh --selftest(4 fixtures)python3 -m py_compile scripts/lib/parity_block.py·bash scripts/check_thresholds_in_matrix.sh --selftestpv validate·pv lint·check_contract_test_binding.sh·check_contract_enforcement.sh·check_readme_claims.sh·check_no_claim_literals.sh·check_roadmap_diff_additive.sh·check_guards_are_wired.sh·check_workflow_env_defined.sh·bashrs lint(0 errors)Mutation — RED, then restored GREEN: the guard call and the guarded division replaced by the bare
statistics.median(subject_values) / statistics.median(comparator_values)→ row 2 FAILED withZeroDivisionError: float division by zeroandcontains forbidden text: Traceback; restored → PASS.Recorded: a first docstring (
0 / positive == 0.0) read as a float comparison tocheck_thresholds_in_matrix.sh's CMP regex and broke its self-test — reworded; the card's mutation line numbers had drifted, the sites are now one helper. Receipt for this PR itself: advisory, not produced (driver A1).