How verification works
What a proof bundle attests, what it does not, and how to check one without trusting Bixel.
Most facts point at a stored capture: the raw bytes Bixel observed, content-addressed by SHA-256. Captures are batched into hash-chained manifests, and each batch's Merkle root is anchored with OpenTimestamps proofs anchored in the Bitcoin blockchain. That chain is what a proof bundle exposes.
The honesty boundary
Every proof bundle carries this statement, verbatim:
This proof attests that the referenced raw content was observed by Bixel at the recorded time and is included in a hash-chained batch anchored in the Bitcoin blockchain via OpenTimestamps. It does not attest that Bixel's structured extraction of that content is correct; the raw bytes are pointed at so you can read the source yourself.
In other words: the proof machinery makes "we saw these bytes at this time" independently checkable. Whether Bixel read those bytes into the right structured fact is a claim you can audit by reading the raw source the bundle points at.
Get a proof bundle
curl "https://api.bixel.com/v1/companies/pinecone.io/facts/pricing.model/proof"The bundle contains:
- fact — the fact being proven, with its extractor version.
- capture — the observation: SHA-256,
captured_at,source_url, and a pointer to the raw bytes. - inclusion_proof — the Merkle path from the capture to the batch root (constant depth by construction).
- anchor — the manifest-chain head, embedded base64, plus its OpenTimestamps proof and the previous chain link.
Facts derived from live network signals with no stored capture answer proof_not_available honestly. Captures newer than the last anchored export answer proof_not_yet_anchored until the twice-weekly anchoring run includes them.
Verify offline
bixel-verify checks a saved bundle without talking to Bixel:
curl -o bundle.json \
"https://api.bixel.com/v1/companies/pinecone.io/facts/pricing.model/proof"
npx bixel-verify bundle.jsonIt re-hashes the capture, walks the inclusion path to the committed root, follows the manifest hash chain, and validates the OpenTimestamps anchor against Bitcoin block headers. Any tampering — a changed byte, a substituted root, an edited date — fails loudly.
The transparency log
Chain heads are mirrored to a public git repository, bixel-ai/bixel-transparency, commitments only. Git history makes retroactive rewriting of the chain publicly detectable: a rewritten head would have to rewrite a repository other people have cloned.
The same machinery backs every record page on bixel.com — the API's proof endpoint is the raw form of the "receipts" the site shows inline.