
Four programs
Four live Solana programs, called blind, then called checked
Four live Solana programs, each publishing a machine-readable surface, each used in production every day. We pointed an agent at all four and asked one question: can it make this call. Nobody's API was wrong. Every one of them was incomplete in a way the agent couldn't see
programs tested
passing after
accounts guessed
“The information the call was built from, and the chance to try it before it counted”
Every account carries where it came from: extracted, recovered, or flagged when we don't know. A flagged account is never guessed
An agent reads the IDL, assembles the accounts it names, submits a buy. It reverts: the token account doesn't exist yet, and nothing in the schema says it must. A sell is worse: it reverts after transferring the tokens, over a required account mentioned once, in a sentence, in a doc comment
The derivation gained a fourth seed in 2024. A tool using the old three-seed recipe doesn't error, it derives a different pool, silently
We checked the last 193 mainnet instructions of one kind: 193 of 193 carried two accounts the spec doesn't list. A valid document can disagree with reality, and only reality settles it
The published IDL carries no seed recipes, so an agent cannot construct the call in the first place. This gap isn't a missing prelude, it's that you cannot derive the accounts at all
WHEN THIS APPLIES TO YOU
This is the case for any provider whose API is good by every conventional measure and still gets called wrong. A clean IDL and a passing test suite don't guarantee an agent can build a valid instruction from them. If your surface has ever changed behavior without a version bump, this is what an agent sees when it happens

