HELD BACK FROM FARM WALLETSIN A REPLAY. NO MONEY MOVED.
11,173 of 11,282 farm wallets held470 of 482 families held whole
Valued at the claim-day price, $0.0419 per ROBO.
- A REPLAY OFTHE ROBO AIRDROP
- REASONING BYSERV
- SECOND OPINION BYREPPO
- PAID OUT FROMA VAULT ON BASE
- FARM LIST BYBITQUERY
- CONTROL GROUP FROMHOP PROTOCOL
CASE FILE
0x1283…4d02
01 / 05
It looks like a new wallet.
2 days old, 0 transactions before the snapshot, and a claim for 94,954 ROBO, about $3,982 at the claim-day price. On its own, nothing here proves anything.
02 / 05
Thuli follows the money back.
Its first ETH arrived through 3 wallets that were each used once and never again. Code traces the trail to where it started.
03 / 05
The same source paid 21 other claim wallets.
All 22 were funded the same way, before the claim opened. That is a pattern code can count.
04 / 05
SERV applies the rulebook and writes the reason.
The wallet is in a 22-wallet group with shared funding, and its funder funded 21 other claim wallets (0x4e7e84ae76bcede030f2e71a8776c59b376bc838b42f7c52c190aae2e074e68c).
CITED TRANSACTION0x4e7e84ae…74e68c
SERV RUN 801b27ce-6395-4bf7-8c24-2f8c61b9b26e
The reason is the model's own words. Code checks that every transaction it cites is one Thuli fetched for this wallet.
05 / 05
Held, with a way back.
The reward waits. The wallet can appeal by signing a message, and only the project decides. Every family in this drop opens the same way.
05 / 05
PROOF
Measured, not claimed.
Every number here comes from a run you can repeat. The method and its limits are on the versions page.
99.0%
of the wallets on Bitquery's farm list held back
11,173 of 11,282, using only chain data from before the first claim.
1.00%
of Hop's probably-real wallets held by mistake
15 of 1,500 in a random sample, after the model. Code alone: 119 of 20,420 (0.6%). Hop's list is not proof that a wallet is real.
$0.0005
of SERV credit to screen one wallet
Realised: $17.51 for 35,323 wallets. Thuli's price is 5 cents a wallet.
FEEDBACK
It gets better when it is wrong.
An outside judge, Reppo, read 49 of Thuli's decisions without seeing a single address. It blocked 11 holds whose stated reason was a shared funder and nothing else.
So the rulebook changed by one rule: a shared funder alone cannot hold a wallet.
Scored again on the same model replies, before and after:
FALSE HOLDS, HOP'S PROBABLY-REAL SAMPLE
DECISIONS REPPO BLOCKED THAT THE RULEBOOK NO LONGER MAKES
10 of 11
Still held: that wallet has a link of its own, which its reason left out.
The cost: the same change also releases some wallets Hop removed. In that sample, holds fell from 11.2% to 3.0%. That is the price of the rule, not a catch rate.
ON CHAIN
The reward money sits in a contract, not with us.
A project puts its reward pool into a vault on Base. Thuli's key can do one thing there: post a list. It cannot move a cent.
A new list waits.
Every list Thuli posts sits for a delay the project chose, and the project can cancel it in that time. In the proof below the delay was 1 hour.
A wallet is paid once.
The contract remembers what each wallet has received and pays only the difference, never more than the cap the project set.
What is left goes back.
After the end date only the project can withdraw the rest. Nobody can take it earlier, and a pause cannot run out the clock.
PROVED ON BASE SEPOLIA, WITH TEST USDC
Vault created
0xda041583…5bd13c1,686,371 GAS
Spending approved
0x8568fcfa…3fcfee55,437 GAS
2 USDC deposited
0x6ccc12d3…6100f2100,114 GAS
List posted
0x3c4db865…bea0db75,112 GAS
1 USDC claimed
0x67d821af…a9ed28145,907 GAS
0xFE2B…5CdD
received 1 USDC, exactly the amount on the list.
0xb286…DAf7
tried to claim with another wallet's proof. The contract answered InvalidProof. This was a simulated call: nothing was sent.
Test money on a test network. Base mainnet is not deployed yet.
FOR AGENTS AND SCRIPTS
One wallet, five cents, no account.
Any program can buy one screening over plain HTTP. It asks, gets a price back, pays in USDC, and asks again. No key and no sign-up.
- 01
Ask
POST /api/x402/screen with one wallet address.
- 02
Pay
The answer is 402 Payment required with the terms: 0.05 USDC on Base. Sign that payment and send the same request again.
- 03
Get the decision
One payment buys exactly one result, and a settled payment always gets its answer.
Price: 5 cents a wallet. In the replay, the realised model cost came to 0.05 cents a wallet.
A REAL PAID SCREENING
13 Nov 2026, 05:11 UTC
WALLET
0x041f…190a
DECISION
Cut to a partial reward
RULE A8REASON
The EOA is 263 days old with 3 pre-snapshot activities and no recorded claimant-group, shared-funding, collector-sweep, wallet-made, or exchange links. The first funder is unknown and its claimant count is unreadable.
PAID
0.05 USDC on Base
SETTLEMENT
0xd55cd1ba…ba47d4