@abbababa/sdk 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +46 -8
  2. package/dist/buyer.d.ts +1 -1
  3. package/dist/buyer.js +1 -1
  4. package/dist/client.d.ts +4 -0
  5. package/dist/client.d.ts.map +1 -1
  6. package/dist/client.js +10 -1
  7. package/dist/client.js.map +1 -1
  8. package/dist/errors.d.ts +4 -0
  9. package/dist/errors.d.ts.map +1 -1
  10. package/dist/errors.js +8 -0
  11. package/dist/errors.js.map +1 -1
  12. package/dist/index.d.ts +6 -2
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +3 -1
  15. package/dist/index.js.map +1 -1
  16. package/dist/memory.d.ts +59 -0
  17. package/dist/memory.d.ts.map +1 -0
  18. package/dist/memory.js +43 -0
  19. package/dist/memory.js.map +1 -0
  20. package/dist/messages.d.ts +65 -0
  21. package/dist/messages.d.ts.map +1 -0
  22. package/dist/messages.js +36 -0
  23. package/dist/messages.js.map +1 -0
  24. package/dist/types.d.ts +26 -5
  25. package/dist/types.d.ts.map +1 -1
  26. package/dist/types.js.map +1 -1
  27. package/dist/wallet/abi.d.ts +191 -40
  28. package/dist/wallet/abi.d.ts.map +1 -1
  29. package/dist/wallet/abi.js +148 -39
  30. package/dist/wallet/abi.js.map +1 -1
  31. package/dist/wallet/constants.d.ts +14 -2
  32. package/dist/wallet/constants.d.ts.map +1 -1
  33. package/dist/wallet/constants.js +31 -14
  34. package/dist/wallet/constants.js.map +1 -1
  35. package/dist/wallet/escrow.d.ts +74 -18
  36. package/dist/wallet/escrow.d.ts.map +1 -1
  37. package/dist/wallet/escrow.js +126 -39
  38. package/dist/wallet/escrow.js.map +1 -1
  39. package/dist/wallet/index.d.ts +2 -2
  40. package/dist/wallet/index.d.ts.map +1 -1
  41. package/dist/wallet/index.js +5 -3
  42. package/dist/wallet/index.js.map +1 -1
  43. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"abi.js","sourceRoot":"","sources":["../../src/wallet/abi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abi.js","sourceRoot":"","sources":["../../src/wallet/abi.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,mDAAmD;AACnD,uCAAuC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC;QACE,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtC;IACD;QACE,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtC;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE;YAC1C,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7C,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;SAC1C;QACD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;YACxC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;YACjC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE;YAC1C,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7C,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;YACxC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;SAC1C;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtC;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtC;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;YAClC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE;SAC3C;QACD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;SACvC;QACD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtC;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KACxC;CACO,CAAA;AAEV,qEAAqE;AACrE,kDAAkD;AAClD,uCAAuC;AACvC,mFAAmF;AACnF,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KACxC;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;YACjC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;YACjC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;SACzC;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;SACnC;QACD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KACxC;CACO,CAAA;AAEV,sDAAsD;AACtD,qDAAqD;AACrD,uCAAuC;AACvC,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC;QACE,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;YAClC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE;YAC1C,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;SACtC;QACD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KACxC;CACO,CAAA;AAEV,0EAA0E;AAC1E,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC9C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;SACrC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD,6CAA6C;IAC7C;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/B,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,OAAO,EAAE,EAAE;KACZ;CACO,CAAA"}
@@ -2,9 +2,21 @@ export declare const POLYGON_AMOY_CHAIN_ID = 80002;
2
2
  export declare const POLYGON_MAINNET_CHAIN_ID = 137;
3
3
  export declare const BASE_SEPOLIA_CHAIN_ID = 84532;
4
4
  export declare const BASE_MAINNET_CHAIN_ID = 8453;
5
- /** AbbababaEscrow V4 self-executing escrow with delivery proofs and dispute window. */
5
+ /** AbbababaEscrowV2UUPS upgradeable escrow with simplified AI-only dispute resolution. */
6
+ export declare const ESCROW_V2_ADDRESSES: Record<number, string>;
7
+ /** AbbababaScoreV2 — on-chain agent reputation with simplified +1/-3/-5 scoring (UUPS upgradeable). */
8
+ export declare const SCORE_V2_ADDRESSES: Record<number, string>;
9
+ /** AbbababaResolverV2 — AI-only instant dispute resolution (UUPS upgradeable). */
10
+ export declare const RESOLVER_V2_ADDRESSES: Record<number, string>;
11
+ /** Mock USDC for testnet. */
12
+ export declare const MOCK_USDC_ADDRESSES: Record<number, string>;
13
+ /** @deprecated V1 contracts deprecated Feb 14, 2026. Use ESCROW_V2_ADDRESSES instead. */
14
+ export declare const ESCROW_V1_ADDRESSES: Record<number, string>;
15
+ /** @deprecated V1 contracts deprecated Feb 14, 2026. Use SCORE_V2_ADDRESSES instead. */
16
+ export declare const SCORE_V1_ADDRESSES: Record<number, string>;
17
+ /** @deprecated Use ESCROW_V2_ADDRESSES instead */
6
18
  export declare const ESCROW_V4_ADDRESSES: Record<number, string>;
7
- /** AbbababaScore on-chain agent reputation system. */
19
+ /** @deprecated Use SCORE_V2_ADDRESSES instead */
8
20
  export declare const SCORE_ADDRESSES: Record<number, string>;
9
21
  export interface TokenInfo {
10
22
  symbol: string;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/wallet/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,QAAQ,CAAA;AAC1C,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAC3C,eAAO,MAAM,qBAAqB,QAAQ,CAAA;AAC1C,eAAO,MAAM,qBAAqB,OAAO,CAAA;AAMzC,yFAAyF;AACzF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEtD,CAAA;AAED,wDAAwD;AACxD,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAElD,CAAA;AAMD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CAChB;AAED,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CA2BpE,CAAA;AAED,2CAA2C;AAC3C,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAE/E;AAED,mDAAmD;AACnD,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,EAAE,CAI7E;AAED,6DAA6D;AAC7D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAEzE;AASD,eAAO,MAAM,eAAe,qBAA0B,CAAA;AAEtD,eAAO,MAAM,mBAAmB,2CAA2C,CAAA;AAC3E,eAAO,MAAM,qBAAqB,6CAA6C,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/wallet/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,QAAQ,CAAA;AAC1C,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAC3C,eAAO,MAAM,qBAAqB,QAAQ,CAAA;AAC1C,eAAO,MAAM,qBAAqB,OAAO,CAAA;AAMzC,6FAA6F;AAC7F,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEtD,CAAA;AAED,uGAAuG;AACvG,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAErD,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAExD,CAAA;AAED,6BAA6B;AAC7B,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEtD,CAAA;AAGD,yFAAyF;AACzF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEtD,CAAA;AACD,wFAAwF;AACxF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAErD,CAAA;AACD,kDAAkD;AAClD,eAAO,MAAM,mBAAmB,wBAAsB,CAAA;AACtD,iDAAiD;AACjD,eAAO,MAAM,eAAe,wBAAqB,CAAA;AAMjD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CAChB;AAED,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAuBpE,CAAA;AAED,2CAA2C;AAC3C,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAE/E;AAED,mDAAmD;AACnD,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,EAAE,CAI7E;AAED,6DAA6D;AAC7D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAEzE;AASD,eAAO,MAAM,eAAe,qBAA0B,CAAA;AAEtD,eAAO,MAAM,mBAAmB,2CAA2C,CAAA;AAC3E,eAAO,MAAM,qBAAqB,6CAA6C,CAAA"}
@@ -3,22 +3,39 @@ export const POLYGON_MAINNET_CHAIN_ID = 137;
3
3
  export const BASE_SEPOLIA_CHAIN_ID = 84532;
4
4
  export const BASE_MAINNET_CHAIN_ID = 8453;
5
5
  // ============================================================================
6
- // V4 Contract Addresses
6
+ // V2 Contract Addresses (UUPS Upgradeable - Deployed 2026-02-14)
7
7
  // ============================================================================
8
- /** AbbababaEscrow V4 self-executing escrow with delivery proofs and dispute window. */
9
- export const ESCROW_V4_ADDRESSES = {
10
- [BASE_SEPOLIA_CHAIN_ID]: '0xD86b146Ed091b59cE050B9d40f8e2760f14Ab635',
8
+ /** AbbababaEscrowV2UUPS upgradeable escrow with simplified AI-only dispute resolution. */
9
+ export const ESCROW_V2_ADDRESSES = {
10
+ [BASE_SEPOLIA_CHAIN_ID]: '0x1Aed68edafC24cc936cFabEcF88012CdF5DA0601',
11
11
  };
12
- /** AbbababaScore — on-chain agent reputation system. */
13
- export const SCORE_ADDRESSES = {
14
- [BASE_SEPOLIA_CHAIN_ID]: '0x133029184EC460F661d05b0dC57BFC916b4AB0eB',
12
+ /** AbbababaScoreV2 — on-chain agent reputation with simplified +1/-3/-5 scoring (UUPS upgradeable). */
13
+ export const SCORE_V2_ADDRESSES = {
14
+ [BASE_SEPOLIA_CHAIN_ID]: '0x15a43BdE0F17A2163c587905e8E439ae2F1a2536',
15
15
  };
16
+ /** AbbababaResolverV2 — AI-only instant dispute resolution (UUPS upgradeable). */
17
+ export const RESOLVER_V2_ADDRESSES = {
18
+ [BASE_SEPOLIA_CHAIN_ID]: '0x41Be690C525457e93e13D876289C8De1Cc9d8B7A',
19
+ };
20
+ /** Mock USDC for testnet. */
21
+ export const MOCK_USDC_ADDRESSES = {
22
+ [BASE_SEPOLIA_CHAIN_ID]: '0x9BCd298614fa3b9303418D3F614B63dE128AA6E5',
23
+ };
24
+ // Legacy V1 addresses (deprecated - use V2)
25
+ /** @deprecated V1 contracts deprecated Feb 14, 2026. Use ESCROW_V2_ADDRESSES instead. */
26
+ export const ESCROW_V1_ADDRESSES = {
27
+ [BASE_SEPOLIA_CHAIN_ID]: '0x71b1544C4E0F8a07eeAEbBe72E2368d32bAaA11d',
28
+ };
29
+ /** @deprecated V1 contracts deprecated Feb 14, 2026. Use SCORE_V2_ADDRESSES instead. */
30
+ export const SCORE_V1_ADDRESSES = {
31
+ [BASE_SEPOLIA_CHAIN_ID]: '0xF586a7A69a893C7eF760eA537DAa4864FEA97168',
32
+ };
33
+ /** @deprecated Use ESCROW_V2_ADDRESSES instead */
34
+ export const ESCROW_V4_ADDRESSES = ESCROW_V1_ADDRESSES;
35
+ /** @deprecated Use SCORE_V2_ADDRESSES instead */
36
+ export const SCORE_ADDRESSES = SCORE_V1_ADDRESSES;
16
37
  export const TOKEN_REGISTRY = {
17
- [POLYGON_AMOY_CHAIN_ID]: {
18
- // Tier 1 — Phase 1 (must-have)
19
- USDC: { symbol: 'USDC', address: '0x9DCE328784A6B24fbe84eC05e9Ea3C6Cce782529', decimals: 6, tier: 1 },
20
- // WPOL, USDT, DAI addresses on Amoy TBD (deploy MockERC20 instances or use testnet faucets)
21
- },
38
+ // V2: Removed Polygon Amoy (deprecated)
22
39
  [POLYGON_MAINNET_CHAIN_ID]: {
23
40
  // Tier 1 — Phase 1
24
41
  USDC: { symbol: 'USDC', address: '0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359', decimals: 6, tier: 1 },
@@ -59,9 +76,9 @@ export function isTokenSupported(chainId, symbol) {
59
76
  // ============================================================================
60
77
  // Gas & Infrastructure
61
78
  // ============================================================================
62
- // Minimum native token (POL) balance for self-funded gas.
79
+ // Minimum native token (ETH) balance for self-funded gas.
63
80
  // If balance is below this, 'auto' strategy falls back to ERC-20 paymaster.
64
- // 0.01 POL in wei — enough for ~1-10 UserOperations on Polygon.
81
+ // 0.01 ETH in wei — enough for ~1-10 UserOperations on Base.
65
82
  export const MIN_GAS_BALANCE = 10000000000000000n;
66
83
  export const ZERODEV_BUNDLER_URL = 'https://rpc.zerodev.app/api/v3/bundler';
67
84
  export const ZERODEV_PAYMASTER_URL = 'https://rpc.zerodev.app/api/v3/paymaster';
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/wallet/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/wallet/constants.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,29 @@
1
+ import { type Address } from 'viem';
1
2
  import { type TokenInfo } from './constants.js';
2
3
  import type { EscrowDetails, AgentStats } from '../types.js';
4
+ /** Dispute resolution outcome */
5
+ export declare enum DisputeOutcome {
6
+ None = 0,
7
+ BuyerRefund = 1,
8
+ SellerPaid = 2,
9
+ Split = 3
10
+ }
11
+ /** Escrow status codes */
12
+ export declare enum EscrowStatus {
13
+ None = 0,
14
+ Funded = 1,
15
+ Delivered = 2,
16
+ Released = 3,
17
+ Refunded = 4,
18
+ Disputed = 5,
19
+ Resolved = 6,
20
+ Abandoned = 7
21
+ }
3
22
  /**
4
- * Client for interacting with the AbbababaEscrow V4 smart contract.
5
- * Supports self-executing escrow with delivery proofs, 24h dispute window,
6
- * auto-release, and abandonment detection.
23
+ * Client for interacting with the AbbababaEscrowV2 smart contract.
24
+ * Supports UUPS upgradeable escrow with 2% platform fee,
25
+ * criteriaHash for AI dispute resolution, configurable dispute windows,
26
+ * and abandonment detection.
7
27
  * Uses a ZeroDev Kernel account client for sending UserOperations.
8
28
  */
9
29
  export declare class EscrowClient {
@@ -20,14 +40,27 @@ export declare class EscrowClient {
20
40
  static toEscrowId(transactionId: string): `0x${string}`;
21
41
  /**
22
42
  * Approve the escrow contract to spend the settlement token on behalf of the smart account.
23
- * Must be called before fundEscrow.
43
+ * Must be called before fundEscrow. Approves amount + 2% fee (calculatePlatformFee).
24
44
  */
25
45
  approveToken(amount: bigint): Promise<string>;
26
46
  /**
27
- * Fund an escrow. Calls V4 createEscrow with 5 args including deadline.
28
- * The contract will safeTransferFrom the token (amount + 1% buyer fee) from the caller.
47
+ * Generate a criteriaHash from success criteria JSON.
48
+ * The criteriaHash is stored on-chain to enable Tier 1 algorithmic resolution.
29
49
  */
30
- fundEscrow(transactionId: string, sellerAddress: string, amount: bigint, deadline: bigint): Promise<string>;
50
+ static toCriteriaHash(criteria: object | string): `0x${string}`;
51
+ /**
52
+ * Fund an escrow. Calls V2 createEscrow with agent-negotiable parameters.
53
+ * The contract will safeTransferFrom the token (amount + 2% platform fee) from the caller.
54
+ *
55
+ * @param transactionId - Platform transaction ID (CUID)
56
+ * @param sellerAddress - Seller's wallet address
57
+ * @param amount - Amount in smallest token units (e.g., USDC with 6 decimals)
58
+ * @param deadline - Unix timestamp for delivery deadline
59
+ * @param disputeWindow - Dispute window in seconds (0 = default 1 hour, min 5min, max 24hr)
60
+ * @param abandonmentGrace - Abandonment grace in seconds (0 = default 2 days, min 1hr, max 30 days)
61
+ * @param criteriaHash - keccak256 hash of success criteria JSON (enables AI dispute resolution)
62
+ */
63
+ fundEscrow(transactionId: string, sellerAddress: string, amount: bigint, deadline: bigint, disputeWindow?: bigint, abandonmentGrace?: bigint, criteriaHash?: `0x${string}`): Promise<string>;
31
64
  /**
32
65
  * Submit delivery proof on-chain. Called by the seller after completing work.
33
66
  */
@@ -37,25 +70,25 @@ export declare class EscrowClient {
37
70
  */
38
71
  acceptDelivery(transactionId: string): Promise<string>;
39
72
  /**
40
- * Finalize release after the 24h dispute window has passed without a dispute.
73
+ * Finalize release after the dispute window has passed without a dispute.
41
74
  * Can be called by anyone.
42
75
  */
43
76
  finalizeRelease(transactionId: string): Promise<string>;
44
77
  /**
45
- * Dispute a delivery within the 24h dispute window. Called by the buyer.
78
+ * Dispute a delivery within the dispute window. Called by the buyer.
46
79
  */
47
80
  disputeEscrow(transactionId: string): Promise<string>;
48
81
  /**
49
- * Claim funds for an abandoned escrow (deadline + 7 days passed with no delivery).
82
+ * Claim funds for an abandoned escrow (deadline + abandonmentGrace passed with no delivery).
50
83
  * Called by the buyer to reclaim funds.
51
84
  */
52
85
  claimAbandoned(transactionId: string): Promise<string>;
53
86
  /**
54
- * Read escrow details from the V4 contract (view function, no gas needed).
87
+ * Read escrow details from the V2 contract (view function, no gas needed).
55
88
  */
56
89
  getEscrow(transactionId: string): Promise<EscrowDetails | null>;
57
90
  /**
58
- * Check if the 24h dispute window is currently active for an escrow.
91
+ * Check if the dispute window is currently active for an escrow.
59
92
  */
60
93
  isDisputeWindowActive(transactionId: string): Promise<boolean>;
61
94
  /**
@@ -63,12 +96,12 @@ export declare class EscrowClient {
63
96
  */
64
97
  canFinalize(transactionId: string): Promise<boolean>;
65
98
  /**
66
- * Check if an escrow can be claimed as abandoned (deadline + 7 days passed).
99
+ * Check if an escrow can be claimed as abandoned (deadline + abandonmentGrace passed).
67
100
  */
68
101
  canClaimAbandoned(transactionId: string): Promise<boolean>;
69
102
  }
70
103
  /**
71
- * Read-only client for the AbbababaScore on-chain reputation system.
104
+ * Read-only client for the AbbababaScoreV2 on-chain reputation system.
72
105
  * No wallet needed — all methods are view functions.
73
106
  */
74
107
  export declare class ScoreClient {
@@ -80,13 +113,36 @@ export declare class ScoreClient {
80
113
  * Get an agent's trust score (int256 — can be negative).
81
114
  */
82
115
  getScore(agentAddress: string): Promise<bigint>;
83
- /**
84
- * Check if an agent requires a bond (low trust score).
85
- */
86
- requiresBond(agentAddress: string): Promise<boolean>;
87
116
  /**
88
117
  * Get full agent stats from the reputation contract.
118
+ * V2: Returns score, jobs, disputes lost, abandoned, and max job value.
89
119
  */
90
120
  getAgentStats(agentAddress: string): Promise<AgentStats>;
121
+ /**
122
+ * Get maximum job value an agent can accept based on their score.
123
+ * V2: Score-based limits from $10 (score <10) to unlimited (score 100+).
124
+ * @returns Maximum job value in USDC (6 decimals)
125
+ */
126
+ getMaxJobValue(agentAddress: string): Promise<bigint>;
127
+ /**
128
+ * Get the Score contract address.
129
+ */
130
+ getScoreAddress(): Address;
131
+ }
132
+ /**
133
+ * Client for interacting with the AbbababaResolverV2 contract.
134
+ * Used for submitting AI dispute resolutions (requires RESOLVER_ROLE).
135
+ * V2 simplification: Single submitResolution function (no tier-specific functions).
136
+ */
137
+ export declare class ResolverClient {
138
+ private kernelClient;
139
+ private chainId;
140
+ private resolverAddress;
141
+ constructor(kernelClient: unknown, chainId?: number);
142
+ /**
143
+ * Submit AI dispute resolution.
144
+ * Requires RESOLVER_ROLE on the resolver contract.
145
+ */
146
+ submitResolution(transactionId: string, outcome: DisputeOutcome, buyerPercent: number, sellerPercent: number, reasoning: string): Promise<string>;
91
147
  }
92
148
  //# sourceMappingURL=escrow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"escrow.d.ts","sourceRoot":"","sources":["../../src/wallet/escrow.ts"],"names":[],"mappings":"AAWA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAU5D;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAQ;gBAEjB,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,OAAO,SAAwB;IAoBrF;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE;IAIvD;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBnD;;;OAGG;IACG,UAAU,CACd,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC;IAiBlB;;OAEG;IACG,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBtF;;OAEG;IACG,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB5D;;;OAGG;IACG,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB7D;;OAEG;IACG,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB3D;;;OAGG;IACG,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB5D;;OAEG;IACG,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAsCrE;;OAEG;IACG,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBpE;;OAEG;IACG,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB1D;;OAEG;IACG,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAkBjE;AAED;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,YAAY,CAAS;gBAEjB,OAAO,SAAwB;IAQ3C,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACG,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAarD;;OAEG;IACG,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa1D;;OAEG;IACG,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;CAgB/D"}
1
+ {"version":3,"file":"escrow.d.ts","sourceRoot":"","sources":["../../src/wallet/escrow.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,27 @@
1
1
  import { encodeFunctionData, keccak256, toBytes, createPublicClient, http, } from 'viem';
2
2
  import { baseSepolia, base } from 'viem/chains';
3
- import { ABBABABA_ESCROW_ABI, ABBABABA_SCORE_ABI, ERC20_ABI } from './abi.js';
4
- import { ESCROW_V4_ADDRESSES, SCORE_ADDRESSES, BASE_SEPOLIA_CHAIN_ID, BASE_MAINNET_CHAIN_ID, getToken, } from './constants.js';
3
+ import { ABBABABA_ESCROW_ABI, ABBABABA_SCORE_ABI, ABBABABA_RESOLVER_ABI, ERC20_ABI } from './abi.js';
4
+ import { ESCROW_V2_ADDRESSES, SCORE_V2_ADDRESSES, RESOLVER_V2_ADDRESSES, BASE_SEPOLIA_CHAIN_ID, BASE_MAINNET_CHAIN_ID, getToken, } from './constants.js';
5
+ /** Dispute resolution outcome */
6
+ export var DisputeOutcome;
7
+ (function (DisputeOutcome) {
8
+ DisputeOutcome[DisputeOutcome["None"] = 0] = "None";
9
+ DisputeOutcome[DisputeOutcome["BuyerRefund"] = 1] = "BuyerRefund";
10
+ DisputeOutcome[DisputeOutcome["SellerPaid"] = 2] = "SellerPaid";
11
+ DisputeOutcome[DisputeOutcome["Split"] = 3] = "Split";
12
+ })(DisputeOutcome || (DisputeOutcome = {}));
13
+ /** Escrow status codes */
14
+ export var EscrowStatus;
15
+ (function (EscrowStatus) {
16
+ EscrowStatus[EscrowStatus["None"] = 0] = "None";
17
+ EscrowStatus[EscrowStatus["Funded"] = 1] = "Funded";
18
+ EscrowStatus[EscrowStatus["Delivered"] = 2] = "Delivered";
19
+ EscrowStatus[EscrowStatus["Released"] = 3] = "Released";
20
+ EscrowStatus[EscrowStatus["Refunded"] = 4] = "Refunded";
21
+ EscrowStatus[EscrowStatus["Disputed"] = 5] = "Disputed";
22
+ EscrowStatus[EscrowStatus["Resolved"] = 6] = "Resolved";
23
+ EscrowStatus[EscrowStatus["Abandoned"] = 7] = "Abandoned";
24
+ })(EscrowStatus || (EscrowStatus = {}));
5
25
  const CHAINS = {
6
26
  [BASE_SEPOLIA_CHAIN_ID]: baseSepolia,
7
27
  [BASE_MAINNET_CHAIN_ID]: base,
@@ -9,9 +29,10 @@ const CHAINS = {
9
29
  const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
10
30
  const ZERO_BYTES32 = '0x0000000000000000000000000000000000000000000000000000000000000000';
11
31
  /**
12
- * Client for interacting with the AbbababaEscrow V4 smart contract.
13
- * Supports self-executing escrow with delivery proofs, 24h dispute window,
14
- * auto-release, and abandonment detection.
32
+ * Client for interacting with the AbbababaEscrowV2 smart contract.
33
+ * Supports UUPS upgradeable escrow with 2% platform fee,
34
+ * criteriaHash for AI dispute resolution, configurable dispute windows,
35
+ * and abandonment detection.
15
36
  * Uses a ZeroDev Kernel account client for sending UserOperations.
16
37
  */
17
38
  export class EscrowClient {
@@ -35,10 +56,10 @@ export class EscrowClient {
35
56
  this.tokenAddress = usdc.address;
36
57
  this.tokenDecimals = usdc.decimals;
37
58
  }
38
- const v4 = ESCROW_V4_ADDRESSES[chainId];
39
- if (!v4)
40
- throw new Error(`No V4 escrow contract for chain ${chainId}`);
41
- this.escrowAddress = v4;
59
+ const v2 = ESCROW_V2_ADDRESSES[chainId];
60
+ if (!v2)
61
+ throw new Error(`No V2 escrow contract for chain ${chainId}`);
62
+ this.escrowAddress = v2;
42
63
  }
43
64
  /**
44
65
  * Convert a platform transaction ID (CUID string) to a bytes32 escrow ID.
@@ -49,16 +70,13 @@ export class EscrowClient {
49
70
  }
50
71
  /**
51
72
  * Approve the escrow contract to spend the settlement token on behalf of the smart account.
52
- * Must be called before fundEscrow.
73
+ * Must be called before fundEscrow. Approves amount + 2% fee (calculatePlatformFee).
53
74
  */
54
75
  async approveToken(amount) {
55
- // Buyer fee is 1% (100 bps). Approve the total: amount + 1% fee
56
- const buyerFee = (amount * 100n) / 10000n;
57
- const totalApproval = amount + buyerFee;
58
76
  const data = encodeFunctionData({
59
77
  abi: ERC20_ABI,
60
78
  functionName: 'approve',
61
- args: [this.escrowAddress, totalApproval],
79
+ args: [this.escrowAddress, amount],
62
80
  });
63
81
  const txHash = await this.kernelClient.sendTransaction({
64
82
  to: this.tokenAddress,
@@ -67,15 +85,31 @@ export class EscrowClient {
67
85
  return txHash;
68
86
  }
69
87
  /**
70
- * Fund an escrow. Calls V4 createEscrow with 5 args including deadline.
71
- * The contract will safeTransferFrom the token (amount + 1% buyer fee) from the caller.
88
+ * Generate a criteriaHash from success criteria JSON.
89
+ * The criteriaHash is stored on-chain to enable Tier 1 algorithmic resolution.
72
90
  */
73
- async fundEscrow(transactionId, sellerAddress, amount, deadline) {
91
+ static toCriteriaHash(criteria) {
92
+ const json = typeof criteria === 'string' ? criteria : JSON.stringify(criteria);
93
+ return keccak256(toBytes(json));
94
+ }
95
+ /**
96
+ * Fund an escrow. Calls V2 createEscrow with agent-negotiable parameters.
97
+ * The contract will safeTransferFrom the token (amount + 2% platform fee) from the caller.
98
+ *
99
+ * @param transactionId - Platform transaction ID (CUID)
100
+ * @param sellerAddress - Seller's wallet address
101
+ * @param amount - Amount in smallest token units (e.g., USDC with 6 decimals)
102
+ * @param deadline - Unix timestamp for delivery deadline
103
+ * @param disputeWindow - Dispute window in seconds (0 = default 1 hour, min 5min, max 24hr)
104
+ * @param abandonmentGrace - Abandonment grace in seconds (0 = default 2 days, min 1hr, max 30 days)
105
+ * @param criteriaHash - keccak256 hash of success criteria JSON (enables AI dispute resolution)
106
+ */
107
+ async fundEscrow(transactionId, sellerAddress, amount, deadline, disputeWindow = 0n, abandonmentGrace = 0n, criteriaHash = '0x0000000000000000000000000000000000000000000000000000000000000000') {
74
108
  const escrowId = EscrowClient.toEscrowId(transactionId);
75
109
  const data = encodeFunctionData({
76
110
  abi: ABBABABA_ESCROW_ABI,
77
111
  functionName: 'createEscrow',
78
- args: [escrowId, sellerAddress, amount, this.tokenAddress, deadline],
112
+ args: [escrowId, sellerAddress, amount, this.tokenAddress, deadline, disputeWindow, abandonmentGrace, criteriaHash],
79
113
  });
80
114
  const txHash = await this.kernelClient.sendTransaction({
81
115
  to: this.escrowAddress,
@@ -116,7 +150,7 @@ export class EscrowClient {
116
150
  return txHash;
117
151
  }
118
152
  /**
119
- * Finalize release after the 24h dispute window has passed without a dispute.
153
+ * Finalize release after the dispute window has passed without a dispute.
120
154
  * Can be called by anyone.
121
155
  */
122
156
  async finalizeRelease(transactionId) {
@@ -133,7 +167,7 @@ export class EscrowClient {
133
167
  return txHash;
134
168
  }
135
169
  /**
136
- * Dispute a delivery within the 24h dispute window. Called by the buyer.
170
+ * Dispute a delivery within the dispute window. Called by the buyer.
137
171
  */
138
172
  async disputeEscrow(transactionId) {
139
173
  const escrowId = EscrowClient.toEscrowId(transactionId);
@@ -149,7 +183,7 @@ export class EscrowClient {
149
183
  return txHash;
150
184
  }
151
185
  /**
152
- * Claim funds for an abandoned escrow (deadline + 7 days passed with no delivery).
186
+ * Claim funds for an abandoned escrow (deadline + abandonmentGrace passed with no delivery).
153
187
  * Called by the buyer to reclaim funds.
154
188
  */
155
189
  async claimAbandoned(transactionId) {
@@ -166,7 +200,7 @@ export class EscrowClient {
166
200
  return txHash;
167
201
  }
168
202
  /**
169
- * Read escrow details from the V4 contract (view function, no gas needed).
203
+ * Read escrow details from the V2 contract (view function, no gas needed).
170
204
  */
171
205
  async getEscrow(transactionId) {
172
206
  const escrowId = EscrowClient.toEscrowId(transactionId);
@@ -181,7 +215,7 @@ export class EscrowClient {
181
215
  functionName: 'getEscrow',
182
216
  args: [escrowId],
183
217
  });
184
- const [token, buyer, seller, amount, buyerFee, status, createdAt, deadline, deliveredAt, proofHash] = result;
218
+ const [token, buyer, seller, lockedAmount, platformFee, status, createdAt, deadline, disputeWindow, abandonmentGrace, deliveredAt, proofHash, criteriaHash] = result;
185
219
  if (buyer === ZERO_ADDRESS) {
186
220
  return null;
187
221
  }
@@ -189,17 +223,20 @@ export class EscrowClient {
189
223
  token,
190
224
  buyer,
191
225
  seller,
192
- amount,
193
- buyerFee,
226
+ lockedAmount,
227
+ platformFee,
194
228
  status,
195
229
  createdAt: Number(createdAt),
196
230
  deadline: Number(deadline),
231
+ disputeWindow: Number(disputeWindow),
232
+ abandonmentGrace: Number(abandonmentGrace),
197
233
  deliveredAt: Number(deliveredAt),
198
234
  proofHash: proofHash === ZERO_BYTES32 ? null : proofHash,
235
+ criteriaHash: criteriaHash === ZERO_BYTES32 ? null : criteriaHash,
199
236
  };
200
237
  }
201
238
  /**
202
- * Check if the 24h dispute window is currently active for an escrow.
239
+ * Check if the dispute window is currently active for an escrow.
203
240
  */
204
241
  async isDisputeWindowActive(transactionId) {
205
242
  const escrowId = EscrowClient.toEscrowId(transactionId);
@@ -235,7 +272,7 @@ export class EscrowClient {
235
272
  return result;
236
273
  }
237
274
  /**
238
- * Check if an escrow can be claimed as abandoned (deadline + 7 days passed).
275
+ * Check if an escrow can be claimed as abandoned (deadline + abandonmentGrace passed).
239
276
  */
240
277
  async canClaimAbandoned(transactionId) {
241
278
  const escrowId = EscrowClient.toEscrowId(transactionId);
@@ -254,7 +291,7 @@ export class EscrowClient {
254
291
  }
255
292
  }
256
293
  /**
257
- * Read-only client for the AbbababaScore on-chain reputation system.
294
+ * Read-only client for the AbbababaScoreV2 on-chain reputation system.
258
295
  * No wallet needed — all methods are view functions.
259
296
  */
260
297
  export class ScoreClient {
@@ -262,7 +299,7 @@ export class ScoreClient {
262
299
  scoreAddress;
263
300
  constructor(chainId = BASE_SEPOLIA_CHAIN_ID) {
264
301
  this.chainId = chainId;
265
- const addr = SCORE_ADDRESSES[chainId];
302
+ const addr = SCORE_V2_ADDRESSES[chainId];
266
303
  if (!addr)
267
304
  throw new Error(`No Score contract for chain ${chainId}`);
268
305
  this.scoreAddress = addr;
@@ -288,31 +325,81 @@ export class ScoreClient {
288
325
  return result;
289
326
  }
290
327
  /**
291
- * Check if an agent requires a bond (low trust score).
328
+ * Get full agent stats from the reputation contract.
329
+ * V2: Returns score, jobs, disputes lost, abandoned, and max job value.
292
330
  */
293
- async requiresBond(agentAddress) {
331
+ async getAgentStats(agentAddress) {
294
332
  const publicClient = this.getPublicClient();
295
- const result = await publicClient.readContract({
333
+ const stats = await publicClient.readContract({
296
334
  address: this.scoreAddress,
297
335
  abi: ABBABABA_SCORE_ABI,
298
- functionName: 'requiresBond',
336
+ functionName: 'getAgentStats',
299
337
  args: [agentAddress],
300
338
  });
301
- return result;
339
+ const [score, jobs, lostDisputes, abandoned, maxJobValue] = stats;
340
+ return {
341
+ score,
342
+ totalJobs: jobs,
343
+ disputesLost: lostDisputes,
344
+ jobsAbandoned: abandoned,
345
+ maxJobValue,
346
+ };
302
347
  }
303
348
  /**
304
- * Get full agent stats from the reputation contract.
349
+ * Get maximum job value an agent can accept based on their score.
350
+ * V2: Score-based limits from $10 (score <10) to unlimited (score 100+).
351
+ * @returns Maximum job value in USDC (6 decimals)
305
352
  */
306
- async getAgentStats(agentAddress) {
353
+ async getMaxJobValue(agentAddress) {
307
354
  const publicClient = this.getPublicClient();
308
355
  const result = await publicClient.readContract({
309
356
  address: this.scoreAddress,
310
357
  abi: ABBABABA_SCORE_ABI,
311
- functionName: 'getAgentStats',
358
+ functionName: 'getMaxJobValue',
312
359
  args: [agentAddress],
313
360
  });
314
- const [score, totalJobs, disputesLost, jobsAbandoned, needsBond] = result;
315
- return { score, totalJobs, disputesLost, jobsAbandoned, needsBond };
361
+ return result;
362
+ }
363
+ /**
364
+ * Get the Score contract address.
365
+ */
366
+ getScoreAddress() {
367
+ return this.scoreAddress;
368
+ }
369
+ }
370
+ /**
371
+ * Client for interacting with the AbbababaResolverV2 contract.
372
+ * Used for submitting AI dispute resolutions (requires RESOLVER_ROLE).
373
+ * V2 simplification: Single submitResolution function (no tier-specific functions).
374
+ */
375
+ export class ResolverClient {
376
+ kernelClient;
377
+ chainId;
378
+ resolverAddress;
379
+ constructor(kernelClient, chainId = BASE_SEPOLIA_CHAIN_ID) {
380
+ this.kernelClient = kernelClient;
381
+ this.chainId = chainId;
382
+ const addr = RESOLVER_V2_ADDRESSES[chainId];
383
+ if (!addr)
384
+ throw new Error(`No Resolver contract for chain ${chainId}`);
385
+ this.resolverAddress = addr;
386
+ }
387
+ /**
388
+ * Submit AI dispute resolution.
389
+ * Requires RESOLVER_ROLE on the resolver contract.
390
+ */
391
+ async submitResolution(transactionId, outcome, buyerPercent, sellerPercent, reasoning) {
392
+ const escrowId = EscrowClient.toEscrowId(transactionId);
393
+ const data = encodeFunctionData({
394
+ abi: ABBABABA_RESOLVER_ABI,
395
+ functionName: 'submitResolution',
396
+ args: [escrowId, outcome, BigInt(buyerPercent), BigInt(sellerPercent), reasoning],
397
+ });
398
+ const txHash = await this.kernelClient.sendTransaction({
399
+ to: this.resolverAddress,
400
+ data,
401
+ });
402
+ return txHash;
316
403
  }
317
404
  }
318
405
  //# sourceMappingURL=escrow.js.map