Name the conditions. Prove runs your system across them before and after a change,
on the same seeds, and says which conditions got safer, which got worse, and what
was too small for the run to detect.
pip install poisson-prove # private preview: not public yet
# 1. sweep the conditions, before the change
poisson-prove sweep quickstart.toml \
--target poisson_prove.examples.mock_agent:rollout --yes
# 2. sweep again after it, on the same seeds
poisson-prove sweep quickstart.toml \
--target ...mock_agent:rollout_patched --pair-with <run-a> --yes
# 3. diff the pair into report.md, heatmap.svg, receipt.html
poisson-prove report <run-a> <run-b> \
--event violated --x tool_fail_rate --y task_id
# in CI: exit 1 if any condition came back significantly worse
poisson-prove check <run-a> <run-b> --event violated --fail-on worse
How it works
Sweep
Every condition, many times, each run on a seed. A second sweep gets the same seeds.
Diff
A test per condition, corrected across all of them. Safer, worse, or no significant change.
State the limit
Every verdict carries the smallest effect that condition could have detected.
One condition and one seed in, an outcome and a time out.
On an agent
+63pp · more often no significant change · blind under 34pp −63pp · less often
1 worse
327 no significant change
0 safer
coloured only at q<0.05, corrected across every condition
Fig. 1One code agent against itself, nothing changed: 328 conditions,
32 episodes each. 327 show no significant change;
1 is worse, HumanEval/129 at 0.7,
a problem that broke between the runs. This is the floor a real change has to clear.
report.md ·
receipt.html
On a robot policy
+81pp · more often no significant change · blind under 34pp −81pp · less often
baseline fell rate among them · 0% to 100%
0 worse
340 no significant change
60 safer
coloured only at q<0.05, corrected across every condition
PUSH, % BODYWEIGHT →↑ FRICTION μ32 TRIALS PER CELL PER VERSION
Fig. 2Go1 locomotion, before and after a retrain: 400 conditions,
32 trials each. 60 significantly safer, 0 worse. The
weakest unchanged condition could only have detected a 34pp rise.
report.md ·
receipt.html
+73pp · more often no significant change · blind under 8pp −73pp · less often
baseline fell rate among them · 0% to 100%
5 worse
1 no significant change
8 safer
coloured only at q<0.05, corrected across every condition
LATERAL PUSH, m/s →↑ FRICTION μ100 TRIALS PER CELL PER VERSION
Fig. 3A biped at two checkpoints: 8 of 14 conditions safer,
5 worse. The later checkpoint is better under a hard push and worse under a
gentle one, which an average would hide.
report.md ·
receipt.html
2026.09Where a 14-DoF Biped FallsTwo checkpoints of a Microduck walking policy under a lateral push: a cliff and a slope, with a crossover between 0.600 and 0.625 m/s. A retrain meant to widen the boundary was worse in 14 of 14 cells.Microducklocomotionreadreportreceiptretrain report
2026.08Map the Failure BoundaryA Go1 locomotion policy across 400 conditions of floor friction and lateral push. Retrained on the two gaps the map exposed: 60 conditions significantly safer, none worse.Go1locomotionreadreportreceiptcode
Empirical evidence under a stated test envelope, not formal verification. Conditions
outside the envelope were not tested; conditions inside it can only resolve effects at
or above the reported MDE.