# Phase 1 — in progress, teacher not qualified

The active state teacher experiment is
`runs/20260913T075521Z_servo125_contact_teacher_seed42` on GPU 1: seed 42,
1,024 worlds, 24 rollout steps and a 10,000-update budget. It retains native PPO
and the teacher DR schedule, with the explicitly recorded `contact-lift-v1`
reward additions. The native baseline
`runs/20260913T070019Z_native_ppo_teacher_seed42` was gracefully stopped after
333 completed updates / 7,992 vector steps / 8,183,808 environment transitions.
Its stopped checkpoint is retained and resumable.

Both use the same 37-value observations, normalized actions, strict objective,
1 kHz physics and 20 Hz control, without teacher rendering. The new run starts
fresh with the same seed to compare reward profiles. Added signals are valid
pad alignment, bilateral contact, contact-supported lift and hold progress;
all are gated by the existing episode-validity thresholds. They do not redefine
success. Two additional reward-profile invariant tests passed, and the scaled
new learner produces finite nonzero gradients, losses and KL. It is not yet
qualified. The final default DR boundary remains at 200,000 vector steps,
approximately update 8,334.

No teacher has been selected or promoted. No held-out final seeds have been used.
Phase 2 visual training is pending teacher qualification. These are simulation
experiments; no real-robot control was run.

## Management and checks

Run management stores source/config snapshots, local MJLab commit/diff, package
versions, command/PID/process group, TensorBoard, finite gradients, PPO losses and
KL, measured learner throughput and NVML process memory. Atomic checkpoints are
periodic and final; graceful stop operates at a completed optimizer update.
The audit run `runs/20260913T065719Z_native_ppo_resume_audit_seed41` verified exact
actor/critic/normalizer and optimizer reload, adaptive learning-rate and curriculum
counter restoration, then cooperative stop and another resume. Simulator episodes
and RNG intentionally restart as a new branch; exact trajectory continuation is
not claimed. Two pre-simulation startup failures are retained in the run index.

Six canonical domain/contract regressions passed. The action-history boundary
check passed with deliberately out-of-range actions. PPO evaluation now clamps
components just as the training wrapper does before recording previous-action
observations. Native recording caused zero direct state/observation mutation over
30 tested policy steps; separate rendered and unrendered runs showed the same
small drift as two unrendered repeats. These checks establish infrastructure,
not learned task success.

## Early validation — checkpoint 100

| Declared distribution | Strict successes | Wilson 95% | Mean terminal goal error | Invalid episodes |
|---|---:|---:|---:|---:|
| Nominal | 0/128 | 0.00–2.91% | 0.221 m | 100.0% |
| Restricted DR 0.05 | 0/128 | 0.00–2.91% | 0.187 m | 97.7% |
| Restricted DR 0.15 | 0/128 | 0.00–2.91% | 0.193 m | 92.2% |
| Restricted DR 0.35 | 0/128 | 0.00–2.91% | 0.213 m | 90.6% |
| Restricted DR 0.65 | 0/128 | 0.00–2.91% | 0.275 m | 71.9% |
| Primary full teacher DR 1.0 (3 seeds) | 0/384 | 0.00–0.99% | 0.378 m | 49.5% |

All 1,024 requested validation episodes completed. The primary rate is 0/384;
restricted-DR trials are distinct diagnostic suites and are not pooled into it.
The two illustrative video episodes are excluded from validation denominators.
The separate 1,024-episode frozen final test remains unused.

Nominal failures at checkpoint 100 were all invalid through disallowed contact,
with mean peak penetration 3.74 mm and no bilateral grasp/lift. Complete video
inspection shows descent into the bottle/table rather than a controlled grasp.
These are policy weaknesses, not an unreachable-start explanation. Native reach
reward increased while strict success remained zero. Continue learning and inspect
the next milestone; if lift/contact progress remains absent, test documented reward
shaping or exploration changes while retaining the original success predicate.

