04
Outcome
make demo runs the whole flow end to end. An agent proposes over MCP, the payer approves on their device, the merchant overcaptures by Rs 7, the bank statement shows it, reconciliation raises an overcapture finding, and the open verifier passes the payer's evidence bundle. Then the bundle is edited to hide the overcapture, and the verifier rejects it.
A stress campaign fuzzed every entry point and ran the full flow under ten adversarial profiles: merchants that time out and overcapture, a bank feed that is late and wrong, device compromise and recovery, proposal bursts, amounts at the limit of the money type, and a budget period rolling over at midnight. It surfaced ten real defects, the worst a race condition in which concurrent requests corrupted each other's transactions. Each one is fixed and pinned by a regression test. The final sweeps ran about 29,000 simulated proposals with zero invariant violations, in memory and again on durable Postgres state.
A follow-up security audit went after what the simulator never tried, and found eight loopholes: among them an agent citing one merchant while the cart sat at another, and a host able to record an approval without the payer's signature in the evidence. All eight are closed, each pinned by a regression test, and three further security reviews tightened the verifier until every consent check fails closed.
614 tests pass, and every stress profile still runs clean. The whole infrastructure is on GitHub: the code, the specs, the stress campaign and every test, at manojacharix/governed-agent-payments.