VERIFIABLE BY DESIGN
Check a receiptwithout trusting FullCup.ai.
Every request a funded project makes produces a signed receipt. This is what the signature proves, what it does not, and how to check one.
Check one right here
runs in your browser; nothing is sent anywhereNothing is sent to FullCup.ai. Paste a receipt and the check runs here, against the published key.
What a receipt is
A record of one request: model, tokens, cost, time and cup. FullCup.ai signs it and publishes the public key.
A receipt never contains the prompt, the completion, or any user content.
What the signature proves, and what it does not
what it coversIt proves the record was not altered
If the signature checks out, the numbers are exactly the ones FullCup.ai issued for that request, and nobody changed them afterwards, not the creator and not FullCup.ai. Removing a receipt breaks the chain.
It does not prove the work was useful
The signature says a request happened and what it consumed. It does not say the model produced anything good. FullCup.ai is the one signing, so this is not independent attestation from the Jar.
How to check one
three stepsFetch the public key
/.well-known/fullcup-signing-key
Rebuild the canonical form
In the field order below, exactly.
Check the signature
Runs on your machine, never calls FullCup.ai.
Canonical field order. Rebuild the body in exactly this order.
["id","cup_id","key_id","model","prompt_tokens","completion_tokens","total_tokens","cost_micro_usd","price_source","upstream_id","workload_tag","created_at"]Public key
1rRTdW+PHO4U5qlhbmFjnMsvcm1Cih8ZRy1uZjxj1eU=