The audit's earlier 0/4 nominal pilot predates the inference history-clamp fix;
it is retained and explicitly excluded from model-selection evidence.

## Publication and remaining work

Dedicated page and homepage card are live at
https://real2sim.sudhirpratapyadav.com/rl-training/ through croc and `untu_vps`.
Existing pages are preserved. Public hash, responsive layout, video playback,
seeking, MIME and byte-range checks are recorded in `site_publish/qa/`.
Milestone monitoring is configured to publish curves, all-trial diagnostics and
nominal/full-DR illustrative videos. Illustrations are not success-rate denominators.

Required before promotion: substantial learned grasp/lift competence, convincing
controlled-DR behavior and failure analysis, validation-based checkpoint selection,
frozen final evaluation with full denominators, source/checkpoint preservation and
published evidence. Current results do not meet that standard.

Paused native checkpoint follow-up: 0/128 nominal strict success; invalidity 0.0%; mean terminal goal error 0.160 m. No 2 cm lift was observed.


## Controller correction under evaluation

The active run uses the explicitly versioned v4 controller: max joint correction
.02 rad, uniform direction-preserving scaling, and 125 Hz joint-position targets
on absolute 8 ms physics deadlines. See `results/comparisons/servo_tracking/` for
the original/variant tracking probes and actual control-write/reset checks. The
old .001-rad component-clipped controller tracked ±X poorly and initially moved
opposite both Z commands. The new variant retains 20 Hz policy, 1 kHz physics,
asset parameters, force limits and the original success definition. It has not
yet been qualified by learned-task evaluation; old checkpoints remain v3 and
cannot load as equivalent v4 policies.


### Grasp geometry follow-up

The first 125 Hz PPO checkpoint remained 0/384 at full DR, with 89.06% invalid episodes. A 12-setting scripted nominal mechanics diagnostic isolated the pad target height: +30 mm achieved valid holds at four apertures; +0 and +15 mm failed penetration validity. This is not learned-policy success. The 246-update run is preserved. A fresh `grasp-geometry-v2` PPO run is active with corrected reward geometry and aperture shaping. No teacher is qualified and no final image policy is exported.


### Aperture comparison underway

Geometry-v2 checkpoint 100 scored 0/384 on full teacher DR (62.76% invalid episodes), and 0/128 at each of nominal, 0.05, 0.15, 0.35 and 0.65 DR. Nominal through 0.15 had zero invalid episodes and no bilateral grasp. The nominal trace shows a saturated-open gripper. A parallel aperture-v3 run replaces only the narrow aperture reward kernel with bounded linear progress. Both runs remain active; the linear-aperture checkpoint 100 evaluation is underway. This has not qualified a teacher or begun production image training.


### Explicit scripted initialization followed by PPO

The raised-target scripted guide completed 128/128 strict successes across seeds 2501–2502 at restricted scale 0.05, with all 38,400 state/action pairs retained and no physics overflow flags. This is an initialization source, not learned-policy success. A native actor fitted to that source had low action error but scored 0/128 in independent closed-loop testing (89.06% invalid), demonstrating that supervised error is insufficient.

A fresh, audited PPO run now starts from that actor/normalization, with fresh critic, optimizer and counters; the guide is absent at rollout inference. It must still meet the entire original teacher qualification protocol. The two uninitialized comparisons remain recorded; geometry-v2 stops cooperatively after checkpoint 500. Linear-aperture checkpoint 100 was 0/384 full-DR with 97.40% invalid episodes. No teacher or final image policy is qualified.


### Current controlled outcome

No teacher is qualified. The first initialized PPO checkpoint remained 0/128 nominal. A pose-driven guide and corrective labeling experiment has produced one strict success in 128 independent scale-0.05 trials, with zero invalid episodes, after earlier fits produced invalid lifts or no grasp. This is an initialization experiment, not a final teacher result. A bounded corrective-data continuation and native PPO are active; all completed evaluations, failures, scripted-source labels and data lineage are retained. The image export remains pending the original qualification requirements.


