Fact Receipts
Arkiv · Braga testnet

How Fact Receipts works

Fact Receipts is a verifiable AI fact-checker built on the Arkiv Braga testnet. Each receipt is a tamper-proof, third-party-verifiable attestation that a specific AI agent generated a specific verdict for a specific claim at a specific time.

Why on-chain

A central SaaS could quietly delete or rewrite bad fact-checks to inflate accuracy. With Arkiv, the agent’s wallet signs every verdict as $creator — an immutable field that nobody (not even us) can change after the fact. That makes the receipt verifiable by anyone, anywhere, with no API key.

Entity model

Every entity is stamped with a unique project attribute so the app’s data is cleanly namespaced on the shared public layer.

Lifecycle

Claims expire after 1 year. Checks and Sources persist for 10 years and can be renewed via extendEntity(). The “Extend retention” button on each receipt does exactly that — useful if you want a verdict you can still point to years later.

Verify it yourself

On any receipt page, open the Provenance section. The Check entity key links straight to the Arkiv entity explorer. Pull the raw bytes, rebuild the canonical verdict bundle, and recover the signer from agentSignature with EIP-191 personal-sign. If the recovered address matches the entity’s $creator, the receipt is authentic. We already do this check on every page render — the green badge means the signature was recovered live just now.

Why no MetaMask? Braga rejects plain value transfers (every tx must be a golembase entity op), so a browser-generated wallet can’t get funded to sign its own Claim creation. We sidestep that by using a server-side user-proxy wallet as the Claim author. The agent’s signature on the verdict bundle is still cryptographically verifiable by anyone — which is the property that matters.

← Back to fact-checking