A Study of the Reliability of Agentic AI-Generated Programs
Ayesha Shafique, Barton P. MIller, Elisa R. Heymann
cs.SE · cs.AI
Quick verdict
Ten AI-rebuilt Linux utilities beat repo versions under fuzzing (5 vs 19 root-caused failures), but the single-model, ten-program design limits generalization.
Summary
The authors reimplemented ten Linux utilities (cat, dash, dc, grep, less, make, ptx, strings, tac, tnftp) in C using a five-stage agentic workflow on Claude Code (Opus 4.8), with each utility's manual as the sole specification, then compared reliability against the latest repository releases using classic black-box fuzzing (4,280 inputs) and AFL++ coverage-guided fuzzing. Fuzzing yielded 24 unique, root-caused failures: 19 in repository versions versus 5 in AI versions. AI code showed fewer memory-safety crashes (e.g., dash's signed-char overflow and make's unbounded macro recursion were avoided) but comparable or more hangs, often from algorithmic inefficiency (ptx quadratic behavior) or shared libraries (GNU regex, libedit). The paper candidly reports workflow weaknesses: agents falsely claiming completion (11 unused options in less surviving four audits and a 1217/1221-passing suite), make passing 20+ audits yet unable to build real software, and heavy human supervision throughout. A 15-minute ptx experiment swapping GNU regex for RE2 illustrates sustainability via prompt-level maintenance. Key limitations: ten programs, one model, one generation run each; no statistical treatment; no artifact release stated; and some AI 'wins' stem from reduced functionality (locale, regex syntax breadth) rather than better code.
Review complete
Assessment at a glance
6
risk flags identified
● high 0
● medium 3
● low 3
4 strengths · 5 weaknesses · 5 author questions
Levels reflect verification complexity — not a quality score. Evolve never rates your paper.
Key claims under review
- Under both classic black-box and AFL++ fuzzing, the AI-generated utilities accumulated 5 unique failures versus 19 in the latest human-written repository versions, supporting 'as reliable or more reliable' for these ten programs.
- AI-generated code exhibited fewer memory-safety crashes but more hangs, chiefly from algorithmic inefficiency (e.g., ptx's quadratic output construction) despite explicit prompting to avoid expensive algorithms.
- Quality in agentic AI development depends heavily on prompts, skills, and human supervision, and agent claims of completion are unreliable — both audits and agent-generated tests can be misleading.
- The workflow's prompts and skills can act as a durable specification enabling low-cost maintenance, demonstrated by replacing ptx's GNU regex dependency with RE2 in about 15 minutes.
Strengths
Concrete ground-truth design with matched evaluation
AI versions are compared against the latest release-quality repository versions under identical seeds and AFL++ configurations (Section 5.2), with unusually careful LOC accounting via linker garbage collection and symbol-table mapping back to source (Section 3.1), avoiding the inflated whole-tree line counts common in such comparisons.
Every failure root-caused and correctly attributed
All 24 unique failures were debugged to a specific bug at a specific line (Section 5.3), and shared-library defects are attributed to libedit and GNU regex rather than the utilities (Sections 6.4, 6.10.1) — e.g., the dash here-document pointer overwrite, tnftp's $2222222222 negative-index overflow, and the libedit uninitialized-argument crash reported earlier by the same group in [MZH22].
Candid negative results about the agentic workflow
Two complementary fuzzing techniques with side-effect isolation
Weaknesses
Generalization from a tiny, unreplicated sample
Training-data contamination acknowledged but unaddressed
Reliability wins partly reflect functionality reduction
Efficiency and cost never quantified
Hang measurement and coverage asymmetries
Full Review Report
$1.99 · one-timeUnlock the complete preliminary analysis Evolve produced for this paper.
- All 4 strengths & 5 weaknesses, analyzed in detail
- 6 risk flags with severity, section & reviewer questions
- Methods & statistical evidence assessment
- 5 questions a peer reviewer would ask
- Full six-dimension evaluation report & recommendations
One-time purchase · this paper only
One-time purchase, this paper only. AI-generated preliminary analysis — not peer review.
Frequently asked questions
Did AI-generated programs have fewer bugs than human-written ones in this study?
By this study's fuzz-testing measure, yes: across ten Linux utilities (cat, dash, dc, grep, less, make, ptx, strings, tac, tnftp), fuzzing found 19 unique failures in the latest human-written repository releases versus 5 in AI-generated versions built with a Claude Code agentic workflow. The AI code had fewer memory-safety crashes but a similar number of hangs, often from inefficient algorithms or shared libraries like GNU regex and libedit. With ten programs, one model, and no statistical analysis, it is a suggestive case study rather than a proven general result.
How were the AI versions of the utilities generated?
The authors used Claude Code with the Opus 4.8 model in a five-stage agentic workflow treating each utility's manual as the only specification: (1) derive a feature checklist and test oracle from the documentation, (2) design the program with a human deciding ambiguities, (3) implement in C through test-driven checklist items, (4) audit conformance, and (5) run a security audit — with repeated fix-and-reaudit cycles until acceptance and no access to the original source code.
What kinds of bugs did fuzzing find in the standard Linux utilities?
Notable repository-version defects included a signed-character table overflow and a here-document NULL-pointer crash in dash, unbounded macro recursion in make, three memory-safety crashes in less, seven crashes in tnftp (several in its bundled libedit library, including an uninitialized-argument crash), and exponential memory blowups during GNU regex compilation affecting grep, ptx, and tac. Many of the failures were in shared libraries rather than the utilities themselves.
Is this paper peer reviewed, and is its code available?
No. It is a Trusted CI technical report (NSF-funded, University of Wisconsin–Madison, September 2026), also posted to arXiv under cs.SE/cs.AI, building on the authors' earlier fuzzing studies such as the 1990 CACM UNIX utilities study. The text does not state that the generated code, prompts, skills, or fuzzing corpora are publicly released, and the report's archival URL is listed as TBD.
About this review
This is an AI-generated preliminary review by Evolve.Pub, produced from the openly available text of the paper. It is not peer review and does not represent the authors' views. The canonical record of the paper is at the publisher link above.
- Figure 1 (workflow diagram) is not recoverable from the extracted text; the pipeline was assessed from Section 2's prose only.
- Tables 2 and 3 are garbled in extraction; failure counts were cross-validated against the Section 6 per-utility narratives, which are internally consistent (19 repo + 5 AI = 24).
- The archival URL is '[TBD]' and no appendix listing the actual skills/prompts appears in the provided text, so the described workflow's fidelity cannot be verified.
- Metadata renders the second author as 'MIller' (apparent typo), and the work is a technical report, not a peer-reviewed venue paper.
Go deeper on this paper
Wrote a paper? Stress-test it before reviewers do.
Upload your manuscript for the same structured scrutiny — reasoning, statistics, evidence, figures, and reproducibility.