### Latest full-DR comparisons and active run

Full teacher DR results remain 0/384 for geometry-v2 checkpoint 500 (90.63% invalid), linear-aperture-v3 checkpoint 500 (69.53% invalid), and timed-bootstrap PPO checkpoint 100 (83.33% invalid). None supports promotion or a reachability explanation. These full denominators, graphs and videos are published.

The current experiment is fixed-orientation actor initialization followed by native PPO, with clean privileged state and initial exploration standard deviation 0.05. The fitted actor often lifts but drops; both fitted selection variants were 0/128 strict successes. A nominal trace ties the first excessive penetration to a drop after reopening. The new PPO run is unqualified. The final image policy/export remains pending the original requirements.


### Normalization correction under test

Online actor normalization updates were severely changing the fitted policy before meaningful PPO refinement. A fixed-state isolation audit measured raw action MAE increasing from 0.01048 to 0.46952 from normalization alone after one rollout. The corrected run freezes the pretrained actor's normalization, keeps critic normalization trainable and lowers initial PPO learning rate to 1e-4. Its first checkpoint preserved normalization exactly and changed applied actions by mean 0.00474. These are initialization-path checks, not teacher qualification. Full task evaluation is pending for `20260913T093744Z_frozen_normalization_grasp_ppo_teacher_seed42`.

## User-directed native lift baseline (2026-09-13, 10:04 UTC)

The user requested native lift-cube-style rewards and success, restricted DR, and sustained training without unnecessary restarts. This supersedes the earlier strict-hold primary criterion and time-driven DR schedule for new experiments. Old results retain their original definition.

- Run: `20260913T100411Z_native_lift_restricted_long_teacher_seed42`; fresh native PPO, no BC initialization or grasp reward additions; 1,024 worlds on cuda:1; 20,000 updates, checkpoints every 500.
- Native staged reach/bring reward, precise goal reward, and native action/joint regularization curriculum. Success is the actual inherited command episode latch for bottle-root distance < 5 cm to the goal. The former strict grasp-and-hold state remains a labeled diagnostic, not the primary gate.
- DR stays enabled with no nominal mixing, initially fixed at scale 0.05. Bottle table-local X is approximately [0.1540,0.1880] m and Y [-0.1326,-0.1144] m; table translation ±7.5 mm, base translation ±5 mm, table/base yaw ±0.75 degrees, initial arm perturbations ±[0.75,0.5,0.5,0.75,0.75,1.5] degrees. Physics randomization and randomized goals remain active. This is a small declared distribution, not a filtered reachable-only metric.
- Every 1,000 updates evaluate 128 trials each on seeds 1101–1103, all counted. Two consecutive complete evaluations at the same stage must both exceed 90%, with rates within 3 percentage points. Only then advance one stage through [0.05,0.10,0.15,0.25,0.35,0.50,0.65,0.80,1.0]. Changes apply on subsequent resets, without restarting the learner.
- No performance-based early stop. Continue the 20,000-update run unless explicitly redirected or a process/numerical failure prevents training. The old run was cooperatively stopped at 190 updates solely to enact the user's requested change.
- Pre-change evidence: frozen-normalization checkpoint 100 lifted above 10 cm in 15/128 nominal trials, but had 0/128 strict-hold successes. These numbers are not relabeled under the new criterion.

Canonical `objective.primary_success` selects the declared metric. Task spec is `bottle-lift-v6-native-goal` for new native-goal experiments; the legacy mode remains the default for old presets. Fixed evaluation quotas, raw invalidity and drop measurements remain. Native-success and old strict-success rates must not be pooled or plotted as if identical.

## Low-success plateau and gripper saturation (2026-09-13, checkpoint 1500)

