erc-8004 · monad mainnet · chain 143
73 of 85 payment claims on Monad name a transaction
that is not on the chain they name.
Every one of those 85 documents is hash-perfect. The bytes served today are the bytes committed on chain, so every tool that checks integrity calls them verified. Integrity is not truth. This site checks the second thing.
every document with an evidence pointer and what it turned out to be
1,192 of 9,188 feedbacks carry a URI. The rest point at nothing, so there is nothing to check.
assert no payment
91.86% of all checked
A game rating or a plain-text comment. Read fine, claims nothing, so it cannot be wrong. Counting these as a coverage gap would inflate our own failure number.
cite a transaction that is not there
6.12% of all checked
We read the chain the document names and the transaction is not on it. Never inferred, never assumed from a timeout.
check out
1.01% of all checked
The cited transaction is on the chain the document names, at a block we record.
we could not check
1.01% of all checked
10 serve bytes that no longer match their own on-chain hash. 2 would not answer. A failure to look is never an accusation.
re-derive this
One row per claim, latest verdict only. The full history of every re-check stays in fovea.verdict.
SELECT
count(*) AS verdicts,
count(*) FILTER (WHERE outcome IN ('true','false')) AS payment_claims,
count(*) FILTER (WHERE outcome = 'true') AS resolve,
count(*) FILTER (WHERE outcome = 'false') AS do_not_resolve,
count(*) FILTER (WHERE outcome = 'noClaim') AS no_claim,
count(*) FILTER (WHERE outcome = 'unknown' AND rung = 'declared') AS unknown_unreachable,
count(*) FILTER (WHERE outcome = 'unknown' AND rung = 'resolvable') AS unknown_bytes_moved,
count(*) FILTER (WHERE outcome = 'unknown' AND rung = 'intact') AS unknown_unparsed
FROM fovea.verdict_latestwhich chain the claims name
| declared network | found there | not found |
|---|---|---|
| monad | 12 | 73 |
This project was built expecting to find documents citing one chain while the payment sat on another. That is not what is happening. Every claim names Monad and 73 of them are not on Monad. The failure is simpler than the one I designed for, so the site says the simpler thing.
re-derive this
SELECT coalesce(declared_network, '(none stated)') AS network,
count(*) FILTER (WHERE outcome = 'true') AS resolve,
count(*) FILTER (WHERE outcome = 'false') AS do_not_resolve
FROM fovea.verdict_latest
WHERE outcome IN ('true','false')
GROUP BY 1
ORDER BY 2 + 3 DESChow the population divides
by the document each agent registered
- agents indexed
- 10,254
- the registry's own countⓘ
- 10,254
- gapⓘ
- 0
- distinct registration documents
- 2,014
- agents whose record nobody sharesⓘ
- 1,988
- agents sharing a record with another agent
- 8,186
8,093 agents across 7,962 distinct wallets point at one document (78.93% of the registry). What that document is →
re-derive this
WITH r AS (SELECT * FROM "AgentRecord" WHERE "chainId" = $1),
big AS (SELECT uri, "memberCount", "distinctOwners", resolves FROM r
ORDER BY "memberCount" DESC LIMIT 1)
SELECT (SELECT count(*) FROM r) AS records,
(SELECT count(*) FROM r WHERE "memberCount" = 1) AS unique_records,
(SELECT coalesce(sum("memberCount"),0) FROM r WHERE "memberCount" = 1) AS agents_unique,
(SELECT coalesce(sum("memberCount"),0) FROM r WHERE "memberCount" > 1) AS agents_clustered,
(SELECT "memberCount" FROM big) AS largest_members,
(SELECT "distinctOwners" FROM big) AS largest_owners,
(SELECT uri FROM big) AS largest_uri,
(SELECT resolves FROM big) AS largest_resolveswhich published mapping read each document
Coverage is published as a number, not implied by an absence of errors. A shape no mapping reads is a gap we report on ourselves.
| mapping | decided | documents |
|---|---|---|
| elo-record.v1 | no claim | 1,026 |
| plain-text-comment.v1 | no claim | 66 |
| execution-market.v1 | false | 60 |
| execution-market-transactions.v1 | false | 13 |
| (no mapping reached) | unknown | 12 |
| execution-market-transactions.v1 | true | 10 |
| conversation-score.v1 | no claim | 3 |
| execution-market.v1 | true | 2 |
Every mapping carries the date it was induced from real documents. Adding one mapping moved the count of resolving claims from 2 to 12, which is why the unread count is published rather than folded into something softer. How each rung is decided →
re-derive this
SELECT coalesce(mapping, '(no mapping reached)') AS mapping, outcome, count(*) AS count FROM fovea.verdict_latest GROUP BY 1, 2 ORDER BY count DESC