mediva is now in public preview.Read the announcement →

Evidence

What we measured ourselves, what others have found about AI-generated text, and the failure modes mediva is built to catch. Our own benchmark comes first.

Our benchmark: Markdown Crimes

How often cheap, fast models get structured Markdown wrong, task by task, and why a static check misses some of it. Method, results and caveats: the benchmark white paper.

Outside evidence

Studies, reports and incidents on AI-generated text, by topic. Every entry links its primary source, and notes say what a number does and doesn't measure.

Hallucinated citations & references

What fraction of generated references are fabricated, measured against real databases.

  • Legal citation hallucination is not monotonic: ~25% for GPT-3.5, a low of 1.23% for the August 2024 GPT-4o, back up to 6.57% for GPT-5.1 (p=0.001).

    Liu, Stammbach & Henderson — Who Checks the Citations? (Princeton), 2026

    Eight generations of default ChatGPT, the same 92 legal-drafting prompts, 8,000+ citations verified against CourtListener and Westlaw. The same paper counts 1,000+ real court filings containing hallucinated citations. Scope: legal drafting in one product line.

  • 3–13% of citation URLs produced by current commercial models and Deep Research agents are hallucinated; 5–18% don't resolve at all.

    Rao, Wong & Callison-Burch — Detecting and Correcting Reference Hallucinations (UPenn), 2026

    221,000+ URLs across ten models/agents. Hallucinated = no Wayback Machine record. The agent with the highest hallucination rate (13.3%) also had a top quality score on the same benchmark.

  • Commercial legal AI tools marketed as hallucination-free still hallucinated in 17–33% of tested queries.

    Dahl, Magesh, Suzgun & Ho — Journal of Empirical Legal Studies (Stanford), 2025

    Lexis+ AI, Westlaw AI-Assisted Research, Ask Practical Law AI. Retrieval-augmentation reduced hallucination; it did not eliminate it.

  • 1,769 legal cases involving AI-hallucinated material identified in one hand-maintained database (as of July 17, 2026).

    Damien Charlotin — AI Hallucination Cases database (HEC Paris), live

    A live counter — cite it with an as-of date. Breakdown at last check: USA 1,219, Canada 194, Australia 96.

  • 55% of GPT-3.5's bibliographic citations were fabricated, 18% for GPT-4; 43% and 24% of the genuine ones carried substantive errors.

    Walters & Wilder — Scientific Reports, 2023

    636 citations across 42 topics. The models are dated; useful as the historical baseline the 2026 studies extend.

  • Up to 22% of computer-science papers show signs of LLM-modified text, against roughly 9% for mathematics and Nature-portfolio journals.

    Liang et al. — Nature Human Behaviour, 2025

    1,121,912 papers, 2020–2024. Measures LLM-modified language, not fabrication — don't recruit it into a hallucination argument. Supersedes the widely-quoted 17.5% figure from the earlier preprint.

  • 1 in 277 PubMed-indexed papers in 2026 shows fabricated references; fabricated references were found in 2,800+ biomedical articles.

    Retraction Watch analysis, May 2026, 2026

    Reported tier: figures from Retraction Watch's analysis as covered by STAT and Forbes; re-verify against the primary analysis before quoting elsewhere.

  • Across 2.5 million biomedical papers, the share carrying at least one fabricated citation rose from 1 in 2,828 (2023) to 1 in 458 (2025) to 1 in 277 (first seven weeks of 2026); 4,046 fabrications were confirmed across 2,810 papers.

    Topaz, Roguin, Gupta, Zhang & Peltonen — Fabricated citations: an audit across 2.5 million biomedical papers (Columbia), The Lancet Vol 407, 2026

    Published as a letter. 125.6M references extracted, 97.1M with verifiable identifiers, checked against PubMed, Crossref, OpenAlex and Google Scholar. Over 98% of the affected papers had seen no publisher action at the time of the audit. The letter publishes a quarterly-rate figure spanning Jan 2023 to Feb 2026 and names 51.3 per 10,000 for Q4 2025 in its text. The cited letter carries a correction notice dated 2026-07-16. The method is AI-assisted and validated on 500 records; Cochrane’s head of editorial policy called the published methods detail insufficient, and a Northwestern integrity researcher called the analysis simplistic and the tip of the iceberg, arguing the larger problem is citations that are inaccurate rather than wholly invented.