The native-reward long run continues at DR 0.05. Checkpoint 1000 completed all 384 validation trials: 0 native-goal successes, 0 lifts above 2 cm, no invalid episodes. Return has plateaued near 25.44 with full 300-tick episodes. The last three 100-update windows have zero success and essentially unchanged 0.5 mm mean peak clearance. This is a stable low-success plateau, not instability or successful saturation.

A complete, declared 16-world checkpoint-1500 diagnostic found the gripper Gaussian mean in [2.7388,3.7502], while the applied action is clamped to [−1,+1]. Its standard deviation is 0.5353. The median analytical probability of drawing an action below −0.5 is approximately 2.3e−13 at observed clean-state deterministic rollout states; this is not an estimate of stochastic training success or a forecast of future PPO updates. All deterministic gripper means exceed the fully-open bound. The RZ mean also exceeds +1 throughout. Translation-axis standard deviations are only 0.025–0.038, which the single averaged exploration statistic conceals.

TCP approaches the bottle root and the pad midpoint sits approximately 2–3 cm above it; the gripper stays at about 100.46 mm aperture. Video and trajectory agree that the policy reaches but does not close. The native reward implementation is unchanged. The action-clipping/exploration interaction is now a concrete failure mechanism to track; it is not evidence of unreachable starts.

No learner restart, reward change or DR widening was made. Continue the requested long baseline and compare subsequent checkpoint evaluations and action distributions before deciding on a necessary correction. Evidence: current run `analysis/action_distribution_model1500_retry1/{audit,trajectory}.json`, `plots/action_bound_saturation.png`, and `evaluations/validation_model1000/scale0.05/summary.json`. An initial audit attempt failed before stepping because its model constructor received an unused CNN config field; its log remains preserved, and the corrected audit completed all trials.

## Native adapter correction at update 2056 (2026-09-13, 11:57 UTC)

Checkpoint 2000 again scored 0/384 native-goal successes, with no 2 cm lifts, confirming the sustained open-gripper plateau. Two concrete adaptations were corrected after controlled diagnostics, without resetting learned weights or starting another run.

1. The native joint-speed hinge now selects the six UR5 arm joints. Native YAM finger joints are prismatic; RG2 has six angular linkage joints. The same 0.5 threshold applied to those linkages imposed a large closure cost. In 16 scripted successful low-DR trials, the all-joint speed penalty contributed −19.3576 return, leaving total return 18.0542 and discounted return −2.6568. Arm-only selection gave return 37.4120 and discounted return 10.0007, with 16/16 successful grasps in both cases. The learned no-grasp policy earned about 25.44. These are scripted reward diagnostics, not learned successes. Separate GPU replays differed by up to 0.096 mm, so the initially requested 1 micrometre trajectory-identity check failed and is retained; same-trajectory reward-component accounting independently establishes the penalty size.
2. Gaussian action means now pass through tanh so they stay within the normalized action range. The underlying Gaussian sampling, log probabilities and PPO remain; samples still use the existing action clamp. This directly addresses means above +3 being clamped to fully open, with effectively no closure exploration. This is a bounded-mean Gaussian, not a tanh-squashed sample distribution.

All native reach/bring and goal reward terms and weights, the speed-weight curriculum, native 5 cm goal success, DR 0.05, controller, physics and observations remain. There are no extra grasp bonuses. The 20,000-update target remains.

The same managed run was cooperatively stopped after update 2056 and resumed with exact actor/critic tensors, normalization, Adam state, learning rate and counters restored. Resuming starts fresh simulator episodes and an explicitly new RNG branch. The pre-change checkpoint SHA256 is `f2248d3df43e1809083d358bac6dec84718807bfb69e94d66873472c58a764ad`; its copy, old/new configs and source snapshot are under `source/revisions/native_adapter_v1/`. The transition validator permits only the declared speed-penalty selector difference; the changed distribution is explicitly configured. A separate test verified actual canonical inference and a finite PPO update before the pause. The actual managed resume checks all passed.

