GEMMA DEVELOPER AGENTSAVED EVIDENCE

← Weight change

Direct mathematical edit / wsp31-0015

Spectral rank-4 exact-context within-call thought-close writer subspace across all 60 layers (0.38%)

Gemma 4 31B, frozen four-bit baseAuthor: geminiState: doneVerdict: null

When

Recorded date: 2026-11-12

Ledger date only; exact weight-build/change timestamp is not recorded here. Not a live training event.

Exact tensor-change timestamp: unavailable.

Why change it?

In the 210 unedited `b001` screening episodes (71 tasks; 108 solved at 51.4%), 38 of the 102 failures terminate at the 7.5-minute session wall-clock limit (`mean duration 462.1s`, `mean total thought tokens 8,955` vs `4,252` in solved, `3,771` thought tokens beyond depth 800 vs `704` in solved; 21 of the 38 end with an empty patch). Why this differs from both `PRIOR_E4B.md` ("think briefly" 28/28/25 vs 29) and queued ledger entries `0007`--`0013`: 1. **Eliminating the harness re-rendering whitespace confound of `0011`--`0013`**: As `interp/REPORT.md` (section 1 item 2) and ledger `0011`--`0013` documented, stored history prompts re-render…

Which part changed?

Spectral rank-4 exact-context within-call thought-close writer subspace across all 60 layers (0.38%)

The source describes adapter targets and mathematical changes. No before/after tensor comparison is available in this viewer.

How was it changed?

