Live Verifier · runs in your browser

Not asserted. Computed.

This is a real resolution, not a mock. The SHA-256 below is computed in your browser with WebCrypto over the exact document bytes — the same check a relying party runs before trusting an agent. Tamper with the document and watch the chain fail closed.

Ready to resolve
On-chain anchor · Tezos
token_id  0
agent     tz4xyz…
controller tz1ABC…
version   3
status    active
aid_hash
Fetched document · Arweave
Press Resolve to fetch the document.
Proof chain
1
Read on-chain anchor
The root of trust: aid_hash, genesis, controller, version, status.
2
Fetch document from Arweave
Untrusted transport — the gateway is never believed on its own.
3
Re-hash & compare to anchor
SHA-256 over the fetched bytes must equal aid_hash. The pivotal gate.
4
Verify signature
The detached proof over the canonical signing bytes (BLS12-381).
5
Apply status policy
Effective status at an explicit instant — revocation dominates.

The Verification Pipeline

Watch a payment intent prove itself — gate by gate.

Above, you resolved one document by hand. Here is the same discipline as a live pipeline: an intent enters at the left and is checked against a Cryptographic Power of Attorney at each gate. It reaches settlement only through an unbroken chain of passing checks — otherwise it terminates in a structured denial, with no advisory mode and no override. Pick a scenario and follow the packet.

Scenario
praxis · settlement.verify(intent, cpoa) live trace
INTENT Agent tz4Gk9…01 TAP-1/2 Read anchor version · status TAP-3 Reliance re-hash · active? TAP-3 Scope action · ceiling TAP-4 Settle emit receipt Denied fail closed TAP-8 · transparency log — every event appended, nothing deleted

Live trace

·
Select a scenario
The packet will trace the settlement path in real time.

Reading the diagram

Gate
A checkpoint that must pass before the intent proceeds. Each maps to a real SDK function.
Pass
The check succeeded; the gate lights and the packet advances.
Deny
The check failed. The packet drops to the denial rail — fail-closed, no settlement.
TAP-8 log
The append-only transparency log — every consequential event, kept for proof.

Both the instrument and the pipeline above compute a real SHA-256 with crypto.subtle.digest('SHA-256', …) over the canonical document bytes. Toggle Tamper and the recomputed digest genuinely diverges — the reliance gate then refuses to bind, because the gateway is never trusted; the bytes are. The anchor, signature, and Arweave fetch are simulated for the demo; in production they read Tezos and Arweave directly.

01

The gateway is never trusted

The NFT could point anywhere and a gateway could serve anything. So the resolver re-hashes the fetched bytes and compares to the on-chain commitment. A wrong document fails at step 3, always.

02

Each layer checks the one below

Nothing is trusted transitively. Anchor confirms version; hash confirms bytes; signature confirms authorship; status confirms liveness. Break any link and the chain stops.

03

The decision is stateless

No score, no reputation, no balance to farm. The verdict is recomputed from scratch every time, from artifacts anyone can independently check — exactly what you just did.