Proposal: PactEscrow as On-Chain Settlement Adapter for AP2
Summary
PactEscrow is a production-deployed, immutable trustless escrow contract on Arbitrum One that implements the missing proof-of-delivery-before-payment-release layer for AP2-style agent commerce. This issue proposes it as a complementary open-source component for AP2 specification samples.
The Gap AP2 + PactEscrow Fill Together
AP2 solves machine-to-machine payment routing. What AP2 does not specify is what happens when a task is high-value and the payer needs cryptographic proof of delivery before releasing funds.
PactEscrow fills that gap:
- Payer locks funds on-chain (no custodian, no intermediary)
- Worker submits SHA256 work commitment on-chain via
submitWork(pactId, workHash)
- Either party verifies the hash off-chain against delivered work
- Payer calls
approve(pactId) — funds release atomically
- No trust required from either party; no human arbitrator for the happy path
Production Deployment (Arbitrum One)
- PactEscrow v2:
0x220B97972d6028Acd70221890771E275e7734BFB
- PactPaymentChannel:
0x5a9D124c05B425CD90613326577E03B3eBd1F891 (EIP-712 sigs, bidirectional)
- PactCrossChain.sol:
0x538D5a4266154F0Ca97891B75F5e71a90c651DDF (dual-hash cross-chain adapter)
- pact-mcp-server@1.0.1: 13 MCP tools for the above contracts (npm)
- Live usage: SWORN Protocol completed 3 production cycles (9,999 PACT total, Solana↔Arbitrum cross-chain)
Proposed AP2 Integration Sample
AP2 payment intent → payer calls PactEscrow.create(recipient, amount, deadline)
→ worker delivers work → worker calls submitWork(pactId, sha256(workProduct))
→ payer verifies hash off-chain → payer calls approve(pactId)
→ funds release atomically to recipient
AP2 = payment routing layer. PactEscrow = trustless settlement layer. Clean separation.
Resources
Happy to contribute a sample implementation if there is interest in this direction.
Proposal: PactEscrow as On-Chain Settlement Adapter for AP2
Summary
PactEscrow is a production-deployed, immutable trustless escrow contract on Arbitrum One that implements the missing proof-of-delivery-before-payment-release layer for AP2-style agent commerce. This issue proposes it as a complementary open-source component for AP2 specification samples.
The Gap AP2 + PactEscrow Fill Together
AP2 solves machine-to-machine payment routing. What AP2 does not specify is what happens when a task is high-value and the payer needs cryptographic proof of delivery before releasing funds.
PactEscrow fills that gap:
submitWork(pactId, workHash)approve(pactId)— funds release atomicallyProduction Deployment (Arbitrum One)
0x220B97972d6028Acd70221890771E275e7734BFB0x5a9D124c05B425CD90613326577E03B3eBd1F891(EIP-712 sigs, bidirectional)0x538D5a4266154F0Ca97891B75F5e71a90c651DDF(dual-hash cross-chain adapter)Proposed AP2 Integration Sample
AP2 = payment routing layer. PactEscrow = trustless settlement layer. Clean separation.
Resources
Happy to contribute a sample implementation if there is interest in this direction.