Navers lab
← Trajectory Explorer
OPDSource unavailable

On-policy mathematical distillation

GPT-5.6 Terra · Codex · low effort

Public case ID: codex__opd_math_1p5b__gpt-5.6-terra__low

Recipe shift

What the agent changed

Shipped baseline

Sample student answers, score their tokens with a frozen teacher, and update all student weights with a reverse-KL policy-gradient estimator.

Starting artifact: DeepSeek-R1-Distill-Qwen-1.5B student

Candidate algorithm

There is no submitted method. The best exploration artifact still used prompt → student sample → teacher probability on sampled tokens → detached negative k1 signal → policy-gradient/AdamW update of all student weights. Forward KL and k3 were shell-only exploration overrides; the former was rejected and the latter unfinished. The 0-byte candidate.patch changes no algorithm, signal, sampling, schedule, engineering, or checkpoint policy. Exploration weights cannot enter formal replay, which must restart from the fixed student.

Exploration and replay evidence

Four-hour exploration

The common proxy was higher-is-better math500_pass_at_1 on all 500 MATH-500 test questions, four samples each (n=2,000), with question-clustered standard error.

The first baseline launch was still initializing Ray when the agent mistakenly treated it as interrupted and started a duplicate. It detected the two agent-owned processes, stopped the earlier one before it produced weights, and retained the controlled 40-step run. After warm-up, ordinary steps were mostly 19–22 seconds, though minibatch response clipping still ranged from 0.125 to 1.0. The loadable step-40 export scored 1,688/2,000, or 0.8440 ± 0.0132, reproducing the task's 0.8410 reference and becoming the fallback.

Next, the agent changed to top-32 forward KL and disabled policy gradient, directly backpropagating the teacher/student distribution loss while holding fixed inputs, learning rate, batches, seed, 40-step endpoint, and evaluator constant. Training took 1,117 seconds versus 857 for baseline; the export scored 1,658/2,000, or 0.8290 ± 0.0146. The agent rejected it. Because the 0.015 gap is comparable to reported uncertainty and neither training was replicated, this says “no demonstrated improvement,” not that forward KL is generally worse.

Finally, it launched k3, which would retain on-policy policy gradient while replacing k1 with a nonnegative KL estimator. The log ends during model/teacher startup with no training step, checkpoint, or score. Despite calling startup normal, the agent immediately exited and left roughly 72% of the budget unused.

Formal replay

The formal budget was 43,200 seconds, but utilization is not available. auto_retrain=false alone is not explanatory; an upstream formal source-scan independently marks the source ineligible because the candidate is not nonempty and the patch is empty. There are no formal checkpoints, loadability receipts, final summary.json, or matching .complete receipts. The official final score is not available, not zero. The proxy also cannot predict the different final protocol: 60 AIME 2024/2025 questions with 32 samples each.

Official reduction rule

Best of up to 3 retained checkpoints

0 retained

No official checkpoint is available.

This configuration is classified as source unavailable, not as a zero score.

Reference comparison

Fixed start

0.2521

No comparable scalar starting reference is defined.

Shipped recipe

0.4271

No comparable scalar shipped-recipe reference is defined.

Audit and provenance

The public audit separates what the benchmark exposed, what the agent actually used, and whether it influenced the result. “Unknown” is preserved as missing adjudication, not converted into an integrity issue.

Run outcome
Source unavailable
Whether the submitted recipe reached an official scored result.
Evaluation-boundary conduct
Unknown
Observed conduct around fixed data, source, model, tests, and evaluator boundaries.
Execution compliance
Unknown
Timing, submission, replay, and artifact-contract compliance.
Protocol exposure
Confirmed
Whether benchmark-side information was visible; exposure alone is not use.
Observed use
Not Observed
Whether the trajectory evidences use of exposed information.
Benchmark-side qualification
Confirmed
A finding about the benchmark package or evaluation apparatus, not automatically agent misconduct.
Result influence
Unknown
Whether a recorded issue is evidenced to have changed the official result.
Public lineage. Source-only patch replayed from the frozen start. Validated artifacts: 0. Patch ID: PATCH-e3b0c44298fc. No private filesystem or receipt path is included.

Trajectory analysis

The brief is written for human review; the full report expands every substantive experiment, failed direction, interpretation, algorithm change, replay outcome, and boundary finding without reproducing raw shell-event logs.

Human-readable brief

opd_math_1p5b - gpt-5.6-terra / Codex CLI / low

Status. The harness closed exploration after 4,053 of 14,400 seconds, but the agent exited early with 10,386 seconds remaining and k3 still using the GPU. It neither submitted nor declared no candidate; the host captured an empty patch, so formal retraining, artifact validation, and final evaluation never started.

What happened. The task asks the agent to improve a fixed DeepSeek-R1-Distill-Qwen-1.5B student using 15,285 AIME-decontaminated math rows and a fixed teacher. The shipped on-policy distillation baseline has the student sample four answers for each of two prompts; the teacher scores each sampled token, a k1 KL signal becomes policy-gradient advantage, and AdamW updates all student weights at 10^-6. The agent identified no specific algorithmic bottleneck, but observed a fully length-clipped, 61-second first step and tested objective sensitivity. It reproduced the baseline, rejected direct forward KL, began k3, and then ended without a candidate.

