Skip to content

Commit 916645d

Browse files
louistrueclaude
andauthored
chore(perf): retire scripts/perf/evidence into ledger bullets (#4117)
87 files and 2.3 MB of rejected-experiment blobs and unrun harnesses, none of which CI executes and none of which any scripts/perf entrypoint reads. The tree needed a CI bypass to exist: every one of the seven evidence-only PRs that built it (#4060, #4061, #4068, #4069, #4070, #4071, #4072 -- each touching nothing but the tree and the ledger) carried revert-oracle-exempt, which skips the lane entirely. #4069's body says why: "The oracle classified retained measurement JSON as production code and failed because it has no changed application test." Three of its READMEs specify zero-context patches so blank context lines do not trip the whitespace gate. The repo keeps what CI runs and what the next agent must read before spiking; the rest lives in git history at a named SHA. Each of the nine ledger sections that linked into the tree becomes one bullet in the section matching its verdict, in the house style the older #1445 entry already uses: verdict, the mechanism that failed, the headline number with its cohort size, the issue and PR, and a `git show` pointer pinned to 4fbbe8d. Five went to "Dead ends", four to "Shipped wins", and the #3978 harness smoke folded into the manual-readiness section as one sentence. #4031's verdict joins them: a dead end that was recorded only in an issue comment and absent from the ledger entirely. Two things stay inline rather than behind a pointer, because they are what a re-spike gets wrong: the PGO RUSTFLAGS decisions (empty control, -Cprofile- generate with its Darwin section alignment for counter-only training only, -Cprofile-use, and the build-std/target split that makes the probe's profile and the server's non-interchangeable), and the Y-up orientation rule (x, y, z) -> (x, z, -y). The archived patches are the only public copy of their mechanism. d979e92e4, 3e675edea, 67c3f6d31 and bdc38d30c are on no remote (`git branch -r --contains` is empty for all four), so each bullet cites its patch path plus a public apply base checked reachable on origin/main: 96ea5f0, e409924, 1b95c66. The two chained follow-up patches (later-tests.patch reproducing bdc38d30c, test-followup.patch reproducing c0ef3e802) get a pointer each for the same reason. All five patches were applied for real against their cited bases with `git apply --cached --unidiff-zero` into a temporary index; all five succeed and both follow-ups chain after their measured patch. 7509432 is NOT on origin/main -- it is the local pre-squash measured source -- so it is not cited as an apply base. Every one of the 15 `git show` pointers resolves. .github/workflows/test.yml's path-filter comment names the tree. The claim is historical and stays true, so it is only marked as removed so a future grep does not chase the path. No workflow logic changes. `git grep perf/evidence` now returns that comment and the pinned pointers, nothing else. Deleting the tree also removes the only Python project root outside rust/python and tools/ifcopenshell_reference, and with it the dependabot noise source behind #4073 and #4074. Closes #4112. Claude-Session: https://claude.ai/code/session_0193douQ6sTYHE65DJmyAei9 Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 373d889 commit 916645d

89 files changed

Lines changed: 142 additions & 12699 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/test.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -276,10 +276,11 @@ jobs:
276276
# scripts/lib/revert-oracle.mjs byte-for-byte (any `test_*.py` /
277277
# `*_test.py`, any depth) rather than naming known marker
278278
# directories by hand, so a NEW Python test tree can never fall
279-
# outside this filter the way rust/python's and
280-
# scripts/perf/evidence's Python test fixtures did before this
279+
# outside this filter the way rust/python's and the since-removed
280+
# scripts/perf/evidence tree's Python test fixtures did before this
281281
# fix — both already existed unfiltered when this comment was
282-
# written.
282+
# written. That evidence tree was retired in #4112; the path no
283+
# longer exists and nothing needs to be looked for there.
283284
python:
284285
- '**/test_*.py'
285286
- '**/*_test.py'

scripts/perf/README.md

Lines changed: 138 additions & 109 deletions
Large diffs are not rendered by default.

scripts/perf/evidence/affinity-publication-2026-09-06/README.md

Lines changed: 0 additions & 83 deletions
This file was deleted.

0 commit comments

Comments
 (0)