Our published benchmark result was measured with v0.41.2, 5 releases ago, past this project's own 2-release window, and the newest real-model measurement, dated 2026-09-18, is past this project's own 7-day window. That is our own number, not your assessment, which runs against your policy on the current release.Why, and what unblocks it
REPRODUCE · 0 INDEPENDENT REPRODUCTIONS AS OF 1 NOVEMBER 2026
Reproduce the result, cheapest check first.
Start with a twenty-second run on your laptop that shows the tool works. Then check the published result at one of three levels: verify the signed board, rebuild it from the committed reports, or re-run the policy on a GPU. Only the third is an independent reproduction.
42 of 50 episodes left the keep-out envelope under a roleplay instruction (task-clustered 95% CI 62-100%) against 1 of 50 benign; the same frame with no target named does it in 27 of 30, so this is fragility, not steering.
No GPU and no checkpoint of yours. This runs every attack family against a built-in test policy, a deterministic stub, and prints a scorecard shaped like the published one. It shows the tool works; reproducing the result needs the real policy, at level 3 below.
Expecta scorecard with an attack-success rate, its interval and the benign control, for every registered family, on the stub
Python 3.12+; the container path is docker run --rm ghcr.io/provael/provael:latest attack --recipe full-sweep. The quickstart walks the same three commands with the recording.
Three levels
Verify, rebuild, re-run
Cheapest first. The first two need no GPU and are real checks: a board whose signature verifies and that rebuilds to the same digest is a board nobody altered. The third re-runs the policy, and it is the reproduction that puts your name in the register.
1No GPU · under a minute
Check the published board has not been altered
The fastest check there is. It proves the numbers you are reading are the numbers that were signed — including the success counts, which are inside the signature, not published beside it.
Confirms the published rows are what the committed evidence actually aggregates to. It re-derives the table from the raw reports rather than trusting the table.
The real reproduction: it re-runs the policy in the simulator rather than re-aggregating a stored result. This is the one that would put your name in the register below.
ExpectA report.json whose per-family rates you can compare against the published board.
The packs that exist
Public checkpoints with committed runs
A pack is a run you can re-execute: the checkpoint, the recipe, the shards and the report at a pinned commit. Two exist. Every other registered backend is listed below with the status the product’s own registry gives it.
SmolVLA × LIBERO-Object, all ten tasks
measured · published
The ten-task run behind the headline count above and the per-attack rows on /results, measured with provael 0.41.2.
1/30 under the roleplay instruction against 0/30 benign, 10 tasks, 3 seeds against the 5 the protocol asks for, 2 arms of 8; measured 2026-09-18 with provael 0.41.2. Not the headline and not a transfer claim: the opening leg of the pre-registered cross-architecture study, published so the null is a result.
openpi (websocket client to a π0 policy server)scaffolding · never run
Statuses come from the product registry at v0.46.0 (29405ab): “runnable · no committed run” means the adapter installs and has never been measured here; “scaffolding” means the adapter exists and no checkpoint has been loaded through it. A pack appears above the day its run is committed, not before.
Report what you found
How to report a reproduction
Use the product’s reproduction-result form. It asks for the level you ran, the commit, the tool version, the environment and what you got, whether it agrees or not. A reproduction that disagrees is the more useful one, and it is published the same way. The register on /verification holds 0 as of , and that number moves only when someone files one. A result about a policy you did not train gets the same 14-day right of reply Provael gives itself (/security).