Computed directly by author-written code and packaged as a low-rank adapter over the frozen base; not gradient-trained. base: champion generation 0 Designed and pre-tested on generation 0 (unedited checkpoint); entry contains only this change. If a thought-shortening edit from `0007`--`0013` is promoted first, writer projections in `o_proj` and `down_proj` add linearly (`stack_exact.py`), which risks over-shortening thoughts; that risk is explicitly tracked. size: whole network 0.379999% over 120 matrices, largest matrix 0.973392% control size: whole network 0.380000% over 120 matrices, largest matrix 0.973200% Data and task split: `31` fit tasks and `10` strictly held-out check tasks from `wsp31_screen_v1` (`tools/data/probe_calls_b001.jsonl` plus exact…

Did it improve?

null · Stage 1: +4.50 (b003) tasks against reference arms. Stage 2: +3.50 (b006). Matched control, stage 2: -3.50. Verdict: null.

No reliable improvement: recorded verdict is null.
Correction records supersede original result counts. The current summary uses the corrected paper table; uncorrected text below is original historical evidence, not the latest result.

Evaluation set: wsp31_screen_v1 · Batch: b003, b006. Local screening and historical task scores are not competition scores unless explicitly identified in the source. Different evaluation sets cannot be compared as a gain.

Original evidence

Literal source excerpts follow. They may contain original predictions and superseded counts; use the measured-outcome summary and corrections above for the current result.

Hypothesis
In the 210 unedited `b001` screening episodes (71 tasks; 108 solved at 51.4%), 38 of the 102 failures terminate at the 7.5-minute session wall-clock limit (`mean duration 462.1s`, `mean total thought tokens 8,955` vs `4,252` in solved, `3,771` thought tokens beyond depth 800 vs `704` in solved; 21 of the 38 end with an empty patch).

Why this differs from both `PRIOR_E4B.md` ("think briefly" 28/28/25 vs 29) and queued ledger entries `0007`--`0013`:
1. **Eliminating the harness re-rendering whitespace confound of `0011`--`0013`**: As `interp/REPORT.md` (section 1 item 2) and ledger `0011`--`0013` documented, stored history prompts re-render thoughts with extra multi-newline tokens (`108`--`110`) before `<channel|>`, causing naive pre-`<channel|>` contrasts to achieve `1.000` AUC on newline tokens while matching real model close decisions only 65% of the time. Here every `close` and `cont` activation is captured on **exact per-call generation contexts** (`prompt_token_ids + completion_token_ids`) AND paired **within the exact same call on the identical preceding token** (`ids[pos_close] == ids[pos_cont]`, e.g. `\n` vs `\n` or `.` vs `.`). Task identity, context length, turn index, and token identity all cancel identically within each call.
2. **Energy-weighted rank-4 subspace vs rank-1 (`0011`--`0013`) or 10 single neurons (`0007`--`0010`)**: Real training updates on 31B have stable rank ~4 across all layers (ledger `0004`). Taking the top-4 singular directions of task-level orthogonalized exact contrasts weighted by `s_j^2 / s_1^2` amplifies the full natural "synthesis complete -> act" writer subspace without injecting unweighted noise along minor components.
Exact recipe
base: champion generation 0

Designed and pre-tested on generation 0 (unedited checkpoint); entry contains only this change. If a thought-shortening edit from `0007`--`0013` is promoted first, writer projections in `o_proj` and `down_proj` add linearly (`stack_exact.py`), which risks over-shortening thoughts; that risk is explicitly tracked.

size: whole network 0.379999% over 120 matrices, largest matrix 0.973392%

control size: whole network 0.380000% over 120 matrices, largest matrix 0.973200%

Data and task split: `31` fit tasks and `10` strictly held-out check tasks from `wsp31_screen_v1` (`tools/data/probe_calls_b001.jsonl` plus exact per-call prefixes from `results/wsp31/batches/b001/{base,aa}/requests`, partitioned deterministically by `int(sha256(instance_id)[:8], 16) % 4 == 0` for check and `!= 0` for fit; `98` balanced 4-stratum calls, zero task-outcome labels used in any direction or gate, no trained adapter touched).

Construction (`code/fit_and_build.py`, family `exact_close_r4`, rank 4 across all 120 writer matrices `o_proj` and `down_proj` of layers 0..59):
1. At each layer `L` and writer `m` (`attn_raw = unit(attn_out / post_attention_layernorm)` for `o_proj`, `unit(mlp_raw)` for `down_proj`), compute per fit task `i` the mean within-call identical-token difference `delta_{i,L,m} = u(close) - mean(u(cont_same_token))` and common boundary sum `s_{i,L,m} = u(close) + mean(u(cont_same_token))`.
2. Project `delta_{i,L,m}` orthogonal to the unit mean common write `c_{L,m} = unit(mean_i s_{i,L,m})`.
3. Compute the uncentered thin SVD of the fit-task contrast matrix `X_{L,m} = P diag(s) Q^T`, take the top 4 orthonormal right singular directions `q_1..q_4` with spectral energy weights `w_j = clamp(s_j^2 / s_1^2, 0.02, 1.0)`, and apply `dW_{L,m} = +alpha_{L,m} (sum_{j=1}^4 w_j q_j q_j^T) W_{L,m}`. Equalize per-matrix relative Frobenius norms across all 120 writer matrices and scale to whole-network `net_rel = 0.0038`.

Matched control (`ctrl/`): For each `(L, m)`, replace `q_1..q_4` with 4 seeded orthonormal Gaussian vectors orthogonal to `span(q_1..q_4, c_{L,m})` (`seed = 401000 + 100*L + mod_idx`), keep the exact same weights `w_1..w_4` and positive projector structure `K W`, and match every matrix's `|dW|_F` via `match_sizes`. This isolates the exact within-call close subspace against an identical-spectrum, identical-norm writer perturbation.

Approximations: bf16 LoRA factor storage; recovering `o_proj` direction via elementwise division by `post_attention_layernorm` (guarded at `1e-4`); post-writer RMSNorm renormalizes total writer output; pre-tests are teacher-forced on logged unedited trajectories rather than free-running rollouts.

Held-out task within-call paired direction AUC (mean over 60 layers on `10` unseen check tasks): `o_proj = 0.9992`, `down_proj = 0.9898`.

Rebuild: `bash build.sh [OUT_DIR]` executes `code/fit_and_build.py build` from saved `code/data/gemini_directions.pt` (fitted by `code/fit_and_build.py fit` from `code/capture_gemini_stats.py`). Verified byte-for-byte in an isolated scratch directory.

- Directions SHA256: `daa9e2b99a7d98fe9a8a52fe396b77ff5d7b0a19ba2b58f151949707336d04ee`
- Edit weights SHA256: `90b4b642d0a2817fb84f303bfd9cbc7db124fbd7a1e6c70ba09b96446a08921d`
- Control weights SHA256: `d874e22b4015c669a79a81a1e0056520e9a3393c1d150c90a657c42f29fd10c3`

Checker output:

```
OK edit: 120 modules changed (of 120 present), r=4, max |dW|_F/|W|_F 0.009734 at 26.o_proj
OK ctrl: 120 modules changed (of 120 present), r=4, max |dW|_F/|W|_F 0.009732 at 33.down_proj
```

### edit: causal decision-point pre-test (offline `g31.G31`, verdict thresholds NOT VERIFIED YET in `TOOLS.md`)

Held-out check tasks (`probe_b001.jsonl` + exact per-call contexts, unseen during fitting): `99` decision points; verdict `ACTIVE` (mean KL 0.0503 (max 0.603), top-1 changed at 1.0% of points, mean d_logp(next) -0.0549).

| kind | n | mean d_logp(logged) | p(logged) base -> arm | KL(base to arm) | max KL | top-1 changed |
|---|---:|---:|---:|---:|---:|---:|
| all | 99 | -0.05491 | 0.9789 -> 0.9383 | 0.05030 | 0.6028 | 0.0101 |
| turn | 20 | -0.18044 | 0.9728 -> 0.8329 | 0.14205 | 0.6028 | 0.0000 |
| step | 15 | -0.07203 | 0.9586 -> 0.8985 | 0.08357 | 0.3593 | 0.0000 |
| think | 32 | +0.00025 | 0.9852 -> 0.9858 | 0.01359 | 0.1559 | 0.0000 |
| tool | 32 | -0.02358 | 0.9860 -> 0.9752 | 0.01407 | 0.3530 | 0.0312 |

Tool-token probability mass (`tool` points): `call:run` 0.444->0.459, `call:read` 0.408->0.405, `call:edit` 0.094->0.095, `call:write` 0.023->0.010, `call:get` 0.000->0.000, `call:submit` 0.031->0.031.

### edit: exact per-call `closeprobe` thought-end pre-test (`closeprobe.py`, NOT VERIFIED YET in `TOOLS.md`)

Exact generation contexts (`prompt_token_ids + completion_token_ids`, never re-rendered history prompts) on held-out check tasks:

| kind | depth band | n | base log p(close) | arm log p(close) | delta log p(close) | top=close base -> arm | d_logp(logged) |
|---|---|---:|---:|---:|---:|---:|---:|
| close | all | 16 | -0.259 | -0.085 | +0.174 | 0.938 -> 0.938 | +0.1742 |
| close | depth<200 | 8 | -0.327 | -0.168 | +0.159 | 0.875 -> 0.875 | +0.1590 |
| close | 200..799 | 5 | -0.076 | -0.003 | +0.074 | 1.000 -> 1.000 | +0.0735 |
| close | 800+ | 3 | -0.383 | -0.001 | +0.383 | 1.000 -> 1.000 | +0.3827 |
| cont | all | 92 | -19.372 | -25.361 | -5.989 | 0.000 -> 0.011 | -0.2276 |
| cont | depth<200 | 58 | -19.077 | -24.421 | -5.344 | 0.000 -> 0.017 | -0.2781 |
| cont | 200..799 | 31 | -20.159 | -26.877 | -6.718 | 0.000 -> 0.000 | -0.1348 |
| cont | 800+ | 3 | -16.928 | -27.853 | -10.926 | 0.000 -> 0.000 | -0.2095 |

### edit: held-out exact tool-selection & collateral-specificity pre-test (offline `g31.G31`, NOT VERIFIED YET against rollouts)

| held-out stratum | n | KL(base to arm) | top-1 flip | d_logp(edit) | d_logp(read) | d_logp(submit) | d_margin(edit-read) | p(edit)>p(read) base -> arm |
|---|---:|---:|---:|---:|---:|---:|---:|---:|
| pos_late_pre | 5 | 0.00383 | 0.0000 | +0.0462 | -0.2593 | +0.1938 | +0.3055 | 0.000 -> 0.000 |
| neg_early_pre | 6 | 0.05921 | 0.1667 | -1.2791 | -1.9389 | -1.2602 | +0.6598 | 0.333 -> 0.333 |
| neg_post_edit | 5 | 0.00012 | 0.0000 | -0.4621 | -0.5559 | -0.5027 | +0.0938 | 0.400 -> 0.400 |
| neg_arg (tool args) | 31 | 0.00434 | 0.0000 | - | - | - | - | - |

### ctrl: causal decision-point pre-test (offline `g31.G31`, verdict thresholds NOT VERIFIED YET in `TOOLS.md`)

Held-out check tasks (`probe_b001.jsonl` + exact per-call contexts, unseen during fitting): `99` decision points; verdict `ACTIVE` (mean KL 0.0008 (max 0.020), top-1 changed at 0.0% of points, mean d_logp(next) +0.0000).

| kind | n | mean d_logp(logged) | p(logged) base -> arm | KL(base to arm) | max KL | top-1 changed |
|---|---:|---:|---:|---:|---:|---:|
| all | 99 | +0.00002 | 0.9789 -> 0.9790 | 0.00076 | 0.0202 | 0.0000 |
| turn | 20 | -0.00181 | 0.9728 -> 0.9711 | 0.00094 | 0.0035 | 0.0000 |
| step | 15 | +0.00708 | 0.9586 -> 0.9648 | 0.00242 | 0.0202 | 0.0000 |
| think | 32 | -0.00002 | 0.9852 -> 0.9852 | 0.00044 | 0.0060 | 0.0000 |
| tool | 32 | -0.00211 | 0.9860 -> 0.9844 | 0.00018 | 0.0032 | 0.0000 |

Tool-token probability mass (`tool` points): `call:run` 0.444->0.444, `call:read` 0.408->0.409, `call:edit` 0.094->0.094, `call:write` 0.023->0.022, `call:get` 0.000->0.000, `call:submit` 0.031->0.031.

### ctrl: exact per-call `closeprobe` thought-end pre-test (`closeprobe.py`, NOT VERIFIED YET in `TOOLS.md`)

Exact generation contexts (`prompt_token_ids + completion_token_ids`, never re-rendered history prompts) on held-out check tasks:

| kind | depth band | n | base log p(close) | arm log p(close) | delta log p(close) | top=close base -> arm | d_logp(logged) |
|---|---|---:|---:|---:|---:|---:|---:|
| close | all | 16 | -0.259 | -0.262 | -0.003 | 0.938 -> 0.938 | -0.0032 |
| close | depth<200 | 8 | -0.327 | -0.322 | +0.005 | 0.875 -> 0.875 | +0.0048 |
| close | 200..799 | 5 | -0.076 | -0.095 | -0.019 | 1.000 -> 1.000 | -0.0189 |
| close | 800+ | 3 | -0.383 | -0.382 | +0.001 | 1.000 -> 1.000 | +0.0015 |
| cont | all | 92 | -19.372 | -19.366 | +0.006 | 0.000 -> 0.000 | -0.0004 |
| cont | depth<200 | 58 | -19.077 | -19.016 | +0.061 | 0.000 -> 0.000 | -0.0011 |
| cont | 200..799 | 31 | -20.159 | -20.258 | -0.098 | 0.000 -> 0.000 | +0.0007 |
| cont | 800+ | 3 | -16.928 | -16.906 | +0.022 | 0.000 -> 0.000 | +0.0011 |

### ctrl: held-out exact tool-selection & collateral-specificity pre-test (offline `g31.G31`, NOT VERIFIED YET against rollouts)

| held-out stratum | n | KL(base to arm) | top-1 flip | d_logp(edit) | d_logp(read) | d_logp(submit) | d_margin(edit-read) | p(edit)>p(read) base -> arm |
|---|---:|---:|---:|---:|---:|---:|---:|---:|
| pos_late_pre | 5 | 0.00008 | 0.0000 | +0.3187 | -0.1204 | +0.2359 | +0.4391 | 0.000 -> 0.000 |
| neg_early_pre | 6 | 0.00028 | 0.0000 | +0.1516 | +0.1322 | +0.1112 | +0.0194 | 0.333 -> 0.333 |
| neg_post_edit | 5 | 0.00000 | 0.0000 | +0.0562 | -0.0563 | +0.0187 | +0.1125 | 0.400 -> 0.600 |
| neg_arg (tool args) | 31 | 0.00011 | 0.0000 | - | - | - | - | - |

Runner facts (2026-11-12 23:45:32 EST): source `wsp31/authors/gemini/queue/exact-close-r4-subspace/`; served copy `wsp31/queue/frozen/gemini__exact-close-r4-subspace/`; sha256 over files, edit `50da899bc6437e0be4aa4b18d6d3046d9f71b84a0a5cf52c1176bde27f18f47b`, control `f0a157bc553da69ece22f9d607af62d69b3a3fc4775b5098a88e8f84b9efebd1`; both passed the checker.
Prediction (written before the run)
predicted_gain_120: -4 to 11

Behaviour that should move (stage 1, 120 screening tasks vs same-batch champion):
- mean thinking tokens per episode: down by 18% to 35% (amplifying natural completion states at exact boundary tokens while leaving negative-projection early setup states intact);
- episodes hitting the 7.5-minute wall-clock timeout: down by 20% to 40% relative to the reference arm (from ~18% in 2-stream `b001` toward 11%--14%), reducing timeout empty patches proportionally;
- completed tool calls per previously timed-out task: up by +1.5 to +4.0 calls.

Matched control (`ctrl/`): thinking tokens within +/-6% of reference, 7.5-minute timeout rate within +/-4 percentage points, task delta within `-5 to +4` (single-run evaluation noise).

What would prove the hypothesis wrong: (1) thinking tokens and 7.5-minute timeouts fall by >=20% as predicted, yet stage-1 solved count drops by 5 or more tasks relative to reference (meaning deep >800-token ruminations on 31B carry essential bug-finding reasoning rather than wasted wall-clock); or (2) `edit/` fails to reduce thinking tokens by at least 10% more than `ctrl/` in real rollouts (meaning offline exact-call `close - cont` writer amplification does not transfer to free-running generation).
Result
**Stage 1** (batch `b003`, 4 arms on one server, concurrency 2 per arm, finished 2026-11-13 14:17:01 EST; `results/wsp31/batches/b003/`). Reference arm: unedited.

- unedited: solved 58 of 120, agent errors 49, at session limit 51, at tool-call cap 10, empty patch 27, median tool calls 18.0, mean 351.9 s, median 19.9 completion tokens/s of model time, grader crashes 4.
- edit: solved 61 of 120, agent errors 55, at session limit 54, at tool-call cap 4, empty patch 24, median tool calls 19.0, mean 353.2 s, median 19.9 completion tokens/s of model time, grader crashes 4; vs base on 120 common tasks: +3.0 tasks (95% interval -3.0 to +10.0), base-only 4, arm-only 7, exact p 0.5488.
- second unedited arm (identical weights): solved 52 against 58; 9 tasks solved only by the first, 3 only by the second (12 tasks differ; record 0003 measured 11.3 per identical pair); median 19.5 completion tokens/s. The gain used by the rule is against the mean of the two reference arms per task.
- edit against the mean of the two reference arms: +6.0 tasks of 120 (95% interval -0.5 to +12.5).
- Predicted gain -4 to +11; measured +6.0: inside the interval.
- Gain +6.0 is at or above the stage-1 bar (+3): goes to stage 2 with its control.

**Stage 2** (batch `b006`, 4 arms on one server, concurrency 4 per arm, finished 2026-11-14 01:05:17 EST; `results/wsp31/batches/b006/`). Reference arm: unedited.

- unedited: solved 121 of 218, agent errors 84, at session limit 51, at tool-call cap 28, empty patch 40, median tool calls 19.0, mean 355.8 s, median 20.8 completion tokens/s of model time.
- edit: solved 119 of 218, agent errors 85, at session limit 72, at tool-call cap 30, empty patch 36, median tool calls 20.0, mean 366.0 s, median 20.2 completion tokens/s of model time; vs base on 218 common tasks: -2.0 tasks (95% interval -13.0 to +9.0), base-only 17, arm-only 15, exact p 0.8601.
- second unedited arm (identical weights): solved 110 against 121; 24 tasks solved only by the first, 13 only by the second (37 tasks differ; record 0003 measured 11.3 per identical pair); median 20.8 completion tokens/s. The gain used by the rule is against the mean of the two reference arms per task.
- edit against the mean of the two reference arms: +3.5 tasks of 218 (95% interval -6.0 to +13.0).
- control: solved 112 of 218, agent errors 91, at session limit 61, at tool-call cap 35, empty patch 52, median tool calls 19.0, mean 365.8 s, median 20.6 completion tokens/s of model time; vs base on 218 common tasks: -9.0 tasks (95% interval -20.0 to +2.0), base-only 22, arm-only 13, exact p 0.1755.
Verdict and notes
null by the fixed rule: total gain +8.0 (needs +10), stage-2 gain +3.5 (needs +4), edit minus control on stage 2 +7.0 (needs +5).
Correction record 0029 — supersedes original counts
corrected solved: base 58 to 72, e0012 34 to 44, e0015 61 to 74, aa 52 to 67 (of 120); verdict changes: none

Written 2026-11-13 17:35:12 EST.

| arm | solved before | solved corrected | gain before | gain corrected |
|---|---|---|---|---|
| `base` | 58 of 120 | 72 of 120 | - | - |
| `e0012` | 34 of 120 | 44 of 120 | -21.0 | -25.5 |
| `e0015` | 61 of 120 | 74 of 120 | +6.0 | +4.5 |
| `aa` | 52 of 120 | 67 of 120 | - | - |

Gain: tasks over the per-task mean of the two reference arms (or the one reference arm), as the rule uses it. "Before" is the batch's own rows rescored with the same scorer (`supp1/score_before.json`; the batch's `score.json` is kept as written).

