{
 "schema": "simcompare.ablation.grid.v1",
 "study": "A2 confirmation: do fewer PhysX solver iterations / PGS rescue the fragile insertion policies on held-out starts?",
 "declared": "2026-10-19, after the A2 screen and before any outcome on these starts was observed for these settings",
 "base_plan": "results/review-insertion-01/plans/insert-eval.json",
 "checkpoints": {
  "seed0": "results/review-resumed-01/runs/insert-force0-seed0",
  "seed4": "results/review-resumed-01/runs/insert-force0-seed4",
  "seed2": "results/review-resumed-01/runs/insert-force0-seed2"
 },
 "checkpoint_sha256": {
  "seed0": "74569e22b6c7",
  "seed4": "9540ebdca9d3",
  "seed2": "3e9c65df58e6"
 },
 "reference": true,
 "index_sets": {
  "heldout25": [
   21,
   22,
   23,
   24,
   25,
   26,
   27,
   28,
   29,
   30,
   31,
   32,
   45,
   46,
   47,
   48,
   49,
   50,
   51,
   52,
   53,
   54,
   55,
   56,
   57
  ]
 },
 "index_note": "The 25 of the 50 new test starts not used for PhysX screening: 21-32 (0.10 mm radial clearance), 45-57 (0.25 mm). The A2 nominal and nominal-repeat conditions did run on these starts; the three settings did not.",
 "shard_scenes": {
  "physx_gpu": 5
 },
 "nominal_physics": {
  "common": "1 ms physics = control step, friction 0.2 on every collider, raw stops 40 N / 4 Nm",
  "mujoco": "Euler, Newton solver 100 iterations, tolerance 1e-10, elliptic cone, impratio 1, noslip 0, solref (0.01, 1), solimp (0.99, 0.999, 0.001, 0.5, 2); read from the frozen scene MJCF",
  "physx": "TGS, articulation 100 position / 1 velocity iterations, contact offset 10 um, rest offset 0, max depenetration velocity unauthored (read back), GPU dynamics"
 },
 "analysis": "Only this run carries claims for HA1. Screen p-values are not reused. The combined 50 starts are reported descriptively.",
 "conditions": [
  {
   "id": "physx-nominal",
   "backend": "physx_gpu",
   "physics": {},
   "indices": "heldout25",
   "compare_to": null,
   "rationale": "reference condition on held-out starts; also a third determinism check against A2 nominal"
  },
  {
   "id": "physx-solver-pgs",
   "backend": "physx_gpu",
   "physics": {
    "solver": "PGS"
   },
   "indices": "heldout25",
   "compare_to": "physx-nominal",
   "rationale": "screen: seed4 6->19/25, seed2 12->24/25"
  },
  {
   "id": "physx-iterations-4-0",
   "backend": "physx_gpu",
   "physics": {
    "position_iterations": 4,
    "velocity_iterations": 0
   },
   "indices": "heldout25",
   "compare_to": "physx-nominal",
   "rationale": "screen: seed4 6->16/25, seed2 12->24/25"
  },
  {
   "id": "physx-iterations-25-1",
   "backend": "physx_gpu",
   "physics": {
    "position_iterations": 25,
    "velocity_iterations": 1
   },
   "indices": "heldout25",
   "compare_to": "physx-nominal",
   "rationale": "screen: seed4 6->8/25, seed2 12->17/25; intermediate dose"
  }
 ],
 "confirmatory": {
  "primary_endpoint": "seed4",
  "family": [
   "physx-solver-pgs",
   "physx-iterations-4-0",
   "physx-iterations-25-1"
  ],
  "test": "exact two-sided McNemar on paired (start) success vs physx-nominal",
  "correction": "Holm",
  "alpha": 0.05,
  "secondary": "seed2, seed0, reference: same test, reported descriptively; peak force medians",
  "prediction": "PGS and 4/0 increase seed4 success; 25/1 smaller or none"
 }
}
