@dfm-fi/agent 0.2.1846 → 0.2.1856

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 (97) hide show
  1. package/README.md +77 -400
  2. package/dist/mcp-server.js +4 -4
  3. package/package.json +4 -6
  4. package/dist/api-client.d.ts.map +0 -1
  5. package/dist/api-client.js.map +0 -1
  6. package/dist/cli.d.ts.map +0 -1
  7. package/dist/cli.js.map +0 -1
  8. package/dist/config.d.ts.map +0 -1
  9. package/dist/config.js.map +0 -1
  10. package/dist/control-flow.test.d.ts +0 -2
  11. package/dist/control-flow.test.d.ts.map +0 -1
  12. package/dist/control-flow.test.js +0 -259
  13. package/dist/control-flow.test.js.map +0 -1
  14. package/dist/create-flow.d.ts.map +0 -1
  15. package/dist/create-flow.js.map +0 -1
  16. package/dist/create-flow.metadata.test.d.ts +0 -2
  17. package/dist/create-flow.metadata.test.d.ts.map +0 -1
  18. package/dist/create-flow.metadata.test.js +0 -100
  19. package/dist/create-flow.metadata.test.js.map +0 -1
  20. package/dist/examples/fund-app-wallet.d.ts +0 -2
  21. package/dist/examples/fund-app-wallet.d.ts.map +0 -1
  22. package/dist/examples/fund-app-wallet.js +0 -39
  23. package/dist/examples/fund-app-wallet.js.map +0 -1
  24. package/dist/examples/launch-deposit-redeem.d.ts +0 -2
  25. package/dist/examples/launch-deposit-redeem.d.ts.map +0 -1
  26. package/dist/examples/launch-deposit-redeem.js +0 -150
  27. package/dist/examples/launch-deposit-redeem.js.map +0 -1
  28. package/dist/examples/list-and-status.d.ts +0 -2
  29. package/dist/examples/list-and-status.d.ts.map +0 -1
  30. package/dist/examples/list-and-status.js +0 -66
  31. package/dist/examples/list-and-status.js.map +0 -1
  32. package/dist/examples/rebalance-drill.d.ts +0 -2
  33. package/dist/examples/rebalance-drill.d.ts.map +0 -1
  34. package/dist/examples/rebalance-drill.js +0 -20
  35. package/dist/examples/rebalance-drill.js.map +0 -1
  36. package/dist/examples/recover-app-wallet-assets.d.ts +0 -2
  37. package/dist/examples/recover-app-wallet-assets.d.ts.map +0 -1
  38. package/dist/examples/recover-app-wallet-assets.js +0 -86
  39. package/dist/examples/recover-app-wallet-assets.js.map +0 -1
  40. package/dist/examples/zap-cycle.d.ts +0 -2
  41. package/dist/examples/zap-cycle.d.ts.map +0 -1
  42. package/dist/examples/zap-cycle.js +0 -56
  43. package/dist/examples/zap-cycle.js.map +0 -1
  44. package/dist/examples/zap-soak.d.ts +0 -2
  45. package/dist/examples/zap-soak.d.ts.map +0 -1
  46. package/dist/examples/zap-soak.js +0 -164
  47. package/dist/examples/zap-soak.js.map +0 -1
  48. package/dist/install.d.ts.map +0 -1
  49. package/dist/install.js.map +0 -1
  50. package/dist/keyless.d.ts.map +0 -1
  51. package/dist/keyless.js.map +0 -1
  52. package/dist/manager-flow.d.ts.map +0 -1
  53. package/dist/manager-flow.js.map +0 -1
  54. package/dist/manager-flow.reconfigure.test.d.ts +0 -2
  55. package/dist/manager-flow.reconfigure.test.d.ts.map +0 -1
  56. package/dist/manager-flow.reconfigure.test.js +0 -210
  57. package/dist/manager-flow.reconfigure.test.js.map +0 -1
  58. package/dist/mcp-server.confirm-gate.test.d.ts +0 -2
  59. package/dist/mcp-server.confirm-gate.test.d.ts.map +0 -1
  60. package/dist/mcp-server.confirm-gate.test.js +0 -222
  61. package/dist/mcp-server.confirm-gate.test.js.map +0 -1
  62. package/dist/mcp-server.d.ts.map +0 -1
  63. package/dist/mcp-server.js.map +0 -1
  64. package/dist/money-path.test.d.ts +0 -2
  65. package/dist/money-path.test.d.ts.map +0 -1
  66. package/dist/money-path.test.js +0 -193
  67. package/dist/money-path.test.js.map +0 -1
  68. package/dist/recovery-flow.d.ts.map +0 -1
  69. package/dist/recovery-flow.deadleg.test.d.ts +0 -2
  70. package/dist/recovery-flow.deadleg.test.d.ts.map +0 -1
  71. package/dist/recovery-flow.deadleg.test.js +0 -143
  72. package/dist/recovery-flow.deadleg.test.js.map +0 -1
  73. package/dist/recovery-flow.js.map +0 -1
  74. package/dist/session.d.ts.map +0 -1
  75. package/dist/session.js.map +0 -1
  76. package/dist/signing.d.ts.map +0 -1
  77. package/dist/signing.js.map +0 -1
  78. package/dist/submit.d.ts.map +0 -1
  79. package/dist/submit.js.map +0 -1
  80. package/dist/types.d.ts.map +0 -1
  81. package/dist/types.js.map +0 -1
  82. package/dist/wallet-identity.d.ts.map +0 -1
  83. package/dist/wallet-identity.js.map +0 -1
  84. package/dist/wallet-identity.test.d.ts +0 -2
  85. package/dist/wallet-identity.test.d.ts.map +0 -1
  86. package/dist/wallet-identity.test.js +0 -56
  87. package/dist/wallet-identity.test.js.map +0 -1
  88. package/dist/who-pays.test.d.ts +0 -2
  89. package/dist/who-pays.test.d.ts.map +0 -1
  90. package/dist/who-pays.test.js +0 -56
  91. package/dist/who-pays.test.js.map +0 -1
  92. package/dist/zap-v2-flow.d.ts.map +0 -1
  93. package/dist/zap-v2-flow.js.map +0 -1
  94. package/dist/zap-v2-flow.pending.test.d.ts +0 -2
  95. package/dist/zap-v2-flow.pending.test.d.ts.map +0 -1
  96. package/dist/zap-v2-flow.pending.test.js +0 -147
  97. package/dist/zap-v2-flow.pending.test.js.map +0 -1
