@ftptech/canton-agent-wallet 0.8.0 → 0.8.1
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/dist/cli-args.d.ts +64 -2
- package/dist/cli-args.d.ts.map +1 -1
- package/dist/cli-args.js +87 -2
- package/dist/cli-args.js.map +1 -1
- package/dist/cli.js +41 -4
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/quest-fund.d.ts +64 -1
- package/dist/quest-fund.d.ts.map +1 -1
- package/dist/quest-fund.js +164 -17
- package/dist/quest-fund.js.map +1 -1
- package/dist/relay-signer.d.ts +23 -8
- package/dist/relay-signer.d.ts.map +1 -1
- package/dist/relay-signer.js +4 -2
- package/dist/relay-signer.js.map +1 -1
- package/dist/tx.d.ts +1 -0
- package/dist/tx.d.ts.map +1 -1
- package/dist/tx.js +30 -2
- package/dist/tx.js.map +1 -1
- package/dist/verify-prepared.d.ts +12 -7
- package/dist/verify-prepared.d.ts.map +1 -1
- package/dist/verify-prepared.js +43 -7
- package/dist/verify-prepared.js.map +1 -1
- package/package.json +4 -4
package/dist/cli-args.d.ts
CHANGED
|
@@ -10,8 +10,28 @@ export declare const DEFAULT_NETWORK = "canton:testnet";
|
|
|
10
10
|
export declare const VALUE_FLAGS: ReadonlySet<string>;
|
|
11
11
|
/** First value following `--<name>` in `args`, or undefined. */
|
|
12
12
|
export declare function flag(args: readonly string[], name: string): string | undefined;
|
|
13
|
-
/** True when
|
|
14
|
-
*
|
|
13
|
+
/** True when `--<name>` appears in either spelling: bare, or `--<name>=value`.
|
|
14
|
+
* The presence check has to agree with `flag()`, or a value the parser CAN read
|
|
15
|
+
* is treated as absent by the caller that asked whether it was given. */
|
|
16
|
+
export declare function flagPresent(args: readonly string[], name: string): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* True when the boolean switch `--<name>` is present anywhere in `args` (it
|
|
19
|
+
* takes no value). Used by `merge --dry-run`/`--yes`, `preapproval --status`
|
|
20
|
+
* and `--force`.
|
|
21
|
+
*
|
|
22
|
+
* THE EQUALS SPELLING IS REFUSED, NOT INTERPRETED. `flag()` and `flagPresent()`
|
|
23
|
+
* above were both taught `--name=value` after the equals form on
|
|
24
|
+
* `withdraw --amount=5` read as "amount absent" and swept the whole wallet.
|
|
25
|
+
* This third reader stayed on a bare `includes()`, so the same keystroke has
|
|
26
|
+
* the same shape of consequence: `merge --dry-run=true` reads as dry-run
|
|
27
|
+
* ABSENT and submits real batch transfers instead of printing a plan;
|
|
28
|
+
* `preapproval --status=true` runs the real preapproval.
|
|
29
|
+
*
|
|
30
|
+
* Guessing is not an option in either direction — reading mere presence turns
|
|
31
|
+
* `--dry-run=false` into a dry run, and reading the value turns a typo'd
|
|
32
|
+
* `--dry-run=yes` into real transfers. Both pick an outcome nobody asked for.
|
|
33
|
+
* The bare spelling is the only unambiguous one, so name it and stop.
|
|
34
|
+
*/
|
|
15
35
|
export declare function boolFlag(args: readonly string[], name: string): boolean;
|
|
16
36
|
/**
|
|
17
37
|
* Parse a positive-integer `--<name> <n>` flag. Returns undefined when the flag
|
|
@@ -38,4 +58,46 @@ export declare function resolveRelayUrl(args: readonly string[], env?: NodeJS.Pr
|
|
|
38
58
|
export declare function resolveNetwork(args: readonly string[], env?: NodeJS.ProcessEnv): string;
|
|
39
59
|
/** Message shown when no relay URL is supplied (flag or env). */
|
|
40
60
|
export declare const MISSING_RELAY_HELP: string;
|
|
61
|
+
/**
|
|
62
|
+
* The `--amount` decision for `withdraw`, as a value rather than a branch.
|
|
63
|
+
*
|
|
64
|
+
* Omitting `--amount` means "send the FULL balance". The CLI used to funnel the
|
|
65
|
+
* flag through a truthiness filter, so `--amount ""` and a trailing `--amount`
|
|
66
|
+
* with no value read exactly like omission — and `--amount "$AMT"` with AMT
|
|
67
|
+
* unset swept the whole wallet, with no confirmation and only an after-the-fact
|
|
68
|
+
* log line. withdraw() would itself have refused the empty string; the filter is
|
|
69
|
+
* what turned a clean refusal into a sweep.
|
|
70
|
+
*
|
|
71
|
+
* Same rule `intFlag` already states for value flags: present-but-invalid fails
|
|
72
|
+
* fast instead of falling back to a default. Pure, so it is testable.
|
|
73
|
+
*/
|
|
74
|
+
export declare function withdrawAmount(args: readonly string[]): {
|
|
75
|
+
kind: "full";
|
|
76
|
+
} | {
|
|
77
|
+
kind: "amount";
|
|
78
|
+
amount: string;
|
|
79
|
+
} | {
|
|
80
|
+
kind: "error";
|
|
81
|
+
message: string;
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Which preapproval mode `preapproval` runs in.
|
|
85
|
+
*
|
|
86
|
+
* ONLY the flag decides. This used to OR in `process.env.CANTON_X402_OPERATOR_TOKEN`,
|
|
87
|
+
* and that name belongs to another component: everywhere else in this repo it is
|
|
88
|
+
* the FACILITATOR SERVER's own secret, gating operator mutations. Sourcing the
|
|
89
|
+
* facilitator's .env — ordinary on the facilitator host — silently changed which
|
|
90
|
+
* party becomes the preapproval provider and who prepays the holding fee, with
|
|
91
|
+
* no flag and nothing in the output before submission.
|
|
92
|
+
*
|
|
93
|
+
* An ambient value is not an instruction; it is reported as ignored so the
|
|
94
|
+
* operator can opt in on purpose.
|
|
95
|
+
*/
|
|
96
|
+
export declare function preapprovalMode(args: readonly string[], env: Record<string, string | undefined>): {
|
|
97
|
+
mode: "self";
|
|
98
|
+
ambientIgnored: boolean;
|
|
99
|
+
} | {
|
|
100
|
+
mode: "legacy";
|
|
101
|
+
operatorToken: string;
|
|
102
|
+
};
|
|
41
103
|
//# sourceMappingURL=cli-args.d.ts.map
|
package/dist/cli-args.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-args.d.ts","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAEhD,8EAA8E;AAC9E,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,CAmB1C,CAAC;AAEH,gEAAgE;AAChE,wBAAgB,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"cli-args.d.ts","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAEhD,8EAA8E;AAC9E,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,CAmB1C,CAAC;AAEH,gEAAgE;AAChE,wBAAgB,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAU9E;AAED;;0EAE0E;AAC1E,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAUvE;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CACrB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CAQpB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAW7D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,GAAG,SAAS,CAEpB;AAED,+EAA+E;AAC/E,wBAAgB,cAAc,CAC5B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAER;AAED,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,QAEkD,CAAC;AAElF;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAY5F;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CASvF"}
|
package/dist/cli-args.js
CHANGED
|
@@ -29,12 +29,48 @@ export const VALUE_FLAGS = new Set([
|
|
|
29
29
|
]);
|
|
30
30
|
/** First value following `--<name>` in `args`, or undefined. */
|
|
31
31
|
export function flag(args, name) {
|
|
32
|
+
// BOTH spellings. `--amount 5` and `--amount=5` are the same instruction to
|
|
33
|
+
// anyone who has used a CLI, and only the first was read. The equals form fell
|
|
34
|
+
// through to "flag absent", which on `withdraw` means "send the FULL balance"
|
|
35
|
+
// — a user who typed an amount got their whole wallet swept. Published
|
|
36
|
+
// command, real money, one keystroke apart.
|
|
37
|
+
const eq = args.find((a) => a.startsWith(`${name}=`));
|
|
38
|
+
if (eq !== undefined)
|
|
39
|
+
return eq.slice(name.length + 1);
|
|
32
40
|
const i = args.indexOf(name);
|
|
33
41
|
return i >= 0 && i + 1 < args.length ? args[i + 1] : undefined;
|
|
34
42
|
}
|
|
35
|
-
/** True when
|
|
36
|
-
*
|
|
43
|
+
/** True when `--<name>` appears in either spelling: bare, or `--<name>=value`.
|
|
44
|
+
* The presence check has to agree with `flag()`, or a value the parser CAN read
|
|
45
|
+
* is treated as absent by the caller that asked whether it was given. */
|
|
46
|
+
export function flagPresent(args, name) {
|
|
47
|
+
return args.includes(name) || args.some((a) => a.startsWith(`${name}=`));
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* True when the boolean switch `--<name>` is present anywhere in `args` (it
|
|
51
|
+
* takes no value). Used by `merge --dry-run`/`--yes`, `preapproval --status`
|
|
52
|
+
* and `--force`.
|
|
53
|
+
*
|
|
54
|
+
* THE EQUALS SPELLING IS REFUSED, NOT INTERPRETED. `flag()` and `flagPresent()`
|
|
55
|
+
* above were both taught `--name=value` after the equals form on
|
|
56
|
+
* `withdraw --amount=5` read as "amount absent" and swept the whole wallet.
|
|
57
|
+
* This third reader stayed on a bare `includes()`, so the same keystroke has
|
|
58
|
+
* the same shape of consequence: `merge --dry-run=true` reads as dry-run
|
|
59
|
+
* ABSENT and submits real batch transfers instead of printing a plan;
|
|
60
|
+
* `preapproval --status=true` runs the real preapproval.
|
|
61
|
+
*
|
|
62
|
+
* Guessing is not an option in either direction — reading mere presence turns
|
|
63
|
+
* `--dry-run=false` into a dry run, and reading the value turns a typo'd
|
|
64
|
+
* `--dry-run=yes` into real transfers. Both pick an outcome nobody asked for.
|
|
65
|
+
* The bare spelling is the only unambiguous one, so name it and stop.
|
|
66
|
+
*/
|
|
37
67
|
export function boolFlag(args, name) {
|
|
68
|
+
const withValue = args.find((a) => a.startsWith(`${name}=`));
|
|
69
|
+
if (withValue !== undefined) {
|
|
70
|
+
throw new Error(`${name} is a switch and takes no value — write ${name} on its own, or ` +
|
|
71
|
+
`omit it. Got ${JSON.stringify(withValue)}; refusing to guess whether ` +
|
|
72
|
+
`that meant on or off.`);
|
|
73
|
+
}
|
|
38
74
|
return args.includes(name);
|
|
39
75
|
}
|
|
40
76
|
/**
|
|
@@ -87,4 +123,53 @@ export function resolveNetwork(args, env = process.env) {
|
|
|
87
123
|
/** Message shown when no relay URL is supplied (flag or env). */
|
|
88
124
|
export const MISSING_RELAY_HELP = "no relay URL — pass --relay-url <url> or set CANTON_AGENT_RELAY_URL.\n" +
|
|
89
125
|
" e.g. canton-agent-wallet create --relay-url https://facilitator.ftptech.xyz";
|
|
126
|
+
/**
|
|
127
|
+
* The `--amount` decision for `withdraw`, as a value rather than a branch.
|
|
128
|
+
*
|
|
129
|
+
* Omitting `--amount` means "send the FULL balance". The CLI used to funnel the
|
|
130
|
+
* flag through a truthiness filter, so `--amount ""` and a trailing `--amount`
|
|
131
|
+
* with no value read exactly like omission — and `--amount "$AMT"` with AMT
|
|
132
|
+
* unset swept the whole wallet, with no confirmation and only an after-the-fact
|
|
133
|
+
* log line. withdraw() would itself have refused the empty string; the filter is
|
|
134
|
+
* what turned a clean refusal into a sweep.
|
|
135
|
+
*
|
|
136
|
+
* Same rule `intFlag` already states for value flags: present-but-invalid fails
|
|
137
|
+
* fast instead of falling back to a default. Pure, so it is testable.
|
|
138
|
+
*/
|
|
139
|
+
export function withdrawAmount(args) {
|
|
140
|
+
if (!flagPresent(args, "--amount"))
|
|
141
|
+
return { kind: "full" };
|
|
142
|
+
const raw = flag(args, "--amount");
|
|
143
|
+
if (raw === undefined || raw.trim() === "") {
|
|
144
|
+
return {
|
|
145
|
+
kind: "error",
|
|
146
|
+
message: "withdraw --amount was given with no value — refusing. Omit --amount " +
|
|
147
|
+
"entirely to send the FULL balance, or pass an explicit amount.",
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
return { kind: "amount", amount: raw };
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Which preapproval mode `preapproval` runs in.
|
|
154
|
+
*
|
|
155
|
+
* ONLY the flag decides. This used to OR in `process.env.CANTON_X402_OPERATOR_TOKEN`,
|
|
156
|
+
* and that name belongs to another component: everywhere else in this repo it is
|
|
157
|
+
* the FACILITATOR SERVER's own secret, gating operator mutations. Sourcing the
|
|
158
|
+
* facilitator's .env — ordinary on the facilitator host — silently changed which
|
|
159
|
+
* party becomes the preapproval provider and who prepays the holding fee, with
|
|
160
|
+
* no flag and nothing in the output before submission.
|
|
161
|
+
*
|
|
162
|
+
* An ambient value is not an instruction; it is reported as ignored so the
|
|
163
|
+
* operator can opt in on purpose.
|
|
164
|
+
*/
|
|
165
|
+
export function preapprovalMode(args, env) {
|
|
166
|
+
const token = flag(args, "--operator-token");
|
|
167
|
+
if (token !== undefined && token.trim() !== "") {
|
|
168
|
+
return { mode: "legacy", operatorToken: token };
|
|
169
|
+
}
|
|
170
|
+
return {
|
|
171
|
+
mode: "self",
|
|
172
|
+
ambientIgnored: Boolean(env["CANTON_X402_OPERATOR_TOKEN"]),
|
|
173
|
+
};
|
|
174
|
+
}
|
|
90
175
|
//# sourceMappingURL=cli-args.js.map
|
package/dist/cli-args.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-args.js","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAEhD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,WAAW,GAAwB,IAAI,GAAG,CAAC;IACtD,aAAa;IACb,WAAW;IACX,MAAM;IACN,UAAU;IACV,YAAY;IACZ,iFAAiF;IACjF,kFAAkF;IAClF,mFAAmF;IACnF,UAAU;IACV,SAAS;IACT,cAAc;IACd,2EAA2E;IAC3E,4EAA4E;IAC5E,+EAA+E;IAC/E,SAAS;IACT,cAAc;IACd,QAAQ;IACR,kBAAkB;CACnB,CAAC,CAAC;AAEH,gEAAgE;AAChE,MAAM,UAAU,IAAI,CAAC,IAAuB,EAAE,IAAY;IACxD,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjE,CAAC;AAED;
|
|
1
|
+
{"version":3,"file":"cli-args.js","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -50,7 +50,7 @@ import { mergeHoldings } from "./merge.js";
|
|
|
50
50
|
import { withdraw } from "./withdraw.js";
|
|
51
51
|
import { fundViaQuest } from "./quest-fund.js";
|
|
52
52
|
import { installProxyFromEnv } from "./proxy.js";
|
|
53
|
-
import { flag, boolFlag, intFlag, positionals, resolveNetwork, resolveRelayUrl, MISSING_RELAY_HELP, } from "./cli-args.js";
|
|
53
|
+
import { flag, boolFlag, intFlag, positionals, resolveNetwork, resolveRelayUrl, MISSING_RELAY_HELP, withdrawAmount, preapprovalMode, } from "./cli-args.js";
|
|
54
54
|
import { resolveTrustedDsoParty } from "./trusted-dso.js";
|
|
55
55
|
const API_KEY = process.env.CANTON_AGENT_API_KEY;
|
|
56
56
|
function fail(msg) {
|
|
@@ -235,7 +235,27 @@ async function main() {
|
|
|
235
235
|
const days = Number.isFinite(daysFlag) && daysFlag > 0 ? daysFlag : 30;
|
|
236
236
|
const expiresAt = flag(args, "--expires-at") ||
|
|
237
237
|
new Date(Date.now() + days * 24 * 3600 * 1000).toISOString();
|
|
238
|
-
|
|
238
|
+
// THE FLAG, AND ONLY THE FLAG, PICKS THE MODE.
|
|
239
|
+
//
|
|
240
|
+
// This used to OR in `process.env.CANTON_X402_OPERATOR_TOKEN`, and that
|
|
241
|
+
// name belongs to a different component: everywhere else in this repo it
|
|
242
|
+
// is the FACILITATOR SERVER's own secret, gating operator mutations on
|
|
243
|
+
// the registry. Sourcing the facilitator's .env — the ordinary thing to
|
|
244
|
+
// do on the facilitator host, where this repo's own ops flows run — then
|
|
245
|
+
// silently changed which party becomes the preapproval provider and who
|
|
246
|
+
// prepays the holding fee, with no flag, no prompt, and nothing in the
|
|
247
|
+
// output before submission. The documented default is self-provision.
|
|
248
|
+
//
|
|
249
|
+
// An ambient value is not an instruction. Say it was ignored, and how to
|
|
250
|
+
// ask for the legacy mode on purpose.
|
|
251
|
+
const mode = preapprovalMode(args, process.env);
|
|
252
|
+
if (mode.mode === "self" && mode.ambientIgnored) {
|
|
253
|
+
console.error("note: CANTON_X402_OPERATOR_TOKEN is set in this environment and was " +
|
|
254
|
+
"IGNORED — that variable is the facilitator server's own secret, " +
|
|
255
|
+
"not a mode switch. Self-provisioning with this wallet's key. Pass " +
|
|
256
|
+
"--operator-token <t> if you meant the legacy facilitator-as-provider mode.");
|
|
257
|
+
}
|
|
258
|
+
const operatorToken = mode.mode === "legacy" ? mode.operatorToken : undefined;
|
|
239
259
|
if (operatorToken) {
|
|
240
260
|
// LEGACY facilitator-as-provider (opt-in). Needs CanActAs delegation.
|
|
241
261
|
const res = await relay.createPreapproval(w.party, { operatorToken, expiresAt });
|
|
@@ -289,8 +309,25 @@ async function main() {
|
|
|
289
309
|
const to = flag(args, "--to");
|
|
290
310
|
if (!to)
|
|
291
311
|
return fail("usage: canton-agent-wallet withdraw --to <party> [--amount <cc>]");
|
|
292
|
-
|
|
293
|
-
|
|
312
|
+
// PRESENT-BUT-EMPTY IS NOT ABSENT, and here the difference is the whole
|
|
313
|
+
// wallet. Omitting --amount means "send the full balance" (withdraw.ts),
|
|
314
|
+
// and the old truthiness filter `amount ? {amount} : {}` treated
|
|
315
|
+
// `--amount ""` and a trailing `--amount` with no value exactly like
|
|
316
|
+
// omission — so `--amount "$AMT"` with AMT unset swept everything, with
|
|
317
|
+
// no confirmation and only an after-the-fact log line. withdraw() would
|
|
318
|
+
// itself have refused the empty string; the CLI's filter is what turned a
|
|
319
|
+
// clean refusal into a sweep.
|
|
320
|
+
//
|
|
321
|
+
// This is the rule cli-args' own intFlag already states for value flags:
|
|
322
|
+
// a present-but-invalid value fails fast rather than falling back.
|
|
323
|
+
const amt = withdrawAmount(args);
|
|
324
|
+
if (amt.kind === "error")
|
|
325
|
+
return fail(amt.message);
|
|
326
|
+
const r = await withdraw({
|
|
327
|
+
to,
|
|
328
|
+
...(amt.kind === "amount" ? { amount: amt.amount } : {}),
|
|
329
|
+
apiKey: API_KEY,
|
|
330
|
+
});
|
|
294
331
|
console.log(`withdrew ${r.amount} CC to ${to}\n updateId: ${r.updateId}`);
|
|
295
332
|
break;
|
|
296
333
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -12,4 +12,5 @@ export * from "./canton-hash.js";
|
|
|
12
12
|
export * from "./trusted-dso.js";
|
|
13
13
|
export * from "./quest-fund.js";
|
|
14
14
|
export { assertPreparedTransferMatches, assertHashBinding, assertOnboardingTopologyBindsKey, decodePrepared, extractTransfer, PreparedDecodeError, PreparedTransferMismatchError, PreparedHashUnavailableError, OnboardingTopologyMismatchError, type HashBindingOptions, type PreparedTransferExpectation, type OnboardingTopologyExpectation, } from "./verify-prepared.js";
|
|
15
|
+
export { fundViaQuest, QuestFundError } from "./quest-fund.js";
|
|
15
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EACL,6BAA6B,EAC7B,iBAAiB,EACjB,gCAAgC,EAChC,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,GACnC,MAAM,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EACL,6BAA6B,EAC7B,iBAAiB,EACjB,gCAAgC,EAChC,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,GACnC,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -12,4 +12,8 @@ export * from "./canton-hash.js";
|
|
|
12
12
|
export * from "./trusted-dso.js";
|
|
13
13
|
export * from "./quest-fund.js";
|
|
14
14
|
export { assertPreparedTransferMatches, assertHashBinding, assertOnboardingTopologyBindsKey, decodePrepared, extractTransfer, PreparedDecodeError, PreparedTransferMismatchError, PreparedHashUnavailableError, OnboardingTopologyMismatchError, } from "./verify-prepared.js";
|
|
15
|
+
// The one place the "unreadable balance is not an empty wallet" rule lives for
|
|
16
|
+
// the CLI. Exported so the MCP can be pinned against it by test rather than
|
|
17
|
+
// keeping a second copy that silently drifts — which is exactly what happened.
|
|
18
|
+
export { fundViaQuest, QuestFundError } from "./quest-fund.js";
|
|
15
19
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EACL,6BAA6B,EAC7B,iBAAiB,EACjB,gCAAgC,EAChC,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,GAIhC,MAAM,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EACL,6BAA6B,EAC7B,iBAAiB,EACjB,gCAAgC,EAChC,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,GAIhC,MAAM,sBAAsB,CAAC;AAE9B,+EAA+E;AAC/E,4EAA4E;AAC5E,+EAA+E;AAC/E,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/quest-fund.d.ts
CHANGED
|
@@ -27,14 +27,65 @@ export interface QuestFundOpts {
|
|
|
27
27
|
/** A quest leg failed or the flow could not complete. `auto_fund` catches this
|
|
28
28
|
* and falls back to the manual-funding ask, so a pay-proxy hiccup never turns
|
|
29
29
|
* into a hard tool error. */
|
|
30
|
+
/**
|
|
31
|
+
* `recoverable` is set when the quest failed AFTER step 1 handed us a real
|
|
32
|
+
* party and its private key. Losing that key loses custody of whatever the
|
|
33
|
+
* faucet already put on that party — the throw used to discard it, and the CLI
|
|
34
|
+
* then told the operator to ask their owner for CC while the grant sat on a
|
|
35
|
+
* party nobody could act as any more.
|
|
36
|
+
*/
|
|
30
37
|
export declare class QuestFundError extends Error {
|
|
31
|
-
|
|
38
|
+
/**
|
|
39
|
+
* NON-ENUMERABLE ON PURPOSE, AND THIS IS THE WHOLE POINT.
|
|
40
|
+
*
|
|
41
|
+
* `recoverable.secret` is a raw PKCS8 private key with real MainNet CC behind
|
|
42
|
+
* it. Assigned as an ordinary property it becomes an enumerable own property
|
|
43
|
+
* of a thrown Error, and this class is exported from the package index — so
|
|
44
|
+
* every ordinary way a consumer records a failure copies the key out:
|
|
45
|
+
* `JSON.stringify(err)` includes it, and pino's default `err` serializer
|
|
46
|
+
* copies own enumerable properties, so a plain `logger.error({ err })` in a
|
|
47
|
+
* third-party service writes the key into that service's log pipeline.
|
|
48
|
+
* Measured, not assumed: both leak it.
|
|
49
|
+
*
|
|
50
|
+
* `declare` is required, not stylistic — the workspace compiles with
|
|
51
|
+
* `useDefineForClassFields: true`, so a plain field declaration would emit a
|
|
52
|
+
* defineProperty that overwrites the descriptor below with an enumerable
|
|
53
|
+
* `undefined` and silently undo the fix.
|
|
54
|
+
*
|
|
55
|
+
* The rescue path is unaffected: both readers
|
|
56
|
+
* (quest-fund.ts `err.recoverable`, mcp/server.ts `e.recoverable`) ask for
|
|
57
|
+
* the property by name, and non-enumerable properties answer that normally.
|
|
58
|
+
* Hidden from anything that ENUMERATES, present for anything that ASKS.
|
|
59
|
+
*/
|
|
60
|
+
readonly recoverable?: {
|
|
61
|
+
secret: string;
|
|
62
|
+
party: string;
|
|
63
|
+
network: string;
|
|
64
|
+
};
|
|
65
|
+
constructor(message: string, recoverable?: {
|
|
66
|
+
secret: string;
|
|
67
|
+
party: string;
|
|
68
|
+
network: string;
|
|
69
|
+
});
|
|
32
70
|
}
|
|
33
71
|
/**
|
|
34
72
|
* Run the pay-proxy quest and return a funded wallet (key + change + image).
|
|
35
73
|
* Throws QuestFundError on any refusal / timeout — never a partial state.
|
|
36
74
|
*/
|
|
37
75
|
export declare function questFund(opts: QuestFundOpts): Promise<QuestFundResult>;
|
|
76
|
+
/**
|
|
77
|
+
* Persist a key rescued from a failed quest, beside the wallet but never AS the
|
|
78
|
+
* wallet.
|
|
79
|
+
*
|
|
80
|
+
* EXPORTED because the MCP server runs the same quest through the lower-level
|
|
81
|
+
* `questFund` and needs the same rescue. It had none: the only copy of the
|
|
82
|
+
* private key rode away inside the thrown Error and was collected, leaving
|
|
83
|
+
* faucet CC on a MainNet party nobody can spend. One rescue, one place. Overwriting wallet.json here would destroy the private key of an
|
|
84
|
+
* existing wallet on an error path — the exact loss this rescue exists to
|
|
85
|
+
* prevent, aimed at the other wallet. The party goes in the filename so two
|
|
86
|
+
* rescues cannot silently overwrite each other.
|
|
87
|
+
*/
|
|
88
|
+
export declare function writeRescueKey(secret: string, party: string, _network: string): string;
|
|
38
89
|
export interface FundViaQuestOpts {
|
|
39
90
|
/** pay-proxy base URL used to run the quest. */
|
|
40
91
|
payProxyUrl: string;
|
|
@@ -49,7 +100,19 @@ export interface FundViaQuestOpts {
|
|
|
49
100
|
/** Injectable wallet-store seams (tests) — default to the real store/onboard. */
|
|
50
101
|
loadWalletImpl?: () => AgentWallet | undefined;
|
|
51
102
|
balanceOf?: (relayUrl: string, party: string) => Promise<string>;
|
|
103
|
+
/** Unaccepted incoming transfers addressed to the party. Separate from the
|
|
104
|
+
* balance because the relay's /balance counts Amulet contracts only, and a
|
|
105
|
+
* transfer nobody has accepted yet is not one. */
|
|
106
|
+
pendingOf?: (relayUrl: string, party: string) => Promise<Array<{
|
|
107
|
+
cid: string;
|
|
108
|
+
amount?: string;
|
|
109
|
+
sender?: string;
|
|
110
|
+
}>>;
|
|
52
111
|
installKey?: (secret: string, relayUrl: string, network: string) => Promise<AgentWallet>;
|
|
112
|
+
/** Where a key rescued from a failed quest is written. Returns the path it
|
|
113
|
+
* wrote, which the thrown error names. Defaults to a 0600 file beside the
|
|
114
|
+
* wallet — NEVER wallet.json itself, so a rescue can destroy nothing. */
|
|
115
|
+
rescueKeyImpl?: (secret: string, party: string, network: string) => string;
|
|
53
116
|
}
|
|
54
117
|
/** Outcome of `fundViaQuest`: either a freshly-installed funded wallet, or a
|
|
55
118
|
* "kept" note (an already-funded wallet was left untouched). */
|
package/dist/quest-fund.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quest-fund.d.ts","sourceRoot":"","sources":["../src/quest-fund.ts"],"names":[],"mappings":"AA0BA,OAAO,
|
|
1
|
+
{"version":3,"file":"quest-fund.d.ts","sourceRoot":"","sources":["../src/quest-fund.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAqC,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAKjF;;4EAE4E;AAC5E,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,0DAA0D;IAC1D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED;;8BAE8B;AAC9B;;;;;;GAMG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,SAAiB,WAAW,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;gBAEhF,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAanE;AAwBD;;;GAGG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CA8G7E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAOtF;AAED,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB;wCACoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,OAAO,SAAS,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,WAAW,GAAG,SAAS,CAAC;IAC/C,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE;;uDAEmD;IACnD,SAAS,CAAC,EAAE,CACV,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,KACV,OAAO,CAAC,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IACvE,UAAU,CAAC,EAAE,CACX,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,KACZ,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1B;;8EAE0E;IAC1E,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5E;AAED;iEACiE;AACjE,MAAM,MAAM,kBAAkB,GAC1B;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,GACD;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE;;;;;;;;;;GAUG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,kBAAkB,CAAC,CA0K7B"}
|
package/dist/quest-fund.js
CHANGED
|
@@ -24,24 +24,55 @@
|
|
|
24
24
|
*/
|
|
25
25
|
import { agentKeyFromPrivatePem } from "./keys.js";
|
|
26
26
|
import { ensureWallet } from "./onboard.js";
|
|
27
|
-
import { loadWallet, saveWallet } from "./store.js";
|
|
27
|
+
import { loadWallet, saveWallet, walletDir } from "./store.js";
|
|
28
|
+
import { mkdirSync, writeFileSync } from "node:fs";
|
|
29
|
+
import { join } from "node:path";
|
|
28
30
|
import { RelayClient } from "./relay-client.js";
|
|
29
31
|
/** A quest leg failed or the flow could not complete. `auto_fund` catches this
|
|
30
32
|
* and falls back to the manual-funding ask, so a pay-proxy hiccup never turns
|
|
31
33
|
* into a hard tool error. */
|
|
34
|
+
/**
|
|
35
|
+
* `recoverable` is set when the quest failed AFTER step 1 handed us a real
|
|
36
|
+
* party and its private key. Losing that key loses custody of whatever the
|
|
37
|
+
* faucet already put on that party — the throw used to discard it, and the CLI
|
|
38
|
+
* then told the operator to ask their owner for CC while the grant sat on a
|
|
39
|
+
* party nobody could act as any more.
|
|
40
|
+
*/
|
|
32
41
|
export class QuestFundError extends Error {
|
|
33
|
-
constructor(message) {
|
|
42
|
+
constructor(message, recoverable) {
|
|
34
43
|
super(message);
|
|
35
44
|
this.name = "QuestFundError";
|
|
45
|
+
if (recoverable) {
|
|
46
|
+
Object.defineProperty(this, "recoverable", {
|
|
47
|
+
value: recoverable,
|
|
48
|
+
enumerable: false,
|
|
49
|
+
writable: false,
|
|
50
|
+
configurable: false,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
36
53
|
}
|
|
37
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* The parsed body, or undefined when the answer was not a readable JSON result.
|
|
57
|
+
*
|
|
58
|
+
* The distinction is the point. A reverse proxy in front of the pay-proxy
|
|
59
|
+
* answers a restart or an upstream hiccup with a 502/504 HTML page, and a
|
|
60
|
+
* rate-limiter answers 429 — none of which is the job telling us anything. The
|
|
61
|
+
* old version flattened all of it to `{}`, which matched neither "pending" nor
|
|
62
|
+
* the terminal status, so a poll that could not be read was reported as "the
|
|
63
|
+
* quest failed" on the very first blip, with 39 polls of budget still unused.
|
|
64
|
+
* The two POSTs in this file check `status !== 202` correctly; the rule was
|
|
65
|
+
* simply dropped on the reads that decide the outcome.
|
|
66
|
+
*/
|
|
38
67
|
async function jsonOf(r) {
|
|
68
|
+
if (!r.ok)
|
|
69
|
+
return undefined;
|
|
39
70
|
const text = await r.text();
|
|
40
71
|
try {
|
|
41
|
-
return JSON.parse(text) ??
|
|
72
|
+
return JSON.parse(text) ?? undefined;
|
|
42
73
|
}
|
|
43
74
|
catch {
|
|
44
|
-
return
|
|
75
|
+
return undefined;
|
|
45
76
|
}
|
|
46
77
|
}
|
|
47
78
|
/**
|
|
@@ -63,7 +94,7 @@ export async function questFund(opts) {
|
|
|
63
94
|
if (createRes.status !== 202) {
|
|
64
95
|
throw new QuestFundError(`quest create returned ${createRes.status} (expected 202)`);
|
|
65
96
|
}
|
|
66
|
-
const walletJobId = (await jsonOf(createRes))
|
|
97
|
+
const walletJobId = (await jsonOf(createRes))?.walletJobId;
|
|
67
98
|
if (typeof walletJobId !== "string" || !walletJobId) {
|
|
68
99
|
throw new QuestFundError("quest create returned no walletJobId");
|
|
69
100
|
}
|
|
@@ -73,6 +104,9 @@ export async function questFund(opts) {
|
|
|
73
104
|
await sleep(pollMs);
|
|
74
105
|
const r = await doFetch(`${base}/v1/quest/wallet/result?walletJobId=${encodeURIComponent(walletJobId)}`);
|
|
75
106
|
const body = await jsonOf(r);
|
|
107
|
+
// Unreadable answer: not a verdict. Keep polling with the budget we have.
|
|
108
|
+
if (!body)
|
|
109
|
+
continue;
|
|
76
110
|
if (body.status === "pending")
|
|
77
111
|
continue;
|
|
78
112
|
if (body.status === "funded") {
|
|
@@ -104,7 +138,7 @@ export async function questFund(opts) {
|
|
|
104
138
|
if (payRes.status !== 202) {
|
|
105
139
|
throw new QuestFundError(`quest pay returned ${payRes.status} (expected 202)`);
|
|
106
140
|
}
|
|
107
|
-
const payJobId = (await jsonOf(payRes))
|
|
141
|
+
const payJobId = (await jsonOf(payRes))?.payJobId;
|
|
108
142
|
if (typeof payJobId !== "string" || !payJobId) {
|
|
109
143
|
throw new QuestFundError("quest pay returned no payJobId");
|
|
110
144
|
}
|
|
@@ -114,16 +148,23 @@ export async function questFund(opts) {
|
|
|
114
148
|
await sleep(pollMs);
|
|
115
149
|
const r = await doFetch(`${base}/v1/quest/wallet/pay-result?payJobId=${encodeURIComponent(payJobId)}`);
|
|
116
150
|
const body = await jsonOf(r);
|
|
151
|
+
if (!body)
|
|
152
|
+
continue;
|
|
117
153
|
if (body.status === "pending")
|
|
118
154
|
continue;
|
|
119
155
|
if (body.status === "done") {
|
|
120
156
|
done = body;
|
|
121
157
|
break;
|
|
122
158
|
}
|
|
123
|
-
throw new QuestFundError(`quest STEP 2 failed: ${String(body.error ?? body.status ?? "unknown")}
|
|
159
|
+
throw new QuestFundError(`quest STEP 2 failed: ${String(body.error ?? body.status ?? "unknown")}`, { secret, party, network: typeof network === "string" ? network : "canton:mainnet" });
|
|
160
|
+
}
|
|
161
|
+
if (!done) {
|
|
162
|
+
throw new QuestFundError("quest STEP 2 timed out", {
|
|
163
|
+
secret,
|
|
164
|
+
party,
|
|
165
|
+
network: typeof network === "string" ? network : "canton:mainnet",
|
|
166
|
+
});
|
|
124
167
|
}
|
|
125
|
-
if (!done)
|
|
126
|
-
throw new QuestFundError("quest STEP 2 timed out");
|
|
127
168
|
return {
|
|
128
169
|
secret,
|
|
129
170
|
party,
|
|
@@ -133,6 +174,26 @@ export async function questFund(opts) {
|
|
|
133
174
|
image: typeof done.image === "string" ? done.image : undefined,
|
|
134
175
|
};
|
|
135
176
|
}
|
|
177
|
+
/**
|
|
178
|
+
* Persist a key rescued from a failed quest, beside the wallet but never AS the
|
|
179
|
+
* wallet.
|
|
180
|
+
*
|
|
181
|
+
* EXPORTED because the MCP server runs the same quest through the lower-level
|
|
182
|
+
* `questFund` and needs the same rescue. It had none: the only copy of the
|
|
183
|
+
* private key rode away inside the thrown Error and was collected, leaving
|
|
184
|
+
* faucet CC on a MainNet party nobody can spend. One rescue, one place. Overwriting wallet.json here would destroy the private key of an
|
|
185
|
+
* existing wallet on an error path — the exact loss this rescue exists to
|
|
186
|
+
* prevent, aimed at the other wallet. The party goes in the filename so two
|
|
187
|
+
* rescues cannot silently overwrite each other.
|
|
188
|
+
*/
|
|
189
|
+
export function writeRescueKey(secret, party, _network) {
|
|
190
|
+
const d = walletDir();
|
|
191
|
+
mkdirSync(d, { recursive: true, mode: 0o700 });
|
|
192
|
+
const safe = party.replace(/[^A-Za-z0-9_.-]/g, "_").slice(0, 80);
|
|
193
|
+
const p = join(d, `rescued-key-${safe}.pem`);
|
|
194
|
+
writeFileSync(p, secret.endsWith("\n") ? secret : secret + "\n", { mode: 0o600 });
|
|
195
|
+
return p;
|
|
196
|
+
}
|
|
136
197
|
/**
|
|
137
198
|
* Bootstrap a funded self-custody wallet through the quest (mint → grant →
|
|
138
199
|
* CanTrust payment → change) and INSTALL it (`saveWallet`) so the caller owns the
|
|
@@ -148,25 +209,111 @@ export async function fundViaQuest(opts) {
|
|
|
148
209
|
const load = opts.loadWalletImpl ?? loadWallet;
|
|
149
210
|
const balanceOf = opts.balanceOf ??
|
|
150
211
|
(async (relayUrl, party) => (await new RelayClient({ relayUrl }).balance(party)).cc);
|
|
212
|
+
const pendingOf = opts.pendingOf ??
|
|
213
|
+
(async (relayUrl, party) => (await new RelayClient({ relayUrl }).pending(party)).pending);
|
|
151
214
|
const existing = load();
|
|
152
215
|
if (existing) {
|
|
153
|
-
|
|
216
|
+
// UNREADABLE IS NOT EMPTY.
|
|
217
|
+
//
|
|
218
|
+
// The guard below is the only thing standing between an existing wallet
|
|
219
|
+
// and `saveWallet` overwriting it — and overwriting wallet.json destroys
|
|
220
|
+
// the private key, which is the one thing here that cannot be undone. The
|
|
221
|
+
// old code caught the balance read into `cc = "0"` and commented that as
|
|
222
|
+
// "treat as empty and proceed to bootstrap": a relay blip, a DNS hiccup or
|
|
223
|
+
// any 5xx therefore looked exactly like an empty wallet, and the key of a
|
|
224
|
+
// wallet holding real CC was replaced.
|
|
225
|
+
//
|
|
226
|
+
// A wallet is only ever replaced when we KNOW it is empty. If the balance
|
|
227
|
+
// cannot be read we refuse and say so; the caller retries when the relay
|
|
228
|
+
// is back, and nothing was lost in the meantime.
|
|
229
|
+
let cc;
|
|
154
230
|
try {
|
|
155
231
|
cc = await balanceOf(opts.relayUrl, existing.party);
|
|
156
232
|
}
|
|
157
|
-
catch {
|
|
158
|
-
|
|
233
|
+
catch (err) {
|
|
234
|
+
throw new QuestFundError(`a wallet already exists (${existing.party}) but its balance could not ` +
|
|
235
|
+
`be read (${err instanceof Error ? err.message : String(err)}) — ` +
|
|
236
|
+
`refusing to overwrite it, because an unreadable balance is not an ` +
|
|
237
|
+
`empty one and replacing the wallet would destroy its private key. ` +
|
|
238
|
+
`Retry once the relay is reachable.`);
|
|
159
239
|
}
|
|
160
240
|
if (Number(cc) > 0) {
|
|
161
241
|
return { kind: "already_funded", party: existing.party, balanceCc: cc };
|
|
162
242
|
}
|
|
243
|
+
// A BALANCE OF ZERO IS NOT PROOF OF AN EMPTY WALLET.
|
|
244
|
+
//
|
|
245
|
+
// The relay's /balance counts `Splice.Amulet:Amulet` contracts and nothing
|
|
246
|
+
// else (facilitator routes/wallet.ts scopes the query to that template on
|
|
247
|
+
// purpose). CC that someone has SENT to this party but that nobody has
|
|
248
|
+
// accepted yet is not an Amulet — it is a pending TransferInstruction, and
|
|
249
|
+
// it reads as 0.0000000000 here.
|
|
250
|
+
//
|
|
251
|
+
// That is the normal state of an agent wallet, not an exotic one: an agent
|
|
252
|
+
// has no TransferPreapproval, which is precisely why a separate `claim`
|
|
253
|
+
// step exists ("run after the owner has sent CC"). So the window between
|
|
254
|
+
// "owner sent the funds" and "agent accepted them" is exactly the window in
|
|
255
|
+
// which this guard called the wallet empty and `saveWallet` destroyed the
|
|
256
|
+
// private key of the party those funds are addressed to. The CC stays on
|
|
257
|
+
// the ledger, addressed to a party nobody can act as any more.
|
|
258
|
+
//
|
|
259
|
+
// Same rule as the balance read above, applied to the other half of the
|
|
260
|
+
// question: unreadable is not empty, and neither is unclaimed.
|
|
261
|
+
let pending;
|
|
262
|
+
try {
|
|
263
|
+
pending = await pendingOf(opts.relayUrl, existing.party);
|
|
264
|
+
}
|
|
265
|
+
catch (err) {
|
|
266
|
+
throw new QuestFundError(`a wallet already exists (${existing.party}) and reads as empty, but ` +
|
|
267
|
+
`its pending incoming transfers could not be read (${err instanceof Error ? err.message : String(err)}) — refusing to overwrite it, because a balance of zero only proves ` +
|
|
268
|
+
`there are no ACCEPTED funds. Retry once the relay is reachable.`);
|
|
269
|
+
}
|
|
270
|
+
if (pending.length > 0) {
|
|
271
|
+
const total = pending
|
|
272
|
+
.reduce((sum, p) => sum + Number(p.amount ?? 0), 0)
|
|
273
|
+
.toFixed(10);
|
|
274
|
+
throw new QuestFundError(`a wallet already exists (${existing.party}) with ${pending.length} ` +
|
|
275
|
+
`unaccepted incoming transfer(s) totalling ${total} CC — refusing to ` +
|
|
276
|
+
`overwrite it, because replacing the wallet would destroy the private ` +
|
|
277
|
+
`key those funds are addressed to and they could never be claimed. ` +
|
|
278
|
+
`Run \`claim\` to accept them first.`);
|
|
279
|
+
}
|
|
163
280
|
}
|
|
164
281
|
const runQuest = opts.questFundImpl ?? questFund;
|
|
165
|
-
const
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
282
|
+
const rescueKey = opts.rescueKeyImpl ?? writeRescueKey;
|
|
283
|
+
let funded;
|
|
284
|
+
try {
|
|
285
|
+
funded = await runQuest({
|
|
286
|
+
payProxyUrl: opts.payProxyUrl,
|
|
287
|
+
...(opts.prompt !== undefined ? { prompt: opts.prompt } : {}),
|
|
288
|
+
...(opts.fetchImpl ? { fetchImpl: opts.fetchImpl } : {}),
|
|
289
|
+
});
|
|
290
|
+
}
|
|
291
|
+
catch (err) {
|
|
292
|
+
// A QUEST THAT FAILS PAST STEP 1 STILL LEFT US HOLDING A KEY.
|
|
293
|
+
//
|
|
294
|
+
// Step 2 is the leg that faucets, accepts and spends, so by the time it can
|
|
295
|
+
// fail the party may already hold real CC. Letting the exception carry the
|
|
296
|
+
// only copy of its private key away turned a recoverable interruption into
|
|
297
|
+
// funds nobody can ever move. We write the key out and name the file in the
|
|
298
|
+
// error — deliberately NOT into wallet.json, which may hold another wallet
|
|
299
|
+
// whose own key must not be destroyed by an error path.
|
|
300
|
+
const rec = err instanceof QuestFundError ? err.recoverable : undefined;
|
|
301
|
+
if (!rec)
|
|
302
|
+
throw err;
|
|
303
|
+
let where;
|
|
304
|
+
try {
|
|
305
|
+
where = rescueKey(rec.secret, rec.party, rec.network);
|
|
306
|
+
}
|
|
307
|
+
catch (writeErr) {
|
|
308
|
+
throw new QuestFundError(`${err.message} — and the funded party's key could NOT be ` +
|
|
309
|
+
`written to disk (${writeErr instanceof Error ? writeErr.message : String(writeErr)}). Party ${rec.party} may hold CC that is now unreachable; capture ` +
|
|
310
|
+
`the key from this process before it exits.`, rec);
|
|
311
|
+
}
|
|
312
|
+
throw new QuestFundError(`${err.message} — the funded party's key was saved to ${where}. ` +
|
|
313
|
+
`Party ${rec.party} may already hold CC: run ` +
|
|
314
|
+
`\`canton-agent-wallet import --key-file ${where}\` in an empty wallet ` +
|
|
315
|
+
`home to take custody, then \`claim\`.`, rec);
|
|
316
|
+
}
|
|
170
317
|
const install = opts.installKey ??
|
|
171
318
|
(async (secret, relayUrl, network) => {
|
|
172
319
|
const key = agentKeyFromPrivatePem(secret);
|
package/dist/quest-fund.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quest-fund.js","sourceRoot":"","sources":["../src/quest-fund.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"quest-fund.js","sourceRoot":"","sources":["../src/quest-fund.ts"],"names":[],"mappings":"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"}
|
package/dist/relay-signer.d.ts
CHANGED
|
@@ -31,14 +31,29 @@ export declare function makeRelaySigner(wallet: AgentWallet, opts?: {
|
|
|
31
31
|
* Opt-in — a deployment whose facilitator predates the inline arm keeps the
|
|
32
32
|
* reference form by leaving this unset. */
|
|
33
33
|
inline?: boolean;
|
|
34
|
-
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
34
|
+
/**
|
|
35
|
+
* Optional spend ceiling: the MAX this signer will EVER sign for, **in CC**
|
|
36
|
+
* — the ledger Decimal, e.g. `"0.05"`. NOT the atomic integer the 402
|
|
37
|
+
* quotes.
|
|
38
|
+
*
|
|
39
|
+
* This doc used to say "the same unit the 402 quotes", which is wrong and
|
|
40
|
+
* wrong in the dangerous direction. The 402 carries `amount` as an atomic
|
|
41
|
+
* integer ("500000000" for 0.05 CC); the client converts it once
|
|
42
|
+
* (`wireAmountToLedgerDecimal`, the off-by-10^10 firewall) and hands the
|
|
43
|
+
* signer the ledger Decimal, which is what `input.amount` is here and what
|
|
44
|
+
* this compares against. A caller who followed the old sentence and wrote
|
|
45
|
+
* `"500000000"` meaning 0.05 CC got a ceiling of five hundred million CC:
|
|
46
|
+
* the guard was present, configured, and could never fire.
|
|
47
|
+
*
|
|
48
|
+
* Comparing in CC is the correct half — it bounds what is actually signed —
|
|
49
|
+
* so the fix is this sentence, not the comparison. Pinned by a test that
|
|
50
|
+
* fails if the unit ever drifts back.
|
|
51
|
+
*
|
|
52
|
+
* When set, the signer REFUSES to sign — fail closed, before any relay call
|
|
53
|
+
* — if the to-be-signed amount exceeds it. That is what makes the spend
|
|
54
|
+
* breaker load-bearing against an over-quoting (or MITM'd) merchant.
|
|
55
|
+
* Omitted → no ceiling.
|
|
56
|
+
*/
|
|
42
57
|
maxPaymentValue?: string;
|
|
43
58
|
/** Optional expected-payee pin: the ONLY recipient this signer will sign a
|
|
44
59
|
* transfer to (compared against `input.receiver`). When set, the signer
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-signer.d.ts","sourceRoot":"","sources":["../src/relay-signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAQhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY/D,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACrB,KAAK,GAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CACI,GACtC,OAAO,CAAC,CAAC,CAAC,CAeZ;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IACJ,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC;;;yEAGqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;gDAG4C;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB
|
|
1
|
+
{"version":3,"file":"relay-signer.d.ts","sourceRoot":"","sources":["../src/relay-signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAQhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY/D,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACrB,KAAK,GAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CACI,GACtC,OAAO,CAAC,CAAC,CAAC,CAeZ;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IACJ,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC;;;yEAGqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;gDAG4C;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;6EAIyE;IACzE,aAAa,CAAC,EAAE,MAAM,CAAC;CACnB,GACL,YAAY,CAkHd"}
|
package/dist/relay-signer.js
CHANGED
|
@@ -45,8 +45,10 @@ export function makeRelaySigner(wallet, opts = {}) {
|
|
|
45
45
|
// any relay call. Refuses to sign a merchant-quoted amount above the caller's
|
|
46
46
|
// ceiling or to a payee the caller did not authorize. Both pins are OPTIONAL;
|
|
47
47
|
// unset means the corresponding check is skipped (legacy behavior preserved).
|
|
48
|
-
// The amount is compared as a Number in the SAME unit as `input.amount
|
|
49
|
-
//
|
|
48
|
+
// The amount is compared as a Number in the SAME unit as `input.amount` —
|
|
49
|
+
// the ledger Decimal (CC), which is what the client hands the signer and what
|
|
50
|
+
// the balance fast-fail already uses (`Number(bal.cc) < Number(amount)`). The
|
|
51
|
+
// 402's atomic integer never reaches here.
|
|
50
52
|
const enforceSpendLimits = (to, amount) => {
|
|
51
53
|
if (opts.expectedPayTo !== undefined && to !== opts.expectedPayTo) {
|
|
52
54
|
throw new Error(`refusing to sign: payee ${to} does not match the expected payTo ` +
|
package/dist/relay-signer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-signer.js","sourceRoot":"","sources":["../src/relay-signer.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAI1D;;;;;;;iCAOiC;AACjC,MAAM,sBAAsB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAE/D,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAqB,EACrB,QAAuC,CAAC,EAAE,EAAE,EAAE,CAC5C,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEvC,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,OAAO,MAAM,GAAG,EAAE,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IACE,OAAO,GAAG,sBAAsB,CAAC,MAAM;gBACvC,wBAAwB,CAAC,GAAG,CAAC,EAC7B,CAAC;gBACD,MAAM,KAAK,CAAC,sBAAsB,CAAC,OAAO,CAAE,CAAC,CAAC;gBAC9C,SAAS;YACX,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,MAAmB,EACnB,
|
|
1
|
+
{"version":3,"file":"relay-signer.js","sourceRoot":"","sources":["../src/relay-signer.ts"],"names":[],"mappings":"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"}
|
package/dist/tx.d.ts
CHANGED
|
@@ -144,6 +144,7 @@ export declare function claimAll(relay: RelayClient, wallet: AgentWallet, opts?:
|
|
|
144
144
|
}>;
|
|
145
145
|
export declare function selfProvisionPreapproval(relay: RelayClient, wallet: AgentWallet, opts?: {
|
|
146
146
|
expiresAt?: string;
|
|
147
|
+
hashBinding?: HashBindingOptions;
|
|
147
148
|
}, sleep?: (ms: number) => Promise<void>): Promise<{
|
|
148
149
|
updateId: string;
|
|
149
150
|
}>;
|
package/dist/tx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../src/tx.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,
|
|
1
|
+
{"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../src/tx.ts"],"names":[],"mappings":"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"}
|
package/dist/tx.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { signHashB64 } from "./keys.js";
|
|
9
9
|
import { resolveHashBinding } from "./hash-binding.js";
|
|
10
|
-
import { assertHashBinding, assertPreparedTransferMatches, assertPreparedSelfPreapproval, assertPreparedAcceptMatches, } from "./verify-prepared.js";
|
|
10
|
+
import { assertHashBinding, assertPreparedTransferMatches, assertPreparedSelfPreapproval, PreparedTransferMismatchError, assertPreparedAcceptMatches, } from "./verify-prepared.js";
|
|
11
11
|
const TI_IFACE = "#splice-api-token-transfer-instruction-v1:Splice.Api.Token.TransferInstructionV1:TransferInstruction";
|
|
12
12
|
/**
|
|
13
13
|
* The instrument id the agent's self-custody wallet pays in: Canton Coin is the
|
|
@@ -417,7 +417,35 @@ export async function selfProvisionPreapproval(relay, wallet, opts, sleep = (ms)
|
|
|
417
417
|
const attempt = async () => {
|
|
418
418
|
const prep = await relay.preapprovalSelfPrepare(wallet.party, opts?.expiresAt);
|
|
419
419
|
// Never sign a relay tx that does anything other than create OUR preapproval.
|
|
420
|
-
|
|
420
|
+
// `prep.expiresAt` is the relay's OWN statement of the horizon it built.
|
|
421
|
+
// Passing it back binds the bytes to that statement: a relay that says 90
|
|
422
|
+
// days and encodes ten years is caught, and a caller who asked for a
|
|
423
|
+
// specific date gets it checked below.
|
|
424
|
+
assertPreparedSelfPreapproval(prep.preparedTransaction, wallet.party, prep.expiresAt);
|
|
425
|
+
if (opts?.expiresAt !== undefined && prep.expiresAt !== opts.expiresAt) {
|
|
426
|
+
throw new PreparedTransferMismatchError(`self-preapproval: asked for expiresAt ${JSON.stringify(opts.expiresAt)} but the relay ` +
|
|
427
|
+
`built ${JSON.stringify(prep.expiresAt)} — refusing to sign`);
|
|
428
|
+
}
|
|
429
|
+
// ...and never sign a hash that is not the hash OF THOSE BYTES.
|
|
430
|
+
//
|
|
431
|
+
// Validating the bytes and then signing the relay's `txHash` is two
|
|
432
|
+
// unconnected acts: a lying relay sends honest bytes — which pass the
|
|
433
|
+
// assertion above — together with the hash of a completely different
|
|
434
|
+
// transaction, and the wallet signs that other transaction. Every other
|
|
435
|
+
// signing path in this file binds the two (lines 120 and 336); this was
|
|
436
|
+
// the one that did not, which made the structural check above decorative
|
|
437
|
+
// on exactly the path where the wallet signs with its own key and no
|
|
438
|
+
// facilitator delegation stands in the way.
|
|
439
|
+
// `?? resolveHashBinding()`, NOT `?? {}`. The `{}` form is correct only for
|
|
440
|
+
// the INNER helpers (prepareSignExecute, the transfer-factory pay path),
|
|
441
|
+
// whose public entry points — claimAll, makeRelaySigner, withdraw — have
|
|
442
|
+
// already resolved a real recompute before calling down. This function IS a
|
|
443
|
+
// public entry point: every caller (the `preapproval` CLI command and all
|
|
444
|
+
// the e2e drivers) passes no hashBinding, so `{}` here means "no recompute
|
|
445
|
+
// available" and the binding assert fails closed on the honest path —
|
|
446
|
+
// turning a silent blind-sign into a hard-broken command. resolveHashBinding
|
|
447
|
+
// supplies the participant-conformant V2 recompute by default.
|
|
448
|
+
await assertHashBinding(prep.preparedTransaction, prep.txHash, opts?.hashBinding ?? resolveHashBinding());
|
|
421
449
|
const signature = signHashB64(prep.txHash, wallet.privateKeyPkcs8Pem);
|
|
422
450
|
return relay.preapprovalSelfCommit({
|
|
423
451
|
party: wallet.party,
|
package/dist/tx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx.js","sourceRoot":"","sources":["../src/tx.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tx.js","sourceRoot":"","sources":["../src/tx.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { decodePrepared, extractTransfer, canonicalAmount, assertPreparedTransferMatches, assertPreparedAcceptMatches, PreparedDecodeError, PreparedTransferMismatchError, } from "@ftptech/x402-canton-core";
|
|
1
|
+
export { decodePrepared, extractTransfer, extractSelfPreapproval, canonicalAmount, assertPreparedTransferMatches, assertPreparedAcceptMatches, PreparedDecodeError, PreparedTransferMismatchError, } from "@ftptech/x402-canton-core";
|
|
2
2
|
export type { DecodedPrepared, DecodedNode, DecodedExercise, DecodedInputContract, PreparedTransferExpectation, PreparedAcceptExpectation, } from "@ftptech/x402-canton-core";
|
|
3
3
|
export interface HashBindingOptions {
|
|
4
4
|
/**
|
|
@@ -114,11 +114,16 @@ export declare function assertOnboardingTopologyBindsKey(onboardingTransactionsB
|
|
|
114
114
|
* and are fixed by the public, audited Splice choice body — the signature
|
|
115
115
|
* authorizes the ROOT choice, whose effects are not relay-controlled.
|
|
116
116
|
*
|
|
117
|
-
*
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
*
|
|
117
|
+
* 3. `receiver` and `provider` in the choice argument are BOTH `party`. Without
|
|
118
|
+
* this a hostile relay made the merchant pay to create a preapproval naming
|
|
119
|
+
* somebody else — the merchant burns the fee, ends up without the
|
|
120
|
+
* preapproval it believes it has, and every payment to it keeps failing
|
|
121
|
+
* while each retry burns another fee. Read positionally against a REAL
|
|
122
|
+
* MainNet capture (see `extractSelfPreapproval`), not an invented fixture.
|
|
123
|
+
* 4. `expiresAt` equals `expectedExpiresAt` when the caller supplies one. The
|
|
124
|
+
* relay chooses this value (defaulting to 90 days) and echoes it in the
|
|
125
|
+
* prepare response; passing that echo back here is what binds the bytes to
|
|
126
|
+
* the terms the relay stated. Omitted → unchecked, exactly as before.
|
|
122
127
|
*/
|
|
123
|
-
export declare function assertPreparedSelfPreapproval(preparedTransactionB64: string, party: string): void;
|
|
128
|
+
export declare function assertPreparedSelfPreapproval(preparedTransactionB64: string, party: string, expectedExpiresAt?: string): void;
|
|
124
129
|
//# sourceMappingURL=verify-prepared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-prepared.d.ts","sourceRoot":"","sources":["../src/verify-prepared.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"verify-prepared.d.ts","sourceRoot":"","sources":["../src/verify-prepared.ts"],"names":[],"mappings":"AAmHA,OAAO,EACL,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,6BAA6B,EAC7B,2BAA2B,EAC3B,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AAMnC,MAAM,WAAW,kBAAkB;IACjC;;;;;;;;;;;;;;;;;OAiBG;IACH,aAAa,CAAC,EAAE,CAAC,sBAAsB,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAC7E;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,iFAAiF;AACjF,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,OAAO,EAAE,MAAM;CAI5B;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,iBAAiB,CACrC,sBAAsB,EAAE,MAAM,EAC9B,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,kBAAuB,GAC5B,OAAO,CAAC,IAAI,CAAC,CA4Df;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,sBAAsB,EAAE,MAAM,EAC9B,OAAO,EAAE,MAAM,GACd,OAAO,CAIT;AAoDD;6EAC6E;AAC7E,qBAAa,+BAAgC,SAAQ,KAAK;gBAC5C,OAAO,EAAE,MAAM;CAI5B;AAED,uEAAuE;AACvE,MAAM,WAAW,6BAA6B;IAC5C,+EAA+E;IAC/E,gBAAgB,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AA+BD;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,yBAAyB,EAAE,MAAM,EAAE,EACnC,MAAM,EAAE,6BAA6B,GACpC,IAAI,CA0EN;AAkND;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,6BAA6B,CAC3C,sBAAsB,EAAE,MAAM,EAC9B,KAAK,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,MAAM,GACzB,IAAI,CA6DN"}
|
package/dist/verify-prepared.js
CHANGED
|
@@ -104,10 +104,13 @@
|
|
|
104
104
|
*/
|
|
105
105
|
import { createHash, createPublicKey, timingSafeEqual } from "node:crypto";
|
|
106
106
|
import { decodeTopologyTransaction } from "@canton-network/core-tx-visualizer";
|
|
107
|
+
/* Locally-used core symbols. The re-export block below is a re-export, not an
|
|
108
|
+
* import, so a name needed by code IN this file has to be bound here too. */
|
|
109
|
+
import { extractSelfPreapproval } from "@ftptech/x402-canton-core";
|
|
107
110
|
/* The validator moved to @ftptech/x402-canton-core (prepared-transfer.ts) so the
|
|
108
111
|
* facilitator can reuse it for inline payloads. Re-exported here so every
|
|
109
112
|
* existing import of ./verify-prepared.js keeps working unchanged. */
|
|
110
|
-
export { decodePrepared, extractTransfer, canonicalAmount, assertPreparedTransferMatches, assertPreparedAcceptMatches, PreparedDecodeError, PreparedTransferMismatchError, } from "@ftptech/x402-canton-core";
|
|
113
|
+
export { decodePrepared, extractTransfer, extractSelfPreapproval, canonicalAmount, assertPreparedTransferMatches, assertPreparedAcceptMatches, PreparedDecodeError, PreparedTransferMismatchError, } from "@ftptech/x402-canton-core";
|
|
111
114
|
import { decodePrepared, PreparedDecodeError, PreparedTransferMismatchError, } from "@ftptech/x402-canton-core";
|
|
112
115
|
/** Thrown when a supplied `recomputeHash` cannot faithfully encode the bytes. */
|
|
113
116
|
export class PreparedHashUnavailableError extends Error {
|
|
@@ -559,13 +562,18 @@ const SELF_PREAPPROVAL_CHOICE = "AmuletRules_CreateTransferPreapproval";
|
|
|
559
562
|
* and are fixed by the public, audited Splice choice body — the signature
|
|
560
563
|
* authorizes the ROOT choice, whose effects are not relay-controlled.
|
|
561
564
|
*
|
|
562
|
-
*
|
|
563
|
-
*
|
|
564
|
-
*
|
|
565
|
-
*
|
|
566
|
-
*
|
|
565
|
+
* 3. `receiver` and `provider` in the choice argument are BOTH `party`. Without
|
|
566
|
+
* this a hostile relay made the merchant pay to create a preapproval naming
|
|
567
|
+
* somebody else — the merchant burns the fee, ends up without the
|
|
568
|
+
* preapproval it believes it has, and every payment to it keeps failing
|
|
569
|
+
* while each retry burns another fee. Read positionally against a REAL
|
|
570
|
+
* MainNet capture (see `extractSelfPreapproval`), not an invented fixture.
|
|
571
|
+
* 4. `expiresAt` equals `expectedExpiresAt` when the caller supplies one. The
|
|
572
|
+
* relay chooses this value (defaulting to 90 days) and echoes it in the
|
|
573
|
+
* prepare response; passing that echo back here is what binds the bytes to
|
|
574
|
+
* the terms the relay stated. Omitted → unchecked, exactly as before.
|
|
567
575
|
*/
|
|
568
|
-
export function assertPreparedSelfPreapproval(preparedTransactionB64, party) {
|
|
576
|
+
export function assertPreparedSelfPreapproval(preparedTransactionB64, party, expectedExpiresAt) {
|
|
569
577
|
const decoded = decodePrepared(preparedTransactionB64);
|
|
570
578
|
const rootNodes = decoded.nodes.filter((n) => decoded.roots.includes(n.nodeId));
|
|
571
579
|
if (rootNodes.length !== 1) {
|
|
@@ -582,5 +590,33 @@ export function assertPreparedSelfPreapproval(preparedTransactionB64, party) {
|
|
|
582
590
|
throw new PreparedTransferMismatchError(`self-preapproval verify: prepared act_as ${JSON.stringify(decoded.actAs)} is not ` +
|
|
583
591
|
`exactly [${party}] — refusing to sign`);
|
|
584
592
|
}
|
|
593
|
+
const chosen = rootNodes[0]?.exercise?.chosenValue;
|
|
594
|
+
if (chosen === undefined) {
|
|
595
|
+
throw new PreparedTransferMismatchError("self-preapproval verify: the root exercise carries no choice argument — refusing to sign");
|
|
596
|
+
}
|
|
597
|
+
const arg = extractSelfPreapproval(chosen);
|
|
598
|
+
for (const [field, value] of [
|
|
599
|
+
["receiver", arg.receiver],
|
|
600
|
+
["provider", arg.provider],
|
|
601
|
+
]) {
|
|
602
|
+
if (value !== party) {
|
|
603
|
+
throw new PreparedTransferMismatchError(`self-preapproval verify: choice argument ${field} is ${JSON.stringify(value)}, ` +
|
|
604
|
+
`not ${JSON.stringify(party)} — refusing to sign (this would pay to create a ` +
|
|
605
|
+
`preapproval for somebody else)`);
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
if (expectedExpiresAt !== undefined) {
|
|
609
|
+
const wantMs = Date.parse(expectedExpiresAt);
|
|
610
|
+
if (!Number.isFinite(wantMs)) {
|
|
611
|
+
throw new PreparedTransferMismatchError(`self-preapproval verify: expected expiresAt ${JSON.stringify(expectedExpiresAt)} is ` +
|
|
612
|
+
`not a parseable timestamp — refusing to sign`);
|
|
613
|
+
}
|
|
614
|
+
// Daml `Time` is µs since epoch; the expectation is milliseconds.
|
|
615
|
+
const wantMicros = (BigInt(wantMs) * 1000n).toString();
|
|
616
|
+
if (arg.expiresAtMicros !== wantMicros) {
|
|
617
|
+
throw new PreparedTransferMismatchError(`self-preapproval verify: choice argument expiresAt is ${arg.expiresAtMicros}µs but ` +
|
|
618
|
+
`${wantMicros}µs was stated (${expectedExpiresAt}) — refusing to sign`);
|
|
619
|
+
}
|
|
620
|
+
}
|
|
585
621
|
}
|
|
586
622
|
//# sourceMappingURL=verify-prepared.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-prepared.js","sourceRoot":"","sources":["../src/verify-prepared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuGG;AACH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAG/E;;sEAEsE;AACtE,OAAO,EACL,cAAc,EACd,eAAe,EACf,eAAe,EACf,6BAA6B,EAC7B,2BAA2B,EAC3B,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AASnC,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AAqCnC,iFAAiF;AACjF,MAAM,OAAO,4BAA6B,SAAQ,KAAK;IACrD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,8BAA8B,CAAC;IAC7C,CAAC;CACF;AAED,+EAA+E;AAC/E,SAAS,oBAAoB,CAAC,CAAS,EAAE,CAAS;IAChD,IAAI,EAAU,CAAC;IACf,IAAI,EAAU,CAAC;IACf,IAAI,CAAC;QACH,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC9B,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7D,OAAO,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,sBAA8B,EAC9B,OAAe,EACf,OAA2B,EAAE;IAE7B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,6BAA6B,CACrC,uFAAuF,CACxF,CAAC;IACJ,CAAC;IACD,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,6BAA6B,CAAC,mDAAmD,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,6BAA6B,CAAC,sDAAsD,CAAC,CAAC;IAClG,CAAC;IACD,8EAA8E;IAC9E,6DAA6D;IAC7D,cAAc,CAAC,sBAAsB,CAAC,CAAC;IAEvC,mCAAmC;IACnC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,IAAI,KAAa,CAAC;QAClB,IAAI,CAAC;YACH,sEAAsE;YACtE,wEAAwE;YACxE,mEAAmE;YACnE,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,wEAAwE;YACxE,qEAAqE;YACrE,MAAM,IAAI,6BAA6B,CACrC,sEAAsE;gBACpE,oBAAqB,CAAW,CAAC,OAAO,sBAAsB,CACjE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,6BAA6B,CACrC,0EAA0E;gBACxE,uEAAuE;gBACvE,sDAAsD,CACzD,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,gEAAgE;IAC1E,CAAC;IAED,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;QACjC,OAAO,CAAC,oDAAoD;IAC9D,CAAC;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,oDAAoD;IACpD,MAAM,IAAI,6BAA6B,CACrC,4EAA4E;QAC1E,2EAA2E;QAC3E,4EAA4E;QAC5E,kEAAkE;QAClE,6EAA6E;QAC7E,0EAA0E,CAC7E,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CACtC,sBAA8B,EAC9B,OAAe;IAEf,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnE,OAAO,MAAM,KAAK,OAAO,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8EAgD8E;AAE9E;6EAC6E;AAC7E,MAAM,OAAO,+BAAgC,SAAQ,KAAK;IACxD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAChD,CAAC;CACF;AAYD;;2CAE2C;AAC3C,SAAS,mBAAmB,CAAC,OAAe;IAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,eAAe,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;YAC5E,MAAM,EAAE,KAAK;SACd,CAAmB,CAAC;QACrB,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC;YACV,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;YAC5C,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE;gBAAE,OAAO,GAAG,CAAC;QACpC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oCAAoC;IACtC,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;uEAEuE;AACvE,SAAS,cAAc,CAAC,KAAa;IACnC,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC,CAAC,8BAA8B;IAC9D,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAChC,OAAO,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACxC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAC9C,yBAAmC,EACnC,MAAqC;IAErC,wCAAwC;IACxC,IACE,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ;QAC/C,MAAM,CAAC,oBAAoB,CAAC,MAAM,KAAK,CAAC,EACxC,CAAC;QACD,MAAM,IAAI,+BAA+B,CACvC,iFAAiF;YAC/E,iEAAiE,CACpE,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,iFAAiF;IACjF,MAAM,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACrB,MAAM,IAAI,+BAA+B,CACvC,uCAAuC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa;YAC9E,iEAAiE,CACpE,CAAC;IACJ,CAAC;IACD,IAAI,EAAE,KAAK,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACvC,MAAM,IAAI,+BAA+B,CACvC,kCAAkC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,sCAAsC;YACxF,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,8CAA8C;YAC5F,iGAAiG,CACpG,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,2EAA2E;IAC3E,IAAI,CAAC,yBAAyB,IAAI,yBAAyB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,+BAA+B,CACvC,wEAAwE;YACtE,0DAA0D,CAC7D,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC5D,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,+BAA+B,CACvC,gGAAgG,CACjG,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,KAAK,MAAM,KAAK,IAAI,yBAAyB,EAAE,CAAC;QAC9C,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACnD,QAAQ,GAAG,IAAI,CAAC;YAChB,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,+BAA+B,CACvC,uFAAuF;YACrF,wFAAwF;YACxF,6DAA6D,CAChE,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,8EAA8E;IAC9E,+EAA+E;IAC/E,uEAAuE;IACvE,6EAA6E;IAC7E,gFAAgF;IAChF,6EAA6E;IAC7E,gFAAgF;IAChF,iCAAiC;IACjC,sCAAsC,CAAC,yBAAyB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACpF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8EAiC8E;AAE9E;;;;oDAIoD;AACpD,SAAS,sBAAsB,CAAC,EAAyC;IACvE,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE;QAAE,OAAO,SAAS,CAAC;IACvE,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACtC,6EAA6E;IAC7E,uEAAuE;IACvE,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,sCAAsC,CAC7C,yBAAmC,EACnC,MAAqC,EACrC,WAAmB;IAEnB,+EAA+E;IAC/E,MAAM,UAAU,GAAG,CAAC,EAAyC,EAAW,EAAE;QACxE,MAAM,KAAK,GAAG,sBAAsB,CAAC,EAAE,CAAC,CAAC;QACzC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,IAAI,eAAe,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC3F,CAAC,CAAC;IAEF,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,KAAK,MAAM,KAAK,IAAI,yBAAyB,EAAE,CAAC;QAC9C,IAAI,EAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,EAAE,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,+BAA+B,CACvC,uEAAuE;gBACrE,wBAAyB,CAAW,CAAC,OAAO,uBAAuB;gBACnE,qEAAqE,CACxE,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QACpC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,IAAI,+BAA+B,CACvC,6EAA6E;gBAC3E,qEAAqE,CACxE,CAAC;QACJ,CAAC;QAED,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;YAC1B,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,MAAM,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;gBACpC,aAAa,GAAG,IAAI,CAAC;gBACrB,iDAAiD;gBACjD,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;oBAC7B,MAAM,IAAI,+BAA+B,CACvC,4CAA4C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW;wBAC5E,oBAAoB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB;wBACtE,kEAAkE,CACrE,CAAC;gBACJ,CAAC;gBACD,uBAAuB;gBACvB,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;oBACtB,MAAM,IAAI,+BAA+B,CACvC,8CAA8C,CAAC,CAAC,SAAS,kBAAkB;wBACzE,8EAA8E,CACjF,CAAC;gBACJ,CAAC;gBACD,sEAAsE;gBACtE,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,MAAM,IAAI,+BAA+B,CACvC,wCAAwC,CAAC,CAAC,WAAW,CAAC,MAAM,gBAAgB;wBAC1E,sEAAsE;wBACtE,iEAAiE,CACpE,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClC,MAAM,IAAI,+BAA+B,CACvC,0EAA0E;wBACxE,uEAAuE;wBACvE,6DAA6D,CAChE,CAAC;gBACJ,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,MAAM,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;gBACtC,0EAA0E;gBAC1E,wEAAwE;gBACxE,yDAAyD;gBACzD,IAAI,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,oBAAoB,EAAE,CAAC;oBAChD,MAAM,IAAI,+BAA+B,CACvC,mDAAmD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG;wBAC/E,gCAAgC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,KAAK;wBAChF,2EAA2E,CAC9E,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC7B,MAAM,IAAI,+BAA+B,CACvC,2EAA2E;wBACzE,wEAAwE;wBACxE,sCAAsC,CACzC,CAAC;gBACJ,CAAC;gBACD,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,MAAM;YACR,CAAC;YAED,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,MAAM,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;gBACrC,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;oBAC7B,MAAM,IAAI,+BAA+B,CACvC,6CAA6C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW;wBAC7E,oBAAoB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CACxE,CAAC;gBACJ,CAAC;gBACD,yEAAyE;gBACzE,0EAA0E;gBAC1E,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;oBACpB,MAAM,IAAI,+BAA+B,CACvC,+CAA+C,CAAC,CAAC,SAAS,oBAAoB;wBAC5E,sEAAsE,CACzE,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACnD,MAAM,IAAI,+BAA+B,CACvC,4EAA4E;wBAC1E,sDAAsD,CACzD,CAAC;gBACJ,CAAC;gBACD,cAAc,GAAG,IAAI,CAAC;gBACtB,MAAM;YACR,CAAC;YAED,OAAO,CAAC,CAAC,CAAC;gBACR,uEAAuE;gBACvE,uEAAuE;gBACvE,MAAM,IAAI,+BAA+B,CACvC,2EAA2E;oBACzE,IAAI,OAAO,CAAC,SAAS,iDAAiD;oBACtE,oEAAoE;oBACpE,qEAAqE,CACxE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,iFAAiF;IACjF,6EAA6E;IAC7E,uEAAuE;IACvE,gFAAgF;IAChF,iFAAiF;IACjF,iFAAiF;IACjF,iFAAiF;IACjF,iFAAiF;IACjF,gFAAgF;IAChF,8EAA8E;IAC9E,wDAAwD;IACxD,IAAI,CAAC,aAAa,IAAI,CAAC,kBAAkB,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7D,MAAM,IAAI,+BAA+B,CACvC,sEAAsE;YACpE,8EAA8E;YAC9E,iFAAiF;YACjF,iDAAiD,CACpD,CAAC;IACJ,CAAC;AACH,CAAC;AAGD,qFAAqF;AACrF,MAAM,uBAAuB,GAAG,uCAAuC,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,6BAA6B,CAC3C,sBAA8B,EAC9B,KAAa;IAEb,MAAM,OAAO,GAAG,cAAc,CAAC,sBAAsB,CAAC,CAAC;IAEvD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAChF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,6BAA6B,CACrC,qDAAqD,SAAS,CAAC,MAAM,QAAQ;YAC3E,iFAAiF;YACjF,sBAAsB,CACzB,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC;IACpD,IAAI,UAAU,KAAK,uBAAuB,EAAE,CAAC;QAC3C,MAAM,IAAI,6BAA6B,CACrC,oDAAoD,uBAAuB,GAAG;YAC5E,iBAAiB,IAAI,CAAC,SAAS,CAAC,UAAU,IAAI,IAAI,CAAC,sBAAsB,CAC5E,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;QAC7D,MAAM,IAAI,6BAA6B,CACrC,4CAA4C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU;YACjF,YAAY,KAAK,sBAAsB,CAC1C,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"verify-prepared.js","sourceRoot":"","sources":["../src/verify-prepared.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ftptech/canton-agent-wallet",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.8.
|
|
4
|
+
"version": "0.8.1",
|
|
5
5
|
"description": "Self-custody Canton wallet + x402 autopay for AI agents. One CLI: create, pay, balance, withdraw, export, import. Backs the canton-x402-agent skill.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"author": "FTP team",
|
|
@@ -19,9 +19,9 @@
|
|
|
19
19
|
"@canton-network/core-tx-visualizer": "~1.4.0",
|
|
20
20
|
"@canton-network/core-ledger-proto": "~1.4.0",
|
|
21
21
|
"undici": "^7.1.0",
|
|
22
|
-
"@ftptech/x402-canton-core": "^0.7.
|
|
23
|
-
"@ftptech/x402-canton-ledger": "^0.2.
|
|
24
|
-
"@ftptech/x402-canton-client": "^0.7.
|
|
22
|
+
"@ftptech/x402-canton-core": "^0.7.1",
|
|
23
|
+
"@ftptech/x402-canton-ledger": "^0.2.1",
|
|
24
|
+
"@ftptech/x402-canton-client": "^0.7.1"
|
|
25
25
|
},
|
|
26
26
|
"publishConfig": {
|
|
27
27
|
"access": "public"
|