In July 2025, GitHub user cskor opened an issue after a dataset suddenly began returning far fewer events. Another user, defgsus, checked the midnight files day by day, plotted the counts and found the same break across most event types. The files were present, but event IDs showed large gaps.

For Louis Abraham, the missing events had already produced a false result.

Abraham, a PhD candidate in financial economics who still regularly gives piano concerts, spent 2024 to 2025 as a core-team researcher and agent production team lead at H Company, building agentic models, before becoming founder and CTO of Reduck. Abraham rebuilt the project around GitHub’s search interface; the resulting corpus describes a vocabulary pattern that rose from 1.0% of sampled pull request descriptions at the start of 2025 to about 45% in the last four weeks of the corpus.

What Changed

AI-generated summary, reviewed by an editor. More on our AI guidelines.

How the sample is taken

The dataset contains 47,464 descriptions written between January 6, 2025, and August 17, 2026, with 5,024,747 word appearances. Abraham places one five-minute window at a random point each day, using the date as the seed so anyone can reproduce the timing. Abraham keeps the first 100 newly opened pull requests and combines complete seven-day periods into weeks of 700 descriptions.

The study is a daily sample rather than a census. Developers merged 43.2 million pull requests a month during the Octoverse year running from September 2024 through August 2025, up 23% year over year.

Four common apps are excluded in the search to keep automated accounts from supplying the answer. Usernames ending in [bot] or -bot, along with copilot, are removed later. That account filter discarded 7,901 rows from 1,042 accounts, or 13% of the collected material.

No author can contribute more than three descriptions in a week. The cap matters because one ordinary-looking human account posted 147 copies of the same sentence over a fortnight. A word must also appear at least 45 times, across 25 descriptions and 20 accounts. load-bearing appeared in 93 descriptions from 92 accounts, while pullrequest appeared in 201 descriptions from only 17 accounts and was excluded.

How the sorting works

The model has no date or week variable. One set of eight word distributions covers the entire collection, and descriptions are assigned by vocabulary alone. Only after that assignment does the software count how many descriptions from each week landed in each group. A synthetic self-test recovered a planted writing pattern rising from zero to 35% at the specified week even though the fitting process had no clock.

Abraham uses KL-divergence k-means, also called Bregman hard clustering. Imagine eight bowls, each holding a different recipe of word frequencies. The model compares every description’s mix of words with those recipes and puts the whole description into the nearest bowl. It cannot split one description between several groups.

What changed in the descriptions

One group accounted for 1.0% of the corpus at the start of 2025 and about 45% in the last four weeks ending August 17, 2026. Its most distinctive term was load-bearing, used 98 times inside the group and three times outside it. Adjusted for the amount of text on each side, that was 93 appearances per million words inside against 0.76 outside, a ratio of 123.04.

Other highly ranked terms included quietly, survived, latent, seam and byte-identical.

The em dash rose from 0.2 appearances per 10,000 words during the corpus’s first four weeks in early 2025 to 132.4 appearances per 10,000 words during its final four weeks ending August 17, 2026, a rise of roughly 660 times.

Know someone who'd find this useful? ✉️ Email it to a friend in one click, or they can subscribe free here.

A separate measurement led by Dmitry Kobak, a researcher at the Hertie Institute for AI in Brain Health in Tübingen (Germany), found a related shift in more than 15 million PubMed abstracts from 2010 through 2024. The team projected pre-ChatGPT word frequencies forward, much as excess-mortality research projects an expected baseline. At least 13.5% of abstracts published in 2024 were estimated to have been processed with a language model, with the lower bound reaching 40% in some subcorpora. The 2024 change was concentrated in style words, unlike the content words that surged during the Covid period.

The choices inside the result

Abraham labels two settings as choices made after seeing the outcome. Abraham selected eight groups so that load-bearing would rank first in the arriving group. The minimum total frequency was also set after the result was visible, allowing the term into the vocabulary.

The random starting seed also changes the headline share. Across 32 unconditioned fits, the arriving group ended between 36.3% and 63.8%, with a median of 45.5%. The fits agreed closely on the weekly shape, with a mean correlation of 0.991, but their agreement over which descriptions belonged together had a mean F1 score of 0.770 and fell as low as 0.46.

Every five-minute search returns a full page, so the process does not enumerate everything opened during that interval. It takes the earliest 100 pull requests after a random instant. In the archive-based version Abraham had replaced by August 2026, load-bearing appeared in only 17 documents, an error by a factor of 158 because comments had vanished from the feed.

The evidence does not observe an assistant writing any pull request, and it cannot classify an individual description as machine-authored. That boundary matters because the median description is only 65 words. A 2026 study by Shushanta Pudasaini of Technological University Dublin and co-authors found that linguistic detectors become unreliable on very short text and can falsely flag technical writing whose constrained vocabulary resembles machine output. The corpus sits inside the length range where that literature says these signals stop being reliable.

Abraham measures only a corpus-level distribution: “None of this observes an assistant writing anything.”

Frequently Asked Questions

What did the study actually measure?

It grouped 47,464 GitHub pull request descriptions written between January 6, 2025, and August 17, 2026, into eight vocabulary patterns, then counted how many descriptions from each week fell into each group. The model has no date or week variable, so the weekly curves are counts made after the assignment rather than a fitted trend.

How was the sample collected?

One randomly placed five-minute window each day, seeded on the date so the timing is reproducible, keeping the first 100 newly opened pull requests. Complete seven-day periods were combined into weeks of 700 descriptions.

Does this prove the descriptions were written by AI?

No. The evidence does not observe an assistant writing any pull request and cannot classify an individual description as machine-authored. It measures a distribution across a corpus.

How were automated accounts excluded?

Four common apps were excluded in the search, and usernames ending in [bot] or -bot, along with copilot, were removed afterward. That account filter discarded 7,901 rows from 1,042 accounts, or 13% of the collected material.

What are the main limitations?

Two settings were chosen after the result was visible, the random seed moves the final share between 36.3% and 63.8% across 32 fits, and the median description is only 65 words, inside the length range where detection research says linguistic signals become unreliable.

AI-generated summary, reviewed by an editor. More on our AI guidelines.

Zed and Warp Both Ship AI Coding. They Bet on Opposite Surfaces.
One product anchors the workday to the file under your cursor. The other anchors it to the agent sessions running in the background. Zed and Warp both moved AI coding toward the center of their produ
Intermediate Tutorial: How To Build Reliable Workflows With OpenAI Codex
Most developers hit the same wall with Codex. The first week feels electric. You prompt, it codes, things work. Then the codebase grows. Fixes start landing in the wrong layer. Architecture quietly de
Simon Willison Ships Rodney v0.4.0, a Browser Automation CLI Built for Coding Agents
Simon Willison released Rodney v0.4.0 this week, adding Windows support, a JavaScript assertion engine, and directory-scoped sessions to his CLI tool that lets AI coding agents drive a real browser. T
AI News AI Research

San Francisco

Editor-in-Chief and founder of Implicator.ai. Former ARD correspondent and senior broadcast journalist with 10+ years covering tech. Writes daily briefings on policy and market developments. Based in San Francisco. E-mail: editor@implicator.ai