Drift discriminator — step 1000, flow head on unseen seeds

Checkpoint grasp_sft_v2_demosonly_1gpu_disc/step_001000 — the first non-drifting v2-corpus checkpoint (verdict HEALTHY 00:42Z 08-18; demos-only corpus, 1×H100, honest recomputed stats) · euler-10, execute-horizon 30, seeds 0–99, 30 s episodes, default worn-row lookup (no rig key ⇒ merged demos-native table) · fills the demosonly-v2 grasp cell of the isolation grid; baseline arm of the --per-dataset-flow-norm pre-reg

11/100
successes (≤3 cm, held)
9 / 44 / 5
anchors: base / probe / v1-endpoint
64/100
moved the boat >0.5 cm
2.04 cm
mean progress toward disk
0
reset strikes

Against the anchors

Paired read: probe_joint_corrected_2000 vs disc1000_demosonly

recorded non-gating read (rides alongside the frozen absolute bands) · pre-reg posts/2026-08-xx-prereg-grasp-sft-v2-joint-pdnorm.md · paired on the 100 shared unseen seeds · reset strikes 0/0. The demosonly baseline's 11/100 sits inside the pdnorm draft's own 11–19 ambiguous band, so the paired read rides alongside the frozen absolute bands — it is recorded, never gating.

+33
success-count delta, 44 vs 11 (CI95 [22, 44], excludes 0)
p = 1.0e-07
McNemar exact, 37 vs 4 discordant seeds
+3.57 cm
mean progress delta (CI95 [2.6593, 4.4646], excludes 0)
80%
per-seed progress win rate (0% ties)

Per-seed outcomes

Clips

fastest success — seed 48, final 3.8 cm, success at tick 85
2nd fastest success — seed 29, final 3.3 cm, success at tick 138
median success — seed 17, final 3.8 cm, success at tick 380
nearest miss — seed 74, final 1.2 cm

Per-seed table

seedspawn cmmin cmfinal cm progress cmsuccess
010.53.73.76.8✓ @ 311
17.36.47.30.9
210.210.210.20.0
310.610.616.40.0
410.36.29.04.0
58.66.27.22.4
610.110.010.00.1
77.86.411.91.4
87.15.17.72.1
911.011.011.00.0
1011.610.710.90.8
119.49.49.50.0
127.36.414.30.9
138.68.616.00.0
1410.67.57.63.1
158.37.07.21.2
169.78.98.90.8
1711.43.83.87.6✓ @ 380
188.32.83.85.5✓ @ 586
197.44.04.03.4✓ @ 495
209.49.410.00.0
219.45.17.74.3
2210.610.611.10.0
239.05.514.43.6
249.79.710.50.0
2511.66.97.24.6
2610.510.510.70.0
2710.510.214.50.3
288.58.08.60.5
299.53.33.36.1✓ @ 138
309.69.510.20.1
3112.012.013.00.0
329.05.06.54.0
339.06.510.82.5
348.07.011.41.0
359.40.84.38.6
369.88.610.61.2
379.09.010.80.0
3810.410.313.10.1
399.29.29.20.0
408.97.17.81.8
419.37.712.71.6
4210.110.110.80.0
4311.611.612.10.0
4410.56.38.94.2
459.36.16.33.2
4611.910.610.61.4
478.76.39.32.3
488.83.83.85.0✓ @ 85
498.88.812.00.0
508.58.48.40.1
5111.18.616.72.5
529.29.29.40.0
538.66.87.31.8
549.23.83.85.4✓ @ 699
558.56.917.11.5
5611.811.813.50.0
579.88.08.51.8
587.57.011.20.6
598.06.48.51.6
6011.43.93.97.4✓ @ 199
618.02.02.36.1
628.45.65.92.8
637.27.210.00.0
6410.210.217.50.0
659.47.77.71.7
669.56.311.33.1
6710.99.910.01.1
687.85.37.62.5
699.39.39.40.0
708.37.011.61.2
719.19.19.10.0
7212.112.114.80.0
7310.210.011.10.2
7410.11.01.29.1
7510.810.814.20.1
767.96.19.21.8
779.69.611.20.0
787.47.48.10.0
7912.08.914.13.1
8011.811.311.30.5
8110.610.620.40.0
829.19.114.40.0
8311.311.312.40.0
848.07.88.50.2
859.63.93.95.7✓ @ 236
8610.94.98.46.0
878.25.67.82.6
888.46.511.01.9
898.25.810.42.5
908.46.010.72.5
917.47.47.80.0
9211.35.88.15.5
9310.35.67.24.7
948.07.110.10.9
957.64.16.43.5
968.74.04.04.8✓ @ 618
979.97.011.02.9
988.97.110.01.9
999.14.04.05.1✓ @ 748

Regenerate: fontaine/scripts/grasp_sft_joint_unseen_report.py from the banked flow_unseen.json only.