Frontier-model factuality

Hallucination rates depend heavily on what's measured — adversarial QA, production traffic, and grounded summarization tell different stories.

  • o3 hallucinated on 33% of PersonQA questions; o4-mini on 48%.

    OpenAI — o3 and o4-mini System Card, Table 4, 2025

    PersonQA is an adversarial benchmark of facts about people, not typical usage.

  • On production-traffic factuality grading, GPT-4o ran a 12.9% hallucination rate and gpt-5-main 9.6%; OpenAI also reports that o3 would sometimes claim to have completed tasks it hadn't.

    OpenAI — GPT-5 System Card, 2025

    OpenAI's own LLM-graded methodology (75% human-grader agreement), self-reported.

  • On grounded summarization, current models range from ~3% to 23.3% hallucination; reasoning-heavy models score worse than lighter ones, the inverse of the open-QA pattern.

    Vectara — HHEM Hallucination Leaderboard, live

    Summarization-faithfulness only; not comparable with PersonQA/SimpleQA numbers. Benchmark choice changes the story — check which one a headline figure comes from.

  • Hallucination is argued to be a statistical consequence of training and evaluation incentives; the paper also notes all reported models below 30% accuracy on Humanity's Last Exam and calibration error rates above 70%.

    Kalai, Nachum, Vempala & Zhang — Why Language Models Hallucinate (OpenAI), 2025

    Frequently mis-cited: this paper does not contain the o3/o4-mini PersonQA figures — those live in the system cards above.

Agent failure modes

How autonomous agents fail, and how often they fail while reporting success.

Evaluating generated text

What the LLM-as-judge literature measured, and where deterministic checks fit.

Production, economics, regulation

What unverified output costs in practice, and what regulators now require.

  • In a randomized trial, experienced open-source developers were 19% slower with AI tools, while estimating they were 20% faster.

    METR — Measuring the Impact of Early-2025 AI on Developer Productivity, 2025

    16 developers, 246 real tasks in familiar codebases; under 44% of suggestions accepted.

  • Output quality is the #1 barrier to putting agents in production (32%) and to scaling them (33%), ahead of latency at 20%.

    LangChain — State of Agent Engineering (n≈1,300), 2025

    Vendor-run survey of its own ecosystem.

  • 30% of developers trust AI-generated code a little or not at all; the report's follow-up analysis names the 'verification tax': time saved writing is re-spent auditing.

    Google/DORA — State of AI-assisted Software Development, 2025
  • The EU AI Act requires high-risk systems to log events automatically (Art. 12), remain overseeable by humans able to detect anomalies (Art. 14), retain logs at least six months (Art. 19), and ship 'concise, complete, correct and clear' instructions (Art. 13).

    Regulation (EU) 2024/1689 — statutory text, 2024
  • Inadequate software-testing infrastructure was estimated to cost the US $22.2–59.5 billion per year.

    NIST — Planning Report 02-3, 2002

    A 24-year-old software-bug study, often quoted without its year or scope. Cite it as history, not as a current documents figure.

  • 90% of developers regularly use at least one AI tool at work; 74% use a specialized coding tool.

    JetBrains AI Pulse survey (n≈10,000, fielded January 2026), 2026

    The freshest developer-survey figure available. Stack Overflow's 2026 survey opened in June — 'for human developers only' — with results not yet published, so the 2025 numbers remain the newest SO data.

  • 275 million commits a week on GitHub, against one billion commits in all of 2025.

    GitHub COO Kyle Daigle, on record, April 2026 (captured by Simon Willison), 2026

    The verifiable substitute for the viral 4M-to-17M agent-PR claim, which traces only to a paywalled report and stays uncited here.

  • Reviewer defect-detection drops sharply past 200 to 400 lines per review session.

    SmartBear/Cisco peer-review study (Cohen et al.), 2006

    About 2,500 reviews over 3.2 million lines of code. A per-session attention limit, not an organizational capacity law.

  • In one study, 15 of 18 writers assisted by ChatGPT could not quote their own essay minutes after writing it.

    Your Brain on ChatGPT — MIT Media Lab (preprint), 2025

    Small-sample preprint (n=18 per condition); a methodological comment raises sample-size concerns. Formerly on the landing deck; the deck now argues review capacity rather than reader memory.

  • Anthropic's own developer docs instruct: hallucination-reduction techniques do not eliminate hallucinations — always validate critical information.

    Anthropic developer documentation, reduce-hallucinations guide, live

    The vendor prescribing the practice; the landing page cites it as its quickstart support line.

  • People find only 40–90% of errors when working alone: readers caught 81% of nonsense-word errors but just 66% of real-word errors, and detection of nonsense-word errors falls to 47–58% in difficult material.

    Panko — Errors in Proofreading, summarising published detection-rate experiments (difficult-material figure from Riefer), 1980–1993

    Laboratory experiments on general prose. The 47–58% figure is Riefer (1991) for NONWORD errors in difficult material; Riefer's word-error range is 42–62%. The 87% professional-proofreader figure on the same page rests on three editions of the author's own textbook and is deliberately not used.

  • Across 22,000 developers, the median time a pull request spends in review rose 441% year over year — against 91% in the prior year's dataset — 31% more pull requests merged with no review at all, and 25% of pull requests are now reviewed by an AI agent.

    Faros AI — The Acceleration Whiplash, 2026

    Vendor telemetry from a company selling engineering analytics. The year-over-year comparison runs on the same pipeline, so it is like-for-like, but the methodology note is not public.

  • In one year on GitHub, pull requests created rose 20.4% and commits 25%, while comments on issues and pull requests rose 0.35% and comments on commits fell 27%.

    GitHub Octoverse, 2025

    GitHub labels these observational signals rather than causal claims. Comments proxy for review attention rather than being it, and Copilot code review shipped in April 2025, so part of the flat line may be review that moved to a machine.