@@ -1,56 +0,0 @@
1
- import assert from 'node:assert/strict';
2
- import { buildWalletIdentity, resolveZapStatusWallet, withActingWalletAlias, withPortfolioWalletAlias, } from './wallet-identity.js';
3
- const signIn = '6VCH-sign-in';
4
- const app = 'AppWa11et-internal';
5
- const keylessIdentity = buildWalletIdentity({ wallet: signIn, operatingWalletAddress: app, status: 'active' }, null);
6
- assert.deepEqual(keylessIdentity, {
7
- signInWallet: signIn,
8
- appWalletAddress: app,
9
- appWalletStatus: 'active',
10
- actingWallet: app,
11
- portfolioWallet: app,
12
- primaryDfmWallet: app,
13
- }, 'keyless identity must act and report positions through the app wallet');
14
- assert.deepEqual(withActingWalletAlias(keylessIdentity), {
15
- wallet: app,
16
- ...keylessIdentity,
17
- }, 'keyless whoami.wallet must be the app wallet');
18
- assert.equal(resolveZapStatusWallet(keylessIdentity), app, 'keyless zap_status must default to the app wallet');
19
- assert.deepEqual(withPortfolioWalletAlias(keylessIdentity), {
20
- wallet: app,
21
- ...keylessIdentity,
22
- }, 'keyless get_portfolio must report the app wallet');
23
- const localIdentityWithOperatingProfile = buildWalletIdentity({ wallet: signIn, operatingWalletAddress: app, status: 'active' }, signIn);
24
- assert.deepEqual(localIdentityWithOperatingProfile, {
25
- signInWallet: signIn,
26
- appWalletAddress: app,
27
- appWalletStatus: 'active',
28
- actingWallet: app,
29
- portfolioWallet: app,
30
- primaryDfmWallet: app,
31
- }, 'an external keypair must not replace the active app-wallet actor');
32
- assert.deepEqual(withActingWalletAlias(localIdentityWithOperatingProfile), {
33
- wallet: app,
34
- ...localIdentityWithOperatingProfile,
35
- }, 'whoami.wallet names the app wallet that executes fund operations');
36
- assert.equal(resolveZapStatusWallet(localIdentityWithOperatingProfile), app, 'zap_status inspects app-wallet escrows even with a local keypair');
37
- assert.equal(resolveZapStatusWallet(localIdentityWithOperatingProfile, app), app, 'zap_status must preserve an explicit wallet override');
38
- assert.deepEqual(withPortfolioWalletAlias(localIdentityWithOperatingProfile), {
39
- wallet: app,
40
- ...localIdentityWithOperatingProfile,
41
- }, 'local-keypair get_portfolio must label positions with the provisioned app wallet');
42
- assert.deepEqual(buildWalletIdentity(null, signIn), {
43
- signInWallet: signIn,
44
- appWalletAddress: null,
45
- appWalletStatus: null,
46
- actingWallet: null,
47
- portfolioWallet: signIn,
48
- primaryDfmWallet: signIn,
49
- }, 'an external keypair with no app wallet has no fund-operation actor');
50
- for (const status of ['pending', 'revoked', 'unknown']) {
51
- const identity = buildWalletIdentity({ wallet: signIn, operatingWalletAddress: app, status }, signIn);
52
- assert.equal(identity.actingWallet, null, `${status} grants never advertise external signing`);
53
- assert.equal(resolveZapStatusWallet(identity), app, `${status} grants still inspect existing app-wallet escrows`);
54
- }
55
- console.log('wallet identity tests passed');
56
- //# sourceMappingURL=wallet-identity.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wallet-identity.test.js","sourceRoot":"","sources":["../src/wallet-identity.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=who-pays.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"who-pays.test.d.ts","sourceRoot":"","sources":["../src/who-pays.test.ts"],"names":[],"mappings":""}
@@ -1,56 +0,0 @@
1
- import assert from 'node:assert/strict';
2
- import { executeAppWalletWrite, shouldExecuteViaAppWallet, mayLaunchViaAppWallet } from './keyless.js';
3
- const config = {};
4
- const names = ['DFM_API_KEY', 'DFM_AGENT_KEYPAIR_PATH', 'DFM_AGENT_FORCE_LOCAL_SIGNING'];
5
- const saved = names.map((name) => process.env[name]);
6
- try {
7
- delete process.env.DFM_API_KEY;
8
- process.env.DFM_AGENT_KEYPAIR_PATH = '/tmp/auth-only-wallet.json';
9
- process.env.DFM_AGENT_FORCE_LOCAL_SIGNING = 'true';
10
- let status = 'active';
11
- let executions = 0;
12
- const calls = [];
13
- const api = {
14
- getOperatingWallet: async () => status ? { status } : null,
15
- executeViaOperatingWallet: async (tool) => {
16
- executions++;
17
- calls.push(tool);
18
- return { signature: 'APP_WALLET_SIGNATURE', status: 'complete' };
19
- },
20
- };
21
- // Exercise the actual boundary used by MCP, including its retired override.
22
- for (const tool of ['launch_vault', 'deposit', 'redeem', 'rebalance_to_targets',
23
- 'init_rebalancer', 'update_vault_assets', 'zap_v2_cancel', 'zap_v2_update_envelope', 'update_vault_policy']) {
24
- status = 'active';
25
- assert.equal(shouldExecuteViaAppWallet(config, status), true);
26
- assert.equal(mayLaunchViaAppWallet(config, status), true);
27
- assert.equal((await executeAppWalletWrite(config, api, tool, {})).signature, 'APP_WALLET_SIGNATURE');
28
- const before = executions;
29
- for (status of ['pending', 'revoked', undefined]) {
30
- await assert.rejects(executeAppWalletWrite(config, api, tool, {}), /OPERATING_WALLET_REQUIRED/);
31
- assert.equal(executions, before, 'an unavailable app wallet never reaches any signer');
32
- }
33
- }
34
- assert.equal(calls.length, 9);
35
- await assert.rejects(executeAppWalletWrite(config, {
36
- ...api, getOperatingWallet: async () => { throw new Error('lookup failed'); },
37
- }, 'deposit', {}), /lookup failed/);
38
- status = 'active';
39
- await assert.rejects(executeAppWalletWrite(config, {
40
- ...api, executeViaOperatingWallet: async () => { throw new Error('signature refused'); },
41
- }, 'redeem', {}), /signature refused/);
42
- process.env.DFM_API_KEY = 'dfm_test';
43
- delete process.env.DFM_AGENT_KEYPAIR_PATH;
44
- status = 'revoked';
45
- await assert.rejects(executeAppWalletWrite(config, {
46
- ...api, executeViaOperatingWallet: async () => { throw new Error('server: wallet revoked'); },
47
- }, 'deposit', {}), /wallet revoked/);
48
- console.log('✓ app-wallet-only: all 9 fund operations, unavailable wallets, local override, lookup and signing failures');
49
- }
50
- finally {
51
- names.forEach((name, i) => { if (saved[i] === undefined)
52
- delete process.env[name];
53
- else
54
- process.env[name] = saved[i]; });
55
- }
56
- //# sourceMappingURL=who-pays.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"who-pays.test.js","sourceRoot":"","sources":["../src/who-pays.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"zap-v2-flow.d.ts","sourceRoot":"","sources":["../src/zap-v2-flow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAwB,MAAM,YAAY,CAAC;AAQpE,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC3B;;;;;OAKG;IACH,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;IACnC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACjC,8EAA8E;IAC9E,OAAO,CAAC,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5F,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,WAAW;IACnB,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,YAAY,EAAE,MAAM,CAAC;CACtB;AA0ND;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;CAAE,GAChF,OAAO,CAAC,aAAa,CAAC,CAwExB;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;CAAE,GAChF,OAAO,CAAC,aAAa,CAAC,CAmExB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"zap-v2-flow.js","sourceRoot":"","sources":["../src/zap-v2-flow.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=zap-v2-flow.pending.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"zap-v2-flow.pending.test.d.ts","sourceRoot":"","sources":["../src/zap-v2-flow.pending.test.ts"],"names":[],"mappings":""}
@@ -1,147 +0,0 @@
1
- /**
2
- * #61 regression (runnable: `npx tsx agent/src/zap-v2-flow.pending.test.ts`).
3
- *
4
- * The agent package has no jest runner — this is a self-contained assertion
5
- * script (exit 1 on failure) covering the #61 contract: when the poll window
6
- * elapses with the escrow STILL OPEN (or it auto-settled / disappeared), the
7
- * redeem flow must return `settlement:"pending"` (ok:true) WITHOUT calling the
8
- * close builder — NOT throw a hard error. On the OLD code `pollUntilReady` threw,
9
- * so `runRedeem` rejected and `prepareZapOutCloseV2` was never reached either;
10
- * here we assert the NEW resume-able contract: a resolved pending result + no
11
- * close attempt.
12
- */
13
- import { runRedeem } from './zap-v2-flow.js';
14
- const VAULT = 'Vau1t1111111111111111111111111111111111111';
15
- const USER = 'User1111111111111111111111111111111111111111';
16
- const ESCROW = 'Escrow11111111111111111111111111111111111111';
17
- function openRedeemStatus() {
18
- return {
19
- escrowPda: ESCROW,
20
- vault: VAULT,
21
- user: USER,
22
- mode: 1, // redeem
23
- state: 4, // PARTIAL_OUT
24
- nAssets: 10,
25
- assetMints: [],
26
- filledMask: 0x1ff, // 9/10
27
- legProgress: [],
28
- legsFilled: 9,
29
- legsTotal: 10,
30
- readyToClose: false, // never ready within the window
31
- legFailures: [],
32
- openedAt: 0,
33
- expiresAt: 9_999_999_999,
34
- isExpired: false,
35
- slippageBps: 300,
36
- plannedAmountIn: [],
37
- minOuts: [],
38
- actualOuts: [],
39
- inputAmount: '0',
40
- sharesIn: '1000000',
41
- minSharesOut: '0',
42
- minUsdcOut: '0',
43
- };
44
- }
45
- let failures = 0;
46
- function assert(cond, msg) {
47
- if (!cond) {
48
- console.error(` ✗ ${msg}`);
49
- failures++;
50
- }
51
- else {
52
- console.log(` ✓ ${msg}`);
53
- }
54
- }
55
- async function caseTimeout() {
56
- console.log('case: poll TIMEOUT with escrow still open → pending (no close)');
57
- let closeCalled = 0;
58
- const mockApi = {
59
- getZapV2Status: async () => openRedeemStatus(),
60
- prepareZapOutCloseV2: async () => {
61
- closeCalled++;
62
- return { transactions: [], blockhash: '', lastValidBlockHeight: 0, escrowPda: ESCROW };
63
- },
64
- };
65
- const res = await runRedeem({}, // config — unused on the pending path
66
- mockApi, USER, VAULT, '1000000', { poll: { timeoutSecs: 0.3, intervalSecs: 0.1 } });
67
- assert(res.ok === true, 'result.ok === true (not an error)');
68
- assert(res.settlement === 'pending', `settlement === 'pending' (got '${res.settlement}')`);
69
- assert(res.closeSignatures.length === 0, 'no close signatures');
70
- assert(closeCalled === 0, 'prepareZapOutCloseV2 was NOT called');
71
- assert(res.pending?.reason === 'timeout', `pending.reason === 'timeout' (got '${res.pending?.reason}')`);
72
- assert(res.pending?.legsFilled === 9 && res.pending?.legsTotal === 10, 'pending carries 9/10 legs');
73
- }
74
- async function caseGone() {
75
- console.log('case: escrow GONE during poll (auto-settled) → pending/gone (no throw)');
76
- let calls = 0;
77
- const mockApi = {
78
- // resume guard (call 0) + first poll (call 1) see the escrow OPEN, then it
79
- // disappears (call 2+) = a genuine mid-poll settle. The guard requires having
80
- // seen it open before concluding 'gone' (so a not-yet-propagated fresh escrow
81
- // isn't mis-reported) — realistic settle must show it open first.
82
- getZapV2Status: async () => (calls++ < 2 ? openRedeemStatus() : null),
83
- prepareZapOutCloseV2: async () => {
84
- throw new Error('close must not be called on gone');
85
- },
86
- };
87
- const res = await runRedeem({}, mockApi, USER, VAULT, '1000000', { poll: { timeoutSecs: 5, intervalSecs: 0.1 } });
88
- assert(res.ok === true, 'result.ok === true');
89
- assert(res.settlement === 'pending', `settlement === 'pending' (got '${res.settlement}')`);
90
- assert(res.pending?.reason === 'gone', `pending.reason === 'gone' (got '${res.pending?.reason}')`);
91
- }
92
- async function caseFreshNullNotGone() {
93
- console.log('case: null reads WITHOUT ever seeing the escrow open → timeout, NOT gone (race ⑥ guard)');
94
- let calls = 0;
95
- const mockApi = {
96
- // resume guard (call 0) sees it open; every poll read after is null BEFORE the
97
- // poll loop ever observes it open itself (propagation blip / not-yet-visible).
98
- // The fix must NOT declare 'gone' here — it keeps waiting → 'timeout'. The OLD
99
- // code returned 'gone' on the first null, mis-reporting a live escrow as settled.
100
- getZapV2Status: async () => (calls++ === 0 ? openRedeemStatus() : null),
101
- prepareZapOutCloseV2: async () => {
102
- throw new Error('close must not be called');
103
- },
104
- };
105
- const res = await runRedeem({}, mockApi, USER, VAULT, '1000000', { poll: { timeoutSecs: 0.3, intervalSecs: 0.1 } });
106
- assert(res.settlement === 'pending', `settlement === 'pending' (got '${res.settlement}')`);
107
- assert(res.pending?.reason === 'timeout', `reason === 'timeout' not 'gone' (got '${res.pending?.reason}')`);
108
- }
109
- async function caseRedeemResumeUsesPinnedShares() {
110
- console.log('case: resumed redeem reports escrow-pinned shares, not the new request');
111
- const pinnedShares = '2000000';
112
- const status = { ...openRedeemStatus(), sharesIn: pinnedShares, readyToClose: true };
113
- let openCalled = 0;
114
- const mockApi = {
115
- getZapV2Status: async () => status,
116
- prepareZapOutOpenV2: async () => {
117
- openCalled++;
118
- throw new Error('resume must not open a second redeem escrow');
119
- },
120
- // No transactions keeps this assertion script offline while still driving
121
- // the complete-result message path after the ready escrow is resumed.
122
- prepareZapOutCloseV2: async () => ({
123
- transactions: [],
124
- blockhash: '',
125
- lastValidBlockHeight: 0,
126
- escrowPda: ESCROW,
127
- }),
128
- };
129
- const res = await runRedeem({}, mockApi, USER, VAULT, '1000000', { poll: { timeoutSecs: 1, intervalSecs: 0.1 } });
130
- assert(res.settlement === 'complete', `settlement === 'complete' (got '${res.settlement}')`);
131
- assert(openCalled === 0, 'prepareZapOutOpenV2 was NOT called');
132
- assert(res.message.includes('requested 1000000 raw shares were NOT used'), 'message rejects the new requested amount');
133
- assert(res.message.includes(`pinned at ${pinnedShares} raw shares`), 'message names the escrow-pinned amount');
134
- assert(res.message.includes(`Redeem complete: ${pinnedShares} raw shares`), 'completion reports the pinned amount');
135
- }
136
- (async () => {
137
- await caseTimeout();
138
- await caseGone();
139
- await caseFreshNullNotGone();
140
- await caseRedeemResumeUsesPinnedShares();
141
- if (failures > 0) {
142
- console.error(`\n#61 regression FAILED (${failures} assertion(s))`);
143
- process.exit(1);
144
- }
145
- console.log('\n#61 regression PASSED');
146
- })();
147
- //# sourceMappingURL=zap-v2-flow.pending.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"zap-v2-flow.pending.test.js","sourceRoot":"","sources":["../src/zap-v2-flow.pending.test.ts"],"names":[],"mappings":"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"}