Right now it is 6:40 a.m. in Nairobi, the rain is doing that thing against the window that makes everything feel urgent, and I am reading a research report I paid for.
Nine chapters. Seven risk tables. A Howey test matrix. A transmission map with arrows running from upstream infrastructure to downstream retail. A glossary. A disclaimer.
And not one useful number in the entire thing.
Every cell said the same sentence in a slightly different font: information insufficient.
I have been doing this for fifteen years. I have been spoofed, honeypotted, and publicly embarrassed on a livestream of my own making. I have never been handed a document this polished that said this little. This wasn't a scam or a rug pull. It was quieter than that. An AI research agent — sold as institutional-grade due diligence, billed monthly, marketed at funds entering African markets — had generated the shape of analysis with none of the substance.
The silence after the pump tells the real story. This is that silence, typeset.
The product isn't exotic. Agentic research is plumbing in 2026. Every fund I've spoken with in the last six months runs at least one agent that ingests a protocol's docs, GitHub history, governance forum, and on-chain state, then emits a structured memo. Tiers run from a few hundred dollars a month for retail summaries to five-figure enterprise seats. The pitch never changes: speed, coverage, and a framework that mirrors what a human analyst should check.
That last one is the seductive part. The framework. Nine dimensions sounds like rigor. It sounds like someone already thought about token unlocks, regulatory exposure, and ecosystem dependencies so you don't have to. And in a bull market, rigor is the thing people are most willing to buy blind.
I sat in a Nairobi roundtable last quarter between local fintech founders and European regulators. The phrase I heard four times was "we need something repeatable." Not correct. Not verified. Repeatable. That word is carrying a lot of weight right now, and it's why a report with nine empty dimensions can travel all the way into a partner deck before anyone reads past the table of contents.
In 2017 I broke a story on a project my colleagues had written off, because I stood in a room in Westlands for four hours and listened to people talk. The edge then was presence. The edge now is supposed to be automation. But presence was never only about speed. It was about noticing when something wasn't there. Machines are extraordinary at producing the container. They are close to blind about whether the container is empty.
Here's the detail that should bother you more than it does: nobody around me was surprised.
What actually broke
I went back through the pipeline with two engineers who build these systems. The failure wasn't creative. It was structural.
Stage one was an extraction parser. Its job: pull out the title, the source, the timestamp, the claims, the named protocols, the numbers. It pulled out nothing. The upstream document never arrived intact, and the parser returned an empty object — no exception, no crash, no alert. Just a clean null with nine blank fields.
Stage two was the analysis layer. And stage two was built by people who did not want their product to fail in public. So it did the reasonable-sounding thing: instead of throwing, it filled every dimension with a placeholder and kept going.
The failure was not the model hallucinating. It was the pipeline refusing to stop. And that same architecture produces hallucination too — it just produces honesty first when the input is empty, and invention when the input is partial. The empty report is the polite version of the same bug.
What it got right, and why that's worse
Credit where it's due. The agent flagged the empty input at the top. It wrote, in plain text, that information was insufficient. It stated that being unable to assess something is not the same as that thing being safe. It even listed the minimum inputs it would need to actually do its job.
That is more intellectually honest than most human analysts on a Friday deadline in a bull market.

Which is exactly the problem. Honesty stopped being the bottleneck the moment delivery became the product.
Because here's the thing about a nine-section report with N/A in every cell: readers don't read the N/A. They read the structure. A Howey matrix, even one with four blank elements, signals regulatory literacy. A risk table, even one with six empty rows, signals caution. The scaffolding does the persuading, and the empty rooms inside never get inspected. That report told me, in bold, that it knew nothing — and it still felt like work had been done.
Technical Check
This is the part I now run before I treat any agent output as analysis, and the questions I've started asking vendors point blank.
A zero-fact circuit breaker. If extracted facts equal zero, the report does not render. Not a warning banner at the top of a nine-chapter document. A halt. In my own newsroom, the rule since 2021 has been blunt: no two independent sources, no publication. A pipeline without an equivalent gate is not a research product. It's a text generator with a template.
Provenance per claim. Every assertion should carry a pointer — an input hash, a document byte range, a block height. If your agent cannot show you what it read, it isn't analyzing. It's remembering, badly.
A confidence floor per section. Sections below the floor get suppressed, not published with placeholders. Publishing N/A is not transparency. It's volume with a spine.
An adversarial test set. Feed the parser a document with no protocol name, no date, and no numbers, and assert that the system throws. The report sitting in front of me is proof that almost nobody is running that test.
The economics of shipping anyway
I asked why it shipped. The answer was a churn number. Vendors sell coverage. Four thousand documents processed per week is a metric you can put on a pricing page. Three hundred eighty reports deliberately blocked is not.
And there's a market-structure reason the emptiness looked credible. Bull markets have a specific appetite, and it isn't accuracy. It's documentation. LPs want to see that diligence happened. Nobody audits a memo that looks like a memo. They count it.
Now here's the part nobody is going to report. Everyone will blame the model. That's the wrong layer. The model did precisely what it was instructed to do by a system engineered never to return nothing.
The blind spot is worse than a bad model. Consider two failure modes. The loud failure: the pipeline detects empty input and tells you, on page one, that it found nothing. The quiet failure: the pipeline receives partial input and confidently invents the rest — a real protocol name, a plausible TVL, a number wrong by a factor of ten.
We all say we prefer the loud one. The market does not. The loud failure gets churned. The quiet failure gets renewed, because it produced a report with numbers in it, and numbers feel like effort. That is adverse selection, and it means the AI due-diligence market is quietly optimizing for fabrication.
There's another blind spot, and it lives in the buyer. "Unable to assess" reads, to a tired human at 11 p.m., as "assessed, nothing alarming." Those two sentences are opposites, and in a spreadsheet they look identical.
Then there's the one that stings. In a bull market we are not buying analysis. We are buying the sensation of having done analysis. The framework is the feeling. The empty cells are the receipt.
Here's what I'm watching over the next two quarters. Signed input hashes. Attestation layers that let an agent prove what it read before it tells you what it thinks. Audit logs for research pipelines the way we now demand timelocks for treasuries. The winners in the next leg of AI plus crypto will not be the best writers. They will be the best witnesses.
The silence after the pump tells the real story. Every single time. And right now the loudest thing in this market is a stack of reports that say nothing — with a table of contents.
So when your analyst, human or agent, tells you it couldn't find enough information, what do you actually do? Stop? Or screenshot the framework and move on?