@oobe-protocol-labs/synapse-sap-sdk 0.12.6 → 0.12.8
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.
- package/README.md +1 -1
- package/dist/cjs/modules/escrow-v2.js +68 -0
- package/dist/cjs/modules/escrow-v2.js.map +1 -1
- package/dist/esm/modules/escrow-v2.js +68 -0
- package/dist/esm/modules/escrow-v2.js.map +1 -1
- package/dist/types/modules/escrow-v2.d.ts +14 -0
- package/dist/types/modules/escrow-v2.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/modules/escrow-v2.ts +90 -0
package/README.md
CHANGED
|
@@ -479,7 +479,7 @@ await client.escrow.deposit(agentWallet, new BN(50_000_000));
|
|
|
479
479
|
// Agent settles calls
|
|
480
480
|
await client.escrow.settle(depositorWallet, 10, serviceHash);
|
|
481
481
|
|
|
482
|
-
// Batch settlement (up to 10 per TX)
|
|
482
|
+
// Batch settlement (up to 10 per TX, SDK auto-sizes CU since v0.12.5)
|
|
483
483
|
await client.escrow.settleBatch(depositorWallet, [
|
|
484
484
|
{ callsToSettle: new BN(5), serviceHash: hash1 },
|
|
485
485
|
{ callsToSettle: new BN(3), serviceHash: hash2 },
|
|
@@ -49,6 +49,36 @@ class EscrowV2Module extends base_1.BaseModule {
|
|
|
49
49
|
throw new Error("createEscrowV2: tokenMint must be null (SOL) or USDC (mainnet/devnet). " +
|
|
50
50
|
"On-chain will reject with PaymentTokenNotAllowed.");
|
|
51
51
|
}
|
|
52
|
+
// v0.12.7 preflight: mirror the on-chain settlement-security guards
|
|
53
|
+
// (escrow_v2.rs:106-115) so callers fail fast with a clear message
|
|
54
|
+
// instead of paying for a tx that aborts with `InvalidSettlementSecurity`
|
|
55
|
+
// or `CoSignerRequired`.
|
|
56
|
+
const security = args.settlementSecurity;
|
|
57
|
+
if (security === 0) {
|
|
58
|
+
throw new Error("createEscrowV2: settlementSecurity=0 (SelfReport) is deprecated since " +
|
|
59
|
+
"v0.7. Use 1 (CoSigned) or 2 (DisputeWindow). On-chain rejects with " +
|
|
60
|
+
"SelfReportDeprecated.");
|
|
61
|
+
}
|
|
62
|
+
if (security === 1 && !args.coSigner) {
|
|
63
|
+
throw new Error("createEscrowV2: settlementSecurity=1 (CoSigned) requires `coSigner` " +
|
|
64
|
+
"to be set. On-chain rejects with CoSignerRequired.");
|
|
65
|
+
}
|
|
66
|
+
if (security === 2) {
|
|
67
|
+
// The on-chain check is `dispute_window_slots > 0` — i.e. >= 1 slot.
|
|
68
|
+
// Zero would let an agent settle and immediately drain pending funds
|
|
69
|
+
// before any depositor could possibly file a dispute, defeating the
|
|
70
|
+
// entire DisputeWindow security model. Enforce client-side too.
|
|
71
|
+
const slots = BigInt(this.bn(args.disputeWindowSlots).toString());
|
|
72
|
+
if (slots < 1n) {
|
|
73
|
+
throw new Error("createEscrowV2: settlementSecurity=2 (DisputeWindow) requires " +
|
|
74
|
+
"`disputeWindowSlots >= 1` to prevent the zero-window abuse vector. " +
|
|
75
|
+
"Recommended minimum is 2_160 slots (~15 min). On-chain rejects " +
|
|
76
|
+
"with InvalidSettlementSecurity.");
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
if (security !== 0 && security !== 1 && security !== 2) {
|
|
80
|
+
throw new Error(`createEscrowV2: settlementSecurity must be 1 (CoSigned) or 2 (DisputeWindow), got ${String(security)}.`);
|
|
81
|
+
}
|
|
52
82
|
const [agentPda] = (0, pda_1.deriveAgent)(agentWallet);
|
|
53
83
|
const [escrowPda] = this.deriveEscrow(agentPda, undefined, args.escrowNonce);
|
|
54
84
|
const [stakePda] = (0, pda_1.deriveStake)(agentPda);
|
|
@@ -159,10 +189,48 @@ class EscrowV2Module extends base_1.BaseModule {
|
|
|
159
189
|
}
|
|
160
190
|
return builder.rpc(rpcOpts);
|
|
161
191
|
}
|
|
192
|
+
/**
|
|
193
|
+
* Read the current `escrow.settlement_index` from chain.
|
|
194
|
+
*
|
|
195
|
+
* In DisputeWindow mode (`settlementSecurity = 2`), every successful
|
|
196
|
+
* `settleCallsV2` increments this value. The PRE-increment value is the
|
|
197
|
+
* one to pass to {@link createPendingSettlement} for that batch.
|
|
198
|
+
*
|
|
199
|
+
* @returns the current `settlementIndex` as `bigint` (next index to use
|
|
200
|
+
* for `createPendingSettlement` if you have NOT yet called `settle` for
|
|
201
|
+
* it; if you HAVE just settled, subtract 1 — but prefer the event
|
|
202
|
+
* `SettlementPendingEvent.settlement_index` over arithmetic).
|
|
203
|
+
* @since v0.12.8
|
|
204
|
+
*/
|
|
205
|
+
async nextSettlementIndex(agentWallet, depositorWallet, nonce) {
|
|
206
|
+
const [agentPda] = (0, pda_1.deriveAgent)(agentWallet);
|
|
207
|
+
const [escrowPda] = this.deriveEscrow(agentPda, depositorWallet, nonce);
|
|
208
|
+
const escrow = await this.fetchAccountNullable("escrowAccountV2", escrowPda);
|
|
209
|
+
if (!escrow) {
|
|
210
|
+
throw new Error(`nextSettlementIndex: escrow PDA ${escrowPda.toBase58()} not found on-chain`);
|
|
211
|
+
}
|
|
212
|
+
return BigInt(escrow.settlementIndex.toString());
|
|
213
|
+
}
|
|
162
214
|
async createPendingSettlement(agentWallet, depositorWallet, nonce, settlementIndex, callsToSettle, amount, serviceHash, receiptMerkleRoot = new Array(32).fill(0)) {
|
|
163
215
|
const [agentPda] = (0, pda_1.deriveAgent)(agentWallet);
|
|
164
216
|
const [escrowPda] = this.deriveEscrow(agentPda, depositorWallet, nonce);
|
|
165
217
|
const [pendingPda] = this.derivePendingSettlement(escrowPda, settlementIndex);
|
|
218
|
+
// v0.12.8: preflight against the "Allocate: account already in use"
|
|
219
|
+
// SystemProgram error (custom 0x0). The pending_settlement PDA is
|
|
220
|
+
// seeded on `escrow + settlement_index`, so reusing the same index
|
|
221
|
+
// (e.g. always 0, or a stale retry value) collides with an existing
|
|
222
|
+
// account. Fail fast with an actionable message instead of burning a
|
|
223
|
+
// failed tx fee on simulation.
|
|
224
|
+
const existing = await this.provider.connection.getAccountInfo(pendingPda);
|
|
225
|
+
if (existing) {
|
|
226
|
+
const idx = this.bn(settlementIndex).toString();
|
|
227
|
+
throw new Error(`createPendingSettlement: pending PDA ${pendingPda.toBase58()} ` +
|
|
228
|
+
`already exists for settlementIndex=${idx}. ` +
|
|
229
|
+
`Use EscrowV2Module.nextSettlementIndex() to read the current ` +
|
|
230
|
+
`escrow.settlement_index, or capture SettlementPendingEvent.settlement_index ` +
|
|
231
|
+
`from the preceding settleCallsV2 tx. Reusing a settlementIndex ` +
|
|
232
|
+
`causes SystemProgram Allocate (custom 0x0) failures.`);
|
|
233
|
+
}
|
|
166
234
|
return this.methods
|
|
167
235
|
.createPendingSettlement(this.bn(settlementIndex), this.bn(callsToSettle), this.bn(amount), serviceHash, receiptMerkleRoot)
|
|
168
236
|
.accounts({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escrow-v2.js","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"escrow-v2.js","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,36 @@ export class EscrowV2Module extends BaseModule {
|
|
|
46
46
|
throw new Error("createEscrowV2: tokenMint must be null (SOL) or USDC (mainnet/devnet). " +
|
|
47
47
|
"On-chain will reject with PaymentTokenNotAllowed.");
|
|
48
48
|
}
|
|
49
|
+
// v0.12.7 preflight: mirror the on-chain settlement-security guards
|
|
50
|
+
// (escrow_v2.rs:106-115) so callers fail fast with a clear message
|
|
51
|
+
// instead of paying for a tx that aborts with `InvalidSettlementSecurity`
|
|
52
|
+
// or `CoSignerRequired`.
|
|
53
|
+
const security = args.settlementSecurity;
|
|
54
|
+
if (security === 0) {
|
|
55
|
+
throw new Error("createEscrowV2: settlementSecurity=0 (SelfReport) is deprecated since " +
|
|
56
|
+
"v0.7. Use 1 (CoSigned) or 2 (DisputeWindow). On-chain rejects with " +
|
|
57
|
+
"SelfReportDeprecated.");
|
|
58
|
+
}
|
|
59
|
+
if (security === 1 && !args.coSigner) {
|
|
60
|
+
throw new Error("createEscrowV2: settlementSecurity=1 (CoSigned) requires `coSigner` " +
|
|
61
|
+
"to be set. On-chain rejects with CoSignerRequired.");
|
|
62
|
+
}
|
|
63
|
+
if (security === 2) {
|
|
64
|
+
// The on-chain check is `dispute_window_slots > 0` — i.e. >= 1 slot.
|
|
65
|
+
// Zero would let an agent settle and immediately drain pending funds
|
|
66
|
+
// before any depositor could possibly file a dispute, defeating the
|
|
67
|
+
// entire DisputeWindow security model. Enforce client-side too.
|
|
68
|
+
const slots = BigInt(this.bn(args.disputeWindowSlots).toString());
|
|
69
|
+
if (slots < 1n) {
|
|
70
|
+
throw new Error("createEscrowV2: settlementSecurity=2 (DisputeWindow) requires " +
|
|
71
|
+
"`disputeWindowSlots >= 1` to prevent the zero-window abuse vector. " +
|
|
72
|
+
"Recommended minimum is 2_160 slots (~15 min). On-chain rejects " +
|
|
73
|
+
"with InvalidSettlementSecurity.");
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (security !== 0 && security !== 1 && security !== 2) {
|
|
77
|
+
throw new Error(`createEscrowV2: settlementSecurity must be 1 (CoSigned) or 2 (DisputeWindow), got ${String(security)}.`);
|
|
78
|
+
}
|
|
49
79
|
const [agentPda] = deriveAgent(agentWallet);
|
|
50
80
|
const [escrowPda] = this.deriveEscrow(agentPda, undefined, args.escrowNonce);
|
|
51
81
|
const [stakePda] = deriveStake(agentPda);
|
|
@@ -156,10 +186,48 @@ export class EscrowV2Module extends BaseModule {
|
|
|
156
186
|
}
|
|
157
187
|
return builder.rpc(rpcOpts);
|
|
158
188
|
}
|
|
189
|
+
/**
|
|
190
|
+
* Read the current `escrow.settlement_index` from chain.
|
|
191
|
+
*
|
|
192
|
+
* In DisputeWindow mode (`settlementSecurity = 2`), every successful
|
|
193
|
+
* `settleCallsV2` increments this value. The PRE-increment value is the
|
|
194
|
+
* one to pass to {@link createPendingSettlement} for that batch.
|
|
195
|
+
*
|
|
196
|
+
* @returns the current `settlementIndex` as `bigint` (next index to use
|
|
197
|
+
* for `createPendingSettlement` if you have NOT yet called `settle` for
|
|
198
|
+
* it; if you HAVE just settled, subtract 1 — but prefer the event
|
|
199
|
+
* `SettlementPendingEvent.settlement_index` over arithmetic).
|
|
200
|
+
* @since v0.12.8
|
|
201
|
+
*/
|
|
202
|
+
async nextSettlementIndex(agentWallet, depositorWallet, nonce) {
|
|
203
|
+
const [agentPda] = deriveAgent(agentWallet);
|
|
204
|
+
const [escrowPda] = this.deriveEscrow(agentPda, depositorWallet, nonce);
|
|
205
|
+
const escrow = await this.fetchAccountNullable("escrowAccountV2", escrowPda);
|
|
206
|
+
if (!escrow) {
|
|
207
|
+
throw new Error(`nextSettlementIndex: escrow PDA ${escrowPda.toBase58()} not found on-chain`);
|
|
208
|
+
}
|
|
209
|
+
return BigInt(escrow.settlementIndex.toString());
|
|
210
|
+
}
|
|
159
211
|
async createPendingSettlement(agentWallet, depositorWallet, nonce, settlementIndex, callsToSettle, amount, serviceHash, receiptMerkleRoot = new Array(32).fill(0)) {
|
|
160
212
|
const [agentPda] = deriveAgent(agentWallet);
|
|
161
213
|
const [escrowPda] = this.deriveEscrow(agentPda, depositorWallet, nonce);
|
|
162
214
|
const [pendingPda] = this.derivePendingSettlement(escrowPda, settlementIndex);
|
|
215
|
+
// v0.12.8: preflight against the "Allocate: account already in use"
|
|
216
|
+
// SystemProgram error (custom 0x0). The pending_settlement PDA is
|
|
217
|
+
// seeded on `escrow + settlement_index`, so reusing the same index
|
|
218
|
+
// (e.g. always 0, or a stale retry value) collides with an existing
|
|
219
|
+
// account. Fail fast with an actionable message instead of burning a
|
|
220
|
+
// failed tx fee on simulation.
|
|
221
|
+
const existing = await this.provider.connection.getAccountInfo(pendingPda);
|
|
222
|
+
if (existing) {
|
|
223
|
+
const idx = this.bn(settlementIndex).toString();
|
|
224
|
+
throw new Error(`createPendingSettlement: pending PDA ${pendingPda.toBase58()} ` +
|
|
225
|
+
`already exists for settlementIndex=${idx}. ` +
|
|
226
|
+
`Use EscrowV2Module.nextSettlementIndex() to read the current ` +
|
|
227
|
+
`escrow.settlement_index, or capture SettlementPendingEvent.settlement_index ` +
|
|
228
|
+
`from the preceding settleCallsV2 tx. Reusing a settlementIndex ` +
|
|
229
|
+
`causes SystemProgram Allocate (custom 0x0) failures.`);
|
|
230
|
+
}
|
|
163
231
|
return this.methods
|
|
164
232
|
.createPendingSettlement(this.bn(settlementIndex), this.bn(callsToSettle), this.bn(amount), serviceHash, receiptMerkleRoot)
|
|
165
233
|
.accounts({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escrow-v2.js","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"escrow-v2.js","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,aAAa,GAKd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,uBAAuB,IAAI,gBAAgB,EAC3C,aAAa,IAAI,gBAAgB,EACjC,WAAW,EACX,uBAAuB,GACxB,MAAM,QAAQ,CAAC;AAOhB,OAAO,EACL,mBAAmB,EACnB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAE7F;;;;;;;;GAQG;AACH,MAAM,OAAO,cAAe,SAAQ,UAAU;IAC5C,wDAAwD;IAExD,oEAAoE;IAC5D,KAAK,CAAC,CAAuB;QACnC,OAAO,EAAE,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,cAAc,CAAC,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,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,aAAa,CACX,oBAA+B;QAE/B,OAAO,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;IAChD,CAAC;IAED,wDAAwD;IAExD,KAAK,CAAC,MAAM,CACV,WAAsB,EACtB,IAAwB,EACxB,cAA6B,EAAE;QAE/B,uDAAuD;QACvD,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,yEAAyE;gBACzE,mDAAmD,CACpD,CAAC;QACJ,CAAC;QAED,oEAAoE;QACpE,mEAAmE;QACnE,0EAA0E;QAC1E,yBAAyB;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACzC,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,wEAAwE;gBACxE,qEAAqE;gBACrE,uBAAuB,CACxB,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,sEAAsE;gBACtE,oDAAoD,CACrD,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACnB,qEAAqE;YACrE,qEAAqE;YACrE,oEAAoE;YACpE,gEAAgE;YAChE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClE,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,gEAAgE;oBAChE,qEAAqE;oBACrE,iEAAiE;oBACjE,iCAAiC,CAClC,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CACb,qFAAqF,MAAM,CAAC,QAAQ,CAAC,GAAG,CACzG,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7E,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzC,wEAAwE;QACxE,uEAAuE;QACvE,qDAAqD;QACrD,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAuB,YAAY,EAAE,QAAQ,CAAC,CAAC;YACnG,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACvE,MAAM,QAAQ,GAAG,4BAA4B,CAAC,cAAc,CAAC,CAAC;gBAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC1D,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CACb,+BAA+B,IAAI,wBAAwB,QAAQ,GAAG;wBACtE,0BAA0B,cAAc,8CAA8C,CACvF,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,+DAA+D;YAC/D,2DAA2D;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,mEAAmE;YACnE,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,6BAA6B,CAAC,EAAE,CAAC;gBAClF,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QACD,wEAAwE;QACxE,uEAAuE;QACvE,qDAAqD;QACrD,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAuB,YAAY,EAAE,QAAQ,CAAC,CAAC;YACnG,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACvE,MAAM,QAAQ,GAAG,4BAA4B,CAAC,cAAc,CAAC,CAAC;gBAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC1D,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CACb,+BAA+B,IAAI,wBAAwB,QAAQ,GAAG;wBACtE,0BAA0B,cAAc,8CAA8C,CACvF,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,+DAA+D;YAC/D,2DAA2D;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,mEAAmE;YACnE,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,6BAA6B,CAAC,EAAE,CAAC;gBAClF,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,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,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,SAAS;YACjB,aAAa,EAAE,aAAa,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,WAAW,CAAC,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,aAAa,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,EACpB,QAAiB;QAEjB,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,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,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,CAAC,UAAU,CAAC,GAAG,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAErE,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QAEtC,sDAAsD;QACtD,kEAAkE;QAClE,4DAA4D;QAC5D,kEAAkE;QAClE,MAAM,SAAS,GAAkB,QAAQ;YACvC,CAAC,CAAC;gBACE,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAClE,EAAE,MAAM,EAAE,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;aAClE;YACH,CAAC,CAAC,WAAW,CAAC;QAEhB,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,eAAe,CAAC;YACf,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,KAAK,EAAE,QAAQ;YACf,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,SAAS;YACjB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,aAAa,CAAC,SAAS;SACvC,CAAC;aACD,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAEhC,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxC,CAAC;QAED,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;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,mBAAmB,CACvB,WAAsB,EACtB,eAA0B,EAC1B,KAA2B;QAE3B,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC5C,iBAAiB,EACjB,SAAS,CACV,CAAC;QACF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,mCAAmC,SAAS,CAAC,QAAQ,EAAE,qBAAqB,CAC7E,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnD,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,WAAW,CAAC,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,oEAAoE;QACpE,kEAAkE;QAClE,mEAAmE;QACnE,oEAAoE;QACpE,qEAAqE;QACrE,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC3E,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CACb,wCAAwC,UAAU,CAAC,QAAQ,EAAE,GAAG;gBAC9D,sCAAsC,GAAG,IAAI;gBAC7C,+DAA+D;gBAC/D,8EAA8E;gBAC9E,iEAAiE;gBACjE,sDAAsD,CACzD,CAAC;QACJ,CAAC;QAED,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,aAAa,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,WAAW,CAAC,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,gBAAgB,CAAC,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,WAAW,CAAC,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,aAAa,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,WAAW,CAAC,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,WAAW,CAAC,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"}
|
|
@@ -31,6 +31,20 @@ export declare class EscrowV2Module extends BaseModule {
|
|
|
31
31
|
create(agentWallet: PublicKey, args: CreateEscrowV2Args, splAccounts?: AccountMeta[]): Promise<TransactionSignature>;
|
|
32
32
|
deposit(agentWallet: PublicKey, nonce: BN | number | bigint, amount: BN | number | bigint, splAccounts?: AccountMeta[]): Promise<TransactionSignature>;
|
|
33
33
|
settle(depositorWallet: PublicKey, nonce: BN | number | bigint, callsToSettle: BN | number | bigint, serviceHash: number[], splAccounts?: AccountMeta[], opts?: SettleOptions, coSigner?: Signer): Promise<TransactionSignature>;
|
|
34
|
+
/**
|
|
35
|
+
* Read the current `escrow.settlement_index` from chain.
|
|
36
|
+
*
|
|
37
|
+
* In DisputeWindow mode (`settlementSecurity = 2`), every successful
|
|
38
|
+
* `settleCallsV2` increments this value. The PRE-increment value is the
|
|
39
|
+
* one to pass to {@link createPendingSettlement} for that batch.
|
|
40
|
+
*
|
|
41
|
+
* @returns the current `settlementIndex` as `bigint` (next index to use
|
|
42
|
+
* for `createPendingSettlement` if you have NOT yet called `settle` for
|
|
43
|
+
* it; if you HAVE just settled, subtract 1 — but prefer the event
|
|
44
|
+
* `SettlementPendingEvent.settlement_index` over arithmetic).
|
|
45
|
+
* @since v0.12.8
|
|
46
|
+
*/
|
|
47
|
+
nextSettlementIndex(agentWallet: PublicKey, depositorWallet: PublicKey, nonce: BN | number | bigint): Promise<bigint>;
|
|
34
48
|
createPendingSettlement(agentWallet: PublicKey, depositorWallet: PublicKey, nonce: BN | number | bigint, settlementIndex: BN | number | bigint, callsToSettle: BN | number | bigint, amount: BN | number | bigint, serviceHash: number[], receiptMerkleRoot?: number[]): Promise<TransactionSignature>;
|
|
35
49
|
finalizeSettlement(agentWallet: PublicKey, depositorWallet: PublicKey, nonce: BN | number | bigint, settlementIndex: BN | number | bigint): Promise<TransactionSignature>;
|
|
36
50
|
fileDispute(agentWallet: PublicKey, nonce: BN | number | bigint, settlementIndex: BN | number | bigint, evidenceHash: number[], disputeType?: number): Promise<TransactionSignature>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escrow-v2.d.ts","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,MAAM,EACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAUpC,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAKlB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAG3D;;;;;;;;GAQG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAG5C,oEAAoE;IACpE,OAAO,CAAC,KAAK;IAMb,YAAY,CACV,QAAQ,EAAE,SAAS,EACnB,SAAS,CAAC,EAAE,SAAS,EACrB,KAAK,GAAE,EAAE,GAAG,MAAM,GAAG,MAAU,GAC9B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAI/B,uBAAuB,CACrB,WAAW,EAAE,SAAS,EACtB,eAAe,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,GACpC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAI/B,aAAa,CACX,oBAAoB,EAAE,SAAS,GAC9B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAMzB,MAAM,CACV,WAAW,EAAE,SAAS,EACtB,IAAI,EAAE,kBAAkB,EACxB,WAAW,GAAE,WAAW,EAAO,GAC9B,OAAO,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"escrow-v2.d.ts","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/modules/escrow-v2.ts
CHANGED
|
@@ -95,6 +95,45 @@ export class EscrowV2Module extends BaseModule {
|
|
|
95
95
|
);
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
+
// v0.12.7 preflight: mirror the on-chain settlement-security guards
|
|
99
|
+
// (escrow_v2.rs:106-115) so callers fail fast with a clear message
|
|
100
|
+
// instead of paying for a tx that aborts with `InvalidSettlementSecurity`
|
|
101
|
+
// or `CoSignerRequired`.
|
|
102
|
+
const security = args.settlementSecurity;
|
|
103
|
+
if (security === 0) {
|
|
104
|
+
throw new Error(
|
|
105
|
+
"createEscrowV2: settlementSecurity=0 (SelfReport) is deprecated since " +
|
|
106
|
+
"v0.7. Use 1 (CoSigned) or 2 (DisputeWindow). On-chain rejects with " +
|
|
107
|
+
"SelfReportDeprecated.",
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
if (security === 1 && !args.coSigner) {
|
|
111
|
+
throw new Error(
|
|
112
|
+
"createEscrowV2: settlementSecurity=1 (CoSigned) requires `coSigner` " +
|
|
113
|
+
"to be set. On-chain rejects with CoSignerRequired.",
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
if (security === 2) {
|
|
117
|
+
// The on-chain check is `dispute_window_slots > 0` — i.e. >= 1 slot.
|
|
118
|
+
// Zero would let an agent settle and immediately drain pending funds
|
|
119
|
+
// before any depositor could possibly file a dispute, defeating the
|
|
120
|
+
// entire DisputeWindow security model. Enforce client-side too.
|
|
121
|
+
const slots = BigInt(this.bn(args.disputeWindowSlots).toString());
|
|
122
|
+
if (slots < 1n) {
|
|
123
|
+
throw new Error(
|
|
124
|
+
"createEscrowV2: settlementSecurity=2 (DisputeWindow) requires " +
|
|
125
|
+
"`disputeWindowSlots >= 1` to prevent the zero-window abuse vector. " +
|
|
126
|
+
"Recommended minimum is 2_160 slots (~15 min). On-chain rejects " +
|
|
127
|
+
"with InvalidSettlementSecurity.",
|
|
128
|
+
);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
if (security !== 0 && security !== 1 && security !== 2) {
|
|
132
|
+
throw new Error(
|
|
133
|
+
`createEscrowV2: settlementSecurity must be 1 (CoSigned) or 2 (DisputeWindow), got ${String(security)}.`,
|
|
134
|
+
);
|
|
135
|
+
}
|
|
136
|
+
|
|
98
137
|
const [agentPda] = deriveAgent(agentWallet);
|
|
99
138
|
const [escrowPda] = this.deriveEscrow(agentPda, undefined, args.escrowNonce);
|
|
100
139
|
const [stakePda] = deriveStake(agentPda);
|
|
@@ -244,6 +283,38 @@ export class EscrowV2Module extends BaseModule {
|
|
|
244
283
|
return builder.rpc(rpcOpts);
|
|
245
284
|
}
|
|
246
285
|
|
|
286
|
+
/**
|
|
287
|
+
* Read the current `escrow.settlement_index` from chain.
|
|
288
|
+
*
|
|
289
|
+
* In DisputeWindow mode (`settlementSecurity = 2`), every successful
|
|
290
|
+
* `settleCallsV2` increments this value. The PRE-increment value is the
|
|
291
|
+
* one to pass to {@link createPendingSettlement} for that batch.
|
|
292
|
+
*
|
|
293
|
+
* @returns the current `settlementIndex` as `bigint` (next index to use
|
|
294
|
+
* for `createPendingSettlement` if you have NOT yet called `settle` for
|
|
295
|
+
* it; if you HAVE just settled, subtract 1 — but prefer the event
|
|
296
|
+
* `SettlementPendingEvent.settlement_index` over arithmetic).
|
|
297
|
+
* @since v0.12.8
|
|
298
|
+
*/
|
|
299
|
+
async nextSettlementIndex(
|
|
300
|
+
agentWallet: PublicKey,
|
|
301
|
+
depositorWallet: PublicKey,
|
|
302
|
+
nonce: BN | number | bigint,
|
|
303
|
+
): Promise<bigint> {
|
|
304
|
+
const [agentPda] = deriveAgent(agentWallet);
|
|
305
|
+
const [escrowPda] = this.deriveEscrow(agentPda, depositorWallet, nonce);
|
|
306
|
+
const escrow = await this.fetchAccountNullable<EscrowAccountV2Data>(
|
|
307
|
+
"escrowAccountV2",
|
|
308
|
+
escrowPda,
|
|
309
|
+
);
|
|
310
|
+
if (!escrow) {
|
|
311
|
+
throw new Error(
|
|
312
|
+
`nextSettlementIndex: escrow PDA ${escrowPda.toBase58()} not found on-chain`,
|
|
313
|
+
);
|
|
314
|
+
}
|
|
315
|
+
return BigInt(escrow.settlementIndex.toString());
|
|
316
|
+
}
|
|
317
|
+
|
|
247
318
|
async createPendingSettlement(
|
|
248
319
|
agentWallet: PublicKey,
|
|
249
320
|
depositorWallet: PublicKey,
|
|
@@ -258,6 +329,25 @@ export class EscrowV2Module extends BaseModule {
|
|
|
258
329
|
const [escrowPda] = this.deriveEscrow(agentPda, depositorWallet, nonce);
|
|
259
330
|
const [pendingPda] = this.derivePendingSettlement(escrowPda, settlementIndex);
|
|
260
331
|
|
|
332
|
+
// v0.12.8: preflight against the "Allocate: account already in use"
|
|
333
|
+
// SystemProgram error (custom 0x0). The pending_settlement PDA is
|
|
334
|
+
// seeded on `escrow + settlement_index`, so reusing the same index
|
|
335
|
+
// (e.g. always 0, or a stale retry value) collides with an existing
|
|
336
|
+
// account. Fail fast with an actionable message instead of burning a
|
|
337
|
+
// failed tx fee on simulation.
|
|
338
|
+
const existing = await this.provider.connection.getAccountInfo(pendingPda);
|
|
339
|
+
if (existing) {
|
|
340
|
+
const idx = this.bn(settlementIndex).toString();
|
|
341
|
+
throw new Error(
|
|
342
|
+
`createPendingSettlement: pending PDA ${pendingPda.toBase58()} ` +
|
|
343
|
+
`already exists for settlementIndex=${idx}. ` +
|
|
344
|
+
`Use EscrowV2Module.nextSettlementIndex() to read the current ` +
|
|
345
|
+
`escrow.settlement_index, or capture SettlementPendingEvent.settlement_index ` +
|
|
346
|
+
`from the preceding settleCallsV2 tx. Reusing a settlementIndex ` +
|
|
347
|
+
`causes SystemProgram Allocate (custom 0x0) failures.`,
|
|
348
|
+
);
|
|
349
|
+
}
|
|
350
|
+
|
|
261
351
|
return this.methods
|
|
262
352
|
.createPendingSettlement(
|
|
263
353
|
this.bn(settlementIndex),
|