docs(evidence): rebind published evidence to Flow 1.27.1 - #282
Merged
Conversation
`evidence-freshness` has failed every scheduled run since 2026-07-28:
DRIFT: docs/eval_results/current_flow_v1_24_0_local_20260727: published
evidence is pinned to openadapt-flow 1.24.0 but the current published
release is 1.27.1.
The check was right. Flow released 1.25.0, 1.25.1, 1.26.0, 1.27.0 and 1.27.1
after the evidence was measured, so the published numbers described an engine
nobody was running. The fix is to re-measure, not to widen the check.
Re-ran both runners against the exact published 1.27.1 wheel (SHA-256
`99d8f3ef…4094`) bound to release-tagged tracked-clean source `ee52def`, on the
same macOS host, with an independent replication of the whole comparison. Zero
model calls, $0.00, loopback only.
Two defects recorded in the 1.24.0 evidence are now closed, and both are
attributable to a named engine fix because the target application was held
constant: MockMed ships inside the Flow wheel, and its tree is byte-identical
between v1.24.0 and v1.27.1 (`f0736c7a`). The 1.16.1 -> 1.24.0 fixture caveat
does not apply to this comparison.
- The `clean` baseline `region_stable` over-halt fired 2/3 on 1.24.0 and fires
0/3 here, in both the primary run and the replication. Cause: openadapt-flow
`c068554`, `fix(compiler): stop a parameter's demonstrated value becoming a
pixel invariant (#285)`, released in 1.25.0. Compiled `clean` end-to-end
median drops 12.888s -> 7.408s with the retry budget no longer spent.
- The transaction probe's two failing invariants now hold. Uncertain delivery
lands in RECONCILIATION_REQUIRED instead of asserting a proven absence: the
`timeout` fault mode, which commits the row then hangs past the client
timeout, reported HALTED_BEFORE_EFFECT in all 6 runs on 1.24.0 and reports
RECONCILIATION_REQUIRED in all 6 runs here. 0 violations across 30 counted
runs, against 7/16 and 14/23 before. The probe runner is byte-identical
(`097cc900…40ce8`), so this is entirely the engine: openadapt-flow `11c115c`,
`fix(transaction): require positive evidence of absence for
HALTED_BEFORE_EFFECT (#280)`, released in 1.25.0.
Compiled replay was 3/3 in every condition in both runs -- 18 counted compiled
trials, zero over-halts, zero silent incorrect successes, zero wrong actions,
zero model calls. Identity coverage unchanged at 5/8 armed clicks. The DOM
selector controls still fail 0/3 under label drift, loudly, before mutation.
Reported honestly rather than rounded up: one invariant is now `vacuous` (no
counted run claimed an absence, so nothing could exercise it) and is not
counted as a pass; no zero-shot comparison is claimed.
The comparison runner digest moved (`ac58c0b9…5970f` -> `68f9e5a2…8a126`) for
two non-measurement reasons only: `1801027` replaced a hard-coded 1.16.1
reproduce string with a formatted one, and `c4b7e9b` deleted a blank line during
the ruff cleanup. Arms, oracle, classification, trial count and retry policy are
unchanged.
1.24.0 is marked superseded, never deleted, and stays reproducible against the
wheel it was measured on.
`scripts/check_published_evidence_freshness.py` now exits 0 against PyPI.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NyCHrzA1psrKMFfroYbzaM
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.
The failure
evidence-freshnesshas failed every scheduled run since 2026-07-28, most recently on8132e60, which is head:The check is right and is not relaxed here. Flow shipped 1.25.0, 1.25.1, 1.26.0, 1.27.0 and 1.27.1 after the evidence was measured, so the published numbers described an engine nobody runs. The fix is to re-measure. No window was widened, no exclusion added, no threshold moved.
What was measured
Both runners re-run against the exact published 1.27.1 wheel (
99d8f3ef…4094) bound to release-tagged tracked-clean sourceee52def, on the same macOS host as the 1.24.0 evidence, plus an independent replication of the whole comparison. Zero model calls, $0.00, loopback only. Exact commands inREPRODUCE.md.The comparison is genuinely controlled this time
MockMed ships inside the Flow wheel, so repinning the wheel can repin the target application — that caveat governed the 1.16.1 → 1.24.0 comparison. Between v1.24.0 and v1.27.1 the fixture tree is byte-identical (
f0736c7a82ca2aba2beb334feaf461c5f06532a5), and the transaction probe runner is byte-identical (097cc900…40ce8). So the deltas below are attributable to the engine.Both 1.24.0 defects are closed
cleanregion_stableover-haltc068554fix(compiler): stop a parameter's demonstrated value becoming a pixel invariant (#285), 1.25.0no_false_absence_claimFAILED 7/16;unverified_delivered_write_needs_reconciliationFAILED 14/2311c115cfix(transaction): require positive evidence of absence for HALTED_BEFORE_EFFECT (#280), 1.25.0The
timeoutfault mode — commits the row, then hangs past the client timeout — reportedHALTED_BEFORE_EFFECTin all 6 runs on 1.24.0 and reportsRECONCILIATION_REQUIREDin all 6 runs here.Compiled
cleanend-to-end median also drops 12.888s → 7.408s, because the over-halting trials no longer spend their postcondition retry budget.Held
Compiled replay 3/3 in every condition in both runs: 18 counted compiled trials, zero over-halts, zero silent incorrect successes, zero wrong actions, zero model calls, $0.00. Identity coverage unchanged at 5/8 armed clicks. The DOM selector controls still fail 0/3 under label drift, loudly, at the first renamed locator and before any mutation.
Reported honestly rather than rounded up
vacuous, not a pass: no counted run claimed an absence, so no run could exercise it.ac58c0b9…5970f→68f9e5a2…8a126) for two non-measurement reasons only:1801027replaced a hard-coded 1.16.1 reproduce string with a formatted one (12 lines, metadata in an emitted JSON file), andc4b7e9bdeleted one blank line during the ruff cleanup. Arms, oracle, classification rules, trial count and retry policy are unchanged. This is stated inREPRODUCE.mdrather than left for a reader to discover.Checks run locally
scripts/check_published_evidence_freshness.pyagainst PyPI: exit 0, "bound to the current openadapt-flow release 1.27.1".--offlinehalf: exit 0.ruff check .: clean.uv build+check_source_boundary.py --require-dist: OK.pytest tests/ -m "not heavy and not gpu and not vm": 2137 passed, 55 skipped.1.24.0 is marked
superseded, never deleted, and stays reproducible against the wheel it was measured on.🤖 Generated with Claude Code
https://claude.ai/code/session_01NyCHrzA1psrKMFfroYbzaM