@oobe-protocol-labs/synapse-sap-sdk 0.9.2 → 0.10.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 (68) hide show
  1. package/dist/cjs/constants/index.js +9 -1
  2. package/dist/cjs/constants/index.js.map +1 -1
  3. package/dist/cjs/constants/payments.js +87 -0
  4. package/dist/cjs/constants/payments.js.map +1 -0
  5. package/dist/cjs/constants/seeds.js +9 -1
  6. package/dist/cjs/constants/seeds.js.map +1 -1
  7. package/dist/cjs/idl/synapse_agent_sap.json +270 -2
  8. package/dist/cjs/modules/escrow-v2.js +10 -0
  9. package/dist/cjs/modules/escrow-v2.js.map +1 -1
  10. package/dist/cjs/modules/escrow.js +29 -4
  11. package/dist/cjs/modules/escrow.js.map +1 -1
  12. package/dist/cjs/pda/index.js +31 -1
  13. package/dist/cjs/pda/index.js.map +1 -1
  14. package/dist/cjs/plugin/index.js +3 -1
  15. package/dist/cjs/plugin/index.js.map +1 -1
  16. package/dist/cjs/registries/metaplex-bridge.js +236 -6
  17. package/dist/cjs/registries/metaplex-bridge.js.map +1 -1
  18. package/dist/cjs/utils/hash.js +52 -1
  19. package/dist/cjs/utils/hash.js.map +1 -1
  20. package/dist/esm/constants/index.js +2 -0
  21. package/dist/esm/constants/index.js.map +1 -1
  22. package/dist/esm/constants/payments.js +82 -0
  23. package/dist/esm/constants/payments.js.map +1 -0
  24. package/dist/esm/constants/seeds.js +9 -1
  25. package/dist/esm/constants/seeds.js.map +1 -1
  26. package/dist/esm/idl/synapse_agent_sap.json +270 -2
  27. package/dist/esm/modules/escrow-v2.js +11 -1
  28. package/dist/esm/modules/escrow-v2.js.map +1 -1
  29. package/dist/esm/modules/escrow.js +30 -5
  30. package/dist/esm/modules/escrow.js.map +1 -1
  31. package/dist/esm/pda/index.js +29 -0
  32. package/dist/esm/pda/index.js.map +1 -1
  33. package/dist/esm/plugin/index.js +3 -1
  34. package/dist/esm/plugin/index.js.map +1 -1
  35. package/dist/esm/registries/metaplex-bridge.js +236 -6
  36. package/dist/esm/registries/metaplex-bridge.js.map +1 -1
  37. package/dist/esm/utils/hash.js +50 -0
  38. package/dist/esm/utils/hash.js.map +1 -1
  39. package/dist/types/constants/index.d.ts +1 -0
  40. package/dist/types/constants/index.d.ts.map +1 -1
  41. package/dist/types/constants/payments.d.ts +78 -0
  42. package/dist/types/constants/payments.d.ts.map +1 -0
  43. package/dist/types/constants/seeds.d.ts +9 -1
  44. package/dist/types/constants/seeds.d.ts.map +1 -1
  45. package/dist/types/modules/escrow-v2.d.ts.map +1 -1
  46. package/dist/types/modules/escrow.d.ts +9 -1
  47. package/dist/types/modules/escrow.d.ts.map +1 -1
  48. package/dist/types/pda/index.d.ts +21 -0
  49. package/dist/types/pda/index.d.ts.map +1 -1
  50. package/dist/types/plugin/index.d.ts.map +1 -1
  51. package/dist/types/registries/index.d.ts +1 -1
  52. package/dist/types/registries/index.d.ts.map +1 -1
  53. package/dist/types/registries/metaplex-bridge.d.ts +224 -1
  54. package/dist/types/registries/metaplex-bridge.d.ts.map +1 -1
  55. package/dist/types/utils/hash.d.ts +27 -0
  56. package/dist/types/utils/hash.d.ts.map +1 -1
  57. package/package.json +1 -1
  58. package/src/constants/index.ts +11 -1
  59. package/src/constants/payments.ts +92 -0
  60. package/src/constants/seeds.ts +9 -1
  61. package/src/idl/synapse_agent_sap.json +270 -2
  62. package/src/modules/escrow-v2.ts +15 -0
  63. package/src/modules/escrow.ts +36 -3
  64. package/src/pda/index.ts +39 -0
  65. package/src/plugin/index.ts +2 -0
  66. package/src/registries/index.ts +8 -0
  67. package/src/registries/metaplex-bridge.ts +464 -5
  68. package/src/utils/hash.ts +56 -0