Per rerun task, before and after, every arm:

| task | `base` | `e0012` | `e0015` | `aa` |
|---|---|---|---|---|
| `ag2ai__faststream-2701` (b003-supp1) | no row to solved | no row to solved | no row to solved | no row to solved |
| `cloudtools__troposphere-1968` (b003-supp1) | not solved to solved | not solved to solved | solved to solved | solved to not solved (7.5-minute limit) |
| `conda__conda-6131` (b003-supp1) | solved to solved | not solved (7.5-minute limit) to not solved (7.5-minute limit) | solved to not solved (7.5-minute limit) | not solved (7.5-minute limit) to solved |
| `copier-org__copier-2646` (b003-supp1) | not solved (7.5-minute limit) to not solved (7.5-minute limit) | not solved (7.5-minute limit) to not solved (7.5-minute limit) | not solved (7.5-minute limit) to not solved (7.5-minute limit) | not solved (7.5-minute limit) to not solved (7.5-minute limit) |
| `fabfuel__ecs-deploy-123` (b003-supp1) | no row to solved | no row to solved | no row to solved | no row to solved |
| `facebookexperimental__usort-141` (b003-supp1) | not solved (7.5-minute limit) to not solved (7.5-minute limit) | not solved (empty patch) to not solved (empty patch) | not solved (grader crash) to not solved (7.5-minute limit) | not solved (7.5-minute limit) to not solved (7.5-minute limit) |
| `factoryboy__factory_boy-1067` (b003-supp1) | no row to solved | no row to solved | no row to solved | no row to solved |
| `fgmacedo__python-statemachine-370` (b003-supp1) | solved to solved | solved to solved | solved to solved | solved to solved |
| `fnl__syntok-17` (b003-supp1) | no row to solved | no row to solved | no row to solved | no row to solved |
| `googleapis__python-api-core-86` (b003-supp1) | not solved (7.5-minute limit) to not solved | not solved (7.5-minute limit) to not solved (empty patch) | not solved (7.5-minute limit) to not solved | not solved (7.5-minute limit) to not solved (7.5-minute limit) |
| `ipython__traitlets-517` (b003-supp1) | not solved to solved | not solved to solved | not solved to solved | not solved to solved |
| `jpadilla__pyjwt-847` (b003-supp1) | solved to solved | solved to solved | solved to solved | solved to solved |
| `kinto__kinto-http.py-122` (b003-supp1) | not solved (7.5-minute limit) to solved | solved to not solved (7.5-minute limit) | solved to solved | not solved (7.5-minute limit) to solved |
| `litestar-org__polyfactory-383` (b003-supp1) | not solved (grader crash) to solved | not solved (7.5-minute limit) to not solved (7.5-minute limit) | not solved (grader crash) to solved | not solved (grader crash) to solved |
| `microsoft__electionguard-python-191` (b003-supp1) | no row to solved | no row to solved | no row to solved | no row to solved |
| `omise__omise-python-53` (b003-supp1) | no row to not solved | no row to solved | no row to not solved | no row to not solved |
| `pdfminer__pdfminer.six.1a8bd2f7.func_basic__zytwj6qb` (b003-supp1) | no row to solved | no row to solved | no row to solved | no row to solved |
| `pdfminer__pdfminer.six.1a8bd2f7.lm_rewrite__iv8vwrta` (b003-supp1) | no row to solved | no row to not solved (7.5-minute limit) | no row to solved | no row to solved |
| `projectmesa__mesa-1439` (b003-supp1) | solved to solved | solved to not solved (7.5-minute limit) | solved to solved | solved to solved |
| `pygments__pygments.27649ebb.func_basic__n2kqhtxn` (b003-supp1) | no row to solved | no row to not solved (7.5-minute limit) | no row to solved | no row to solved |
| `quantum-tii__qibo-345` (b003-supp1) | no row to not solved (empty patch) | no row to not solved (7.5-minute limit) | no row to not solved (7.5-minute limit) | no row to not solved (empty patch) |
| `quantum-tii__qibo-410` (b003-supp1) | no row to not solved | no row to not solved (7.5-minute limit) | no row to solved | no row to solved |
| `readthedocs__sphinx-notfound-page-233` (b003-supp1) | no row to not solved (7.5-minute limit) | no row to not solved | no row to not solved | no row to not solved (7.5-minute limit) |
| `redhat-cip__hardware-108` (b003-supp1) | solved to solved | not solved to not solved | solved to solved | solved to solved |
| `rustedpy__result.0b855e1e.func_basic__kan6677p` (b003-supp1) | no row to solved | no row to solved | no row to solved | no row to solved |
| `rustedpy__result.0b855e1e.pr_165` (b003-supp1) | no row to solved | no row to solved | no row to solved | no row to solved |
| `stanfordnlp__dspy-8089` (b003-supp1) | solved to solved | not solved (7.5-minute limit) to solved | solved to solved | solved to solved |
| `taverntesting__tavern-851` (b003-supp1) | no row to not solved (7.5-minute limit) | no row to not solved (7.5-minute limit) | no row to not solved | no row to not solved (7.5-minute limit) |
| `thomasgermain__pymultiMATIC-107` (b003-supp1) | no row to not solved (7.5-minute limit) | no row to not solved (empty patch) | no row to not solved (empty patch) | no row to not solved (7.5-minute limit) |
| `timothycrosley__isort-819` (b003-supp1) | not solved (grader crash) to not solved (7.5-minute limit) | not solved (empty patch) to not solved (empty patch) | not solved (7.5-minute limit) to not solved (7.5-minute limit) | not solved (empty patch) to not solved (7.5-minute limit) |
| `tox-dev__pipdeptree-488` (b003-supp1) | not solved (grader crash) to not solved (7.5-minute limit) | not solved (7.5-minute limit) to not solved (7.5-minute limit) | not solved (grader crash) to solved | not solved (grader crash) to solved |

Reference arms `base` and `aa` differ on 12 task(s) before and 13 after.

Scored on 120 of the 120 tasks of the final list.

n/a (a correction).

- 0012 (`e0012`): stage-1 gain -21.0 to -25.5; by the fixed rule harmful before, harmful corrected. Same decision; the entry's stage-1 counts are now the corrected ones.
- 0015 (`e0015`): stage-1 gain +6.0 to +4.5; by the fixed rule promote before, promote corrected. Same decision; the entry's stage-1 counts are now the corrected ones.