Readable typed intent binds chain, contract, payer, beneficiary, asset, amount, policy digest, commitment, and nonce.
V2 payer-signed intent accepted by a relayer on Base Sepolia ↗NTU CCTF × SNZ INNOVATEX · TRACK 1
V2 BASE SEPOLIA · VERIFIEDThe payment that wins trust is the one that refuses to move.
A Singapore treasury wants to settle a supplier invoice in China. AI prepares the intent. Separate payer and approver role wallets authorize. The contract—not the model—decides whether funds can move.
A synthetic sanctions flag changes after funding. Release is blocked before transfer. Escrow is then cancelled and the payer is made whole.
LIVE READ-ONLY CHAIN CHECK
Do not trust the replay. Re-read Base Sepolia.
The verifier asks a public Base Sepolia RPC for all 26 receipts, both terminal settlement states, token balances, escrow liability, and solvency. It has no wallet connection, signing path, or transaction method.
Public RPC availability can fail independently of the on-chain proof. The downloadable deep verifier additionally checks calldata, senders, events, ordering, and the historical revert reason.Press verify to fetch fresh chain data from the public RPC.
No request has been sent.
JUDGE CONTROL ROOM
One event. Every decision exposed.
Public evidence replay · This section reads the committed V2 manifest; the live-proof section above separately re-reads current chain state. Neither path connects a wallet or broadcasts.
- 1Unsigned intent preparedAI explains; no privileged key or broadcast pathPLAN
- 2Payer authorizationEIP-712 payer-wallet signatureSIGNED
- 3Separate approval walletsApprover role wallet A + wallet B2 / 2
- 4Escrow funded · T0Daily limit checked; challenge window starts now15K
- 5Synthetic sanctions flag updatedRelease rechecks the current policy stateRISK
- 6Release blocked; payer refundedNo beneficiary transfer; escrow returns to zeroSAFE
The beneficiary’s policy status changed during the funded challenge window.
The blocked release must resolve with status 0; the refund must resolve with status 1.
DETERMINISTIC TRUST BOUNDARY
AI prepares. Role wallets authorize. Contracts enforce.
Parses a synthetic invoice, explains risk, and prepares unsigned typed data.
Cannot signSeparate payer and approver addresses authorize the public-testnet transactions.
EIP-712 · public testnetPublishes a digest, expiry, and synthetic risk status—not raw KYC records.
External trust declaredChecks roles, limits, policy, challenge timing, escrow, release, and refund.
Only enforcement authoritySELECTIVE DISCLOSURE
Reveal the invoice only when it matters.
Raw invoice and KYC records remain off-chain. V2 domain-separates each commitment and binds it to the chain, treasury contract, payer, beneficiary, amount, corridor digest, client order, invoice bytes, and salt. Changing any bound field must fail disclosure.
keccak256(abi.encode(INVOICE_COMMITMENT_DOMAIN, block.chainid, address(this), payer, beneficiary, amount, corridorDigest, clientOrderId, invoiceData, salt)) == invoiceCommitment
INVOICE_COMMITMENT_DOMAIN = keccak256("VTA_INVOICE_COMMITMENT_V2"). Hash commitments minimize disclosure; they are not a zero-knowledge proof or secure storage system.
- Invoice bytes
- loading public synthetic disclosure
- Commitment
- loading commitment
- Amount
- 15,000 mUSD
- Public salt
- loading synthetic salt
JUDGE QUESTIONS · ANSWERED FIRST
What this is—and what it is not.
Because approval addresses, policy freshness, risk-status changes, challenge timing, cancellation, and reconciliation are separately inspectable.
A real read-only Codex run explained the deterministic plan into a strict schema. It returned UNSIGNED_REVIEW_REQUIRED; giving it a privileged key would violate the product’s core safety claim.
V2 publicly proves separate role addresses, payer-wallet authorization, two approver-wallet transactions, funded escrow, status-0 policy blocking, full refund, and clean release.
Production audit, real stablecoin integration, licensed payment operations, real compliance feeds, key custody, fiat, FX, and off-ramp execution.
CLAIM LEDGER
Verified evidence and target architecture never share a label.
V2 public receipts and final balances are loaded from the current public manifest. Only V2 evidence is counted below.
public transaction records, including one expected status-0 block
- Valueless project-deployed mUSD, not USDC
- Separate payer, clean-beneficiary, and blocked-beneficiary addresses
- Payer-wallet signature plus two separate approver-wallet transactions
- Synthetic risk update → status 0 → full refund
- 9,303,697 gas · 0.00005595 test ETH · 736 s public block span
public scenarios: clean release and blocked-then-refunded
- Clean beneficiary: 15,000 mUSD
- Blocked beneficiary: 0 mUSD
- Escrow: 0 mUSD
- Solvent and invoice disclosure verified
V2 contract, state-path, orchestrator, and live-verifier tests
- Exact EIP-712 payer authorization and anti-replay
- Separate role wallets and approval-address conflicts
- Funded-start window, synthetic-risk block, and refunds
- 64 generated state paths plus deterministic planner
- Real Codex explanation run · schema-valid · no signing or broadcast
- Browser RPC verifier · receipt/state/accounting checks · fails closed
- Blockscout source published · partial verification · unchanged bytecode
Observed confirmation latency median: 7.499 seconds for the nine public transactions whose client-side timing was retained; this is not a 26-transaction latency sample. This is public Base Sepolia proof only, not production or financial settlement. mUSD has no financial value and is not Circle USDC. SG → CN and sanctions inputs are synthetic scenarios; there is no fiat, FX, off-ramp, KYC provider, certified screening feed, regulatory approval, or real-funds safety claim. Ephemeral keys are test-only, not production key management. Revocability ends at release.