Incidents & policies

Named cases with adjudicated outcomes, and the acceptance boundaries projects have drawn in response.

  • curl ended its six-year bug bounty after AI-fabricated vulnerability reports — some citing functions that don't exist in curl — pushed the valid-report rate to roughly 1 in 20–30.

    The Register / The New Stack (interviews with Daniel Stenberg), 2026
  • Django's security documentation now instructs AI tools directly: invented code, fictitious APIs, and made-up citations result in automatic rejection.

    Django — security policy (live documentation), live
  • English Wikipedia adopted speedy-deletion criterion G15 for pages clearly entirely LLM-generated without human review; WikiProject AI Cleanup has run since 2023.

    Wikipedia — WikiProject AI Cleanup, 2025
  • A tribunal held Air Canada liable for its chatbot's fabricated bereavement-fare policy: CAD $812.02, and a rejection of the argument that the chatbot was 'a separate legal entity'.

    Moffatt v. Air Canada, 2024 BCCRT 149, 2024
  • The first ChatGPT-citation sanction: $5,000 against the lawyers who filed six fabricated cases.

    Mata v. Avianca (S.D.N.Y.), 2023
  • A $31,100 sanction after an AI-drafted brief outline carried 9 wrong or nonexistent citations out of 27, filed unchecked by two firms.

    Lacey v. State Farm (C.D. Cal.), 2025
  • Deloitte Australia repaid the final instalment of an A$440,000 government contract after its report was found to contain a fabricated court quote and citations to nonexistent papers.

    AP / CNA, October 2025, 2025
  • A US federal health report cited studies that don't exist; named researchers denied authorship, and some reference URLs still carried 'oaicite' markers.

    Science (AAAS) / NOTUS / Washington Post reporting, 2025
  • KPMG pulled its own report after forensic review found only 5 of 45 citations pointed to real, uncorrupted sources. GPTZero, which ran the review, coined the term for the failure: vibe citing.

    GPTZero forensic review, multi-outlet coverage, 2026

    The KPMG investigation page could not be resolved at a stable URL; this links GPTZero's investigations index entry that covers the same review. Replace with the KPMG-specific URL once confirmed.

  • EY Canada withdrew a 44-page report after 16 of 27 cited sources were found fabricated, misattributed, or dead, including phantom Forbes, McKinsey, and Gartner citations.

    GPTZero review, multi-outlet coverage, 2026

    Withdrawn May 2026. With Deloitte (October 2025), three Big Four firms in nine months.

  • A World Bank paper on obesity trends was found to contain at least 14 references to work that does not exist.

    Retraction Watch, 2025
  • A librarian checking a Springer Nature article on bowel-surgery management found 12 of its 14 references did not exist.

    Retraction Watch, 2026

Numbers that don't check out