Old checkpoints keep their original actor and reward configuration when evaluated. New checkpoints embed actor and launch metadata. Training plots mark the correction and window-based plateau analysis restarts at the revision boundary, avoiding comparisons of different reward settings. Current authoritative config: the run's `launch.json`; fresh reproduction config: `configs/teacher_native_adapter_long_seed42.json`. This necessary adaptation correction is the single exception to leaving this long baseline untouched; it is not a claim of task reliability. Continue training and inspect the scheduled evaluations.

## Checkpoint 3000 and gripper exploration floor (2026-09-13, 13:06 UTC)

The long run reached checkpoint 3000 without another interruption after update 2056. Full restricted-DR validation completed all 384 trials at scale 0.05: **0/384 native-goal successes**, Wilson 95% interval [0%, 0.9905%], no lifts above 2 cm, no invalid episodes, mean peak clearance 0.500 mm and mean final goal error 0.1592 m. Checkpoint SHA256: `c9f2cbeb0acdd243100492bf102dd646f78e8c34892fbe8619547b808ed154ac`. The ordinary success denominator remains intact.

Three-window curve reviews through update 3004 consistently identify a low-success plateau, with average policy std below 0.05. The checkpoint's per-action learned std is [0.0213, 0.0230, 0.0203, 0.0354, 0.0311, 0.0832, 0.0562]. Gripper std declined from 0.535 at checkpoint 1500 to 0.122 at 2500 and 0.056 at 3000. The earlier complete action diagnostic directly showed a fully open mean-policy gripper. Longer training in this window did not establish lifting or recover useful exploration.

A targeted correction adds a minimum effective Gaussian std of **0.5 for the gripper only**. Arm-action distributions, deterministic mean function, rewards, success definition, physics, controller, observations and DR remain unchanged. No actor weights or learned std parameters are reset. The floor is explicit actor configuration; Gaussian sampling, likelihood, entropy and KL all use the effective std. Diagnostic scripts now distinguish learned std parameters from the effective std used for sampling. Old configurations have no floor, preserving old checkpoint behavior.

Before the transition, `results/teacher/infrastructure/gripper_floor_resume_check/audit.json` passed exact actor/critic/Adam loading, task-spec identity, identical deterministic actions, unchanged six arm-action std values, correct gripper floor and Gaussian likelihood, canonical inference, and a real finite PPO update. These are infrastructure checks, not task success.

The same run was cooperatively stopped after **3069 completed updates** and resumed. The actual resume audit `resume_verification_update3069.json` passes exact actor/critic (including normalization), optimizer, learning-rate and counter restoration; fresh simulator episodes and a new RNG branch are explicitly recorded. Source checkpoint SHA256: `48c660288fcb451f83b27bc7ba160c160183436078b4d50adb3824898bda29bd`. Configs, source snapshot and lineage are retained under `source/revisions/gripper_exploration_floor_v1/`. Current config is the run's `launch.json`; fresh reproduction config is `configs/teacher_gripper_floor_long_seed42.json`.

Decision: continue this same 20,000-update run at DR 0.05. Do not stop for early post-transition return fluctuations. The next complete validation is checkpoint 4000; no DR promotion or teacher qualification has occurred. The numerical effect of the floor is proven; its usefulness for learning remains to be measured.

## Checkpoint 4000: no measured improvement yet (2026-09-13)

The continuing run completed all **384/384** restricted-DR validation trials at scale 0.05: **0 successes**, no 2 cm lifts, no invalid episodes, mean peak clearance 0.500 mm and mean final goal error 0.16047 m. The native-goal success Wilson 95% interval is [0%, 0.9905%]. Checkpoint SHA256: `c8900a000823e670758ad8d6d323e842acd2ecdbafd36994dd112a1f1364b115`. No starts were excluded.

