@ftptech/canton-agent-wallet 1.6.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -23,7 +23,6 @@ Bin: `canton-agent-wallet`.
23
23
 
24
24
  ```
25
25
  canton-agent-wallet create --relay-url <url> # generate + onboard a self-custody wallet (idempotent)
26
- canton-agent-wallet fund --relay-url <url> --pay-proxy-url <url> # bootstrap a FUNDED wallet via the pay-proxy quest (see below)
27
26
  canton-agent-wallet address # print the party id (fund this)
28
27
  canton-agent-wallet balance # print the balance of every instrument the wallet holds (CC + any CIP-56 registry token, e.g. USDCx)
29
28
  canton-agent-wallet claim # accept incoming transfers — CC and registry tokens (expired offers are skipped; one bad offer never blocks the rest)
@@ -42,26 +41,6 @@ none is given. `address`, `balance`, `claim`, `withdraw` and `export` reuse the
42
41
  relay stored in the wallet at `create` time. The current FTP facilitator is
43
42
  `https://facilitator.ftptech.xyz`.
44
43
 
45
- ### `fund`: bootstrap a funded wallet through the quest
46
-
47
- The facilitator's raw faucet is locked (internal callers only), so out-of-box
48
- funding goes through the pay-proxy QUEST, which binds the grant to a real x402
49
- payment: the pay-proxy mints a wallet, grants it CC, immediately spends the bulk
50
- on a CanTrust image call, and returns the wallet KEY plus the small change (and
51
- the image URL). `fund` runs that flow and IMPORTS the returned key, so the agent
52
- self-custodies the funded wallet afterwards (the pay-proxy keeps nothing).
53
-
54
- ```
55
- canton-agent-wallet fund --relay-url https://facilitator.ftptech.xyz \
56
- --pay-proxy-url https://pay.ftptech.xyz [--prompt "an image prompt"]
57
- ```
58
-
59
- `--pay-proxy-url` (or `CANTON_AGENT_PAY_PROXY_URL`) is required. NO-CLOBBER: if a
60
- wallet already exists AND holds a balance, it is never replaced — `fund` reports
61
- it and exits. Only an absent or empty wallet home is bootstrapped. NOTE the
62
- imported wallet is a fresh server-minted party (bootstrapping replaces an empty
63
- wallet's party); back up any key you care about with `export` first.
64
-
65
44
  ### Merchant onboarding: self-provision a `TransferPreapproval`
66
45
 
67
46
  To be paid via the transfer-factory path, a merchant must hold a live
@@ -146,6 +125,12 @@ so the first-run flow is:
146
125
  the printed party id → `claim` → `balance`. Funding once is the only human step,
147
126
  exactly like funding an EVM agent.
148
127
 
128
+ A new wallet is sent a starter grant by the relay (0.2 CC on MainNet). `create`
129
+ waits for it and accepts it, so the wallet can pay small amounts straight away.
130
+ In code, `ensureWallet` does the same by default; `starterGrant: "background"`
131
+ returns at once and accepts it afterwards, and `"leave"` leaves the offer for
132
+ `claim`.
133
+
149
134
  ### Swap: CC ↔ CIP-56 registry tokens
150
135
 
151
136
  `swap` exchanges CC for a DA Registry token (USDCx, CBTC, USDXLR, cETH, eXAG,
package/dist/cli.js CHANGED
@@ -64,7 +64,6 @@ import { mergeHoldings } from "./merge.js";
64
64
  import { withdraw } from "./withdraw.js";
65
65
  import { executeSwap } from "./swap.js";
66
66
  import { resolveSwapIntent, resolveSwapTicket, swapFloorNotes, parseSwapVenue, parseSlippagePct, SWAP_MAX_FEE_CC, } from "./swap-route.js";
67
- import { fundViaQuest } from "./quest-fund.js";
68
67
  import { installProxyFromEnv } from "./proxy.js";
69
68
  import { flag, boolFlag, intFlag, positionals, resolveNetwork, resolveRelayUrl, MISSING_RELAY_HELP, withdrawAmount, preapprovalMode, } from "./cli-args.js";
70
69
  import { resolveTrustedDsoParty } from "./trusted-dso.js";
@@ -98,13 +97,30 @@ async function main() {
98
97
  switch (cmd) {
99
98
  case "create": {
100
99
  const relayUrl = requireRelay(args);
100
+ if (!loadWallet())
101
+ console.error("creating the wallet (takes about half a minute)…");
102
+ // A relay that funds new wallets sends a starter grant; ensureWallet
103
+ // waits for it and accepts it before returning.
104
+ const grant = {};
101
105
  const w = await ensureWallet({
102
106
  relayUrl,
103
107
  network: resolveNetwork(args),
104
108
  apiKey: API_KEY,
109
+ onStarterGrant: (r) => {
110
+ grant.r = r;
111
+ },
105
112
  });
113
+ const g = grant.r;
114
+ const starterLine = !g
115
+ ? ""
116
+ : g.status === "accepted"
117
+ ? ` starter: ${g.amountCc} CC received — the wallet can pay right away\n`
118
+ : g.status === "not_arrived"
119
+ ? ` starter: ${g.amountCc} CC is on its way — run \`canton-agent-wallet claim\` in a minute\n`
120
+ : ` starter: ${g.amountCc} CC arrived but accepting it failed (${g.error ?? "unknown error"}) — run \`canton-agent-wallet claim\`\n`;
106
121
  console.log(`wallet ready (${w.network})\n` +
107
122
  ` party: ${w.party}\n` +
123
+ starterLine +
108
124
  ` fund me: send CC to that party id, then run: canton-agent-wallet claim\n` +
109
125
  ` keyfile: ~/.canton-agent/wallet.json <- this IS your wallet; back it up\n` +
110
126
  ` By creating a wallet you accept the Terms of Service: https://ftp-tech.mintlify.site/terms`);
@@ -610,46 +626,9 @@ async function main() {
610
626
  ` run: canton-agent-wallet balance`);
611
627
  break;
612
628
  }
613
- case "fund": {
614
- // Bootstrap a funded self-custody wallet through the hosted quest (mint →
615
- // grant → a real CanTrust payment → small change), then install the key so
616
- // you own it. The bare faucet is not a farmable free-CC spigot, so this is
617
- // the out-of-box funding path. NO-CLOBBER: an already-funded wallet is left
618
- // untouched.
619
- const relayUrl = requireRelay(args);
620
- const payProxyUrl = flag(args, "--pay-proxy-url") ?? process.env.CANTON_AGENT_PAY_PROXY_URL;
621
- if (!payProxyUrl)
622
- return fail("usage: canton-agent-wallet fund --pay-proxy-url <https://pay...> [--prompt <text>]\n" +
623
- " (or set CANTON_AGENT_PAY_PROXY_URL). Funds via the quest, which binds the\n" +
624
- " grant to a real payment so it cannot be farmed.");
625
- const prompt = flag(args, "--prompt");
626
- let r;
627
- try {
628
- r = await fundViaQuest({
629
- payProxyUrl,
630
- relayUrl,
631
- ...(prompt ? { prompt } : {}),
632
- });
633
- }
634
- catch (e) {
635
- return fail(`funding via the quest failed (${e instanceof Error ? e.message : String(e)}).\n` +
636
- " ask your owner to send CC to your party, then run: canton-agent-wallet claim");
637
- }
638
- if (r.kind === "already_funded") {
639
- console.log(`wallet already funded: ${r.balanceCc} CC for ${r.party}. No action taken.`);
640
- }
641
- else {
642
- const img = r.image ? `\n demo image: ${r.image}` : "";
643
- console.log(`funded a self-custody wallet via the quest (${r.wallet.network})\n` +
644
- ` party: ${r.wallet.party}\n` +
645
- ` balance: ${r.balanceCc ?? "?"} CC (grant minus the on-ledger payment)${img}`);
646
- }
647
- break;
648
- }
649
629
  default:
650
- console.error("canton-agent-wallet: create | address | balance | claim | fund --pay-proxy-url <url> | merge [--target <n>] [--batch <n>] [--max-rounds <n>] [--dry-run] [--yes] [--admin <registrar> --id <instrument>] | preapproval [--status] [--admin <DSO>] [--operator-token <t>] [--days <n>] [--expires-at <iso>] | pay [--asset <symbol>] <url> | swap --in <SYM> --out <SYM> --amount <n> [--venue cantex|tradecraft|auto] [--slippage <pct>] [--direct] [--no-wait] [--max-fee <cc>] [--swap-merchant <party>] [--no-preapprove] | withdraw --to <party> [--amount <n>] [--admin <registrar> --id <instrument>] | export | import\n" +
651
- " relay required for create/pay/import/fund: --relay-url <url> or CANTON_AGENT_RELAY_URL\n" +
652
- " fund = bootstrap a funded wallet via the hosted quest (--pay-proxy-url or CANTON_AGENT_PAY_PROXY_URL).\n" +
630
+ console.error("canton-agent-wallet: create | address | balance | claim | merge [--target <n>] [--batch <n>] [--max-rounds <n>] [--dry-run] [--yes] [--admin <registrar> --id <instrument>] | preapproval [--status] [--admin <DSO>] [--operator-token <t>] [--days <n>] [--expires-at <iso>] | pay [--asset <symbol>] <url> | swap --in <SYM> --out <SYM> --amount <n> [--venue cantex|tradecraft|auto] [--slippage <pct>] [--direct] [--no-wait] [--max-fee <cc>] [--swap-merchant <party>] [--no-preapprove] | withdraw --to <party> [--amount <n>] [--admin <registrar> --id <instrument>] | export | import\n" +
631
+ " relay required for create/pay/import: --relay-url <url> or CANTON_AGENT_RELAY_URL\n" +
653
632
  " preapproval = merchant TransferPreapproval setup for the transfer-factory (V3, 1-tx) path (--status to just check).");
654
633
  process.exit(cmd ? 1 : 0);
655
634
  }
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
@@ -2,6 +2,7 @@ export * from "./keys.js";
2
2
  export * from "./store.js";
3
3
  export * from "./relay-client.js";
4
4
  export * from "./onboard.js";
5
+ export * from "./starter-grant.js";
5
6
  export * from "./relay-signer.js";
6
7
  export * from "./tx.js";
7
8
  export * from "./merge.js";
@@ -11,9 +12,7 @@ export * from "./hash-binding.js";
11
12
  export * from "./canton-hash.js";
12
13
  export * from "./trusted-dso.js";
13
14
  export * from "./registry-parties.js";
14
- export * from "./quest-fund.js";
15
15
  export * from "./swap.js";
16
16
  export * from "./swap-route.js";
17
17
  export { assertPreparedTransferMatches, assertHashBinding, assertOnboardingTopologyBindsKey, decodePrepared, extractTransfer, PreparedDecodeError, PreparedTransferMismatchError, PreparedHashUnavailableError, OnboardingTopologyMismatchError, type HashBindingOptions, type PreparedTransferExpectation, type OnboardingTopologyExpectation, } from "./verify-prepared.js";
18
- export { fundViaQuest, QuestFundError } from "./quest-fund.js";
19
18
  //# sourceMappingURL=index.d.ts.map
@@ -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,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAGhC,cAAc,WAAW,CAAC;AAC1B,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"}
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,oBAAoB,CAAC;AACnC,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,uBAAuB,CAAC;AAGtC,cAAc,WAAW,CAAC;AAC1B,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"}
package/dist/index.js CHANGED
@@ -2,6 +2,7 @@ export * from "./keys.js";
2
2
  export * from "./store.js";
3
3
  export * from "./relay-client.js";
4
4
  export * from "./onboard.js";
5
+ export * from "./starter-grant.js";
5
6
  export * from "./relay-signer.js";
6
7
  export * from "./tx.js";
7
8
  export * from "./merge.js";
@@ -11,14 +12,9 @@ export * from "./hash-binding.js";
11
12
  export * from "./canton-hash.js";
12
13
  export * from "./trusted-dso.js";
13
14
  export * from "./registry-parties.js";
14
- export * from "./quest-fund.js";
15
15
  // The swap primitive + its venue routing. Exported so the MCP `swap` tool runs
16
16
  // the SAME routing as the CLI instead of a second copy that drifts.
17
17
  export * from "./swap.js";
18
18
  export * from "./swap-route.js";
19
19
  export { assertPreparedTransferMatches, assertHashBinding, assertOnboardingTopologyBindsKey, decodePrepared, extractTransfer, PreparedDecodeError, PreparedTransferMismatchError, PreparedHashUnavailableError, OnboardingTopologyMismatchError, } from "./verify-prepared.js";
20
- // The one place the "unreadable balance is not an empty wallet" rule lives for
21
- // the CLI. Exported so the MCP can be pinned against it by test rather than
22
- // keeping a second copy that silently drifts — which is exactly what happened.
23
- export { fundViaQuest, QuestFundError } from "./quest-fund.js";
24
20
  //# 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,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,+EAA+E;AAC/E,oEAAoE;AACpE,cAAc,WAAW,CAAC;AAC1B,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"}
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,oBAAoB,CAAC;AACnC,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,uBAAuB,CAAC;AACtC,+EAA+E;AAC/E,oEAAoE;AACpE,cAAc,WAAW,CAAC;AAC1B,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"}
package/dist/onboard.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { type AgentKeyMaterial } from "./keys.js";
2
2
  import { type AgentWallet } from "./store.js";
3
3
  import { RelayClient } from "./relay-client.js";
4
+ import { type StarterGrantResult } from "./starter-grant.js";
4
5
  export interface EnsureWalletOpts {
5
6
  relayUrl: string;
6
7
  network: string;
@@ -19,11 +20,29 @@ export interface EnsureWalletOpts {
19
20
  /** Ephemeral mode: mint a FRESH wallet on every call and NEVER touch the
20
21
  * on-disk store — skip `loadWallet` (always onboard a new key) and skip
21
22
  * `saveWallet` (the full key material is returned in the wallet object for the
22
- * caller to hand off; nothing is persisted by us). Used by the hosted quest
23
- * one-shot, which mints a throwaway wallet per request and returns its key to
24
- * the user. Every verify-before-sign leg still runs — only the file I/O is
25
- * skipped. Independent of `restore`. */
23
+ * caller to hand off; nothing is persisted by us). For a caller that keeps
24
+ * keys in its own store (a hosted wallet service) rather than in this
25
+ * process's home. Every verify-before-sign leg still runs — only the file I/O
26
+ * is skipped. Independent of `restore`. */
26
27
  ephemeral?: boolean;
28
+ /**
29
+ * The relay may pay every newly created wallet a starter grant; it says so
30
+ * in its onboard/finalize answer, and the grant lands shortly after as a
31
+ * pending transfer only this wallet can accept.
32
+ * "wait" (default): accept it before returning (up to
33
+ * `starterGrantTimeoutMs`), so the wallet comes back funded.
34
+ * "background": return at once and accept it in the background; for a
35
+ * long-lived process that cannot hold a caller for another half minute.
36
+ * "leave": leave the offer pending; `claim` accepts it later.
37
+ * An existing or restored wallet gets no grant; none of this runs for it.
38
+ */
39
+ starterGrant?: "wait" | "background" | "leave";
40
+ /** How long "wait" / "background" watch for the grant. Default 90 s. */
41
+ starterGrantTimeoutMs?: number;
42
+ /** Poll interval while watching for the grant. Default 3 s. */
43
+ starterGrantPollMs?: number;
44
+ /** Told how the starter grant ended, once it has. */
45
+ onStarterGrant?: (r: StarterGrantResult) => void;
27
46
  }
28
47
  export declare function ensureWallet(opts: EnsureWalletOpts): Promise<AgentWallet>;
29
48
  //# sourceMappingURL=onboard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"onboard.d.ts","sourceRoot":"","sources":["../src/onboard.ts"],"names":[],"mappings":"AASA,OAAO,EAAiC,KAAK,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAA0B,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;;wDAEoD;IACpD,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB;;iFAE6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;6CAMyC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CA4I/E"}
1
+ {"version":3,"file":"onboard.d.ts","sourceRoot":"","sources":["../src/onboard.ts"],"names":[],"mappings":"AASA,OAAO,EAAiC,KAAK,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAA0B,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMhD,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;;wDAEoD;IACpD,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB;;iFAE6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;gDAM4C;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAAC;IAC/C,wEAAwE;IACxE,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+DAA+D;IAC/D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qDAAqD;IACrD,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAClD;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CA+J/E"}
package/dist/onboard.js CHANGED
@@ -12,6 +12,7 @@ import { loadWallet, saveWallet } from "./store.js";
12
12
  import { RelayClient } from "./relay-client.js";
13
13
  import { assertOnboardingTopologyBindsKey, OnboardingTopologyMismatchError, } from "./verify-prepared.js";
14
14
  import { recomputeTopologyMultiHash, fingerprintHex } from "./canton-hash.js";
15
+ import { acceptStarterGrant, } from "./starter-grant.js";
15
16
  export async function ensureWallet(opts) {
16
17
  // Ephemeral mode skips the on-disk store entirely: never reuse an existing
17
18
  // wallet (always mint fresh) and never persist (below). Every verify-before-
@@ -73,6 +74,7 @@ export async function ensureWallet(opts) {
73
74
  // persist the party that prepare+verify just proved binds our key. The
74
75
  // verify-before-sign legs above run on BOTH paths (the security invariant).
75
76
  let party = prep.party;
77
+ let grant;
76
78
  if (!opts.restore) {
77
79
  const signature = {
78
80
  format: ED25519_WIRE_CONSTANTS.signatureFormat,
@@ -91,6 +93,9 @@ export async function ensureWallet(opts) {
91
93
  // checked against publicKeyFingerprint above); if the finalize step returns a
92
94
  // different party, it must STILL be in that same verified namespace, else a
93
95
  // relay could swap the persisted identity after the topology check. Fail-closed.
96
+ if (fin.starterGrant?.status === "scheduled" && typeof fin.starterGrant.amountCc === "string") {
97
+ grant = { amountCc: fin.starterGrant.amountCc };
98
+ }
94
99
  party = fin.party || prep.party;
95
100
  if (party !== prep.party) {
96
101
  const sep = party.lastIndexOf("::");
@@ -129,10 +134,25 @@ export async function ensureWallet(opts) {
129
134
  createdAt: new Date().toISOString(),
130
135
  };
131
136
  // Ephemeral wallets are returned to the caller (with full key material) but
132
- // NEVER written to disk — the quest one-shot hands the key to the user and
133
- // keeps no copy.
137
+ // NEVER written to disk — the caller decides where the key lives.
134
138
  if (!opts.ephemeral)
135
139
  saveWallet(wallet);
140
+ const mode = opts.starterGrant ?? "wait";
141
+ if (grant && mode !== "leave") {
142
+ const settled = acceptStarterGrant(relay, wallet, grant, {
143
+ ...(opts.starterGrantTimeoutMs !== undefined ? { timeoutMs: opts.starterGrantTimeoutMs } : {}),
144
+ ...(opts.starterGrantPollMs !== undefined ? { pollMs: opts.starterGrantPollMs } : {}),
145
+ }).then((r) => {
146
+ try {
147
+ opts.onStarterGrant?.(r);
148
+ }
149
+ catch {
150
+ /* a throwing observer must not fail the wallet it is observing */
151
+ }
152
+ });
153
+ if (mode === "wait")
154
+ await settled;
155
+ }
136
156
  return wallet;
137
157
  }
138
158
  /** The bare 32-byte Ed25519 public-key point from an SPKI/DER base64 (the point
@@ -1 +1 @@
1
- {"version":3,"file":"onboard.js","sourceRoot":"","sources":["../src/onboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onboard.js","sourceRoot":"","sources":["../src/onboard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAyB,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,0BAA0B,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EACL,kBAAkB,GAGnB,MAAM,oBAAoB,CAAC;AA6C5B,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAsB;IACvD,2EAA2E;IAC3E,6EAA6E;IAC7E,mDAAmD;IACnD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,UAAU,EAAE,CAAC;QAC9B,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;IAChC,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC3C,MAAM,KAAK,GACT,IAAI,CAAC,KAAK,IAAI,IAAI,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAElF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC;QACtC,SAAS,EAAE;YACT,MAAM,EAAE,sBAAsB,CAAC,eAAe;YAC9C,OAAO,EAAE,GAAG,CAAC,gBAAgB;YAC7B,OAAO,EAAE,sBAAsB,CAAC,OAAO;SACxC;QACD,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,OAAO;KACrC,CAAC,CAAC;IAEH,yEAAyE;IACzE,+EAA+E;IAC/E,8EAA8E;IAC9E,0EAA0E;IAC1E,6EAA6E;IAC7E,6EAA6E;IAC7E,uCAAuC;IACvC,gFAAgF;IAChF,gFAAgF;IAChF,qEAAqE;IACrE,gCAAgC,CAAC,IAAI,CAAC,sBAAsB,EAAE;QAC5D,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;QACtC,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;KAChD,CAAC,CAAC;IAEH,+EAA+E;IAC/E,gFAAgF;IAChF,8EAA8E;IAC9E,8EAA8E;IAC9E,iFAAiF;IACjF,4EAA4E;IAC5E,4EAA4E;IAC5E,MAAM,mBAAmB,GAAG,MAAM,0BAA0B,CAC1D,IAAI,CAAC,sBAAsB,CAC5B,CAAC;IACF,IAAI,mBAAmB,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;QAC5C,MAAM,IAAI,+BAA+B,CACvC,+EAA+E;YAC7E,yEAAyE;YACzE,sEAAsE,CACzE,CAAC;IACJ,CAAC;IAED,mEAAmE;IACnE,+EAA+E;IAC/E,iFAAiF;IACjF,gFAAgF;IAChF,iFAAiF;IACjF,6CAA6C;IAC7C,MAAM,6BAA6B,CACjC,GAAG,CAAC,gBAAgB,EACpB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;IAEF,6EAA6E;IAC7E,gFAAgF;IAChF,gFAAgF;IAChF,2EAA2E;IAC3E,uEAAuE;IACvE,4EAA4E;IAC5E,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,IAAI,KAA+B,CAAC;IACpC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG;YAChB,MAAM,EAAE,sBAAsB,CAAC,eAAe;YAC9C,6EAA6E;YAC7E,yEAAyE;YACzE,SAAS,EAAE,WAAW,CAAC,mBAAmB,EAAE,GAAG,CAAC,kBAAkB,CAAC;YACnE,oBAAoB,EAAE,sBAAsB,CAAC,oBAAoB;YACjE,QAAQ,EAAE,IAAI,CAAC,oBAAoB;SACpC,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC;YACtC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,mBAAmB,EAAE,CAAC,SAAS,CAAC;SACjC,CAAC,CAAC;QAEH,8EAA8E;QAC9E,gFAAgF;QAChF,8EAA8E;QAC9E,4EAA4E;QAC5E,iFAAiF;QACjF,IAAI,GAAG,CAAC,YAAY,EAAE,MAAM,KAAK,WAAW,IAAI,OAAO,GAAG,CAAC,YAAY,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC9F,KAAK,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAClD,CAAC;QAED,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;QAChC,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACpC,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,IAAI,EAAE,KAAK,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACrC,MAAM,IAAI,+BAA+B,CACvC,mCAAmC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,kCAAkC;oBACxF,gCAAgC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,iBAAiB;oBAC1F,oEAAoE,CACvE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,2EAA2E;IAC3E,wEAAwE;IACxE,4EAA4E;IAC5E,wEAAwE;IACxE,uEAAuE;IACvE,0CAA0C;IAC1C,IAAI,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,GAAG,EAAE,KAAK,EAAE,IAAI,CAC1B,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAC9D,EAAE,OAAO,CAAC;QACX,IAAI,GAAG;YAAE,eAAe,GAAG,GAAG,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,qEAAqE;IACvE,CAAC;IAED,MAAM,MAAM,GAAgB;QAC1B,OAAO,EAAE,eAAe;QACxB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK;QACL,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;QACtC,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;QAC1C,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;QAC/C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;IACF,4EAA4E;IAC5E,kEAAkE;IAClE,IAAI,CAAC,IAAI,CAAC,SAAS;QAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAExC,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC;IACzC,IAAI,KAAK,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;YACvD,GAAG,CAAC,IAAI,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,GAAG,CAAC,IAAI,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtF,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACZ,IAAI,CAAC;gBACH,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,kEAAkE;YACpE,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,KAAK,MAAM;YAAE,MAAM,OAAO,CAAC;IACrC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;sDACsD;AACtD,SAAS,eAAe,CAAC,OAAe;IACtC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3C,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;8DAE8D;AAC9D,SAAS,oBAAoB,CAAC,EAAU;IACtC,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtC,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,6BAA6B,CAC1C,gBAAwB,EACxB,gBAAwB;IAExB,IAAI,OAAO,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,+BAA+B,CACvC,iFAAiF;YAC/E,+DAA+D,CAClE,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAAC;IACrD,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjD,cAAc,CAAC,QAAQ,CAAC;QACxB,cAAc,CAAC,UAAU,CAAC;KAC3B,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACtE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,+BAA+B,CACvC,uCAAuC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,YAAY;YACjF,wEAAwE;YACxE,gFAAgF;YAChF,kFAAkF;YAClF,6CAA6C,CAChD,CAAC;IACJ,CAAC;AACH,CAAC"}
package/dist/pay.d.ts CHANGED
@@ -55,12 +55,34 @@ export interface PayOpts extends EnsureWalletOpts {
55
55
  * @returns A selector over the compatible candidates, or undefined.
56
56
  */
57
57
  export declare function buildPreferAssetSelector(preferAsset: string | undefined): ((cands: PaymentRequirements[]) => PaymentRequirements) | undefined;
58
+ /**
59
+ * What a paying fetch for `wallet` WOULD pay for this 402, without paying: the
60
+ * accepts[] entry the same selection picks (same signer methods, same
61
+ * preferred-asset tiebreaker as `makePayingFetchForWallet`), its payee, its
62
+ * amount in atomic units, and whether it is a registry token.
63
+ *
64
+ * `registryInstrument` is undefined for Canton Coin, decided the way the signer
65
+ * decides it: an admin that is a known registry is a token, anything else is
66
+ * judged as Canton Coin (and its admin is later pinned to the DSO).
67
+ *
68
+ * `undefined` when the response is not a readable 402 or offers nothing this
69
+ * wallet can pay. For a caller about to spend money on the strength of the
70
+ * answer — funding the wallet first, say — that is a reason to stop.
71
+ */
72
+ export declare function peekWalletPayment(response: Response, wallet: AgentWallet, opts?: Pick<PayOpts, "preferAsset">): {
73
+ payTo: string;
74
+ amountAtomic: string;
75
+ registryInstrument?: {
76
+ admin: string;
77
+ id: string;
78
+ };
79
+ } | undefined;
58
80
  export declare function makePayingFetch(opts: PayOpts): Promise<typeof globalThis.fetch>;
59
81
  /**
60
- * Like makePayingFetch but for a wallet OBJECT you already hold — used by the
61
- * hosted quest one-shot, which mints a FRESH ephemeral wallet per request
62
- * (`ensureWallet({ ephemeral: true })`) and pays from it without ever persisting
63
- * it to disk. `lockHome` is the directory for the per-wallet pay mutex; OMIT it
82
+ * Like makePayingFetch but for a wallet OBJECT you already hold — a wallet
83
+ * reconstructed in memory (`ensureWallet({ ephemeral: true })`, or a key a hosted
84
+ * service keeps in its own store) that must be paid from without ever being
85
+ * written to this process's home. `lockHome` is the directory for the per-wallet pay mutex; OMIT it
64
86
  * for an ephemeral wallet — a throwaway wallet does exactly one pay, so there is
65
87
  * no same-wallet concurrency to serialize and no home directory to lock in.
66
88
  */
package/dist/pay.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pay.d.ts","sourceRoot":"","sources":["../src/pay.ts"],"names":[],"mappings":"AAYA,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGnE,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,WAAW,OAAQ,SAAQ,gBAAgB;IAC/C,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC;;;wCAGoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;yEAKqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;8CAG0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,CAAC,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,CAAC,GAAG,SAAS,CAmBrE;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,OAAO,UAAU,CAAC,KAAK,CAAC,CAMlC;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,IAAI,CACR,OAAO,EACL,QAAQ,GACR,aAAa,GACb,mBAAmB,GACnB,iBAAiB,GACjB,eAAe,GACf,aAAa,CAChB,EACD,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,UAAU,CAAC,KAAK,CAAC,CAqDlC"}
1
+ {"version":3,"file":"pay.d.ts","sourceRoot":"","sources":["../src/pay.ts"],"names":[],"mappings":"AAaA,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAInE,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,WAAW,OAAQ,SAAQ,gBAAgB;IAC/C,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC;;;wCAGoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;yEAKqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;8CAG0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,CAAC,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,CAAC,GAAG,SAAS,CAmBrE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAM,GAErC;IACE,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACpD,GACD,SAAS,CAuBZ;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,OAAO,UAAU,CAAC,KAAK,CAAC,CAMlC;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,IAAI,CACR,OAAO,EACL,QAAQ,GACR,aAAa,GACb,mBAAmB,GACnB,iBAAiB,GACjB,eAAe,GACf,aAAa,CAChB,EACD,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,UAAU,CAAC,KAAK,CAAC,CAqDlC"}
package/dist/pay.js CHANGED
@@ -6,10 +6,11 @@
6
6
  * stashes it for the facilitator to settle) and the request retried. The agent
7
7
  * just "fetches".
8
8
  */
9
- import { wrapFetchWithCantonPayment, peekChosenTransferMethod, } from "@ftptech/x402-canton-client";
9
+ import { wrapFetchWithCantonPayment, peekChosenRequirement, peekChosenTransferMethod, } from "@ftptech/x402-canton-client";
10
10
  import { assetMatches } from "@ftptech/x402-canton-core";
11
11
  import { ensureWallet } from "./onboard.js";
12
12
  import { makeRelaySigner } from "./relay-signer.js";
13
+ import { resolveTrustedRegistryParties } from "./registry-parties.js";
13
14
  import { withPayLock } from "./pay-lock.js";
14
15
  import { walletDir } from "./store.js";
15
16
  /**
@@ -41,6 +42,41 @@ export function buildPreferAssetSelector(preferAsset) {
41
42
  `Pass one of those, or drop --asset to pay the first offered entry.`);
42
43
  };
43
44
  }
45
+ /**
46
+ * What a paying fetch for `wallet` WOULD pay for this 402, without paying: the
47
+ * accepts[] entry the same selection picks (same signer methods, same
48
+ * preferred-asset tiebreaker as `makePayingFetchForWallet`), its payee, its
49
+ * amount in atomic units, and whether it is a registry token.
50
+ *
51
+ * `registryInstrument` is undefined for Canton Coin, decided the way the signer
52
+ * decides it: an admin that is a known registry is a token, anything else is
53
+ * judged as Canton Coin (and its admin is later pinned to the DSO).
54
+ *
55
+ * `undefined` when the response is not a readable 402 or offers nothing this
56
+ * wallet can pay. For a caller about to spend money on the strength of the
57
+ * answer — funding the wallet first, say — that is a reason to stop.
58
+ */
59
+ export function peekWalletPayment(response, wallet, opts = {}) {
60
+ const selectRequirements = buildPreferAssetSelector(opts.preferAsset);
61
+ let chosen;
62
+ try {
63
+ chosen = peekChosenRequirement(response, makeRelaySigner(wallet, {}), selectRequirements ? { selectRequirements } : {});
64
+ }
65
+ catch {
66
+ // A preferred asset the 402 does not offer throws in the selector; for a
67
+ // peek that is "nothing payable", not an error to propagate.
68
+ return undefined;
69
+ }
70
+ if (!chosen)
71
+ return undefined;
72
+ const inst = chosen.extra?.instrumentId;
73
+ const isRegistry = inst !== undefined && resolveTrustedRegistryParties(inst.admin, process.env).size > 0;
74
+ return {
75
+ payTo: chosen.payTo,
76
+ amountAtomic: chosen.amount,
77
+ ...(isRegistry ? { registryInstrument: { admin: inst.admin, id: inst.id } } : {}),
78
+ };
79
+ }
44
80
  export async function makePayingFetch(opts) {
45
81
  const wallet = await ensureWallet(opts);
46
82
  // The file-backed wallet serializes concurrent pays via a directory mutex in
@@ -49,10 +85,10 @@ export async function makePayingFetch(opts) {
49
85
  return makePayingFetchForWallet(wallet, opts, walletDir());
50
86
  }
51
87
  /**
52
- * Like makePayingFetch but for a wallet OBJECT you already hold — used by the
53
- * hosted quest one-shot, which mints a FRESH ephemeral wallet per request
54
- * (`ensureWallet({ ephemeral: true })`) and pays from it without ever persisting
55
- * it to disk. `lockHome` is the directory for the per-wallet pay mutex; OMIT it
88
+ * Like makePayingFetch but for a wallet OBJECT you already hold — a wallet
89
+ * reconstructed in memory (`ensureWallet({ ephemeral: true })`, or a key a hosted
90
+ * service keeps in its own store) that must be paid from without ever being
91
+ * written to this process's home. `lockHome` is the directory for the per-wallet pay mutex; OMIT it
56
92
  * for an ephemeral wallet — a throwaway wallet does exactly one pay, so there is
57
93
  * no same-wallet concurrency to serialize and no home directory to lock in.
58
94
  */
package/dist/pay.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pay.js","sourceRoot":"","sources":["../src/pay.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,YAAY,EAA4B,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAE,YAAY,EAAyB,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAoB,MAAM,YAAY,CAAC;AA4CzD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CACtC,WAA+B;IAE/B,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IACnC,MAAM,IAAI,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,CAAC,KAA4B,EAAuB,EAAE;QAC3D,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CACpB,CAAC,CAAC,EAAE,EAAE,CACJ,YAAY,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC;YAClC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI;YAC9B,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,IAAI,CACpD,CAAC;QACF,IAAI,GAAG;YAAE,OAAO,GAAG,CAAC;QACpB,MAAM,OAAO,GAAG;YACd,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;SACnE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,IAAI,KAAK,CACb,WAAW,WAAW,sDAAsD,OAAO,KAAK;YACtF,oEAAoE,CACvE,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAa;IAEb,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC,6EAA6E;IAC7E,6EAA6E;IAC7E,6CAA6C;IAC7C,OAAO,wBAAwB,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAmB,EACnB,IAQC,EACD,QAAiB;IAEjB,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE;QACrC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,IAAI,CAAC,eAAe,KAAK,SAAS;YACpC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE;YAC3C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS;YAClC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;YACvC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,6EAA6E;IAC7E,iFAAiF;IACjF,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,0BAA0B,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE;QAClE,GAAG,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS;YACtC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE;YAC/C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAC,CAAC;IAEH,6EAA6E;IAC7E,wEAAwE;IACxE,gFAAgF;IAChF,kBAAkB;IAClB,EAAE;IACF,sEAAsE;IACtE,4EAA4E;IAC5E,6EAA6E;IAC7E,+EAA+E;IAC/E,wEAAwE;IACxE,wEAAwE;IACxE,aAAa;IACb,OAAO,KAAK,UAAU,WAAW,CAAC,KAAK,EAAE,IAAI;QAC3C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAClD,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QACvC,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvD,2EAA2E;QAC3E,0EAA0E;QAC1E,wEAAwE;QACxE,yEAAyE;QACzE,2DAA2D;QAC3D,MAAM,MAAM,GAAG,wBAAwB,CACrC,KAAK,EACL,MAAM,EACN,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CACjD,CAAC;QACF,oEAAoE;QACpE,gEAAgE;QAChE,MAAM,kBAAkB,GAAG,MAAM,KAAK,SAAS,CAAC;QAChD,IAAI,CAAC,kBAAkB;YAAE,OAAO,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACpD,OAAO,WAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"pay.js","sourceRoot":"","sources":["../src/pay.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,YAAY,EAA4B,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAE,YAAY,EAAyB,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAoB,MAAM,YAAY,CAAC;AA4CzD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CACtC,WAA+B;IAE/B,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IACnC,MAAM,IAAI,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,CAAC,KAA4B,EAAuB,EAAE;QAC3D,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CACpB,CAAC,CAAC,EAAE,EAAE,CACJ,YAAY,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC;YAClC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI;YAC9B,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,IAAI,CACpD,CAAC;QACF,IAAI,GAAG;YAAE,OAAO,GAAG,CAAC;QACpB,MAAM,OAAO,GAAG;YACd,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;SACnE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,IAAI,KAAK,CACb,WAAW,WAAW,sDAAsD,OAAO,KAAK;YACtF,oEAAoE,CACvE,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAkB,EAClB,MAAmB,EACnB,OAAqC,EAAE;IAQvC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtE,IAAI,MAAuC,CAAC;IAC5C,IAAI,CAAC;QACH,MAAM,GAAG,qBAAqB,CAC5B,QAAQ,EACR,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC,EAC3B,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CACjD,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;QACzE,6DAA6D;QAC7D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC;IACxC,MAAM,UAAU,GACd,IAAI,KAAK,SAAS,IAAI,6BAA6B,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;IACxF,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,YAAY,EAAE,MAAM,CAAC,MAAM;QAC3B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAa;IAEb,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC,6EAA6E;IAC7E,6EAA6E;IAC7E,6CAA6C;IAC7C,OAAO,wBAAwB,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAmB,EACnB,IAQC,EACD,QAAiB;IAEjB,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE;QACrC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,IAAI,CAAC,eAAe,KAAK,SAAS;YACpC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE;YAC3C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS;YAClC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;YACvC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,6EAA6E;IAC7E,iFAAiF;IACjF,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,0BAA0B,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE;QAClE,GAAG,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS;YACtC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE;YAC/C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAC,CAAC;IAEH,6EAA6E;IAC7E,wEAAwE;IACxE,gFAAgF;IAChF,kBAAkB;IAClB,EAAE;IACF,sEAAsE;IACtE,4EAA4E;IAC5E,6EAA6E;IAC7E,+EAA+E;IAC/E,wEAAwE;IACxE,wEAAwE;IACxE,aAAa;IACb,OAAO,KAAK,UAAU,WAAW,CAAC,KAAK,EAAE,IAAI;QAC3C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAClD,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QACvC,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvD,2EAA2E;QAC3E,0EAA0E;QAC1E,wEAAwE;QACxE,yEAAyE;QACzE,2DAA2D;QAC3D,MAAM,MAAM,GAAG,wBAAwB,CACrC,KAAK,EACL,MAAM,EACN,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CACjD,CAAC;QACF,oEAAoE;QACpE,gEAAgE;QAChE,MAAM,kBAAkB,GAAG,MAAM,KAAK,SAAS,CAAC;QAChD,IAAI,CAAC,kBAAkB;YAAE,OAAO,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACpD,OAAO,WAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC"}
@@ -129,6 +129,23 @@ export interface TxAmuletsResult {
129
129
  * returns undefined and the raw body stands on its own.
130
130
  */
131
131
  export declare function explainRelayFailure(body: string): string | undefined;
132
+ /**
133
+ * The relay routes a PAYMENT and a CLAIM travel, as this client calls them. The
134
+ * methods below use these strings and the object is exported, so a caller that
135
+ * has to know "does this facilitator still serve what this wallet will call"
136
+ * (anything that must not act unless the pay path will work) probes the same strings the
137
+ * calls use — a renamed route cannot leave the probe checking the old name.
138
+ *
139
+ * POST only, on purpose: each answers an empty body with a validation 400
140
+ * before any ledger work, so probing one costs nothing. The GET reads take a
141
+ * party in the path and go to the ledger even for a junk one.
142
+ */
143
+ export declare const PAY_AND_CLAIM_RELAY_ROUTES: {
144
+ readonly payPrepare: "/v1/wallet/pay/prepare";
145
+ readonly resolveAccept: "/v1/wallet/resolve/accept";
146
+ readonly submitPrepare: "/v1/wallet/submit/prepare";
147
+ readonly submitExecute: "/v1/wallet/submit/execute";
148
+ };
132
149
  export declare class RelayHttpError extends Error {
133
150
  readonly status: number;
134
151
  /** The parsed JSON response body, or undefined when it was not JSON. */
@@ -148,23 +165,33 @@ export declare class RelayClient {
148
165
  constructor(opts: {
149
166
  relayUrl: string;
150
167
  apiKey?: string | undefined;
151
- /** Shared secret for the internal-only faucet route. When set it is sent as
152
- * `X-Faucet-Secret` on faucetClaim so a facilitator that locked its raw
153
- * faucet (CANTON_X402_FAUCET_INTERNAL_SECRET) accepts the call. Used by the
154
- * pay-proxy quest flow, the only trusted faucet caller. */
155
- faucetSecret?: string | undefined;
156
168
  });
157
169
  private headers;
158
170
  private req;
171
+ /**
172
+ * Which of `paths` this relay does NOT serve. POSTs an empty body to each: a
173
+ * served route answers a validation 400 before doing any work, while a route
174
+ * the facilitator no longer has answers Fastify's `404 Route POST:<path> not
175
+ * found` — and only that answer counts as missing. Any other status means the
176
+ * route is there. A network failure throws: "could not ask" is not "all
177
+ * present".
178
+ */
179
+ missingRoutes(paths: readonly string[]): Promise<string[]>;
159
180
  onboardPrepare(b: {
160
181
  publicKey: RelayPublicKey;
161
182
  partyHint: string;
162
183
  }): Promise<OnboardPrepareResult>;
184
+ /** `starterGrant` is set when the relay pays every new wallet a grant (it
185
+ * arrives shortly after, as a pending transfer the wallet accepts). */
163
186
  onboardFinalize(b: {
164
187
  onboardingTransactions: string[];
165
188
  multiHashSignatures: RelaySignature[];
166
189
  }): Promise<{
167
190
  party: string;
191
+ starterGrant?: {
192
+ status?: string;
193
+ amountCc?: string;
194
+ };
168
195
  }>;
169
196
  submitPrepare(b: unknown): Promise<{
170
197
  preparedTransaction: string;
@@ -311,16 +338,6 @@ export declare class RelayClient {
311
338
  * the relay answers Canton Coin instructions only, which is what a client
312
339
  * that cannot route a registry accept must keep seeing. */
313
340
  pending(party: string): Promise<PendingResult>;
314
- /** Request a one-time faucet seed for `party` (out-of-box e2e funding). The
315
- * facilitator sends a tiny CC grant FROM ITS OWN party; it lands as a pending
316
- * TransferInstruction the agent then accepts via `claimAll`. Throws (relay
317
- * error) when the faucet is disabled / already claimed / over budget — the MCP
318
- * `auto_fund` tool maps that to the manual-funding fallback. */
319
- faucetClaim(party: string): Promise<{
320
- updateId: string;
321
- amount: string;
322
- party: string;
323
- }>;
324
341
  /** The facilitator's advertised x402 kinds. Used at onboarding to learn the
325
342
  * AUTHORITATIVE Canton network the relay settles on (kinds[].network), so the
326
343
  * persisted wallet.network is never a wrong client-side default — that default
@@ -1 +1 @@
1
- {"version":3,"file":"relay-client.d.ts","sourceRoot":"","sources":["../src/relay-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relay-client.d.ts","sourceRoot":"","sources":["../src/relay-client.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,23 @@ export function explainRelayFailure(body) {
35
35
  }
36
36
  return undefined;
37
37
  }
38
+ /**
39
+ * The relay routes a PAYMENT and a CLAIM travel, as this client calls them. The
40
+ * methods below use these strings and the object is exported, so a caller that
41
+ * has to know "does this facilitator still serve what this wallet will call"
42
+ * (anything that must not act unless the pay path will work) probes the same strings the
43
+ * calls use — a renamed route cannot leave the probe checking the old name.
44
+ *
45
+ * POST only, on purpose: each answers an empty body with a validation 400
46
+ * before any ledger work, so probing one costs nothing. The GET reads take a
47
+ * party in the path and go to the ledger even for a junk one.
48
+ */
49
+ export const PAY_AND_CLAIM_RELAY_ROUTES = {
50
+ payPrepare: "/v1/wallet/pay/prepare",
51
+ resolveAccept: "/v1/wallet/resolve/accept",
52
+ submitPrepare: "/v1/wallet/submit/prepare",
53
+ submitExecute: "/v1/wallet/submit/execute",
54
+ };
38
55
  export class RelayHttpError extends Error {
39
56
  status;
40
57
  body;
@@ -102,24 +119,54 @@ export class RelayClient {
102
119
  }
103
120
  return json;
104
121
  }
122
+ /**
123
+ * Which of `paths` this relay does NOT serve. POSTs an empty body to each: a
124
+ * served route answers a validation 400 before doing any work, while a route
125
+ * the facilitator no longer has answers Fastify's `404 Route POST:<path> not
126
+ * found` — and only that answer counts as missing. Any other status means the
127
+ * route is there. A network failure throws: "could not ask" is not "all
128
+ * present".
129
+ */
130
+ async missingRoutes(paths) {
131
+ const missing = [];
132
+ for (const path of paths) {
133
+ try {
134
+ await this.req("POST", path, {});
135
+ }
136
+ catch (err) {
137
+ if (!(err instanceof RelayHttpError))
138
+ throw err;
139
+ const message = err.body?.message;
140
+ if (err.status === 404 &&
141
+ typeof message === "string" &&
142
+ message.startsWith("Route POST:") &&
143
+ message.endsWith(`${path} not found`)) {
144
+ missing.push(path);
145
+ }
146
+ }
147
+ }
148
+ return missing;
149
+ }
105
150
  onboardPrepare(b) {
106
151
  return this.req("POST", "/v1/wallet/onboard/prepare", b);
107
152
  }
153
+ /** `starterGrant` is set when the relay pays every new wallet a grant (it
154
+ * arrives shortly after, as a pending transfer the wallet accepts). */
108
155
  onboardFinalize(b) {
109
156
  return this.req("POST", "/v1/wallet/onboard/finalize", b);
110
157
  }
111
158
  submitPrepare(b) {
112
- return this.req("POST", "/v1/wallet/submit/prepare", b);
159
+ return this.req("POST", PAY_AND_CLAIM_RELAY_ROUTES.submitPrepare, b);
113
160
  }
114
161
  submitExecute(b) {
115
- return this.req("POST", "/v1/wallet/submit/execute", b);
162
+ return this.req("POST", PAY_AND_CLAIM_RELAY_ROUTES.submitExecute, b);
116
163
  }
117
164
  /** transfer-factory ("V3") pay: the relay BUILDS + interactive-prepares the
118
165
  * TransferFactory_Transfer and returns the prepared bytes + hash for the
119
166
  * client's verify-before-sign. The client signs and carries the signed
120
167
  * transaction INLINE in its x402 payment payload; the relay stores nothing. */
121
168
  payPrepare(b) {
122
- return this.req("POST", "/v1/wallet/pay/prepare", b);
169
+ return this.req("POST", PAY_AND_CLAIM_RELAY_ROUTES.payPrepare, b);
123
170
  }
124
171
  balance(party) {
125
172
  return this.req("GET", `/v1/wallet/${encodeURIComponent(party)}/balance`);
@@ -189,16 +236,6 @@ export class RelayClient {
189
236
  pending(party) {
190
237
  return this.req("GET", `/v1/wallet/${encodeURIComponent(party)}/pending?registry=1`);
191
238
  }
192
- /** Request a one-time faucet seed for `party` (out-of-box e2e funding). The
193
- * facilitator sends a tiny CC grant FROM ITS OWN party; it lands as a pending
194
- * TransferInstruction the agent then accepts via `claimAll`. Throws (relay
195
- * error) when the faucet is disabled / already claimed / over budget — the MCP
196
- * `auto_fund` tool maps that to the manual-funding fallback. */
197
- faucetClaim(party) {
198
- return this.req("POST", "/v1/wallet/faucet/claim", { party }, this.opts.faucetSecret
199
- ? { "x-faucet-secret": this.opts.faucetSecret }
200
- : undefined);
201
- }
202
239
  /** The facilitator's advertised x402 kinds. Used at onboarding to learn the
203
240
  * AUTHORITATIVE Canton network the relay settles on (kinds[].network), so the
204
241
  * persisted wallet.network is never a wrong client-side default — that default
@@ -210,7 +247,7 @@ export class RelayClient {
210
247
  return this.req("POST", "/v1/wallet/resolve/transfer-factory", b);
211
248
  }
212
249
  resolveAccept(b) {
213
- return this.req("POST", "/v1/wallet/resolve/accept", b);
250
+ return this.req("POST", PAY_AND_CLAIM_RELAY_ROUTES.resolveAccept, b);
214
251
  }
215
252
  /** Read the Amulet OUTPUT cids a transfer transaction created for `party`, by
216
253
  * updateId (whale-merge output discovery — the agent is relay-only). The relay
@@ -1 +1 @@
1
- {"version":3,"file":"relay-client.js","sourceRoot":"","sources":["../src/relay-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relay-client.js","sourceRoot":"","sources":["../src/relay-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import type { RelayClient } from "./relay-client.js";
2
+ import type { AgentWallet } from "./store.js";
3
+ /** What the relay said it will send (onboard/finalize `starterGrant`). */
4
+ export interface StarterGrant {
5
+ amountCc: string;
6
+ }
7
+ export interface StarterGrantResult {
8
+ /**
9
+ * accepted: the grant is in the wallet.
10
+ * not_arrived: no offer showed up in time. It may still come, and `claim`
11
+ * accepts it; an offer that is never accepted expires and goes back.
12
+ * failed: an offer arrived but accepting it failed; `claim` can retry.
13
+ */
14
+ status: "accepted" | "not_arrived" | "failed";
15
+ amountCc: string;
16
+ updateIds: string[];
17
+ error?: string;
18
+ }
19
+ export interface AcceptStarterGrantOpts {
20
+ /** Give up after this long. Default 90 s: the relay may retry for ~20 s
21
+ * while the new party propagates, and grants are paid one at a time. */
22
+ timeoutMs?: number;
23
+ /** Poll interval for the offer. Default 3 s. */
24
+ pollMs?: number;
25
+ }
26
+ /** Wait for the starter grant's offer and accept it. Never throws. */
27
+ export declare function acceptStarterGrant(relay: RelayClient, wallet: AgentWallet, grant: StarterGrant, opts?: AcceptStarterGrantOpts): Promise<StarterGrantResult>;
28
+ //# sourceMappingURL=starter-grant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starter-grant.d.ts","sourceRoot":"","sources":["../src/starter-grant.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,MAAM,EAAE,UAAU,GAAG,aAAa,GAAG,QAAQ,CAAC;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC;6EACyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAYD,sEAAsE;AACtE,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,YAAY,EACnB,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA8B7B"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * The starter grant a relay pays every newly created wallet.
3
+ *
4
+ * A relay that funds new wallets says so in its onboard/finalize answer and
5
+ * pays in the background: the party is seconds old, and the synchronizer may
6
+ * not know it yet. A new wallet has no transfer preapproval, so the grant
7
+ * arrives as a pending transfer offer, and only the wallet's own key can
8
+ * accept it. So the client watches for the offer and accepts it with the same
9
+ * accept `claim` runs. Nothing here can move funds out.
10
+ */
11
+ import { claimAll } from "./tx.js";
12
+ /** A Canton Coin offer that can still be accepted. The grant is Canton Coin;
13
+ * a row without an instrument comes from a relay that only lists CC. */
14
+ function isLiveCcOffer(p, nowMs) {
15
+ if (p.instrumentId !== undefined && p.instrumentId.id !== "Amulet")
16
+ return false;
17
+ return p.executeBefore === undefined || Date.parse(p.executeBefore) > nowMs;
18
+ }
19
+ /** Wait for the starter grant's offer and accept it. Never throws. */
20
+ export async function acceptStarterGrant(relay, wallet, grant, opts = {}) {
21
+ const timeoutMs = opts.timeoutMs ?? 90_000;
22
+ const pollMs = opts.pollMs ?? 3_000;
23
+ const deadline = Date.now() + timeoutMs;
24
+ const base = { amountCc: grant.amountCc, updateIds: [] };
25
+ let acceptError;
26
+ let pollError;
27
+ const message = (err) => (err instanceof Error ? err.message : String(err));
28
+ for (;;) {
29
+ let offered = false;
30
+ try {
31
+ const { pending } = await relay.pending(wallet.party);
32
+ offered = pending.some((p) => isLiveCcOffer(p, Date.now()));
33
+ }
34
+ catch (err) {
35
+ pollError = message(err);
36
+ }
37
+ if (offered) {
38
+ try {
39
+ const r = await claimAll(relay, wallet);
40
+ if (r.claimed > 0)
41
+ return { ...base, status: "accepted", updateIds: r.updateIds };
42
+ if (r.failed.length > 0)
43
+ acceptError = r.failed.map((f) => f.error).join("; ");
44
+ }
45
+ catch (err) {
46
+ acceptError = message(err);
47
+ }
48
+ }
49
+ if (Date.now() + pollMs > deadline)
50
+ break;
51
+ await new Promise((r) => setTimeout(r, pollMs));
52
+ }
53
+ if (acceptError !== undefined)
54
+ return { ...base, status: "failed", error: acceptError };
55
+ return { ...base, status: "not_arrived", ...(pollError !== undefined ? { error: pollError } : {}) };
56
+ }
57
+ //# sourceMappingURL=starter-grant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starter-grant.js","sourceRoot":"","sources":["../src/starter-grant.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * This is the ONE copy of that logic. The CLI `swap` command and the MCP `swap`
7
7
  * tool both call it, so a routing rule (which venue is tried first, when a
8
8
  * fallback is allowed, which minimums are checked) cannot drift between the two
9
- * the way the quest's "unreadable balance" guard once did.
9
+ * the way two hand-kept copies of a wallet guard once did.
10
10
  *
11
11
  * Nothing here moves the swap input. The only money this module can spend is the
12
12
  * endpoint's ticket fee, on the non-direct path, through the `payingFetch` the
package/dist/tx.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { RelayClient } from "./relay-client.js";
1
+ import type { PendingResult, RelayClient } from "./relay-client.js";
2
2
  import type { AgentWallet } from "./store.js";
3
3
  import { type HashBindingOptions } from "./verify-prepared.js";
4
4
  /**
@@ -136,6 +136,38 @@ export declare function reserveHolding(party: string, holdings: Array<{
136
136
  * @internal
137
137
  */
138
138
  export declare function isStaleInputHoldingError(err: unknown): boolean;
139
+ /** What `claimAll` does with one pending row. */
140
+ export type PendingVerdict = {
141
+ kind: "expired";
142
+ } | {
143
+ kind: "untrusted";
144
+ admin: string;
145
+ } | {
146
+ kind: "claimable";
147
+ registryAdmin?: string;
148
+ };
149
+ /**
150
+ * How `claimAll` treats a pending row, exported so a caller can say what a
151
+ * claim would accept without running one.
152
+ *
153
+ * Expired: the relay reports executeBefore and it has passed; the ledger would
154
+ * refuse the accept.
155
+ *
156
+ * Canton Coin is recognised by the LOCAL DSO anchor (`trustedDso`), not by the
157
+ * row's own label: a registrar that names a token "Amulet" is still a
158
+ * registrar. Without a known DSO for this network the id is all there is to go
159
+ * on. /pending names the instrument on every row (for Canton Coin it is the
160
+ * DSO + "Amulet"), and a registry instruction's accept context lives on ITS
161
+ * registry, so `registryAdmin` is set only for a registry token.
162
+ *
163
+ * Untrusted: the trust anchor for a registry claim is LOCAL (the baked-in
164
+ * table or the operator's env), never the relay's row. A registrar this wallet
165
+ * has no anchor for cannot be verified — the honest accept names the registry
166
+ * operator and bridge, which verify would rightly call foreign — so the row is
167
+ * skipped instead of being prepared and refused (a refusal is treated as
168
+ * evidence about the relay and stops the loop).
169
+ */
170
+ export declare function classifyPending(p: PendingResult["pending"][number], trustedDso: string | undefined, nowMs: number, env?: NodeJS.ProcessEnv): PendingVerdict;
139
171
  /**
140
172
  * Accept every pending incoming transfer (e.g. the agent's initial funding).
141
173
  *
package/dist/tx.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../src/tx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../src/tx.ts"],"names":[],"mappings":"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"}
package/dist/tx.js CHANGED
@@ -390,6 +390,41 @@ export function isStaleInputHoldingError(err) {
390
390
  }
391
391
  return false;
392
392
  }
393
+ /**
394
+ * How `claimAll` treats a pending row, exported so a caller can say what a
395
+ * claim would accept without running one.
396
+ *
397
+ * Expired: the relay reports executeBefore and it has passed; the ledger would
398
+ * refuse the accept.
399
+ *
400
+ * Canton Coin is recognised by the LOCAL DSO anchor (`trustedDso`), not by the
401
+ * row's own label: a registrar that names a token "Amulet" is still a
402
+ * registrar. Without a known DSO for this network the id is all there is to go
403
+ * on. /pending names the instrument on every row (for Canton Coin it is the
404
+ * DSO + "Amulet"), and a registry instruction's accept context lives on ITS
405
+ * registry, so `registryAdmin` is set only for a registry token.
406
+ *
407
+ * Untrusted: the trust anchor for a registry claim is LOCAL (the baked-in
408
+ * table or the operator's env), never the relay's row. A registrar this wallet
409
+ * has no anchor for cannot be verified — the honest accept names the registry
410
+ * operator and bridge, which verify would rightly call foreign — so the row is
411
+ * skipped instead of being prepared and refused (a refusal is treated as
412
+ * evidence about the relay and stops the loop).
413
+ */
414
+ export function classifyPending(p, trustedDso, nowMs, env = process.env) {
415
+ if (p.executeBefore !== undefined && Date.parse(p.executeBefore) <= nowMs) {
416
+ return { kind: "expired" };
417
+ }
418
+ const isCantonCoin = p.instrumentId === undefined ||
419
+ (p.instrumentId.id === "Amulet" &&
420
+ (trustedDso === undefined || p.instrumentId.admin === trustedDso));
421
+ if (isCantonCoin)
422
+ return { kind: "claimable" };
423
+ const admin = p.instrumentId.admin;
424
+ if (!isTrustedRegistryAdmin(admin, env))
425
+ return { kind: "untrusted", admin };
426
+ return { kind: "claimable", registryAdmin: admin };
427
+ }
393
428
  /**
394
429
  * Accept every pending incoming transfer (e.g. the agent's initial funding).
395
430
  *
@@ -419,34 +454,18 @@ export async function claimAll(relay, wallet, opts = {}) {
419
454
  // expired offer (the ledger answers deadline-exceeded to its accept) made
420
455
  // every newer, perfectly claimable one unreachable. Measured live: three
421
456
  // expired USDCx offers ahead of one live one, claim failed, balance stayed
422
- // 0. Expired ones are skipped up front when the relay reports
423
- // executeBefore; anything else that fails is recorded and the loop goes on.
424
- if (p.executeBefore !== undefined && Date.parse(p.executeBefore) <= nowMs) {
457
+ // 0. Expired and unanchored rows are skipped up front (classifyPending);
458
+ // anything else that fails is recorded and the loop goes on.
459
+ const verdict = classifyPending(p, trustedDso, nowMs);
460
+ if (verdict.kind === "expired") {
425
461
  skippedExpired += 1;
426
462
  continue;
427
463
  }
428
- // A registry instruction's accept context lives on ITS registry, not the
429
- // SV Scan. /pending names the instrument on EVERY row (the
430
- // TransferInstructionV1 view always carries one — for Canton Coin it is the
431
- // DSO + "Amulet"), so the admin is forwarded only for a registry token; an
432
- // Amulet row keeps the SV Scan path it always had.
433
- // Canton Coin is recognised by the LOCAL DSO anchor, not by the row's own
434
- // label: a registrar that names a token "Amulet" is still a registrar.
435
- // Without a known DSO for this network the id is all there is to go on.
436
- const isCantonCoin = p.instrumentId === undefined ||
437
- (p.instrumentId.id === "Amulet" &&
438
- (trustedDso === undefined || p.instrumentId.admin === trustedDso));
439
- const registryAdmin = isCantonCoin ? undefined : p.instrumentId.admin;
440
- // The trust anchor for a registry claim is LOCAL (the baked-in table or
441
- // the operator's env), never the relay's row. A registrar this wallet has
442
- // no anchor for cannot be verified — the honest accept names the registry
443
- // operator and bridge, which verify would rightly call foreign — so the
444
- // row is skipped here instead of being prepared and refused (a refusal is
445
- // treated as evidence about the relay and stops the loop).
446
- if (registryAdmin !== undefined && !isTrustedRegistryAdmin(registryAdmin, process.env)) {
447
- skippedUntrusted.push({ cid: p.cid, admin: registryAdmin });
464
+ if (verdict.kind === "untrusted") {
465
+ skippedUntrusted.push({ cid: p.cid, admin: verdict.admin });
448
466
  continue;
449
467
  }
468
+ const { registryAdmin } = verdict;
450
469
  try {
451
470
  const ctx = await relay.resolveAccept({
452
471
  instructionCid: p.cid,
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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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ftptech/canton-agent-wallet",
3
3
  "private": false,
4
- "version": "1.6.1",
4
+ "version": "2.1.0",
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",
@@ -20,7 +20,7 @@
20
20
  "@canton-network/core-ledger-proto": "~1.4.0",
21
21
  "undici": "^7.1.0",
22
22
  "@ftptech/x402-canton-ledger": "^0.4.0",
23
- "@ftptech/x402-canton-client": "^1.1.0",
23
+ "@ftptech/x402-canton-client": "^1.2.0",
24
24
  "@ftptech/x402-canton-core": "^1.2.1"
25
25
  },
26
26
  "publishConfig": {