AdCP — buyer ↔ seller ↔ TRACT
Two buyers transact with one seller over the AdCP protocol. The first uses TRACT's attestation rail; the second skips it. The contrast is the point of the demo.
What you're watching
- TRACT engine boots on
:8080(memory store) and a seller agent comes up on:8181. - A buyer agent invokes the seller twice. First,
mb_demo_attestedruns the full flow — buyer and seller submit their counts; TRACT's attested count is the ground truth they settle against. Thenmb_demo_termsruns with--skip-attestation— counts diverge, and the trade deadlocks atterms_based / discrepant. - The auditor console exposes the resolved state for each deal so a reviewer can see the difference directly.
What it proves
Settlement is structural, not discretionary. When both sides post evidence to TRACT, divergent counts converge on an attested truth they both agreed to honour. When they don't, the protocol surfaces the disagreement instead of papering over it.