This is the first scheduled full validation after the gripper-floor revision at completed update 3069. The floor's implementation and checkpoint persistence are verified, but its task benefit is not: the measured result remains zero. The continuing run's curves through update 3806 still classify a low-success plateau with KL near its target. The clean initialization is also still in early training, with zero logged success at its 303-update review; it has not reached its first full validation.

Decision: retain both 20,000-update runs with the same corrected task and DR 0.05. Do not make another change on this result while the clean initialization accumulates its first substantial training window. Its first full validation is checkpoint 1000; the continuing run's next validation is checkpoint 5000. Neither run is promoted, teacher qualification remains incomplete, and the final held-out seed set stays reserved. Scheduled publication includes the full result and the usual single complete-episode illustration; no additional video jobs are requested.

Evidence: continuing run `evaluations/validation_model4000/scale0.05/{summary,protocol}.json` and complete episode records; clean run `20260913T134249Z_native_corrected_from_start_teacher_seed42`.

## Original continuation checkpoint 5000: plateau persists (2026-09-13)

The original continuation completed another full 384-trial evaluation at DR 0.05: **0/384 native-goal successes**, zero lifts above 2 cm, no bilateral-contact trials, no invalid episodes, and 384 timeouts. Mean peak clearance remains 0.500 mm; mean final goal error is 0.16047 m. Wilson 95% success interval: [0%, 0.9905%]. The complete raw episode rows match the aggregate. Checkpoint SHA256: `d177547b1ab497c9e769bcc857a790105e2d20627f887a62b1a0b14d8ad36cdf`.

In all three retained first-world traces, deterministic gripper commands remain above +0.997 throughout the episode: the gripper stays open. These illustrations support the previously observed failure behavior but do not identify its cause. Curve review 5008 is still a low-success plateau: three-window return per tick is 0.085058, 0.085064, 0.084975, with mean KL 0.01076, 0.01198, 0.01134 and essentially no clearance. The gripper exploration floor has persisted for more than 1,900 updates without improved deterministic validation success.

Decision: retain both already-running 20,000-update experiments and DR 0.05, with no further reward, action, initialization or optimizer change here. The clean run is just beyond 1,300 updates and continues toward its second complete evaluation at checkpoint 2000; original checkpoint 6000 is next. This is a continued learning failure, not an unreachable-start explanation, a curriculum-promotion signal or teacher qualification. Evidence: original run `analysis/checkpoint5000_review.json`, `analysis/update005008.json`, and `evaluations/validation_model5000/scale0.05/`.

## Clean run checkpoint 2000: no grasp improvement (2026-09-13)

The corrected-from-start run completed its second full 384-trial validation at DR 0.05: **0/384 native-goal successes**, zero lifts above 2 cm, zero trials with bilateral contact, no invalid episodes and 384 timeouts. Mean peak clearance is 0.500 mm; mean final goal error is 0.16047 m. Wilson 95% success interval: [0%, 0.9905%]. All raw per-seed episode rows match the aggregate; no starts were excluded. Checkpoint SHA256: `970b75da3892058aab497ceab84890ed5094c938741c108ba99e94e9874f4460`.

The first-world trace for each validation seed still shows brief initial closure followed by an open command from 0.45–0.60 s onward. Commands exceed +0.9 for 96.3–97.3% of frames, with no bilateral contact in these illustrations. This extends the checkpoint-1000 failure evidence; the extra 1,000 updates did not establish coordinated grasping. The trace sample is illustrative, not an alternate denominator or causal proof.

Curve review 2000 remains a low-success plateau. Across three 100-update windows, return per tick is 0.085152, 0.085144, 0.085137; average peak clearance stays near 0.500 mm, success stays zero, and mean KL is 0.01078, 0.01203, 0.01193. Numerical stability does not establish task competence.