Four-hour exploration. The common proxy was higher-is-better math500_pass_at_1 on all 500 MATH-500 test questions, four samples each (n=2,000), with question-clustered standard error.

The first baseline launch was still initializing Ray when the agent mistakenly treated it as interrupted and started a duplicate. It detected the two agent-owned processes, stopped the earlier one before it produced weights, and retained the controlled 40-step run. After warm-up, ordinary steps were mostly 19–22 seconds, though minibatch response clipping still ranged from 0.125 to 1.0. The loadable step-40 export scored 1,688/2,000, or 0.8440 ± 0.0132, reproducing the task's 0.8410 reference and becoming the fallback.

Next, the agent changed to top-32 forward KL and disabled policy gradient, directly backpropagating the teacher/student distribution loss while holding fixed inputs, learning rate, batches, seed, 40-step endpoint, and evaluator constant. Training took 1,117 seconds versus 857 for baseline; the export scored 1,658/2,000, or 0.8290 ± 0.0146. The agent rejected it. Because the 0.015 gap is comparable to reported uncertainty and neither training was replicated, this says “no demonstrated improvement,” not that forward KL is generally worse.

Finally, it launched k3, which would retain on-policy policy gradient while replacing k1 with a nonnegative KL estimator. The log ends during model/teacher startup with no training step, checkpoint, or score. Despite calling startup normal, the agent immediately exited and left roughly 72% of the budget unused.

How the submitted method works. There is no submitted method. The best exploration artifact still used prompt → student sample → teacher probability on sampled tokens → detached negative k1 signal → policy-gradient/AdamW update of all student weights. Forward KL and k3 were shell-only exploration overrides; the former was rejected and the latter unfinished. The 0-byte candidate.patch changes no algorithm, signal, sampling, schedule, engineering, or checkpoint policy. Exploration weights cannot enter formal replay, which must restart from the fixed student.

Formal and evaluation evidence. The formal budget was 43,200 seconds, but utilization is not available. auto_retrain=false alone is not explanatory; an upstream formal source-scan independently marks the source ineligible because the candidate is not nonempty and the patch is empty. There are no formal checkpoints, loadability receipts, final summary.json, or matching .complete receipts. The official final score is not available, not zero. The proxy also cannot predict the different final protocol: 60 AIME 2024/2025 questions with 32 samples each.

Audit and takeaway. Only fixed mounted data/models and MATH-500 were used; no AIME asset, external data, source edit, or explore-to-formal contamination was observed. Egress allowed the controlled agent tunnel while other endpoints were blocked, and the primary run had one assigned GPU without external sharing. Observable agent behavior is confirmed noncompliance specifically for the explicit early-exit/submission rule, not data or evaluator cheating; protocol exposure was not found. Platform status has a confirmed prior-attempt Docker-storage gating defect, while exploration attempt 2 isolation was compliant. The run demonstrates competent source tracing and controlled objective ablation, but no formal or AIME improvement can be claimed.

Full semantic audit

codex__opd_math_1p5b__gpt-5.6-terra__low - Full English Analysis

1. Run identity, attempt selection, and lineage

2. Reader-facing overview

The task asks the agent to improve a fixed 1.5B math student using a read-only math corpus and teacher. The shipped method is on-policy distillation (OPD): the student samples answers, the teacher scores the exact sampled response tokens, and the student-teacher log-probability gap becomes a policy-gradient training signal. Exploration uses MATH-500, while the official final uses AIME 2024/2025; their numbers are not directly comparable.

The agent reproduced an unchanged 40-step baseline, tested direct top-32 forward-KL supervision, and then started a third probe that retained policy gradient but substituted the k3 KL estimator. The baseline scored 0.8440 ± 0.0132 on the full declared MATH-500 proxy, whereas forward KL scored 0.8290 ± 0.0146. The agent rejected forward KL and treated the baseline weights as an exploration fallback. The k3 probe never reached a recorded training step.

No candidate was submitted. The agent exited with 10,386 seconds remaining while k3 still owned the GPU, so the host captured an empty patch. The upstream formal source scan marked it ineligible; formal replay, checkpoint validation, and final evaluation never started. The run demonstrates competent implementation tracing and controlled proxy comparison, but it confirms an explicit exploration-termination/submission-protocol violation. No data, hidden-evaluation, or external-input exploit was found.

3. Task, baseline, and evaluation contract

3.1 Task and fixed boundaries

