@ftptech/canton-agent-wallet 0.1.14 → 0.1.16

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.
@@ -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,CAK1C,CAAC;AAEH,gEAAgE;AAChE,wBAAgB,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG9E;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"}
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,CAS1C,CAAC;AAEH,gEAAgE;AAChE,wBAAgB,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG9E;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"}
package/dist/cli-args.js CHANGED
@@ -12,6 +12,10 @@ export const VALUE_FLAGS = new Set([
12
12
  "--network",
13
13
  "--to",
14
14
  "--amount",
15
+ "--allocation-cid",
16
+ "--key-file",
17
+ "--facilitator",
18
+ "--synchronizer",
15
19
  ]);
16
20
  /** First value following `--<name>` in `args`, or undefined. */
17
21
  export function flag(args, name) {
@@ -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;CACX,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;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAAuB;IACjD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAW,CAAC;QAC5B,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACvB,CAAC,IAAI,CAAC,CAAC,CAAC,yBAAyB;YACjC,SAAS;QACX,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAuB,EACvB,MAAyB,OAAO,CAAC,GAAG;IAEpC,OAAO,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,GAAG,CAAC,sBAAsB,IAAI,SAAS,CAAC;AAC9E,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,cAAc,CAC5B,IAAuB,EACvB,MAAyB,OAAO,CAAC,GAAG;IAEpC,OAAO,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,GAAG,CAAC,oBAAoB,IAAI,eAAe,CAAC;AAChF,CAAC;AAED,iEAAiE;AACjE,MAAM,CAAC,MAAM,kBAAkB,GAC7B,wEAAwE;IACxE,+EAA+E,CAAC"}
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,kBAAkB;IAClB,YAAY;IACZ,eAAe;IACf,gBAAgB;CACjB,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;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAAuB;IACjD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAW,CAAC;QAC5B,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACvB,CAAC,IAAI,CAAC,CAAC,CAAC,yBAAyB;YACjC,SAAS;QACX,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAuB,EACvB,MAAyB,OAAO,CAAC,GAAG;IAEpC,OAAO,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,GAAG,CAAC,sBAAsB,IAAI,SAAS,CAAC;AAC9E,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,cAAc,CAC5B,IAAuB,EACvB,MAAyB,OAAO,CAAC,GAAG;IAEpC,OAAO,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,GAAG,CAAC,oBAAoB,IAAI,eAAe,CAAC;AAChF,CAAC;AAED,iEAAiE;AACjE,MAAM,CAAC,MAAM,kBAAkB,GAC7B,wEAAwE;IACxE,+EAA+E,CAAC"}
package/dist/cli.js CHANGED
@@ -6,6 +6,11 @@
6
6
  * address print the party id (fund this)
7
7
  * balance print CC balance
8
8
  * claim accept incoming transfers (e.g. the initial funding)
9
+ * reclaim --allocation-cid <c> reclaim a locked allocation back to this wallet
10
+ * (Allocation_Withdraw; funds return to the sender)
11
+ * merchant-onboard --facilitator <p> --synchronizer <id>
12
+ * sign this wallet's once-total MerchantConsent so
13
+ * agents can pay it via the allocation-direct path
9
14
  * pay [--relay-url <url>] <url> fetch a URL, auto-paying any x402 402 challenge
10
15
  * withdraw --to <p> send CC back out (--amount <cc> for a partial amount)
11
16
  * export print the private key (backup; guard it)
@@ -33,7 +38,7 @@ import { loadWallet } from "./store.js";
33
38
  import { agentKeyFromPrivatePem } from "./keys.js";
34
39
  import { makePayingFetch } from "./pay.js";
35
40
  import { RelayClient } from "./relay-client.js";
36
- import { claimAll } from "./tx.js";
41
+ import { claimAll, reclaimAllocation, createMerchantConsent } from "./tx.js";
37
42
  import { withdraw } from "./withdraw.js";
38
43
  import { installProxyFromEnv } from "./proxy.js";
39
44
  import { flag, positionals, resolveNetwork, resolveRelayUrl, MISSING_RELAY_HELP, } from "./cli-args.js";
@@ -101,6 +106,40 @@ async function main() {
101
106
  console.log(r.claimed ? `claimed ${r.claimed} incoming transfer(s)` : "nothing to claim");
102
107
  break;
103
108
  }
109
+ case "reclaim": {
110
+ // Track B: reclaim a locked allocation back to this wallet via
111
+ // Allocation_Withdraw. Funds return to the sender (this agent) by
112
+ // construction; verify-before-sign refuses any relay-swapped choice /
113
+ // different contract / outbound drain.
114
+ const w = loadWallet();
115
+ if (!w)
116
+ return fail("no wallet yet — run: canton-agent-wallet create");
117
+ const allocationCid = flag(args, "--allocation-cid");
118
+ if (!allocationCid)
119
+ return fail("usage: canton-agent-wallet reclaim --allocation-cid <cid>");
120
+ const updateId = await reclaimAllocation(new RelayClient({ relayUrl: w.relayUrl, apiKey: API_KEY }), w, { allocationCid });
121
+ console.log(`reclaimed allocation ${allocationCid}\n updateId: ${updateId}`);
122
+ break;
123
+ }
124
+ case "merchant-onboard": {
125
+ // Design B "2-tx DIRECT" onboarding (MERCHANT side, ONCE-TOTAL): this wallet
126
+ // signs its standing MerchantConsent so agents can later pay it via the
127
+ // allocation-direct path. Creating the consent MOVES NO FUNDS — it only
128
+ // captures the merchant's one-time authorization; verify-before-sign refuses
129
+ // any relay-swapped value-moving choice / substituted facilitator.
130
+ const w = loadWallet();
131
+ if (!w)
132
+ return fail("no wallet yet — run: canton-agent-wallet create");
133
+ const facilitator = flag(args, "--facilitator") || process.env.CANTON_X402_FACILITATOR;
134
+ const synchronizerId = flag(args, "--synchronizer") || process.env.CANTON_SYNCHRONIZER_ID;
135
+ if (!facilitator || !synchronizerId)
136
+ return fail("usage: canton-agent-wallet merchant-onboard --facilitator <party> --synchronizer <id>\n" +
137
+ " (or set CANTON_X402_FACILITATOR / CANTON_SYNCHRONIZER_ID)");
138
+ const updateId = await createMerchantConsent(new RelayClient({ relayUrl: w.relayUrl, apiKey: API_KEY }), w, { facilitator, synchronizerId });
139
+ console.log(`merchant onboarded for direct settlement (facilitator ${facilitator})\n` +
140
+ ` MerchantConsent updateId: ${updateId}`);
141
+ break;
142
+ }
104
143
  case "pay": {
105
144
  const url = positionals(args)[0];
106
145
  if (!url)
@@ -167,7 +206,7 @@ async function main() {
167
206
  break;
168
207
  }
169
208
  default:
170
- console.error("canton-agent-wallet: create | address | balance | claim | pay <url> | withdraw --to <party> | export | import\n" +
209
+ console.error("canton-agent-wallet: create | address | balance | claim | reclaim --allocation-cid <cid> | merchant-onboard --facilitator <party> --synchronizer <id> | pay <url> | withdraw --to <party> | export | import\n" +
171
210
  " relay required for create/pay/import: --relay-url <url> or CANTON_AGENT_RELAY_URL");
172
211
  process.exit(cmd ? 1 : 0);
173
212
  }
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
@@ -9,5 +9,5 @@ export * from "./pay.js";
9
9
  export * from "./hash-binding.js";
10
10
  export * from "./canton-hash.js";
11
11
  export * from "./trusted-dso.js";
12
- export { assertPreparedTransferMatches, assertPreparedCreateTransferCommandMatches, assertHashBinding, assertOnboardingTopologyBindsKey, decodePrepared, extractTransfer, extractCreateTransferCommand, PreparedDecodeError, PreparedTransferMismatchError, PreparedHashUnavailableError, OnboardingTopologyMismatchError, type HashBindingOptions, type PreparedTransferExpectation, type PreparedCreateTransferCommandExpectation, type OnboardingTopologyExpectation, } from "./verify-prepared.js";
12
+ export { assertPreparedTransferMatches, assertPreparedCreateTransferCommandMatches, assertPreparedConsentCreateMatches, assertHashBinding, assertOnboardingTopologyBindsKey, decodePrepared, extractTransfer, extractCreateTransferCommand, PreparedDecodeError, PreparedTransferMismatchError, PreparedHashUnavailableError, OnboardingTopologyMismatchError, type HashBindingOptions, type PreparedTransferExpectation, type PreparedCreateTransferCommandExpectation, type PreparedConsentCreateExpectation, type OnboardingTopologyExpectation, } from "./verify-prepared.js";
13
13
  //# 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,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,6BAA6B,EAC7B,0CAA0C,EAC1C,iBAAiB,EACjB,gCAAgC,EAChC,cAAc,EACd,eAAe,EACf,4BAA4B,EAC5B,mBAAmB,EACnB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,wCAAwC,EAC7C,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,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,6BAA6B,EAC7B,0CAA0C,EAC1C,kCAAkC,EAClC,iBAAiB,EACjB,gCAAgC,EAChC,cAAc,EACd,eAAe,EACf,4BAA4B,EAC5B,mBAAmB,EACnB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,wCAAwC,EAC7C,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,GACnC,MAAM,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -9,5 +9,5 @@ export * from "./pay.js";
9
9
  export * from "./hash-binding.js";
10
10
  export * from "./canton-hash.js";
11
11
  export * from "./trusted-dso.js";
12
- export { assertPreparedTransferMatches, assertPreparedCreateTransferCommandMatches, assertHashBinding, assertOnboardingTopologyBindsKey, decodePrepared, extractTransfer, extractCreateTransferCommand, PreparedDecodeError, PreparedTransferMismatchError, PreparedHashUnavailableError, OnboardingTopologyMismatchError, } from "./verify-prepared.js";
12
+ export { assertPreparedTransferMatches, assertPreparedCreateTransferCommandMatches, assertPreparedConsentCreateMatches, assertHashBinding, assertOnboardingTopologyBindsKey, decodePrepared, extractTransfer, extractCreateTransferCommand, PreparedDecodeError, PreparedTransferMismatchError, PreparedHashUnavailableError, OnboardingTopologyMismatchError, } from "./verify-prepared.js";
13
13
  //# 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,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,6BAA6B,EAC7B,0CAA0C,EAC1C,iBAAiB,EACjB,gCAAgC,EAChC,cAAc,EACd,eAAe,EACf,4BAA4B,EAC5B,mBAAmB,EACnB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,GAKhC,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,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,6BAA6B,EAC7B,0CAA0C,EAC1C,kCAAkC,EAClC,iBAAiB,EACjB,gCAAgC,EAChC,cAAc,EACd,eAAe,EACf,4BAA4B,EAC5B,mBAAmB,EACnB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,GAMhC,MAAM,sBAAsB,CAAC"}
package/dist/onboard.d.ts CHANGED
@@ -16,6 +16,14 @@ export interface EnsureWalletOpts {
16
16
  * already allocated (a second allocate returns HTTP 400). prepare + the
17
17
  * verify-before-sign legs still run; we persist the verified prep.party. */
18
18
  restore?: boolean;
19
+ /** Ephemeral mode: mint a FRESH wallet on every call and NEVER touch the
20
+ * on-disk store — skip `loadWallet` (always onboard a new key) and skip
21
+ * `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`. */
26
+ ephemeral?: boolean;
19
27
  }
20
28
  export declare function ensureWallet(opts: EnsureWalletOpts): Promise<AgentWallet>;
21
29
  //# 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;CACnB;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAoI/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;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"}
package/dist/onboard.js CHANGED
@@ -13,9 +13,14 @@ 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
15
  export async function ensureWallet(opts) {
16
- const existing = loadWallet();
17
- if (existing)
18
- return existing;
16
+ // Ephemeral mode skips the on-disk store entirely: never reuse an existing
17
+ // wallet (always mint fresh) and never persist (below). Every verify-before-
18
+ // sign leg still runs — only the file I/O changes.
19
+ if (!opts.ephemeral) {
20
+ const existing = loadWallet();
21
+ if (existing)
22
+ return existing;
23
+ }
19
24
  const key = opts.key ?? generateAgentKey();
20
25
  const relay = opts.relay ?? new RelayClient({ relayUrl: opts.relayUrl, apiKey: opts.apiKey });
21
26
  const prep = await relay.onboardPrepare({
@@ -123,7 +128,11 @@ export async function ensureWallet(opts) {
123
128
  publicKeyFingerprint: prep.publicKeyFingerprint,
124
129
  createdAt: new Date().toISOString(),
125
130
  };
126
- saveWallet(wallet);
131
+ // 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.
134
+ if (!opts.ephemeral)
135
+ saveWallet(wallet);
127
136
  return wallet;
128
137
  }
129
138
  /** 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":"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"}
package/dist/pay.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { type EnsureWalletOpts } from "./onboard.js";
2
+ import { type AgentWallet } from "./store.js";
2
3
  import type { HashBindingOptions } from "./verify-prepared.js";
3
4
  export interface PayOpts extends EnsureWalletOpts {
4
5
  /** @deprecated ignored; the relay sets the participant user. */
@@ -11,6 +12,32 @@ export interface PayOpts extends EnsureWalletOpts {
11
12
  * See HashBindingOptions / verify-prepared.ts.
12
13
  */
13
14
  hashBinding?: HashBindingOptions;
15
+ /** Max on-ledger re-pay attempts on a PERSISTING 402 (passed to
16
+ * wrapFetchWithCantonPayment; default 4). A custodial/proxy payer should set
17
+ * 1 so one logical pay mints at most one extra Create, bounding gas burn if a
18
+ * merchant keeps returning 402. */
19
+ maxPaymentRetries?: number;
20
+ /** Optional spend ceiling threaded into the relay signer: the MAX amount the
21
+ * signer will EVER sign for (same unit the 402 quotes). When set, the autopay
22
+ * REFUSES — fail closed, before any relay call — to sign a merchant-quoted
23
+ * amount above it, so an over-quoting (or MITM'd) merchant can never get the
24
+ * agent to sign a charge larger than the caller authorized. Omitted → no
25
+ * ceiling (the published MCP/pay path is unaffected when unset). */
26
+ maxPaymentValue?: string;
27
+ /** Optional expected-payee pin threaded into the relay signer: the ONLY
28
+ * recipient the signer will sign a transfer to. When set, the autopay REFUSES
29
+ * to sign if the 402's payTo is anything else (MITM'd-merchant defense).
30
+ * Omitted → no pin (legacy behavior). */
31
+ expectedPayTo?: string;
14
32
  }
15
33
  export declare function makePayingFetch(opts: PayOpts): Promise<typeof globalThis.fetch>;
34
+ /**
35
+ * Like makePayingFetch but for a wallet OBJECT you already hold — used by the
36
+ * hosted quest one-shot, which mints a FRESH ephemeral wallet per request
37
+ * (`ensureWallet({ ephemeral: true })`) and pays from it without ever persisting
38
+ * it to disk. `lockHome` is the directory for the per-wallet pay mutex; OMIT it
39
+ * for an ephemeral wallet — a throwaway wallet does exactly one pay, so there is
40
+ * no same-wallet concurrency to serialize and no home directory to lock in.
41
+ */
42
+ export declare function makePayingFetchForWallet(wallet: AgentWallet, opts: Pick<PayOpts, "apiKey" | "hashBinding" | "maxPaymentRetries" | "maxPaymentValue" | "expectedPayTo">, lockHome?: string): Promise<typeof globalThis.fetch>;
16
43
  //# sourceMappingURL=pay.d.ts.map
package/dist/pay.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pay.d.ts","sourceRoot":"","sources":["../src/pay.ts"],"names":[],"mappings":"AAQA,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAInE,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;CAClC;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,OAAO,UAAU,CAAC,KAAK,CAAC,CAsBlC"}
1
+ {"version":3,"file":"pay.d.ts","sourceRoot":"","sources":["../src/pay.ts"],"names":[],"mappings":"AAQA,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;CACxB;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,EACP,QAAQ,GAAG,aAAa,GAAG,mBAAmB,GAAG,iBAAiB,GAAG,eAAe,CACrF,EACD,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,UAAU,CAAC,KAAK,CAAC,CA+BlC"}
package/dist/pay.js CHANGED
@@ -12,25 +12,46 @@ import { withPayLock } from "./pay-lock.js";
12
12
  import { walletDir } from "./store.js";
13
13
  export async function makePayingFetch(opts) {
14
14
  const wallet = await ensureWallet(opts);
15
+ // The file-backed wallet serializes concurrent pays via a directory mutex in
16
+ // its home (cross-process safe), so pass the home as the lock dir — behavior
17
+ // is identical to before this was extracted.
18
+ return makePayingFetchForWallet(wallet, opts, walletDir());
19
+ }
20
+ /**
21
+ * Like makePayingFetch but for a wallet OBJECT you already hold — used by the
22
+ * hosted quest one-shot, which mints a FRESH ephemeral wallet per request
23
+ * (`ensureWallet({ ephemeral: true })`) and pays from it without ever persisting
24
+ * it to disk. `lockHome` is the directory for the per-wallet pay mutex; OMIT it
25
+ * for an ephemeral wallet — a throwaway wallet does exactly one pay, so there is
26
+ * no same-wallet concurrency to serialize and no home directory to lock in.
27
+ */
28
+ export async function makePayingFetchForWallet(wallet, opts, lockHome) {
15
29
  const signer = makeRelaySigner(wallet, {
16
30
  apiKey: opts.apiKey,
17
31
  ...(opts.hashBinding ? { hashBinding: opts.hashBinding } : {}),
32
+ ...(opts.maxPaymentValue !== undefined
33
+ ? { maxPaymentValue: opts.maxPaymentValue }
34
+ : {}),
35
+ ...(opts.expectedPayTo !== undefined
36
+ ? { expectedPayTo: opts.expectedPayTo }
37
+ : {}),
18
38
  });
19
- const paying = wrapFetchWithCantonPayment(globalThis.fetch, signer);
20
- const home = walletDir();
21
- // Serialize PAYMENTS per wallet. v1 nonces are sequential per sender, so two
22
- // concurrent payment dances from one wallet (parallel CLI processes or
23
- // parallel calls through this fetch) only race each other: both sign the same
24
- // counter value, at most one settles, the rest burn re-pay Creates losing the
25
- // race round after round. Probe first WITHOUT the lock only a request that
26
- // actually challenges 402 enters the per-wallet queue, so non-paid traffic is
27
- // never delayed. The probe is cheap (wrapFetch would probe anyway) and the
28
- // wrapped call re-probes under the lock, so no state is carried across.
29
- return async function lockedPayingFetch(input, init) {
39
+ const paying = wrapFetchWithCantonPayment(globalThis.fetch, signer, opts.maxPaymentRetries !== undefined
40
+ ? { maxPaymentRetries: opts.maxPaymentRetries }
41
+ : {});
42
+ // Probe first WITHOUT the lock only a request that actually challenges 402
43
+ // enters the per-wallet queue, so non-paid traffic is never delayed. When
44
+ // `lockHome` is set (the file-backed path) serialize the dance per wallet home
45
+ // (v1 nonces are sequential per sender, so concurrent dances from one wallet
46
+ // would otherwise race and burn re-pay Creates). An ephemeral wallet has no
47
+ // same-wallet concurrency and no home dir, so it skips the lock.
48
+ return async function payingFetch(input, init) {
30
49
  const probe = await globalThis.fetch(input, init);
31
50
  if (probe.status !== 402)
32
51
  return probe;
33
- return withPayLock(home, () => paying(input, init));
52
+ if (lockHome === undefined)
53
+ return paying(input, init);
54
+ return withPayLock(lockHome, () => paying(input, init));
34
55
  };
35
56
  }
36
57
  //# sourceMappingURL=pay.js.map
package/dist/pay.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pay.js","sourceRoot":"","sources":["../src/pay.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,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,EAAE,MAAM,YAAY,CAAC;AAgBvC,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAa;IAEb,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC,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;KAC/D,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,0BAA0B,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IAEzB,6EAA6E;IAC7E,uEAAuE;IACvE,8EAA8E;IAC9E,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,wEAAwE;IACxE,OAAO,KAAK,UAAU,iBAAiB,CAAC,KAAK,EAAE,IAAI;QACjD,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,OAAO,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"pay.js","sourceRoot":"","sources":["../src/pay.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,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;AAiCzD,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,IAGC,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,MAAM,MAAM,GAAG,0BAA0B,CACvC,UAAU,CAAC,KAAK,EAChB,MAAM,EACN,IAAI,CAAC,iBAAiB,KAAK,SAAS;QAClC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE;QAC/C,CAAC,CAAC,EAAE,CACP,CAAC;IAEF,6EAA6E;IAC7E,0EAA0E;IAC1E,+EAA+E;IAC/E,6EAA6E;IAC7E,4EAA4E;IAC5E,iEAAiE;IACjE,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,OAAO,WAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC"}
@@ -45,6 +45,14 @@ export interface ResolveAcceptResult {
45
45
  choiceContextData: unknown;
46
46
  disclosedContracts: unknown[];
47
47
  }
48
+ /** allocation-api reclaim (Track B): the (possibly empty) Allocation_Withdraw
49
+ * choice-context + the disclosed AmuletAllocation contract the agent needs to
50
+ * exercise the withdraw. Same envelope as ResolveAcceptResult; an empty context
51
+ * (`{}` / `[]`) is valid when the registry exposes no withdraw choice-context. */
52
+ export interface ResolveWithdrawResult {
53
+ choiceContextData: unknown;
54
+ disclosedContracts: unknown[];
55
+ }
48
56
  export interface PendingResult {
49
57
  party: string;
50
58
  pending: Array<{
@@ -80,6 +88,54 @@ export interface TransferCommandCidResult {
80
88
  nonce: string;
81
89
  transferCommandCid: string;
82
90
  }
91
+ /** allocation-api: everything the agent needs to BUILD an
92
+ * `AllocationFactory_Allocate` exercise. None of these is a verify trust
93
+ * anchor — the agent pins sender/receiver/amount/executor to its OWN intent in
94
+ * verify-before-sign; these refs widen nothing it will sign. */
95
+ export interface ResolveAllocationFactoryResult {
96
+ /** The resolved AllocationFactory cid to exercise against. */
97
+ factoryId: string;
98
+ /** Hash-prefixed templateId for the AllocationFactory_Allocate exercise. */
99
+ allocationFactoryTemplateId: string;
100
+ /** `{admin, id}` of the instrument (Amulet = {DSO, "Amulet"}). */
101
+ instrumentId: {
102
+ admin: string;
103
+ id: string;
104
+ };
105
+ /** The settlementRef the SettlementInfo carries (registry-/relay-supplied;
106
+ * the facilitator binds it informationally). */
107
+ settlementRef: unknown;
108
+ /** The transferLegId the AllocationSpecification carries. */
109
+ transferLegId: string;
110
+ /** Registry choice-context for the AllocationFactory_Allocate extraArgs. */
111
+ choiceContextData: unknown;
112
+ disclosedContracts: unknown[];
113
+ }
114
+ /** The created Allocation / AllocationInstruction cid read off the
115
+ * AllocationFactory_Allocate transaction by the relay. Exactly one is set for
116
+ * a successful allocate (Completed vs Pending); both null if neither resolved. */
117
+ export interface AllocationResultResult {
118
+ party: string;
119
+ updateId: string;
120
+ allocationCid?: string | null;
121
+ allocationInstructionCid?: string | null;
122
+ }
123
+ /** The created `X402Escrow` cid read off the `X402EscrowOffer_Accept` transaction
124
+ * by the relay (x402-escrow "Design A"). `escrowCid` is null if the relay could
125
+ * not resolve the created `X402Escrow` within its poll budget. */
126
+ export interface EscrowResultResult {
127
+ party: string;
128
+ updateId: string;
129
+ escrowCid?: string | null;
130
+ }
131
+ /** x402-direct "Design B": the result of resolving/minting the standing both-party
132
+ * DirectSettlementConsent for a {sender, merchant} pair (facilitator-side
133
+ * MerchantConsent_Accept). `minted` is false when an existing consent was reused. */
134
+ export interface MintDirectConsentResult {
135
+ directConsentCid: string;
136
+ minted: boolean;
137
+ updateId?: string;
138
+ }
83
139
  export declare class RelayClient {
84
140
  private readonly opts;
85
141
  constructor(opts: {
@@ -107,6 +163,16 @@ export declare class RelayClient {
107
163
  }>;
108
164
  balance(party: string): Promise<BalanceResult>;
109
165
  pending(party: string): Promise<PendingResult>;
166
+ /** Request a one-time faucet seed for `party` (out-of-box e2e funding). The
167
+ * facilitator sends a tiny CC grant FROM ITS OWN party; it lands as a pending
168
+ * TransferInstruction the agent then accepts via `claimAll`. Throws (relay
169
+ * error) when the faucet is disabled / already claimed / over budget — the MCP
170
+ * `auto_fund` tool maps that to the manual-funding fallback. */
171
+ faucetClaim(party: string): Promise<{
172
+ updateId: string;
173
+ amount: string;
174
+ party: string;
175
+ }>;
110
176
  /** The facilitator's advertised x402 kinds. Used at onboarding to learn the
111
177
  * AUTHORITATIVE Canton network the relay settles on (kinds[].network), so the
112
178
  * persisted wallet.network is never a wrong client-side default — that default
@@ -125,10 +191,56 @@ export declare class RelayClient {
125
191
  resolveAccept(b: {
126
192
  instructionCid: string;
127
193
  }): Promise<ResolveAcceptResult>;
194
+ /** allocation-api reclaim: resolve the Allocation_Withdraw choice-context +
195
+ * disclosed AmuletAllocation for `allocationCid` (the agent has no Scan
196
+ * access). Mirrors resolveAccept. */
197
+ resolveWithdraw(b: {
198
+ allocationCid: string;
199
+ }): Promise<ResolveWithdrawResult>;
128
200
  /** v1: resolve the refs needed to build a CreateTransferCommand exercise. */
129
201
  resolveTransferCommand(b: {
130
202
  payerParty: string;
131
203
  }): Promise<ResolveTransferCommandResult>;
204
+ /** allocation-api: resolve the AllocationFactory + its disclosed contracts +
205
+ * choice-context (the agent has no Scan access). Mirrors
206
+ * resolveTransferFactory. */
207
+ resolveAllocationFactory(b: {
208
+ sender: string;
209
+ receiver: string;
210
+ amount: string;
211
+ executor: string;
212
+ allocateBeforeSeconds: number;
213
+ settleBeforeSeconds: number;
214
+ meta?: Record<string, string>;
215
+ }): Promise<ResolveAllocationFactoryResult>;
216
+ /** allocation-api: read the created Allocation / AllocationInstruction cid off
217
+ * the AllocationFactory_Allocate transaction (the agent is relay-only). */
218
+ allocationResult(party: string, updateId: string): Promise<AllocationResultResult>;
219
+ /** x402-escrow "Design A": read the created `X402Escrow` cid off the
220
+ * `X402EscrowOffer_Accept` transaction (the agent is relay-only). Mirrors
221
+ * `allocationResult`: the relay reads the tx by updateId and matches the created
222
+ * `X402Escrow` template. Requires a matching facilitator-side `escrow-result`
223
+ * endpoint (a `getTransactionById` + templateId-endsWith match, exactly like
224
+ * `allocation-result`). */
225
+ escrowResult(party: string, updateId: string): Promise<EscrowResultResult>;
226
+ /** x402-direct "Design B": resolve OR mint the standing both-party
227
+ * DirectSettlementConsent for the {sender, merchant} pair (the facilitator
228
+ * exercises MerchantConsent_Accept ALONE off the two standing consents). The
229
+ * client may pass the returned cid as the O(1) /settle fast-path
230
+ * (payload.directConsentCid). Idempotent: returns an existing consent
231
+ * (minted:false) when one is already standing; throws (relay error) when either
232
+ * party has not onboarded its once-total SenderConsent / MerchantConsent yet. */
233
+ mintDirectConsent(b: {
234
+ sender: string;
235
+ merchant: string;
236
+ maxAmount?: string | null;
237
+ }): Promise<MintDirectConsentResult>;
238
+ /** x402-direct "Design B": read back the standing DirectSettlementConsent cid for
239
+ * the {party(sender), merchant} pair, or 404 (surfaced as a thrown relay error)
240
+ * when none exists yet. */
241
+ directConsent(party: string, merchant: string): Promise<{
242
+ directConsentCid: string;
243
+ }>;
132
244
  /** v1: resolve the cid of the just-created TransferCommand via the relay.
133
245
  * Pass the create's `updateId` (from execute) so the relay reads the cid
134
246
  * straight off that transaction — O(1) and immune to the ACS list cap the
@@ -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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"}
@@ -47,6 +47,14 @@ export class RelayClient {
47
47
  pending(party) {
48
48
  return this.req("GET", `/v1/wallet/${encodeURIComponent(party)}/pending`);
49
49
  }
50
+ /** Request a one-time faucet seed for `party` (out-of-box e2e funding). The
51
+ * facilitator sends a tiny CC grant FROM ITS OWN party; it lands as a pending
52
+ * TransferInstruction the agent then accepts via `claimAll`. Throws (relay
53
+ * error) when the faucet is disabled / already claimed / over budget — the MCP
54
+ * `auto_fund` tool maps that to the manual-funding fallback. */
55
+ faucetClaim(party) {
56
+ return this.req("POST", "/v1/wallet/faucet/claim", { party });
57
+ }
50
58
  /** The facilitator's advertised x402 kinds. Used at onboarding to learn the
51
59
  * AUTHORITATIVE Canton network the relay settles on (kinds[].network), so the
52
60
  * persisted wallet.network is never a wrong client-side default — that default
@@ -60,10 +68,52 @@ export class RelayClient {
60
68
  resolveAccept(b) {
61
69
  return this.req("POST", "/v1/wallet/resolve/accept", b);
62
70
  }
71
+ /** allocation-api reclaim: resolve the Allocation_Withdraw choice-context +
72
+ * disclosed AmuletAllocation for `allocationCid` (the agent has no Scan
73
+ * access). Mirrors resolveAccept. */
74
+ resolveWithdraw(b) {
75
+ return this.req("POST", "/v1/wallet/resolve/withdraw", b);
76
+ }
63
77
  /** v1: resolve the refs needed to build a CreateTransferCommand exercise. */
64
78
  resolveTransferCommand(b) {
65
79
  return this.req("POST", "/v1/wallet/resolve/transfer-command", b);
66
80
  }
81
+ /** allocation-api: resolve the AllocationFactory + its disclosed contracts +
82
+ * choice-context (the agent has no Scan access). Mirrors
83
+ * resolveTransferFactory. */
84
+ resolveAllocationFactory(b) {
85
+ return this.req("POST", "/v1/wallet/resolve/allocation-factory", b);
86
+ }
87
+ /** allocation-api: read the created Allocation / AllocationInstruction cid off
88
+ * the AllocationFactory_Allocate transaction (the agent is relay-only). */
89
+ allocationResult(party, updateId) {
90
+ return this.req("GET", `/v1/wallet/${encodeURIComponent(party)}/allocation-result?updateId=${encodeURIComponent(updateId)}`);
91
+ }
92
+ /** x402-escrow "Design A": read the created `X402Escrow` cid off the
93
+ * `X402EscrowOffer_Accept` transaction (the agent is relay-only). Mirrors
94
+ * `allocationResult`: the relay reads the tx by updateId and matches the created
95
+ * `X402Escrow` template. Requires a matching facilitator-side `escrow-result`
96
+ * endpoint (a `getTransactionById` + templateId-endsWith match, exactly like
97
+ * `allocation-result`). */
98
+ escrowResult(party, updateId) {
99
+ return this.req("GET", `/v1/wallet/${encodeURIComponent(party)}/escrow-result?updateId=${encodeURIComponent(updateId)}`);
100
+ }
101
+ /** x402-direct "Design B": resolve OR mint the standing both-party
102
+ * DirectSettlementConsent for the {sender, merchant} pair (the facilitator
103
+ * exercises MerchantConsent_Accept ALONE off the two standing consents). The
104
+ * client may pass the returned cid as the O(1) /settle fast-path
105
+ * (payload.directConsentCid). Idempotent: returns an existing consent
106
+ * (minted:false) when one is already standing; throws (relay error) when either
107
+ * party has not onboarded its once-total SenderConsent / MerchantConsent yet. */
108
+ mintDirectConsent(b) {
109
+ return this.req("POST", "/v1/wallet/direct/mint", b);
110
+ }
111
+ /** x402-direct "Design B": read back the standing DirectSettlementConsent cid for
112
+ * the {party(sender), merchant} pair, or 404 (surfaced as a thrown relay error)
113
+ * when none exists yet. */
114
+ directConsent(party, merchant) {
115
+ return this.req("GET", `/v1/wallet/${encodeURIComponent(party)}/direct-consent?merchant=${encodeURIComponent(merchant)}`);
116
+ }
67
117
  /** v1: resolve the cid of the just-created TransferCommand via the relay.
68
118
  * Pass the create's `updateId` (from execute) so the relay reads the cid
69
119
  * straight off that transaction — O(1) and immune to the ACS list cap the
@@ -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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"}