Viral figures that fail primary-source verification. Corrections included — the point of a source library is also what not to cite.

Last updated 2026-07-25. Numbers are quoted as the sources state them. Corrections welcome via an issue.

Markdown crimes

The ways generated Markdown goes wrong. Each case shows a document, mediva's actual verdict on it, and the contract that catches it.

Hollow completeness

Documents that look finished and say nothing — template text left in place, sections filled with vibes.

Case 01

The unfilled blank, shipped

A PR marked ready for review; the Description is the template's own TODO.

## Description
TODO: describe the change
  • ✕:2[placeholder-text] Placeholder "TODO:" left in "Description"
  • ▲:2[too-few-words] "Description" has 4 words, needs at least 20

Case 02

The one-word summary

Required section present, technically. Content: "Done."

## Summary
Done.
  • ▲:2[too-few-words] "Summary" has 1 word, needs at least 20

Checkbox theater

Checklists performed rather than done: boxes left empty and merged anyway, or labels quietly rewritten.

Case 03

Merged with the boxes empty

The testing checklist nobody ticked, in a PR that shipped anyway.

## Testing
- [ ] Tests pass
  • ▲:2[unchecked-items] "Testing" has 1 of 1 box unticked

Case 04

The rewritten checklist

The hard item ("Docs updated") vanishes; a self-congratulatory one appears, pre-checked.

## Checklist
- [x] Tests added or updated
- [x] Ship it
  • ✕:2[missing-checklist-item] Missing item "Docs updated"
  • ✕:3[unexpected-checklist-item] Item "Ship it" is not in the template

Phantom references

References that point at nothing — issue links that link no issue, confident citations of thin air.

Case 05

Fixes #nothing

The issue-link keyword is there. The issue is not. "Fixes #" closes zero issues.

## Related Issue
Fixes #
  • ✕:2[missing-issue-link] "Related Issue" links no issue

Case 06

The citation-free statistic

A precise-sounding number with no source — 40% faster, per absolutely no one.

## Claims
- Parsing is now 40% faster.
  • ✕:2[missing-citation] "Parsing is now 40% faster." has no source

Unverifiable claims

Statements shaped like evidence that no one could ever check — no command, no source, no way to falsify.

Case 07

"Everything works ✅"

The verification section of half the agent-written PRs you have ever reviewed.

## Verification
- Everything works ✅
  • ▲:2[vague-evidence] "Everything works ✅" can't be checked

Assistant residue

The tell-tale droppings of a model: chat phrasing, whole-document code fences, output cut off mid-sentence.

Case 08

The chat transcript in the repo

The README opens by talking to a user who is not there.

Certainly! Here is the updated document you requested:

## Summary
Adds retry backoff.
  • ▲:1[agent-chatter] Leftover assistant phrasing "Certainly!"

Case 09

The document inside a code fence

The whole file wrapped in ```markdown — renders as one grey slab, parses as nothing.

```markdown
## Summary
Adds retry backoff.
```
  • ✕:1[fenced-output] Whole document is wrapped in one code fence

Case 10

Cut off mid-

The output window ended before the document did. Nobody noticed and

## Summary
Adds retry backoff to the upstream client and
  • ▲:2[truncated-output] Document looks cut off mid-sentence

Structural decay

Structure that stops parsing exactly when a downstream agent needs it — empty required cells, drifted tables.

Case 11

The table with hollow cells

An impact table where the Impact column is a run of empty pipes.

## Changes
| Change | Impact |
| --- | --- |
| Retry backoff |  |
  • ✕:4[value-not-given] Column "Impact" value is empty

Not caught yet

Failure modes this catalogue names but mediva does not fully catch yet.

  • Hallucinated links and paths (open)

    Links, anchors, and file paths that point at things which were never real — confident, well-formatted, fabricated.

    Whether a link resolves is a link checker's job (lychee, markdown-link-check); mediva checks that a citation names a source, not that the source exists.

  • The summary that describes a different change (open)

    A fluent Description that does not match the diff it ships with. Needs context beyond the document itself — the strongest reason reviews stall.

  • Copy-pasted boilerplate across documents (open)

    The same rote verification paragraph in every PR. Each document passes alone; the pattern is only visible across a corpus.

Each verdict above is the engine's real output for that contract and document, re-checked in CI. Reproduce any case locally with npx mediva check --schema case.mdv.md doc.md.