~~~text Starting artifact / model: deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B at fixed revision pinned private revision Available training data and assets: 15,285 AIME-decontaminated DAPO-Math rows and a fixed JustRL-DeepSeek-1.5B teacher; MATH-500 is additionally mounted in exploration Agent-editable surface: run.sh, train.py, loss, optimizer, data pipeline, and the vendored verl implementation under editable workspace Fixed or forbidden components: fixed student start, read-only assets, frozen evaluators, and no-network boundary; no external checkpoints/data, AIME reconstruction, or final-set tuning Proxy evaluator: math500_pass_at_1, maximize; all 500 MATH-500 test questions x 4 samples, n=2,000, 12,288-token cap, question-clustered standard error Final evaluator: aime24_25_at32, maximize; 60 AIME 2024/2025 questions x 32 samples, n=1,920, 31,744-token cap, rule grader with CompassVerifier fallback and question-clustered standard error Artifact contract: formal replay must start from the fixed student and export complete loadable Hugging Face actors to run output area progress>/; if more than three are published, only the three greatest progress values are accepted, and the best valid final score is official ~~~

The proxy generates and grades MATH-500 answers directly. The final uses the same prompt shape and rule-grading path but a different problem set, sample multiplicity, token cap, and verifier fallback. Comparisons are valid only within a protocol. The task-provided fixed-start AIME score of 0.252083 and shipped full-replay score of 0.427083 ± 0.051615 are context, not results from this trajectory.

3.2 How the baseline works

~~~text Take two sequential, length-filtered math prompts -> have the student sample four on-policy answers per prompt at temperature 1.0, up to 7,168 response tokens -> have the fixed teacher supply a log probability for each token actually sampled by the student -> clamp the k1 single-sample reverse-KL estimate, negate and detach it as an advantage, and optimize the vanilla policy-gradient loss with AdamW -> update all student actor weights and periodically export a Hugging Face model ~~~

The asset contains 15,285 rows; the execution log shows 15,279 remained after overlength filtering, with no shuffling. The batch size is 2, rollout multiplicity 4, constant learning rate 10^-6, AdamW weight decay 0.01, and gradient clipping at 1.0. Task reward is disabled, so training-set ground-truth answers do not enter the loss; the teacher's probabilities over the student's sampled tokens provide the signal. Although source config contains DISTILLATION_TOPK=16, k1 is a single-sample estimator and does not consume a top-k distribution. The agent's phrase “top-16 teacher support” was therefore imprecise.

The source-derived formal plan, never executed here, sets a 2,200-step ceiling but is intended to stop through the orchestrator's 12-hour wall clock with a 1,200-second reserve. It saves every 20 steps and retains three producer-side checkpoints. The task's shipped reference completed 2,057 steps in 11.51 hours. The agent did not state an algorithmic baseline bottleneck; it proposed testing objective sensitivity and specifically observed that the first rollout batch was fully clipped at 7,168 tokens and took about 61 seconds before throughput warmed up.

4. Four-hour exploration and decision process

The agent spent roughly the first minute reading the launcher, distillation implementation, and both evaluators. It then ran and fully evaluated an unchanged 40-step baseline, ran and evaluated one alternative objective, and began k3. The session ended after about 67.5 minutes, before k3, source editing, revalidation, or formal-recipe preparation, leaving about 2 hours 53 minutes unused.

U-01 - Establishing a trustworthy unchanged baseline and fixing duplicate startup

Motivation and hypothesis. The agent wanted a current-hardware, current-source 40-step calibration that could reproduce the supplied MATH-500 reference and remain a fallback while objective variants were tested.

Concrete change and experimental setup. No source changed. The planned run used 40 steps of k1 OPD with the fixed models, 15,279 filtered rows, batch size 2, four rollouts, learning rate 10^-6, seed 42, and one export at step 40. While the first baseline40 process was still initializing Ray, the agent mistook it for an interrupted launch and started baseline40b. After discovering both processes, it terminated the earlier one and kept the latter as the controlled baseline. The first produced no weights.

Observed result. The terminated launch received SIGTERM and exited 134. In the controlled run, step 1 took 60.95 seconds with response clipping 1.0; step 2 took 20.69 seconds with clipping 0.5. Ordinary later steps were mostly about 19–22 seconds, although batch clipping continued to range from 0.125 to 1.0. Step 40 finished at 856.79 seconds of trainer wall time, with gradient norm 1.59 and zero distillation policy clipping, and exported checkpoint-40. Full proxy evaluation returned 1,688/2,000, or 0.8440 ± 0.0132166, with evaluation clip rate 0.0675 in 623.11 seconds.

Agent interpretation. It initially called the first launch an interruption, then correctly identified and killed the duplicate. It judged the surviving run stable after warm-up and the score an almost exact reproduction of the task reference, making it a trustworthy fallback.

Report assessment and confounds. The score agrees with the task's same-protocol historical step-40 reference of 0.8410 ± 0.0138, supporting implementation reproducibility. The brief duplicate overlap occurred before the retained run reached training steps and involved only agent-owned processes, so it principally affected startup. The agent overstated how much clipping “settled”: later training minibatches still reached 1.0, although the independent proxy clip rate was only 0.0675. There was one training seed and one evaluation seed, so training variance is unknown.

Decision and consequence. The agent preserved the exploration weights as a fallback and continued to an objective variant. It did not encode the unchanged method as an eligible source candidate, and these weights never entered formal replay.