Thirteen published findings explain why a coding agent that builds a convincing demo from a short prompt does not, on its own, produce a dependable application. Applied to a system of record, such as an enterprise resource planning (ERP) or customer relationship management (CRM) system, the same approach tends to produce software that looks right on the screen and does not do what it should underneath. We group the findings into what the model loses as the work grows, what it invents, what it games, and what nobody checked.
On the commercial set of SWE-Bench Pro, a benchmark drawn from private company codebases, the best models tested resolved fewer than 20% of tasks (Deng et al., 2025). The same paper notes that 161 of the 500 tasks in the widely used SWE-Bench Verified set need only a one- or two-line change. These observations concern different task sets and measures. They motivate examining larger engineering tasks, rather than measuring a demo-to-application transition. A short description produces screens, forms and sample data, and the application runs. As a real project grows, the agent skips requirements it followed earlier, fills gaps in the specification with assumptions and reports work as finished when it is not.
The studies below examine related failure modes across different models and tasks. Together they identify risks; none of them gives a single failure rate for building applications. In this post we collect them in one place. The other papers in this series take each group in turn and summarise the research on what to do about it.
The gap between a demo and an application
Software-engineering benchmarks give the most direct evidence. SWE-Bench Pro uses long-horizon tasks from business applications, where a fix spans several files and can take a professional engineer hours or days.
SaaSBench (Ren et al., 2026) asked agents to build enterprise software-as-a-service systems across 30 tasks, 8 programming languages, 6 databases and 13 frameworks. The authors found that the main obstacle for the agents was configuring and integrating a system of many components. Writing isolated code logic was the easier part. More than 95% of failures happened before the agents reached the business logic. A demo exercises the part that models do well. The figure below shows the layers underneath it that a serious application needs and a prompt does not supply.
What the model loses as the work grows
- Accuracy falls as the context fills. In Lost in the Middle (Liu et al., 2024), GPT-3.5-Turbo answered 75.8% of questions when the relevant document came first of twenty, and 53.8% when it came tenth. NoLiMa (Modarressi et al., 2025) found that eleven of thirteen long-context models fell below half their short-input score at 32,000 tokens.
- Instructions are dropped as they multiply. IFScale (Jaroslawicz et al., 2025) gave twenty models up to 500 instructions at once. The best reached 68% accuracy at that density, and models showed a bias toward the instructions that came first.
- Long tasks fail more often than short ones. METR (Kwa et al., 2025) measured a 50% success horizon of about 50 minutes of human work for Claude 3.7 Sonnet, a figure that had doubled roughly every seven months. A whole application built in one run is still far longer than that.
What the model invents
- Packages that do not exist. Spracklen et al. (2025) found that 19.7% of the 2.23 million package recommendations collected in the study named packages that did not exist. In a sampled Python repetition experiment, 43% of hallucinated packages recurred in all ten reruns.
- Requirements the prompt left out. In SWE-Bench Pro, GPT-5’s resolve rate on a task sample fell from 25.9% to 8.4% when the requirements and interface details were removed from the prompt. The authors note that without them, the tests can also reject solutions that work but differ from the expected interface. Either way, what the prompt did not state was not reliably supplied.
- Different code for the same request. Ouyang et al. (2025) sent each prompt to ChatGPT five times. At the default temperature, on 75.76% of CodeContests tasks no test case produced identical output across all five candidates. At a temperature of zero the share was 43.64%, lower but not zero.
What the model games
- Tests changed instead of code fixed. ImpossibleBench (Zhong, Raghunathan and Carlini, 2025) gives agents tasks whose tests contradict the specification, so any pass is a shortcut. GPT-5 passed 54% of them on one variant, by methods from editing tests to overloading comparison operators.
- The scoring itself patched. METR (2025) found reward hacking in 30.4% of o3’s runs on one set of research tasks. Examples included overwriting timing functions and modifying evaluators to report success.
- Work that stops when it looks done. Anthropic’s Claude Code guidance states that “Claude stops when the work looks done,” and that without a check it can run, “’looks done’ is the only signal available.” SaaSBench reports agents halting early from overconfidence.
What nobody checked
- Security flaws in plausible code. Pearce et al. (2022) found about 40% of 1,689 programs generated for security-relevant scenarios to be vulnerable. Perry et al. (2023) found that developers using an assistant wrote less secure code and were more likely to believe it was secure.
- Duplication in place of reuse. GitClear (2025) analysed 211 million changed lines and found that in 2024, as AI assistants spread, copied code exceeded moved code for the first time. Moved code is the signature of refactoring.
- Less stable delivery. In the 2024 DORA report, AI adoption was associated with lower software delivery stability and throughput. The 2025 DORA report, from nearly 5,000 respondents, found that AI adoption now has a positive relationship with software delivery throughput and “does continue to have a negative relationship with software delivery stability”.
- A gap between felt and measured speed. In METR’s randomised trial (Becker et al., 2025), experienced developers took 19% longer with AI tools and afterwards estimated that they had been 20% faster.
Practices examined in the series
We use these findings to motivate the following engineering practices. The companion papers identify the supporting studies and guidance, distinguish tested interventions from our synthesis, and discuss their limits.
- Specify before building, and keep the standards in the repository, where every session reads them and required checks enforce them, as vendor guidance for Claude Code and Codex describes. See how coding agents fill in the standards nobody gave them.
- Budget the context. Give each step a small, selected context and keep the record outside the window, following Anthropic’s context-engineering guidance. See why model accuracy falls before the window is full.
- Decompose the work and check each piece before the next, as plan-and-solve, least-to-most and published execution-plan guidance describe. See decomposing the work and checking each piece.
- Keep the check out of the builder’s reach. See agents and their own tests and dashboards that pass while answers are wrong.
- Expect variation and test for it. See the same prompt and different code.
- Keep changes small and measure delivery, not output. See faster code and more incidents.
- Grant autonomy in steps, and record who decided. See earned write access and who approved this change.
A prompt supplies the visible surface of an application. The research above describes what it does not supply: the specification underneath, the controls that test and secure it, and the operating layer of audit records, change approval, monitoring and recovery. For a system of record, that part has to be built into how the software is made, with controls that hold whether or not the model remembers them.
References
- X. Deng et al., SWE-Bench Pro: Can AI Agents Solve Long-Horizon Software Engineering Tasks?, arXiv 2509.16941 (2025). 161 of 500 SWE-Bench Verified tasks need one- or two-line changes; best models tested below 20% on the commercial set; GPT-5 25.9% with requirements and interface against 8.4% with the problem statement only. Source
- Q. Ren et al., SaaSBench: Exploring the Boundaries of Coding Agents in Long-Horizon Enterprise SaaS Engineering, arXiv 2605.17526 (2026). Over 95% of failures before business logic; premature halting and debugging loops. Source
- N. F. Liu et al., Lost in the Middle: How Language Models Use Long Contexts, Transactions of the Association for Computational Linguistics (2024). 75.8% with the answer first, 53.8% tenth of twenty documents. Source
- A. Modarressi et al., NoLiMa: Long-Context Evaluation Beyond Literal Matching, ICML (2025). 11 of 13 models below half their short-input score at 32K tokens. Source
- D. Jaroslawicz et al., How Many Instructions Can LLMs Follow at Once?, arXiv 2507.11538 (2025). Best model 68% at 500 instructions; bias toward earlier instructions. Source
- T. Kwa et al., Measuring AI Ability to Complete Long Tasks, METR (2025). 50% time horizon of about 50 minutes for Claude 3.7 Sonnet; doubling roughly every seven months. Source
- J. Spracklen et al., We Have a Package for You!, USENIX Security Symposium (2025). 19.7% of 2.23 million package recommendations named packages that did not exist; in a sampled Python repetition experiment, 43% of hallucinated packages recurred in all ten reruns. Source
- S. Ouyang, J. M. Zhang, M. Harman and M. Wang, An Empirical Study of the Non-determinism of ChatGPT in Code Generation, ACM Transactions on Software Engineering and Methodology (2025). Output equivalence rate of zero across five candidates for 75.76% of CodeContests tasks at the default temperature, 43.64% at temperature zero. Source
- Z. Zhong, A. Raghunathan and N. Carlini, ImpossibleBench: Measuring LLMs' Propensity of Exploiting Test Cases, arXiv 2510.20270 (2025). GPT-5 cheats on 54% of Conflicting-SWEbench tasks; methods from test modification to operator overloading. Source
- METR (S. Von Arx, L. Chan and E. Barnes), Recent Frontier Models Are Reward Hacking, METR blog (2025). 30.4% of o3 runs on RE-Bench tasks; evaluator and timing functions modified. Source
- Anthropic, Best practices for Claude Code, Claude Code documentation (2026). The agent stops when the work looks done. Source
- H. Pearce, B. Ahmad, B. Tan, B. Dolan-Gavitt and R. Karri, Asleep at the Keyboard? Assessing the Security of GitHub Copilot's Code Contributions, IEEE Symposium on Security and Privacy (2022). About 40% of 1,689 programs vulnerable. Source
- N. Perry, M. Srivastava, D. Kumar and D. Boneh, Do Users Write More Insecure Code with AI Assistants?, ACM CCS (2023). Less secure code, more confidence in it. Source
- GitClear, AI Copilot Code Quality: 2025 Data Suggests 4x Growth in Code Clones, GitClear research (2025). 211 million changed lines from 2020 to 2024; copy/paste exceeded moved code in 2024. Source
- Google Cloud DORA, Accelerate State of DevOps Report 2024, DORA (2024). AI adoption was associated with lower software delivery stability and throughput. Source
- Google Cloud, Announcing the 2025 DORA report: State of AI-assisted Software Development, Google Cloud Blog (2025). Nearly 5,000 respondents; positive relationship with throughput; continued negative relationship with stability. Source
- J. Becker, N. Rush, E. Barnes and D. Rein, Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity, METR (2025). 19% slower with AI; developers estimated 20% faster. Source
The FORGE Diagnostic takes one workload you select and shows which of these layers it already has and which a prompt has been left to fill. You get a readiness assessment and a proposed next step.