@@ -22,7 +22,7 @@
22
22
  * ```
23
23
  */
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.TOOL_CATEGORY_ADDRESS_LIST = exports.TOOL_CATEGORY_ADDRESSES = exports.PROGRAM_METADATA_PROGRAM = exports.IDL_ACCOUNT_ADDRESS = exports.GLOBAL_REGISTRY_BUMP = exports.GLOBAL_REGISTRY_ADDRESS = exports.SAP_UPGRADE_AUTHORITY = exports.SAP_PROGRAM = exports.SapNetwork = exports.HTTP_METHOD_VALUES = exports.TOOL_CATEGORY_VALUES = exports.VAULT_PROTOCOL_VERSION = exports.AGENT_VERSION = exports.LIMITS = exports.SEEDS = exports.SAP_PROGRAM_ID = exports.LOCALNET_SAP_PROGRAM_ID = exports.DEVNET_SAP_PROGRAM_ID = exports.MAINNET_SAP_PROGRAM_ID = exports.SAP_PROGRAM_ADDRESS = void 0;
25
+ exports.isAcceptedPaymentToken = exports.isAcceptedUsdcMint = exports.MAX_DELEGATE_DURATION_SECS = exports.MIN_AGENT_STAKE_LAMPORTS = exports.USDC_MINT_DEVNET = exports.USDC_MINT_MAINNET = exports.TOOL_CATEGORY_ADDRESS_LIST = exports.TOOL_CATEGORY_ADDRESSES = exports.PROGRAM_METADATA_PROGRAM = exports.IDL_ACCOUNT_ADDRESS = exports.GLOBAL_REGISTRY_BUMP = exports.GLOBAL_REGISTRY_ADDRESS = exports.SAP_UPGRADE_AUTHORITY = exports.SAP_PROGRAM = exports.SapNetwork = exports.HTTP_METHOD_VALUES = exports.TOOL_CATEGORY_VALUES = exports.VAULT_PROTOCOL_VERSION = exports.AGENT_VERSION = exports.LIMITS = exports.SEEDS = exports.SAP_PROGRAM_ID = exports.LOCALNET_SAP_PROGRAM_ID = exports.DEVNET_SAP_PROGRAM_ID = exports.MAINNET_SAP_PROGRAM_ID = exports.SAP_PROGRAM_ADDRESS = void 0;
26
26
  // ── Program IDs ──────────────────────────────────────
27
27
  var programs_1 = require("./programs");
28
28
  Object.defineProperty(exports, "SAP_PROGRAM_ADDRESS", { enumerable: true, get: function () { return programs_1.SAP_PROGRAM_ADDRESS; } });
@@ -53,4 +53,12 @@ Object.defineProperty(exports, "IDL_ACCOUNT_ADDRESS", { enumerable: true, get: f
53
53
  Object.defineProperty(exports, "PROGRAM_METADATA_PROGRAM", { enumerable: true, get: function () { return addresses_1.PROGRAM_METADATA_PROGRAM; } });
54
54
  Object.defineProperty(exports, "TOOL_CATEGORY_ADDRESSES", { enumerable: true, get: function () { return addresses_1.TOOL_CATEGORY_ADDRESSES; } });
55
55
  Object.defineProperty(exports, "TOOL_CATEGORY_ADDRESS_LIST", { enumerable: true, get: function () { return addresses_1.TOOL_CATEGORY_ADDRESS_LIST; } });
56
+ // ── Payment-token allowlist & stake collateral (v0.10.0) ─────
57
+ var payments_1 = require("./payments");
58
+ Object.defineProperty(exports, "USDC_MINT_MAINNET", { enumerable: true, get: function () { return payments_1.USDC_MINT_MAINNET; } });
59
+ Object.defineProperty(exports, "USDC_MINT_DEVNET", { enumerable: true, get: function () { return payments_1.USDC_MINT_DEVNET; } });
60
+ Object.defineProperty(exports, "MIN_AGENT_STAKE_LAMPORTS", { enumerable: true, get: function () { return payments_1.MIN_AGENT_STAKE_LAMPORTS; } });
61
+ Object.defineProperty(exports, "MAX_DELEGATE_DURATION_SECS", { enumerable: true, get: function () { return payments_1.MAX_DELEGATE_DURATION_SECS; } });
62
+ Object.defineProperty(exports, "isAcceptedUsdcMint", { enumerable: true, get: function () { return payments_1.isAcceptedUsdcMint; } });
63
+ Object.defineProperty(exports, "isAcceptedPaymentToken", { enumerable: true, get: function () { return payments_1.isAcceptedPaymentToken; } });
56
64
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH,wDAAwD;AACxD,uCAMoB;AALlB,+GAAA,mBAAmB,OAAA;AACnB,kHAAA,sBAAsB,OAAA;AACtB,iHAAA,qBAAqB,OAAA;AACrB,mHAAA,uBAAuB,OAAA;AACvB,0GAAA,cAAc,OAAA;AAGhB,wDAAwD;AACxD,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AAGd,wDAAwD;AACxD,mCAMkB;AALhB,gGAAA,MAAM,OAAA;AACN,uGAAA,aAAa,OAAA;AACb,gHAAA,sBAAsB,OAAA;AACtB,8GAAA,oBAAoB,OAAA;AACpB,4GAAA,kBAAkB,OAAA;AAEpB,gEAAgE;AAChE,qCAAuC;AAA9B,qGAAA,UAAU,OAAA;AAGnB,gEAAgE;AAChE,yCASqB;AARnB,wGAAA,WAAW,OAAA;AACX,kHAAA,qBAAqB,OAAA;AACrB,oHAAA,uBAAuB,OAAA;AACvB,iHAAA,oBAAoB,OAAA;AACpB,gHAAA,mBAAmB,OAAA;AACnB,qHAAA,wBAAwB,OAAA;AACxB,oHAAA,uBAAuB,OAAA;AACvB,uHAAA,0BAA0B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH,wDAAwD;AACxD,uCAMoB;AALlB,+GAAA,mBAAmB,OAAA;AACnB,kHAAA,sBAAsB,OAAA;AACtB,iHAAA,qBAAqB,OAAA;AACrB,mHAAA,uBAAuB,OAAA;AACvB,0GAAA,cAAc,OAAA;AAGhB,wDAAwD;AACxD,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AAGd,wDAAwD;AACxD,mCAMkB;AALhB,gGAAA,MAAM,OAAA;AACN,uGAAA,aAAa,OAAA;AACb,gHAAA,sBAAsB,OAAA;AACtB,8GAAA,oBAAoB,OAAA;AACpB,4GAAA,kBAAkB,OAAA;AAEpB,gEAAgE;AAChE,qCAAuC;AAA9B,qGAAA,UAAU,OAAA;AAGnB,gEAAgE;AAChE,yCASqB;AARnB,wGAAA,WAAW,OAAA;AACX,kHAAA,qBAAqB,OAAA;AACrB,oHAAA,uBAAuB,OAAA;AACvB,iHAAA,oBAAoB,OAAA;AACpB,gHAAA,mBAAmB,OAAA;AACnB,qHAAA,wBAAwB,OAAA;AACxB,oHAAA,uBAAuB,OAAA;AACvB,uHAAA,0BAA0B,OAAA;AAG5B,gEAAgE;AAChE,uCAOoB;AANlB,6GAAA,iBAAiB,OAAA;AACjB,4GAAA,gBAAgB,OAAA;AAChB,oHAAA,wBAAwB,OAAA;AACxB,sHAAA,0BAA0B,OAAA;AAC1B,8GAAA,kBAAkB,OAAA;AAClB,kHAAA,sBAAsB,OAAA"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ /**
3
+ * @module constants/payments
4
+ * @description Payment-token allowlist + agent stake collateral constants
5
+ * mirroring the on-chain v0.10.0 hardening.
6
+ *
7
+ * The on-chain program now accepts only:
8
+ * - **Native SOL** — signalled by `tokenMint = null` on escrow creation.
9
+ * - **USDC mainnet** — `EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v`.
10
+ * - **USDC devnet** — `4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU`.
11
+ *
12
+ * Any other SPL mint passed to `createEscrow` / `createEscrowV2` is
13
+ * rejected on-chain with `PaymentTokenNotAllowed` (error code 6093).
14
+ *
15
+ * Additionally, the agent owner MUST have an `AgentStake` PDA with
16
+ * `staked_amount >= MIN_AGENT_STAKE_LAMPORTS` (0.1 SOL) BEFORE any
17
+ * client can create a new escrow against that agent. Use
18
+ * {@link StakingModule.initStake} + {@link StakingModule.deposit}
19
+ * to satisfy the requirement.
20
+ *
21
+ * @category Constants
22
+ * @since v0.10.0
23
+ */
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.MAX_DELEGATE_DURATION_SECS = exports.MIN_AGENT_STAKE_LAMPORTS = exports.USDC_MINT_DEVNET = exports.USDC_MINT_MAINNET = void 0;
26
+ exports.isAcceptedUsdcMint = isAcceptedUsdcMint;
27
+ exports.isAcceptedPaymentToken = isAcceptedPaymentToken;
28
+ const web3_js_1 = require("@solana/web3.js");
29
+ /**
30
+ * USDC mint on Solana mainnet-beta (Circle).
31
+ *
32
+ * @name USDC_MINT_MAINNET
33
+ * @category Constants
34
+ * @since v0.10.0
35
+ */
36
+ exports.USDC_MINT_MAINNET = new web3_js_1.PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v");
37
+ /**
38
+ * USDC mint on Solana devnet (Circle test mint).
39
+ *
40
+ * @name USDC_MINT_DEVNET
41
+ * @category Constants
42
+ * @since v0.10.0
43
+ */
44
+ exports.USDC_MINT_DEVNET = new web3_js_1.PublicKey("4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU");
45
+ /**
46
+ * Minimum agent stake required to gate escrow creation, expressed in lamports.
47
+ * Mirrors `AgentStake::MIN_STAKE` on-chain (`100_000_000` = 0.1 SOL).
48
+ *
49
+ * @name MIN_AGENT_STAKE_LAMPORTS
50
+ * @category Constants
51
+ * @since v0.10.0
52
+ */
53
+ exports.MIN_AGENT_STAKE_LAMPORTS = BigInt(100_000_000);
54
+ /**
55
+ * Maximum delegate duration (seconds) accepted by `add_vault_delegate`.
56
+ * Mirrors `VaultDelegate::MAX_DELEGATE_DURATION_SECS` on-chain
57
+ * (`365 * 86_400` = 1 year).
58
+ *
59
+ * @name MAX_DELEGATE_DURATION_SECS
60
+ * @category Constants
61
+ * @since v0.10.0
62
+ */
63
+ exports.MAX_DELEGATE_DURATION_SECS = 365 * 86_400;
64
+ /**
65
+ * Returns true when `mint` is an accepted USDC mint (mainnet or devnet).
66
+ *
67
+ * @name isAcceptedUsdcMint
68
+ * @param mint - Candidate SPL token mint.
69
+ * @category Constants
70
+ * @since v0.10.0
71
+ */
72
+ function isAcceptedUsdcMint(mint) {
73
+ return mint.equals(exports.USDC_MINT_MAINNET) || mint.equals(exports.USDC_MINT_DEVNET);
74
+ }
75
+ /**
76
+ * Returns true when the (optional) `tokenMint` is acceptable as escrow payment.
77
+ * `null` represents native SOL and is always accepted.
78
+ *
79
+ * @name isAcceptedPaymentToken
80
+ * @param tokenMint - The mint passed to `createEscrow*`. `null` = SOL.
81
+ * @category Constants
82
+ * @since v0.10.0
83
+ */
84
+ function isAcceptedPaymentToken(tokenMint) {
85
+ return tokenMint === null || isAcceptedUsdcMint(tokenMint);
86
+ }
87
+ //# sourceMappingURL=payments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payments.js","sourceRoot":"","sources":["../../../src/constants/payments.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAuDH,gDAEC;AAWD,wDAEC;AApED,6CAA4C;AAE5C;;;;;;GAMG;AACU,QAAA,iBAAiB,GAAG,IAAI,mBAAS,CAC5C,8CAA8C,CAC/C,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,gBAAgB,GAAG,IAAI,mBAAS,CAC3C,8CAA8C,CAC/C,CAAC;AAEF;;;;;;;GAOG;AACU,QAAA,wBAAwB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AAE5D;;;;;;;;GAQG;AACU,QAAA,0BAA0B,GAAG,GAAG,GAAG,MAAM,CAAC;AAEvD;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAAC,IAAe;IAChD,OAAO,IAAI,CAAC,MAAM,CAAC,yBAAiB,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,wBAAgB,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,sBAAsB,CAAC,SAA2B;IAChE,OAAO,SAAS,KAAK,IAAI,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC;AAC7D,CAAC"}
@@ -62,7 +62,15 @@ exports.SEEDS = {
62
62
  SUBSCRIPTION: "sap_sub",
63
63
  SHARD: "sap_shard",
64
64
  INDEX_PAGE: "sap_idx_page",
65
- /** @since v0.7.0 — Receipt batch merkle root PDA */
65
+ /**
66
+ * @since v0.10.0 — Anti-replay receipt PDA bound to (escrow, service_hash) or (escrow, batch_root).
67
+ * Created via `init` on every settle_calls / settle_batch / settle_calls_v2; replays fail.
68
+ */
69
+ SETTLEMENT_RECEIPT: "sap_recv",
70
+ /**
71
+ * @deprecated v0.10.0 — Was reserved for receipt batch merkle root (never used on-chain).
72
+ * Use {@link SEEDS.SETTLEMENT_RECEIPT} (`sap_recv`) instead. Will be removed in v0.11.0.
73
+ */
66
74
  RECEIPT: "sap_receipt",
67
75
  };
68
76
  //# sourceMappingURL=seeds.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"seeds.js","sourceRoot":"","sources":["../../../src/constants/seeds.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,sEAAsE;AACtE,qBAAqB;AACrB,sEAAsE;AAEtE;;;;;;;;;;;;;;;;;;GAkBG;AACU,QAAA,KAAK,GAAG;IACnB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,cAAc;IACxB,gBAAgB,EAAE,aAAa;IAC/B,cAAc,EAAE,eAAe;IAC/B,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,YAAY,EAAE,eAAe;IAC7B,KAAK,EAAE,WAAW;IAClB,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,cAAc;IACxB,IAAI,EAAE,UAAU;IAChB,UAAU,EAAE,gBAAgB;IAC5B,MAAM,EAAE,YAAY;IACpB,SAAS,EAAE,eAAe;IAC1B,KAAK,EAAE,WAAW;IAClB,aAAa,EAAE,cAAc;IAC7B,WAAW,EAAE,YAAY;IACzB,MAAM,EAAE,YAAY;IACpB,WAAW,EAAE,UAAU;IACvB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,aAAa;IACtB,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,WAAW;IAClB,YAAY,EAAE,SAAS;IACvB,KAAK,EAAE,WAAW;IAClB,UAAU,EAAE,cAAc;IAC1B,oDAAoD;IACpD,OAAO,EAAE,aAAa;CACd,CAAC"}
1
+ {"version":3,"file":"seeds.js","sourceRoot":"","sources":["../../../src/constants/seeds.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,sEAAsE;AACtE,qBAAqB;AACrB,sEAAsE;AAEtE;;;;;;;;;;;;;;;;;;GAkBG;AACU,QAAA,KAAK,GAAG;IACnB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,cAAc;IACxB,gBAAgB,EAAE,aAAa;IAC/B,cAAc,EAAE,eAAe;IAC/B,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,YAAY,EAAE,eAAe;IAC7B,KAAK,EAAE,WAAW;IAClB,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,cAAc;IACxB,IAAI,EAAE,UAAU;IAChB,UAAU,EAAE,gBAAgB;IAC5B,MAAM,EAAE,YAAY;IACpB,SAAS,EAAE,eAAe;IAC1B,KAAK,EAAE,WAAW;IAClB,aAAa,EAAE,cAAc;IAC7B,WAAW,EAAE,YAAY;IACzB,MAAM,EAAE,YAAY;IACpB,WAAW,EAAE,UAAU;IACvB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,aAAa;IACtB,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,WAAW;IAClB,YAAY,EAAE,SAAS;IACvB,KAAK,EAAE,WAAW;IAClB,UAAU,EAAE,cAAc;IAC1B;;;OAGG;IACH,kBAAkB,EAAE,UAAU;IAC9B;;;OAGG;IACH,OAAO,EAAE,aAAa;CACd,CAAC"}
@@ -2,7 +2,7 @@
2
2
  "address": "SAPpUhsWLJG1FfkGRcXagEDMrMsWGjbky7AyhGpFETZ",
3
3
  "metadata": {
4
4
  "name": "synapse_agent_sap",
5
- "version": "0.1.0",
5
+ "version": "0.2.0",
6
6
  "spec": "0.1.0",
7
7
  "description": "Created with Anchor"
8
8
  },
@@ -2693,6 +2693,37 @@
2693
2693
  "Agent to prepay for — anyone can create escrow"
2694
2694
  ]
2695
2695
  },
2696
+ {
2697
+ "name": "agent_stake",
2698
+ "docs": [
2699
+ "v0.10 hardening: agent MUST hold at least `AgentStake::MIN_STAKE`",
2700
+ "in collateral before any new escrow can be opened. This guarantees",
2701
+ "every accepted client has a slashable bond to claim against in case",
2702
+ "of dispute."
2703
+ ],
2704
+ "pda": {
2705
+ "seeds": [
2706
+ {
2707
+ "kind": "const",
2708
+ "value": [
2709
+ 115,
2710
+ 97,
2711
+ 112,
2712
+ 95,
2713
+ 115,
2714
+ 116,
2715
+ 97,
2716
+ 107,
2717
+ 101
2718
+ ]
2719
+ },
2720
+ {
2721
+ "kind": "account",
2722
+ "path": "agent"
2723
+ }
2724
+ ]
2725
+ }
2726
+ },
2696
2727
  {
2697
2728
  "name": "escrow",
2698
2729
  "writable": true,
@@ -2792,6 +2823,35 @@
2792
2823
  {
2793
2824
  "name": "agent"
2794
2825
  },
2826
+ {
2827
+ "name": "agent_stake",
2828
+ "docs": [
2829
+ "v0.10 hardening: agent MUST have an active stake ≥ MIN_STAKE",
2830
+ "before any new escrow can be opened."
2831
+ ],
2832
+ "pda": {
2833
+ "seeds": [
2834
+ {
2835
+ "kind": "const",
2836
+ "value": [
2837
+ 115,
2838
+ 97,
2839
+ 112,
2840
+ 95,
2841
+ 115,
2842
+ 116,
2843
+ 97,
2844
+ 107,
2845
+ 101
2846
+ ]
2847
+ },
2848
+ {
2849
+ "kind": "account",
2850
+ "path": "agent"
2851
+ }
2852
+ ]
2853
+ }
2854
+ },
2795
2855
  {
2796
2856
  "name": "escrow",
2797
2857
  "writable": true,
@@ -6956,7 +7016,9 @@
6956
7016
  {
6957
7017
  "name": "settle_batch",
6958
7018
  "docs": [
6959
- "Batch settle up to 10 settlements in one TX. Volume curve spans batch."
7019
+ "Batch settle up to 10 settlements in one TX. Volume curve spans batch.",
7020
+ "v0.10: requires `batch_root = sha256(s_0 || s_1 || ... || s_{N-1})`",
7021
+ "to seed the anti-replay receipt PDA."
6960
7022
  ],
6961
7023
  "discriminator": [
6962
7024
  22,
@@ -7056,6 +7118,44 @@
7056
7118
  }
7057
7119
  ]
7058
7120
  }
7121
+ },
7122
+ {
7123
+ "name": "settlement_receipt",
7124
+ "docs": [
7125
+ "v0.10 anti-replay: PDA bound to the batch_root (sha256 of all",
7126
+ "service_hashes in order). Replaying the same batch fails the",
7127
+ "`init` constraint."
7128
+ ],
7129
+ "writable": true,
7130
+ "pda": {
7131
+ "seeds": [
7132
+ {
7133
+ "kind": "const",
7134
+ "value": [
7135
+ 115,
7136
+ 97,
7137
+ 112,
7138
+ 95,
7139
+ 114,
7140
+ 101,
7141
+ 99,
7142
+ 118
7143
+ ]
7144
+ },
7145
+ {
7146
+ "kind": "account",
7147
+ "path": "escrow"
7148
+ },
7149
+ {
7150
+ "kind": "arg",
7151
+ "path": "batch_root"
7152
+ }
7153
+ ]
7154
+ }
7155
+ },
7156
+ {
7157
+ "name": "system_program",
7158
+ "address": "11111111111111111111111111111111"
7059
7159
  }
7060
7160
  ],
7061
7161
  "args": [
@@ -7068,6 +7168,15 @@
7068
7168
  }
7069
7169
  }
7070
7170
  }
7171
+ },
7172
+ {
7173
+ "name": "batch_root",
7174
+ "type": {
7175
+ "array": [
7176
+ "u8",
7177
+ 32
7178
+ ]
7179
+ }
7071
7180
  }
7072
7181
  ]
7073
7182
  },
@@ -7180,6 +7289,45 @@
7180
7289
  }
7181
7290
  ]
7182
7291
  }
7292
+ },
7293
+ {
7294
+ "name": "settlement_receipt",
7295
+ "docs": [
7296
+ "v0.10 anti-replay: an `init` of this PDA fails if the same",
7297
+ "`service_hash` was already used to settle this escrow.",
7298
+ "Receipt PDAs are intentionally NOT closeable to preserve the",
7299
+ "uniqueness invariant for the lifetime of the escrow."
7300
+ ],
7301
+ "writable": true,
7302
+ "pda": {
7303
+ "seeds": [
7304
+ {
7305
+ "kind": "const",
7306
+ "value": [
7307
+ 115,
7308
+ 97,
7309
+ 112,
7310
+ 95,
7311
+ 114,
7312
+ 101,
7313
+ 99,
7314
+ 118
7315
+ ]
7316
+ },
7317
+ {
7318
+ "kind": "account",
7319
+ "path": "escrow"
7320
+ },
7321
+ {
7322
+ "kind": "arg",
7323
+ "path": "service_hash"
7324
+ }
7325
+ ]
7326
+ }
7327
+ },
7328
+ {
7329
+ "name": "system_program",
7330
+ "address": "11111111111111111111111111111111"
7183
7331
  }
7184
7332
  ],
7185
7333
  "args": [
@@ -7312,6 +7460,41 @@
7312
7460
  ]
7313
7461
  }
7314
7462
  },
7463
+ {
7464
+ "name": "settlement_receipt",
7465
+ "docs": [
7466
+ "v0.10 anti-replay: PDA bound to (escrow, service_hash).",
7467
+ "In CoSigned mode this gates the immediate transfer; in",
7468
+ "DisputeWindow mode this gates the pending-amount bump so the",
7469
+ "same `service_hash` cannot be re-applied to inflate pending."
7470
+ ],
7471
+ "writable": true,
7472
+ "pda": {
7473
+ "seeds": [
7474
+ {
7475
+ "kind": "const",
7476
+ "value": [
7477
+ 115,
7478
+ 97,
7479
+ 112,
7480
+ 95,
7481
+ 114,
7482
+ 101,
7483
+ 99,
7484
+ 118
7485
+ ]
7486
+ },
7487
+ {
7488
+ "kind": "account",
7489
+ "path": "escrow"
7490
+ },
7491
+ {
7492
+ "kind": "arg",
7493
+ "path": "service_hash"
7494
+ }
7495
+ ]
7496
+ }
7497
+ },
7315
7498
  {
7316
7499
  "name": "system_program",
7317
7500
  "address": "11111111111111111111111111111111"
@@ -8486,6 +8669,19 @@
8486
8669
  179
8487
8670
  ]
8488
8671
  },
8672
+ {
8673
+ "name": "SettlementReceipt",
8674
+ "discriminator": [
8675
+ 52,
8676
+ 249,
8677
+ 252,
8678
+ 121,
8679
+ 4,
8680
+ 232,
8681
+ 187,
8682
+ 4
8683
+ ]
8684
+ },
8489
8685
  {
8490
8686
  "name": "Subscription",
8491
8687
  "discriminator": [
@@ -9980,6 +10176,41 @@
9980
10176
  "code": 6136,
9981
10177
  "name": "InvalidReceiptProof",
9982
10178
  "msg": "bad receipt proof"
10179
+ },
10180
+ {
10181
+ "code": 6137,
10182
+ "name": "SettlementReplay",
10183
+ "msg": "settlement replay"
10184
+ },
10185
+ {
10186
+ "code": 6138,
10187
+ "name": "PaymentTokenNotAllowed",
10188
+ "msg": "token not allowed"
10189
+ },
10190
+ {
10191
+ "code": 6139,
10192
+ "name": "AgentStakeRequired",
10193
+ "msg": "agent stake required"
10194
+ },
10195
+ {
10196
+ "code": 6140,
10197
+ "name": "DelegateExpiryInvalid",
10198
+ "msg": "delegate expiry invalid"
10199
+ },
10200
+ {
10201
+ "code": 6141,
10202
+ "name": "EscrowNotClosed",
10203
+ "msg": "escrow not closed"
10204
+ },
10205
+ {
10206
+ "code": 6142,
10207
+ "name": "VolumeCurveNotDescending",
10208
+ "msg": "curve not descending"
10209
+ },
10210
+ {
10211
+ "code": 6143,
10212
+ "name": "DuplicateServiceHash",
10213
+ "msg": "dup service hash"
9983
10214
  }
9984
10215
  ],
9985
10216
  "types": [
@@ -13125,6 +13356,43 @@
13125
13356
  ]
13126
13357
  }
13127
13358
  },
13359
+ {
13360
+ "name": "SettlementReceipt",
13361
+ "type": {
13362
+ "kind": "struct",
13363
+ "fields": [
13364
+ {
13365
+ "name": "bump",
13366
+ "type": "u8"
13367
+ },
13368
+ {
13369
+ "name": "escrow",
13370
+ "type": "pubkey"
13371
+ },
13372
+ {
13373
+ "name": "service_hash",
13374
+ "type": {
13375
+ "array": [
13376
+ "u8",
13377
+ 32
13378
+ ]
13379
+ }
13380
+ },
13381
+ {
13382
+ "name": "calls_settled",
13383
+ "type": "u64"
13384
+ },
13385
+ {
13386
+ "name": "amount",
13387
+ "type": "u64"
13388
+ },
13389
+ {
13390
+ "name": "settled_at",
13391
+ "type": "i64"
13392
+ }
13393
+ ]
13394
+ }
13395
+ },
13128
13396
  {
13129
13397
  "name": "SettlementSecurity",
13130
13398
  "docs": [
@@ -16,6 +16,7 @@ const anchor_1 = require("@coral-xyz/anchor");
16
16
  const base_1 = require("./base");
17
17
  const pda_1 = require("../pda");
18
18
  const priority_fee_1 = require("../utils/priority-fee");
19
+ const payments_1 = require("../constants/payments");
19
20
  /**
20
21
  * @name EscrowV2Module
21
22
  * @description Manages V2 escrow accounts with settlement security modes,
@@ -43,13 +44,20 @@ class EscrowV2Module extends base_1.BaseModule {
43
44
  }
44
45
  // ── Instructions ─────────────────────────────────────
45
46
  async create(agentWallet, args, splAccounts = []) {
47
+ // v0.10.0: payment-token allowlist (SOL or USDC only).
48
+ if (!(0, payments_1.isAcceptedPaymentToken)(args.tokenMint ?? null)) {
49
+ throw new Error("createEscrowV2: tokenMint must be null (SOL) or USDC (mainnet/devnet). " +
50
+ "On-chain will reject with PaymentTokenNotAllowed.");
51
+ }
46
52
  const [agentPda] = (0, pda_1.deriveAgent)(agentWallet);
47
53
  const [escrowPda] = this.deriveEscrow(agentPda, undefined, args.escrowNonce);
54
+ const [stakePda] = (0, pda_1.deriveStake)(agentPda);
48
55
  return this.methods
49
56
  .createEscrowV2(this.bn(args.escrowNonce), this.bn(args.pricePerCall), this.bn(args.maxCalls), this.bn(args.initialDeposit), args.expiresAt, args.volumeCurve, args.tokenMint, args.tokenDecimals, args.settlementSecurity, this.bn(args.disputeWindowSlots), args.coSigner, args.arbiter)
50
57
  .accounts({
51
58
  depositor: this.walletPubkey,
52
59
  agent: agentPda,
60
+ agentStake: stakePda,
53
61
  escrow: escrowPda,
54
62
  systemProgram: web3_js_1.SystemProgram.programId,
55
63
  })
@@ -73,6 +81,7 @@ class EscrowV2Module extends base_1.BaseModule {
73
81
  const [agentPda] = (0, pda_1.deriveAgent)(this.walletPubkey);
74
82
  const [escrowPda] = this.deriveEscrow(agentPda, depositorWallet, nonce);
75
83
  const [statsPda] = (0, pda_1.deriveAgentStats)(agentPda);
84
+ const [receiptPda] = (0, pda_1.deriveSettlementReceipt)(escrowPda, serviceHash);
76
85
  const preIxs = (0, priority_fee_1.buildPriorityFeeIxs)(opts);
77
86
  const rpcOpts = (0, priority_fee_1.buildRpcOptions)(opts);
78
87
  let builder = this.methods
@@ -82,6 +91,7 @@ class EscrowV2Module extends base_1.BaseModule {
82
91
  agent: agentPda,
83
92
  agentStats: statsPda,
84
93
  escrow: escrowPda,
94
+ settlementReceipt: receiptPda,
85
95
  systemProgram: web3_js_1.SystemProgram.programId,
86
96
  })
87
97
  .remainingAccounts(splAccounts);
@@ -1 +1 @@
1
- {"version":3,"file":"escrow-v2.js","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,6CAKyB;AACzB,8CAAuC;AACvC,iCAAoC;AACpC,gCAMgB;AAOhB,wDAG+B;AAG/B;;;;;;;;GAQG;AACH,MAAa,cAAe,SAAQ,iBAAU;IAC5C,wDAAwD;IAExD,oEAAoE;IAC5D,KAAK,CAAC,CAAuB;QACnC,OAAO,WAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,wDAAwD;IAExD,YAAY,CACV,QAAmB,EACnB,SAAqB,EACrB,QAA8B,CAAC;QAE/B,OAAO,IAAA,oBAAc,EAAC,QAAQ,EAAE,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,uBAAuB,CACrB,WAAsB,EACtB,eAAqC;QAErC,OAAO,IAAA,6BAAgB,EAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,aAAa,CACX,oBAA+B;QAE/B,OAAO,IAAA,mBAAgB,EAAC,oBAAoB,CAAC,CAAC;IAChD,CAAC;IAED,wDAAwD;IAExD,KAAK,CAAC,MAAM,CACV,WAAsB,EACtB,IAAwB,EACxB,cAA6B,EAAE;QAE/B,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,iBAAW,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAE7E,OAAO,IAAI,CAAC,OAAO;aAChB,cAAc,CACb,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,EACzB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAC1B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EACtB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,EAC5B,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAChC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,CACb;aACA,QAAQ,CAAC;YACR,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,SAAS;YACjB,aAAa,EAAE,uBAAa,CAAC,SAAS;SACvC,CAAC;aACD,iBAAiB,CAAC,WAAW,CAAC;aAC9B,GAAG,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,OAAO,CACX,WAAsB,EACtB,KAA2B,EAC3B,MAA4B,EAC5B,cAA6B,EAAE;QAE/B,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,iBAAW,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAElE,OAAO,IAAI,CAAC,OAAO;aAChB,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;aAChD,QAAQ,CAAC;YACR,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,MAAM,EAAE,SAAS;YACjB,aAAa,EAAE,uBAAa,CAAC,SAAS;SACvC,CAAC;aACD,iBAAiB,CAAC,WAAW,CAAC;aAC9B,GAAG,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,MAAM,CACV,eAA0B,EAC1B,KAA2B,EAC3B,aAAmC,EACnC,WAAqB,EACrB,cAA6B,EAAE,EAC/B,IAAoB;QAEpB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,iBAAW,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;QACxE,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,sBAAgB,EAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,MAAM,GAAG,IAAA,kCAAmB,EAAC,IAAI,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,IAAA,8BAAe,EAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO;aACvB,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC;aAClE,QAAQ,CAAC;YACR,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,KAAK,EAAE,QAAQ;YACf,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,SAAS;YACjB,aAAa,EAAE,uBAAa,CAAC,SAAS;SACvC,CAAC;aACD,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAElC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,WAAsB,EACtB,eAA0B,EAC1B,KAA2B,EAC3B,eAAqC,EACrC,aAAmC,EACnC,MAA4B,EAC5B,WAAqB,EACrB,oBAA8B,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAEnD,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,iBAAW,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;QACxE,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAE9E,OAAO,IAAI,CAAC,OAAO;aAChB,uBAAuB,CACtB,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,EACxB,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EACtB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EACf,WAAW,EACX,iBAAiB,CAClB;aACA,QAAQ,CAAC;YACR,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,SAAS;YACjB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,uBAAa,CAAC,SAAS;SACvC,CAAC;aACD,GAAG,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,WAAsB,EACtB,eAA0B,EAC1B,KAA2B,EAC3B,eAAqC;QAErC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,iBAAW,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;QACxE,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAC9E,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,sBAAgB,EAAC,QAAQ,CAAC,CAAC;QAE9C,OAAO,IAAI,CAAC,OAAO;aAChB,kBAAkB,EAAE;aACpB,QAAQ,CAAC;YACR,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,WAAW;YACX,MAAM,EAAE,SAAS;YACjB,iBAAiB,EAAE,UAAU;YAC7B,UAAU,EAAE,QAAQ;SACrB,CAAC;aACD,GAAG,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,WAAW,CACf,WAAsB,EACtB,KAA2B,EAC3B,eAAqC,EACrC,YAAsB,EACtB,cAAsB,CAAC;QAEvB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,iBAAW,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAClE,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAC9E,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC,OAAO;aAChB,WAAW,CAAC,YAAY,EAAE,WAAW,CAAC;aACtC,QAAQ,CAAC;YACR,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,MAAM,EAAE,SAAS;YACjB,iBAAiB,EAAE,UAAU;YAC7B,OAAO,EAAE,UAAU;YACnB,aAAa,EAAE,uBAAa,CAAC,SAAS;SACvC,CAAC;aACD,GAAG,EAAE,CAAC;IACX,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAClB,gBAA2B,EAC3B,YAAuB,EACvB,MAA4B,EAC5B,gBAAsC,EACtC,QAAgB;QAEhB,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC7F,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,oBAA+B;QAE/B,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAC,OAAO;aAChB,YAAY,EAAE;aACd,QAAQ,CAAC;YACR,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,OAAO,EAAE,UAAU;SACpB,CAAC;aACD,GAAG,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,oBAA+B;QAE/B,OAAO,IAAI,CAAC,OAAO;aAChB,sBAAsB,EAAE;aACxB,QAAQ,CAAC;YACR,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,iBAAiB,EAAE,oBAAoB;SACxC,CAAC;aACD,GAAG,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,WAAsB,EACtB,KAA2B,EAC3B,MAA4B;QAE5B,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,iBAAW,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAElE,OAAO,IAAI,CAAC,OAAO;aAChB,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;aACjC,QAAQ,CAAC;YACR,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,MAAM,EAAE,SAAS;SAClB,CAAC;aACD,GAAG,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,KAAK,CACT,WAAsB,EACtB,QAA8B,CAAC;QAE/B,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,iBAAW,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAElE,OAAO,IAAI,CAAC,OAAO;aAChB,aAAa,EAAE;aACf,QAAQ,CAAC;YACR,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,MAAM,EAAE,SAAS;SAClB,CAAC;aACD,GAAG,EAAE,CAAC;IACX,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACjB,YAAuB;QAEvB,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IACzF,CAAC;IAED,wDAAwD;IAExD,KAAK,CAAC,KAAK,CACT,QAAmB,EACnB,SAAqB,EACrB,QAA8B,CAAC;QAE/B,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,YAAY,CAAsB,iBAAiB,EAAE,GAAG,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,QAAmB,EACnB,SAAqB,EACrB,QAA8B,CAAC;QAE/B,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,oBAAoB,CAAsB,iBAAiB,EAAE,GAAG,CAAC,CAAC;IAChF,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAoB;QACnC,OAAO,IAAI,CAAC,YAAY,CAAsB,iBAAiB,EAAE,SAAS,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,UAAqB;QAErB,OAAO,IAAI,CAAC,YAAY,CAAwB,mBAAmB,EAAE,UAAU,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,UAAqB;QAErB,OAAO,IAAI,CAAC,oBAAoB,CAAwB,mBAAmB,EAAE,UAAU,CAAC,CAAC;IAC3F,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,UAAqB;QAErB,OAAO,IAAI,CAAC,YAAY,CAAoB,eAAe,EAAE,UAAU,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,UAAqB;QAErB,OAAO,IAAI,CAAC,oBAAoB,CAAoB,eAAe,EAAE,UAAU,CAAC,CAAC;IACnF,CAAC;CACF;AAvUD,wCAuUC"}
1
+ {"version":3,"file":"escrow-v2.js","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"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"}