Where this sits
This is a short extension of two earlier results, not a new method.
The system as it stands established that the two-circuit method works: 600 steps, no collapse, on a small model with short single-turn generations. Its recorded conclusion was that the circuit is sound and the train-inference mismatch is the outstanding problem.
Larger model, longer context then pushed generation length up. That run gained nine points of held-out accuracy and gave them all back in twenty steps, through a length feedback loop the compressed path could not see.
This run changes the task rather than the model size. It is the same conclusion arriving far sooner, and for a reason that is specific to agents.
What the run did
The outcome first, before any explanation of it. The compressed run was still improving at step three, then gave up everything it had gained and stopped moving at all.
A · critic/score/mean
Mean score per training step, both runs on one axis, zero marked.
The gap, measured before any training happens
Generation runs dense on the serving copy. Training runs through the compressed path. So the same token has two probabilities: the one the sampler used when it chose it, and the one the trainer computes when it learns from it. The gap between them is the whole problem.
B · Train-inference probability gap
Mean absolute difference, per emitted token, between the sampler's probability and the trainer's.
This is not the rollout-correction KL. The single-turn math runs logged a log-ratio in nats, produced by the importance-sampling correction path. That path is not part of this build, so no such quantity was ever recorded on this task. The two are not interchangeable and neither can be derived from the other: an absolute probability gap says nothing about the ratio of the two probabilities, and the log-ratio is unbounded as either probability approaches zero. What is plotted here is the raw gap, which is the only form of the measurement this run produced.
How the collapse actually runs
It is not a blow-up or a loss spike. It is a length runaway that walks into a hard ceiling and takes the learning signal with it.
C · Tokens emitted per interaction
The mechanism panel. Length climbs into the per-interaction budget and stays there.
Putting chart A and chart C together, the chain is mechanical:
| step | what happens |
|---|---|
| 5 | Responses reach the 512-token budget and start being truncated. |
| 6 | No episode in the batch completes its task, and the score crosses below zero. |
| 17 | Not one emitted action is parseable by the environment. Truncated text is not a valid action. |
| 17 | Every trajectory now scores exactly −0.100, so the group-relative advantage is constant and the policy-gradient term is zero. Learning has stopped on its own, which is why the score line is flat rather than still falling. |
The run was carried to step 44 to check whether it would come back. It did not.
Why an agentic task should fail sooner, and does
A reasoning task and an agentic task put very different amounts of compressed forward pass between the reward and the gradient.
On a single-turn reasoning task, one training row is one whole answer. The compressed path is crossed once per answer, over one continuous span of tokens, and most of those tokens carry a loss term.
On an agentic task, one trajectory is up to fifty interactions, and each interaction is a separate training row with its own compressed forward pass and its own independent distortion. Two things follow. The prompt now dominates each row, because every interaction carries the whole accumulated history, so only a small minority of tokens in a row carry any loss at all while the distortion applies to all of them. And the interactions are not independent: what the policy writes at one turn becomes part of the prompt at the next. A distorted policy writes a worse history, and the next turn conditions on it.
That last part has no equivalent on a single-turn task. There the distortion is applied once and the episode ends. Here it is applied at every turn, inside a loop that feeds its own degraded output back in as input. So the same per-pass distortion that was survivable for 600 steps on short answers has fifty chances per trajectory to compound, and it compounds through the environment rather than only through the weights. Collapsing in single-digit steps is the expected outcome, not a surprising one.
What follows
Closing the gap is now ahead of anything else on the list. The direct move is to correct for it explicitly, so the trainer weights each token by the ratio between the sampler's probability and its own instead of assuming they agree. Reducing the amount of distortion per pass is the blunter alternative and costs communication. Either way the target is the 0.61 in chart B, not the length curve in chart C, which is only where the damage becomes visible.