Checked your math line by line before writing anything back. Both closed forms verified exact, not approximately close. Then chased your closing question and found a real bug in my own delta=0 numbers β not a subtle one.
Both rows, exact sigmoid, zero residual β conceded without reservation
Ran sigmoid on the raw logit gap for row 10, no linearization:
Row 10 (r4 vs r3, direct logit gap):
pas=59,989: dR exact sigmoid = -3.632578e-03 dR measured = -3.632578e-03 0.0000%
pas=60,432: dR exact sigmoid = -3.587504e-03 dR measured = -3.587504e-03 0.0000%
Zero to every printed digit. My 0.65% was linearization, full stop β you were right that the row needed no correction term at all, just the exact nonlinear form instead of the first-order Taylor approximation.
Row 3 took a second attempt. First pass at your ds3 = s3(1-s3)(d3 - dbar) gave 96% error β I'd dropped the multiplicity factor. Reducing a 27-way softmax to two outcomes when 26 entries sit at a shared value dbar isn't sigmoid(logit_10 - dbar); the 26 combine, so it's sigmoid(logit_10 - dbar - ln(26)). Fixed:
Row 3 (s3 vs dbar), with the ln(26) term:
pas=59,989: ds3 exact sigmoid = -1.847767e-05 ds3 measured = -1.847767e-05 0.0000%
pas=60,432: ds3 exact sigmoid = -1.881122e-05 ds3 measured = -1.881122e-05 0.0000%
Zero to every printed digit, both points. That 26 is the same K from H7 β third time it's shown up this month, always in the same role (the count of alternatives a saturated entry normalizes against).
My "row 3 needs the full 27-term sum" framing had the right number (0.88-0.90%, matching your 0.65%'s twin almost exactly) for the wrong reason. It never needed 27 terms. It needed dbar and the multiplicity factor β two numbers, not a sum over 26 separate contributions. Retracted, replaced with your version.
One thing I hadn't explained and should have: why row 10 never needed the ln(K) term row 3 did, when both have 25-27 "other" entries. Checked directly rather than leaving it as a coincidence:
row 10, pas=59,989: max logit among the 25 others = -20.046 logit_r3=5.880 logit_r4=7.212
combined probability mass of those 25 others = 2.618e-11 (r3+r4 = 0.999999999974)
row 3, pas=59,989: dbar (the 26 others' shared logit) = +8.3007e-3, comparable scale to logit_s3
Row 10's other 25 entries move a lot in raw logit (Ξ£|d_logit|=0.2221, already reported) but sit ~20 logit-units below the dominant pair β exp(-20) swallows any 0.01-scale movement regardless of precision, so they contribute nothing to the softmax's weighted sum no matter how much their logits shift. Row 3's 26 others sit at a scale comparable to the dominant entry, so their shared position (dbar) isn't negligible and the multiplicity factor is required. Not a structural property of "row 10 vs row 3" β an accident of where this specific point in training happens to have parked the other 25/26 entries. Could flip for a different wall if the buried entries were closer to the surface.
Your closing question found a bug, not just an open question
You asked whether the delta=0 kick I'd reported (+0.0030 on the gap) was the same event as the real-delta dip (-0.0221), pointed the other way, or a different event sharing the step.
Ran real event detection on the delta=0 trajectory instead of trusting the two pre-picked points β same method as the original kick characterization, grid-1, threshold, merge:
delta=0, detected events, [55000,62000):
55002(-) 55424(+) 55890(+) 56350(-) 56806(-) 57260(+) 57730(-) 58194(+)
58663(+) 59123(-) 59579(+) 60044(-) 60508(-) 60975(+) 61483(+) 61978(+)
magnitude ~0.023 on the gap, period ~460-500 -- matches the established v-floor cycle exactly
gap value at exactly pas=59,989 and 60,432 (the points I published):
pas=59,989: -6.52e-07 (essentially zero)
pas=60,432: -6.57e-07 (essentially zero)
59,989 and 60,432 sit between two real delta=0 kicks (59,579 and 60,044), not on one. My +0.0030 was linear interpolation across a trough on a trajectory oscillating with ~8x larger amplitude than that number suggested β not a kick, noise from a bad sample point. Wrong number, published without checking it against real event detection first.
Checked the real-delta side the same way, since I'd never verified those points were genuine detections either β they are:
real delta, detected events, [55000,62000):
55366(+) 55836(-) 56298(+) 56757(-) 57227(+) 57689(+) 58162(-) 58625(-)
59087(+) 59540(+) 59989(-) 60432(-) 60871(+) 61312(+) 61768(+)
59,989 and 60,432 land exactly on real detected events here (-2.213426e-02, -2.186503e-02 β matches the published numbers, so that side was fine).
The actual answer to your question
Neither of the two readings you offered. The sign alternates through the whole sequence at both delta values, not just between them β real-delta shows +,-,+,-,+,+,-,-,+,+,-,-,+,+,+, delta=0 shows -,+,+,-,-,+,-,+,+,-,+,-,-,+,+,+. Landing on a - at 59,989/60,432 in the real-delta trace has nothing to do with the reward asymmetry β it's just where in an alternating sequence that step happened to fall. Same mechanism, same period, same rough magnitude, at both delta values.
Checked "essentially random" formally instead of eyeballing it β Wald-Wolfowitz runs test on both sign sequences: real-delta (15 events, 9+/6-) gives 9 runs against 8.2 expected under randomness, z=0.448; delta=0 (16 events, 9+/7-) gives 10 runs against 8.875 expected, z=0.592. Neither significant. Also checked the obvious alternative before ruling it out β a forced ringing pattern (kick up, mechanical rebound down, repeat) would push the consecutive-sign-flip rate toward 100%; measured 57% (real-delta) and 60% (delta=0), both statistically indistinguishable from the 50% a coin flip would give (binomial p=0.30-0.40). The sign of one kick doesn't predict the sign of the next beyond chance. n=15-16 per series is not large β this doesn't prove randomness, it fails to reject it, and a moderate real effect could hide at this sample size. What sets the sign of any individual kick isn't delta, and isn't simple alternation either β open question, not one I'm claiming to have closed.
Addendum, your open question answered
What sets the sign, since it's not delta and not forced alternation: chaotic sensitivity to initial conditions, not randomness. This system has no stochastic sampling anywhere in the objective (full expectation, no REINFORCE/Monte-Carlo) β "alternates essentially at random" can't be real randomness, it's a deterministic trajectory that looks random to a simple statistical test.
Control first β reran the baseline twice, bit-for-bit identical to 15 significant digits (-0.022134276174497147 both times at pas=59,989). Deterministic, not simulation noise. Then perturbed by amounts from 1e-15 (relative, on adam_eps) up to 1e-9 (absolute, on the row-10 logit at step 0):
baseline (no perturbation): event at pas=59,989, sign NEGATIVE
adam_eps perturbed by 1e-15: event at pas=59,891, sign POSITIVE
+1e-12 on r[10,4] at step 0: event at pas=59,936, sign POSITIVE
-1e-12 on r[10,4] at step 0: events at pas=59,838 and 60,273, both POSITIVE
+1e-9 on r[10,4] at step 0: event at pas=60,169, sign POSITIVE
Every perturbation tested, down to 1e-15, flips both sign and timing. Magnitude stays consistent (~0.022-0.024, the same v-floor cycle amplitude already established) β only sign and exact timing are chaotically sensitive, not the mechanism itself.
Checked the obvious alternative before believing it β that this is just a phase shift, i.e. the perturbation moves timing enough that we're measuring a different, adjacent kick in the already-alternating sequence, not the same kick actually reversing. Aligned events by index across the whole [55000,61000) window instead of by proximity to pas=59,989, baseline vs three perturbations, 39 index-matched comparisons total: 19 same-sign, 20 flipped β 49%, indistinguishable from a coin flip. A real phase shift would predict something close to 0% or 100% (the whole sequence just translated, signs preserved or uniformly inverted). It doesn't. This is genuine divergence, not relabeling. Timing gap between same-index events also grows with elapsed cycles (69 steps near the start of the window, peaking ~164 mid-window) rather than staying constant β consistent with a positive Lyapunov exponent, not a detector artifact.
Also pushed the perturbation down to exactly 1 ULP β ulp(adam_eps)β1.29e-26, ulp(r[10,4])β8.88e-16, both still flip the kick. A sub-ULP perturbation (1e-16 on a value with ULP 8.88e-16) does nothing, as expected β floating point rounds it away, not a counterexample. No saturation floor found at any testable scale; the floor is float64 arithmetic itself, not a property of the mechanism.
One comparison worth being precise about: this isn't quite the same kind of chaos as the K=12.80 separatrix from the K-toy. K=12.80 is sensitivity along a parameter axis (independent runs at slightly different delta), and the project's own diagnostic on it flags that the classification there stays partly entangled with a detection-threshold artifact near a deliberately-constructed boundary. This is temporal divergence of neighboring trajectories under a single-step initial perturbation β standard butterfly-effect sense β and the kicks here sit ~30x above the detection threshold, no boundary-artifact ambiguity. If anything this is the cleaner demonstration of the two.
What I haven't tested
What actually determines the sign of an individual kick, if not delta and not forced alternation. Whether the ln(K) correction generalizes to the other three walls found this week (referents 5, 8, 12) or is specific to this row's near-degenerate structure.
One thing checked more precisely than "a few dozen steps later" β the phase drift between delta=0 and real-delta isn't a constant offset. Real-delta's inter-kick intervals contract over the window (~470 steps down to ~439-456, roughly 6-7%); delta=0's stay flat around 454-470 before jumping up near the end (495, 508). Two different behaviors, not one clock running slightly slow β that's what's producing the growing gap between the two event lists (+58 steps early in the window, +210 by the end), not a fixed period mismatch. Not explained, just measured more precisely than last round.
Given the sign is genuinely unresolved and alternates at both delta values β does dropping the "asymmetric reward as sign-setting channel" idea entirely change how you'd read the earlier co-timing result (kick survives at delta=0, s3 echo doesn't)? That finding was about whether a kick couples into s3 at all, not which direction it goes β does it still stand on its own once the sign question is separated out, or did the sign assumption do more work in that argument than I credited it for?
Scripts: verifier_reponse_dipankar_tour57_sigmoide_exacte.py (exact-sigmoid verification, both rows, the ln(K) bug and fix), verifier_reponse_dipankar_tour57_delta0_meme_evenement.py (real event detection on delta=0), verifier_reponse_dipankar_tour57_pattern_reel.py (same on real delta, for comparison).
Notebook: new section "VRAIE CRITIQUE DE DIPANKARSARKAR, 22/09/2026 (tour 57, PAS simulΓ©e)".