Decision: both already-running 20,000-update experiments continue with the recorded settings and fixed DR 0.05. No new learner, reward/control change, checkpoint reset, DR promotion or teacher qualification is introduced here. The original continuation is approaching checkpoint 6000; the clean run continues toward checkpoint 3000. The failure remains a policy weakness under restricted DR, not an unsupported unreachable-start explanation. Evidence: clean run `analysis/checkpoint2000_review.json`, `analysis/update002000.json`, and `evaluations/validation_model2000/scale0.05/`.

## Saved-state exploration audit after clean checkpoint 2000 (2026-09-13)

A CPU-only comparison of the clean run's checkpoints 1000 and 2000 shows that upward-action standard deviation fell from 0.08910 to 0.03910, while the gripper's effective std remains 0.5. Using the recorded deterministic world-0 action means for all three evaluation seeds, at t >= 3 s the median conditional probability of a raw upward command >0.1 falls from 13.06% to 0.525%. For >0.25 it falls from 0.002501 to 8.01e-11 (probabilities, not percentages). The sign alone is not rare: P(dz > 0) stays near 0.5. Median P(gripper < -0.5) stays near 0.00135 around the open mean.

This is evidence of narrowing arm exploration at the saved states, alongside the zero-lift plateau. It is not a stochastic-policy success rate, not the empirical training-state distribution, and not a proof that these command thresholds are required for a lift. Both all-frame and explicitly labeled post-3-second diagnostics are retained; the ordinary validation denominator remains 384 with no exclusions. No new simulator, learner or video was run, and no training settings were changed.

The comparative graph has been prepared for the next scheduled publication with an explicit conditional-probability caption. Evidence and reproduction: clean run `analysis/saved_exploration_1000_2000/{analysis.json,interpretation.md,source.py,plots/saved_exploration.png}`; source command `scripts/analyze_saved_exploration.py`. Continue both existing long runs at DR 0.05.

## Frozen-policy sampling probe and original checkpoint 6000 (2026-09-13)

A single controlled sampling probe used the frozen clean checkpoint 2000 with all 128 trials per condition at DR 0.05 and development seed 1101. Saved Gaussian sampling produced 0/128 native-goal successes, zero 2 cm lifts and zero bilateral-contact trials. Applying a 0.3 minimum std to the six arm actions on a local actor copy also produced 0/128, zero lifts and zero contact trials. Penetration >3 mm increased from 1/128 to 64/128; all trials remained in the denominator. These are clean-observation, frozen-policy diagnostics, not training or qualification results.

Actor/normalizer tensors and the checkpoint file stayed unchanged. Initial actor observations, deterministic actions, positions and goals match exactly. Bottle-quaternion components differ by at most 1.1921e-7; the original strict bitwise audit failed after both conditions completed. A retained post-run review documents the float32 rounding difference without repeating or discarding trials. Original source, logs and comparison are preserved. Evidence: clean run `analysis/stochastic_exploration_checkpoint2000/{comparison.json,pairing_review.json,interpretation.md}` and both full condition summaries.

Decision: do not apply the tested 0.3 arm floor to either learner based on this probe. Extra independent noise did not immediately produce grasping and increased penetration diagnostics; this does not establish what learning with that floor would do. Continue the two current long runs unchanged.

The original continuation's checkpoint 6000 also completed all 384 validation trials at DR 0.05: **0/384 native-goal successes**, zero 2 cm lifts, no invalid episodes, mean peak clearance 0.500 mm and mean final goal error 0.16047 m. Wilson 95% interval: [0%, 0.9905%]. Checkpoint SHA256: `ce6fd7ca2db963d4907989272819cccebb69266856bb11aa74bb9b536eb2b085`. Raw trial counts were checked against the aggregate. Evidence: original run `analysis/checkpoint6000_review.json` and `evaluations/validation_model6000/scale0.05/`. No DR promotion or teacher qualification.

The clean checkpoint-2000 website transfer encountered two transient croc failures; its later retry transferred and deployed successfully, with public verification following. Failure history is retained in `milestones.json`; neither learner was stopped or restarted for publication.
