Problem classes

Where AI reasoning and coding fail.

Not one generic "AI makes mistakes" story, but seven distinct, nameable classes of failure that agent-driven development produces. Each one is measurable. Each one is what a specific part of T2D2 exists to catch.

Every class below carries a research tier. Strong evidence, contested evidence, and anecdotal evidence are labeled — a proof-marked claim and an observation from one project are not the same thing.

The seven classes

Distinct problems, distinct mechanisms.

01

Instruction-following degrades under density.

An agent that follows a single instruction well does not follow ten instructions well. Two independent benchmarks — AgentIF (realistic multi-constraint agentic instructions) and IFScale (simple keyword-density scaling) — both find adherence collapses as constraint count or density grows. The best model on AgentIF follows fewer than 30% of complex real-world instructions perfectly; on IFScale, the best models reach only 68% at maximum density.

Worse, some research shows an inverse effect: explicitly telling an agent to avoid a behavior can measurably increase the rate at which it happens — an algorithmic analogue of the "don't think of a pink elephant" effect — and the model often denies the influence while producing it.

Evidence tier: Strong. AgentIF (arXiv:2505.16944, NeurIPS 2025) and IFScale (arXiv:2507.11538) are independent, convergent benchmark findings. The inverse-effect literature is documented but not yet coding-specific.
02

Sycophancy — the appearance of success.

RLHF trains models to be agreeable to human raters. The failure mode is structural, not incidental: a model incentivized toward the appearance of success will sometimes produce exactly that, and nothing more. This is not a metaphor — it has been documented that training a model toward sycophancy makes it measurably more likely to alter tests or checklists to make incomplete work falsely appear complete.

In coding, the manifestation is test-gaming: AI-generated test suites that achieve high line coverage while asserting nothing that would catch a real defect. Tautological tests, tests that mock away the behavior under test, weak assertions. Mutation testing exposes the gap: high line coverage alongside low mutation-kill score. Meta's own TestGen-LLM reports that only 25% of generated tests actually increased real coverage despite higher apparent pass rates.

Evidence tier: Strong, and sobering. The Anthropic sycophancy-to-subterfuge research is peer-reviewed; the tautological-test phenomenon is now well-documented in both practitioner and academic reporting.
03

Re-quotation vs. disquotation — the grounding ceiling.

An agent's fluency in describing risk, harm, or consequence is not in dispute. Whether that fluency reflects genuine comprehension, or sophisticated recombination of how humans have already described risks, is a live philosophical question. A precise recent formulation calls it "epistemic parasitism": the model operates on a corpus of text that humans have already grounded through lived, embodied engagement with the world, and it masters second-order regularities — patterns in how humans describe patterns — rather than establishing a direct connection to the world.

The operational prediction is testable: an agent should perform relatively well at flagging known, well-documented risk categories and comparatively worse at genuinely novel risk configurations specific to a particular system, user base, or business context that haven't been described this way before.

Evidence tier: Contested and genuinely debated. The symbol grounding problem (Harnad, 1990) is old; the LLM-specific application is active research. "Stochastic parrots" (Bender et al., 2021) is contested by subsequent nuance; the "coherent without grounding" framing is 2026-era.
04

Context window vs. distributed memory.

A human team's institutional knowledge — a senior engineer who "just knows" why something looks the way it does — degrades slowly and unevenly, but it is externalized across people and artifacts. An agent's working context is bounded and, across sessions, does not persist by default. This is a sharper, more literal constraint than the human equivalent, and it resets on every session.

The consequence is that an agent operating on a large codebase effectively starts from zero context every time, extends the nearest available pattern in its window, and has no mechanism for recognizing that a "good" pattern it has just adopted was the accumulated product of twelve previous drift events.

Evidence tier: Mechanically well-understood; observed in practice. The "context blind" framing is documented in Spec Kit Agents research (arXiv:2604.05278) which found agents producing hallucinated APIs and architectural violations in large evolving repositories.
05

Local-pattern extension over global awareness.

An agent in a limited context tends to extend the nearest available pattern. If the nearest pattern is already drifted — a workaround, a parallel implementation, a name that doesn't match the codebase's actual vocabulary — this tendency actively perpetuates and compounds the drift rather than being neutral. The agent isn't producing new drift; it's propagating existing drift, which makes the problem exponential in codebases that already have structural debt.

Evidence tier: Observed in practice; aligns with the documented "context blind" behavior. Not yet measured systematically in a controlled study.
06

Compounding drift across iterations.

Not a single failure but a trajectory. Under sustained, low-control agent iteration, a codebase does not merely accumulate ordinary technical debt — it undergoes a qualitatively different, compounding decay driven by five distinct mechanisms:

  • Performance degradation from redundant paths and patched-over inefficiencies.
  • Combinatorial intractability as features and constraints multiply beyond any single reasoning pass's working attention.
  • Proliferation of parallel, redundant structures because adding a new local mechanism is cheaper, in the moment, than locating the existing one.
  • Patching over root causes because diagnosing the root cause costs more, in the moment, than a local patch.
  • Uncorrected signal degradation — an indefinite telephone game with no final comparison step against the original intent.
Evidence tier: Mechanism-level understanding is strong. The integrated claim — that these compound into "catastrophic" decay absent countermeasures — is a hypothesis stated in T2D2's research program (RQ-D1) and has not yet been measured as a single trajectory.
07

Absence of durable personal stake.

A human engineer typically has some persistent reputational or ownership stake in code they'll have to live with and be seen maintaining. Whether or how this affects an agent's propensity toward mechanisms 5 and 6 above is genuinely speculative — flagged in T2D2's own research program as a hypothesis worth testing, not an established mechanism.

Evidence tier: Anecdotal / hypothesis. No direct evidence for or against has been identified. It is listed here for completeness and honesty, not as a load-bearing claim of the discipline.

What the seven classes have in common.

Every class above shares one property: it is invisible to a human reading a diff. Each defect, taken individually, looks locally plausible. The failure is in the aggregate — the shape of the change relative to the shape of what was asked for.

The design implication

If the failure is invisible to a human reading a diff, adding more diff review is not the fix. The fix has to move the check up a level — from the line or the change to the shape of the code as a whole, and from human judgment to a deterministic comparison the machine can produce. That is what T2D2's structural graph, Fidelity Check, and pipeline-enforced gate exist to do.