Developer-agent misalignment, as defined by Tang et al. in How Coding Agents Fail Their Users: A Large-Scale Analysis of Developer-Agent Misalignment in 20,574 Real-World Sessions, is an observable breakdown between a developer and a coding agent. Drawing on Shen et al.’s bidirectional human-AI alignment framework, the definition is scoped to two alignment goals: instructions, what the developer explicitly asks for, and intentions, what they actually want. The remaining alignment goals in that framework — preferences, desires, interests and values — are deliberately excluded, on the grounds that assessing them would require evidence chat logs cannot reliably supply.
Usage
The definition’s distinctive move is that misalignment is counted only when it becomes visible through subsequent developer correction or pushback in the conversation. Latent misalignment that manifests only in a developer’s private cognition or in off-chat actions — silently rejecting output, or editing the code directly without comment — falls outside it. That restriction is what makes the concept measurable from conversation logs at all, and it is also its main limitation: categories that naturally provoke verbal pushback are observed more completely than those a developer would quietly work around.
Tang et al. characterise each episode along four axes. Symptom describes the form the divergence took, in seven categories: Wrong Project Diagnosis (misreading the codebase or technical situation), Misread Developer Intent (a plausible concretisation of an underspecified request), Developer Constraint Violation (ignoring an explicitly stated rule), Self-Initiated Overreach (acting beyond the stated scope), Faulty Implementation (right task, incorrect code), Operational Execution Error (a malformed command or tool call), and Inaccurate Self-Reporting (misstating the status of its own work). Cause asks why, in a separate seven-category scheme running from Underspecified Instruction and Scope Overreach through Context Loss and Default-Driven Override to a residual Instruction-Following Failure and a Cannot Determine option. Outcome records damage severity and, where the system was affected, the locus of that damage — code or task state, project state, environment and configuration, or external state. Resolution records whether the episode was resolved within the visible conversation and, if so, by whom.
Two distinctions in the scheme are worth keeping separate in use. Misreading the developer (Misread Developer Intent) is not the same as misreading the technical situation (Wrong Project Diagnosis), even though both produce a confidently wrong action. And exceeding the requested scope (Self-Initiated Overreach) is distinguished from fulfilling the request through a forbidden approach (Developer Constraint Violation) — in that study’s within-session data, constraint violation co-occurred with faulty implementation and wrong diagnosis below chance, which the authors read as evidence that constraint adherence and technical correctness are distinct facets of agent behaviour.
When It Applies
The concept applies where a developer and an agent interact across multiple turns and the interaction leaves a conversational record. It assumes there is a developer instruction or expressed intent to compare against: work the agent decided to do on its own — autonomous codebase exploration, self-initiated refactoring — is not misalignment under this definition unless the developer pushed back on it.
Its characteristic misapplication is treating an agent’s unrequested initiative as misalignment in itself. The study’s own extraction pipeline made exactly this error often enough to need a dedicated second validation stage: a first pass flagged deviations from the extractor’s expectations of appropriate agent behaviour even where the developer expressed no dissatisfaction. That validation stage retained 16,118 of 29,896 candidate episodes (53.9%), with observational blind spots — attributing a failure to the agent on the basis of context absent from the log, such as tool calls executed outside the chat transcript — accounting for the majority of what it rejected. The lesson generalises beyond the pipeline: absence of execution in the chat does not prove absence of execution, and a critique of agent style is not misalignment unless the developer voiced that preference.
As a framework it is recent and rests on a single study, whose authors present the resulting distributions as a snapshot of a fast-moving practice rather than stable constants. The taxonomy itself was built bottom-up through iterative abductive coding — two researchers open-coded a sample and iterated over three rounds until no further revisions were needed — rather than by applying a prescriptive taxonomy, and both symptom and cause schemes carry a catch-all category specifically to surface patterns the scheme does not fit: an eighth symptom code, Other/Emerging, which covered 0.34% of episodes and was excluded from further analysis, and on the cause side the Cannot Determine option already listed above.
Related Terms
- How Coding Agents Fail Their Users: A Large-Scale Analysis of Developer-Agent Misalignment in 20,574 Real-World Sessions — the study that proposes this definition and the four-axis characterisation
- AI Coding Agent — the class of system the concept is about
- Human-in-the-loop — the supervision arrangement the study’s resolution data speaks to, since 91.49% of visible resolutions required explicit developer pushback
- Verification Debt — a related account of the cost an unverified agent output pushes onto the developer