@intent-engine/cli 0.1.42 → 0.1.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/dist/src/accounts.d.ts +4 -2
  2. package/dist/src/accounts.js +5 -4
  3. package/dist/src/accounts.js.map +1 -1
  4. package/dist/src/add-to.js +2 -2
  5. package/dist/src/add-to.js.map +1 -1
  6. package/dist/src/admin-commands.d.ts +22 -1
  7. package/dist/src/admin-commands.js +44 -12
  8. package/dist/src/admin-commands.js.map +1 -1
  9. package/dist/src/agent/actions.d.ts +1 -0
  10. package/dist/src/agent/actions.js +15 -1
  11. package/dist/src/agent/actions.js.map +1 -1
  12. package/dist/src/agent/budget.d.ts +5 -5
  13. package/dist/src/agent/budget.js +26 -6
  14. package/dist/src/agent/budget.js.map +1 -1
  15. package/dist/src/agent/claims.d.ts +2 -1
  16. package/dist/src/agent/claims.js +1 -1
  17. package/dist/src/agent/claims.js.map +1 -1
  18. package/dist/src/agent/create.d.ts +16 -7
  19. package/dist/src/agent/create.js +25 -3
  20. package/dist/src/agent/create.js.map +1 -1
  21. package/dist/src/agent/jobs.js +8 -3
  22. package/dist/src/agent/jobs.js.map +1 -1
  23. package/dist/src/agent/mandate-agent.js +3 -2
  24. package/dist/src/agent/mandate-agent.js.map +1 -1
  25. package/dist/src/agent/mandate-revoke.js +1 -1
  26. package/dist/src/agent/mandate-revoke.js.map +1 -1
  27. package/dist/src/agent/owner.js +4 -2
  28. package/dist/src/agent/owner.js.map +1 -1
  29. package/dist/src/agent/prepare.d.ts +1 -1
  30. package/dist/src/agent/prepare.js +9 -2
  31. package/dist/src/agent/prepare.js.map +1 -1
  32. package/dist/src/agent/problems.d.ts +18 -0
  33. package/dist/src/agent/problems.js +29 -5
  34. package/dist/src/agent/problems.js.map +1 -1
  35. package/dist/src/agent/profile.d.ts +1 -0
  36. package/dist/src/agent/profile.js +30 -5
  37. package/dist/src/agent/profile.js.map +1 -1
  38. package/dist/src/agent/read.js +3 -4
  39. package/dist/src/agent/read.js.map +1 -1
  40. package/dist/src/agent/reputation.js +16 -7
  41. package/dist/src/agent/reputation.js.map +1 -1
  42. package/dist/src/agent/sales.js +17 -23
  43. package/dist/src/agent/sales.js.map +1 -1
  44. package/dist/src/agent/settle.js +1 -0
  45. package/dist/src/agent/settle.js.map +1 -1
  46. package/dist/src/agent/signed-prepare.js +3 -2
  47. package/dist/src/agent/signed-prepare.js.map +1 -1
  48. package/dist/src/agent/signed-relay.d.ts +1 -1
  49. package/dist/src/agent/signed-relay.js +2 -1
  50. package/dist/src/agent/signed-relay.js.map +1 -1
  51. package/dist/src/agent/signed-submit.js +7 -5
  52. package/dist/src/agent/signed-submit.js.map +1 -1
  53. package/dist/src/agent/signed-terms.d.ts +1 -5
  54. package/dist/src/agent/spec.js +16 -4
  55. package/dist/src/agent/spec.js.map +1 -1
  56. package/dist/src/agent/wallet/account.js +2 -1
  57. package/dist/src/agent/wallet/account.js.map +1 -1
  58. package/dist/src/agent/wallet/attest.d.ts +2 -0
  59. package/dist/src/agent/wallet/attest.js +46 -24
  60. package/dist/src/agent/wallet/attest.js.map +1 -1
  61. package/dist/src/agent/wallet/committee.js +29 -17
  62. package/dist/src/agent/wallet/committee.js.map +1 -1
  63. package/dist/src/agent/wallet/delivery.d.ts +4 -1
  64. package/dist/src/agent/wallet/delivery.js +80 -23
  65. package/dist/src/agent/wallet/delivery.js.map +1 -1
  66. package/dist/src/agent/wallet/escrow.js +9 -4
  67. package/dist/src/agent/wallet/escrow.js.map +1 -1
  68. package/dist/src/agent/wallet/fills.js +4 -3
  69. package/dist/src/agent/wallet/fills.js.map +1 -1
  70. package/dist/src/agent/wallet/guard.d.ts +32 -0
  71. package/dist/src/agent/wallet/guard.js +131 -9
  72. package/dist/src/agent/wallet/guard.js.map +1 -1
  73. package/dist/src/agent/wallet/history.js +2 -2
  74. package/dist/src/agent/wallet/history.js.map +1 -1
  75. package/dist/src/agent/wallet/offer.d.ts +18 -0
  76. package/dist/src/agent/wallet/offer.js +2 -1
  77. package/dist/src/agent/wallet/offer.js.map +1 -1
  78. package/dist/src/agent/wallet/openings.d.ts +37 -0
  79. package/dist/src/agent/wallet/openings.js +73 -0
  80. package/dist/src/agent/wallet/openings.js.map +1 -0
  81. package/dist/src/agent/wallet/receipt.d.ts +6 -0
  82. package/dist/src/agent/wallet/receipt.js +21 -3
  83. package/dist/src/agent/wallet/receipt.js.map +1 -1
  84. package/dist/src/agent/wallet/record.d.ts +3 -2
  85. package/dist/src/agent/wallet/record.js +16 -10
  86. package/dist/src/agent/wallet/record.js.map +1 -1
  87. package/dist/src/agent/wallet/split.d.ts +1 -0
  88. package/dist/src/agent/wallet/split.js +84 -57
  89. package/dist/src/agent/wallet/split.js.map +1 -1
  90. package/dist/src/agent/wallet/trade.js +2 -1
  91. package/dist/src/agent/wallet/trade.js.map +1 -1
  92. package/dist/src/agent/wallet/unwrap.js +2 -1
  93. package/dist/src/agent/wallet/unwrap.js.map +1 -1
  94. package/dist/src/agent/work-claims.js +3 -2
  95. package/dist/src/agent/work-claims.js.map +1 -1
  96. package/dist/src/arg-admin.d.ts +1 -1
  97. package/dist/src/arg-admin.js +4 -0
  98. package/dist/src/arg-admin.js.map +1 -1
  99. package/dist/src/arg-options.d.ts +64 -2
  100. package/dist/src/arg-options.js +34 -9
  101. package/dist/src/arg-options.js.map +1 -1
  102. package/dist/src/arg-solve.d.ts +6 -0
  103. package/dist/src/arg-solve.js +46 -1
  104. package/dist/src/arg-solve.js.map +1 -1
  105. package/dist/src/arg-usage.d.ts +2 -2
  106. package/dist/src/arg-usage.js +13 -9
  107. package/dist/src/arg-usage.js.map +1 -1
  108. package/dist/src/arg-values.d.ts +20 -1
  109. package/dist/src/arg-values.js +72 -2
  110. package/dist/src/arg-values.js.map +1 -1
  111. package/dist/src/args.d.ts +4 -1
  112. package/dist/src/args.js +39 -9
  113. package/dist/src/args.js.map +1 -1
  114. package/dist/src/claim-commands.js +24 -4
  115. package/dist/src/claim-commands.js.map +1 -1
  116. package/dist/src/clusters.d.ts +1 -0
  117. package/dist/src/clusters.js +1 -0
  118. package/dist/src/clusters.js.map +1 -1
  119. package/dist/src/command-types.d.ts +48 -1
  120. package/dist/src/commands.js +37 -8
  121. package/dist/src/commands.js.map +1 -1
  122. package/dist/src/committee-commands.d.ts +13 -2
  123. package/dist/src/committee-commands.js +58 -11
  124. package/dist/src/committee-commands.js.map +1 -1
  125. package/dist/src/crank.d.ts +3 -3
  126. package/dist/src/crank.js +11 -9
  127. package/dist/src/crank.js.map +1 -1
  128. package/dist/src/float-commands.d.ts +17 -0
  129. package/dist/src/float-commands.js +94 -0
  130. package/dist/src/float-commands.js.map +1 -0
  131. package/dist/src/flow-commands.js +2 -2
  132. package/dist/src/flow-commands.js.map +1 -1
  133. package/dist/src/flows.d.ts +2 -2
  134. package/dist/src/flows.js +8 -2
  135. package/dist/src/flows.js.map +1 -1
  136. package/dist/src/job-args.js +16 -3
  137. package/dist/src/job-args.js.map +1 -1
  138. package/dist/src/job-commands.js +39 -10
  139. package/dist/src/job-commands.js.map +1 -1
  140. package/dist/src/job-filters.d.ts +15 -3
  141. package/dist/src/job-filters.js +31 -6
  142. package/dist/src/job-filters.js.map +1 -1
  143. package/dist/src/judge-digest.d.ts +7 -0
  144. package/dist/src/judge-digest.js +27 -0
  145. package/dist/src/judge-digest.js.map +1 -0
  146. package/dist/src/judge-watch.js +16 -6
  147. package/dist/src/judge-watch.js.map +1 -1
  148. package/dist/src/judge.d.ts +18 -1
  149. package/dist/src/judge.js +87 -17
  150. package/dist/src/judge.js.map +1 -1
  151. package/dist/src/ledger-keys.d.ts +4 -1
  152. package/dist/src/ledger-keys.js +21 -5
  153. package/dist/src/ledger-keys.js.map +1 -1
  154. package/dist/src/legacy-commands.d.ts +8 -0
  155. package/dist/src/legacy-commands.js +94 -0
  156. package/dist/src/legacy-commands.js.map +1 -0
  157. package/dist/src/main.d.ts +3 -0
  158. package/dist/src/main.js +5 -0
  159. package/dist/src/main.js.map +1 -1
  160. package/dist/src/migrate-commands.d.ts +10 -0
  161. package/dist/src/migrate-commands.js +127 -0
  162. package/dist/src/migrate-commands.js.map +1 -0
  163. package/dist/src/monitor.d.ts +5 -1
  164. package/dist/src/monitor.js +31 -4
  165. package/dist/src/monitor.js.map +1 -1
  166. package/dist/src/release-simulation.d.ts +3 -2
  167. package/dist/src/release-simulation.js +1 -0
  168. package/dist/src/release-simulation.js.map +1 -1
  169. package/dist/src/sealed-commands.d.ts +6 -0
  170. package/dist/src/sealed-commands.js +19 -1
  171. package/dist/src/sealed-commands.js.map +1 -1
  172. package/dist/src/solve-commands.d.ts +3 -1
  173. package/dist/src/solve-commands.js +31 -4
  174. package/dist/src/solve-commands.js.map +1 -1
  175. package/dist/src/trust-args.d.ts +4 -2
  176. package/dist/src/trust-args.js +24 -7
  177. package/dist/src/trust-args.js.map +1 -1
  178. package/dist/src/version.d.ts +1 -1
  179. package/dist/src/version.js +1 -1
  180. package/dist/src/wallet.d.ts +8 -2
  181. package/dist/src/wallet.js +44 -7
  182. package/dist/src/wallet.js.map +1 -1
  183. package/package.json +5 -4
@@ -0,0 +1,127 @@
1
+ import { createNoopSigner, getAddressDecoder } from "@solana/kit";
2
+ import { boardTerms, buildMigrate, findConfigPda, INTENT_ENGINE_PROGRAM_ADDRESS, isConfigAccount, isCurrentAccount, migrationOf, storedVersion } from "@intent-engine/core";
3
+ import { rentExemptFor, rentSysvar } from "@intent-engine/client";
4
+ import { AUTHORITY_NEXT, previewed, unsignedFor } from "./admin-commands.js";
5
+ import { transactionSigner } from "./ledger-keys.js";
6
+ import { NOT_SENT } from "./flows.js";
7
+ export const MIGRATE_BATCH = 8;
8
+ const ADMIN_AT = 8;
9
+ export const NOTHING_TO_MIGRATE = "nothing to migrate: every engine account is current or needs close-legacy";
10
+ const adminOf = (data) => getAddressDecoder().decode(data, ADMIN_AT);
11
+ async function listed(command, transport) {
12
+ if (command.address !== null) {
13
+ const view = await transport.getAccount(command.address);
14
+ if (view === null) {
15
+ throw new Error(`${command.address} does not exist`);
16
+ }
17
+ if (view.owner !== INTENT_ENGINE_PROGRAM_ADDRESS) {
18
+ throw new Error(`${command.address} is not an engine account; migrate rewrites only accounts the engine program owns`);
19
+ }
20
+ return [{ address: command.address, data: view.data, lamports: view.lamports }];
21
+ }
22
+ if (transport.engineAccounts === undefined) {
23
+ throw new Error("this connection cannot list program accounts; migrate them one by one with --address");
24
+ }
25
+ return transport.engineAccounts();
26
+ }
27
+ function unread(entry) {
28
+ const stored = storedVersion(entry.data);
29
+ return stored === null
30
+ ? `engine account of ${entry.data.length} bytes that matches no account type; close it with intent-engine close-legacy`
31
+ : `${stored.layout.name} account in a layout no program version wrote: version ${stored.version}, ${entry.data.length} bytes; close it with intent-engine close-legacy`;
32
+ }
33
+ const countBy = (names) => Object.fromEntries([...new Set(names)].sort().map((name) => [name, names.filter((n) => n === name).length]));
34
+ const batchesOf = (items) => Array.from({ length: Math.ceil(items.length / MIGRATE_BATCH) }, (_, i) => items.slice(i * MIGRATE_BATCH, (i + 1) * MIGRATE_BATCH));
35
+ const topUpFor = (rent, entry, from, to) => {
36
+ const newMin = rentExemptFor(rent, to);
37
+ const grown = entry.lamports + newMin - rentExemptFor(rent, from);
38
+ const floor = newMin + (boardTerms(entry.data)?.held ?? 0n);
39
+ const [target = floor] = [grown, floor].sort((a, b) => Number(b - a));
40
+ return target - entry.lamports;
41
+ };
42
+ const errorText = (error) => (error instanceof Error ? error.message : String(error));
43
+ export async function migrate(command, runtime, transport) {
44
+ const payer = await transactionSigner(runtime, command.keypair);
45
+ const [config] = await findConfigPda();
46
+ const found = await listed(command, transport);
47
+ const current = found.filter((entry) => isCurrentAccount(entry.data));
48
+ const outdated = found.filter((entry) => !isCurrentAccount(entry.data));
49
+ const unmigrated = outdated.filter((entry) => migrationOf(entry.data) === null).map((entry) => ({ address: entry.address, reason: unread(entry) }));
50
+ const one = command.address === null ? null : (found[0] ?? null);
51
+ if (one !== null && current.length > 0) {
52
+ throw new Error(`${one.address} is a current ${storedVersion(one.data)?.layout.name ?? "engine"} account; there is nothing to migrate`);
53
+ }
54
+ if (one !== null && unmigrated.length > 0) {
55
+ throw new Error(`${one.address} cannot migrate: ${unread(one)}`);
56
+ }
57
+ const rent = await rentSysvar(transport);
58
+ const planned = outdated.flatMap((entry) => {
59
+ const migration = migrationOf(entry.data);
60
+ if (migration === null) {
61
+ return [];
62
+ }
63
+ const { layout, from } = migration;
64
+ const topUp = from.space < layout.space ? topUpFor(rent, entry, from.space, layout.space) : 0n;
65
+ const view = `${layout.name} account: version ${from.version}, ${from.space} bytes -> version ${layout.version}, ${layout.space} bytes`;
66
+ return [{ ...entry, name: layout.name, from: view, topUp }];
67
+ });
68
+ const configEntry = planned.find((entry) => isConfigAccount(entry.data));
69
+ const admin = configEntry === undefined ? null : adminOf(configEntry.data);
70
+ const byPayer = planned.filter((entry) => entry !== configEntry || admin === payer.address);
71
+ const proposal = admin === null || admin === payer.address
72
+ ? null
73
+ : await unsignedFor(transport, admin, [await buildMigrate({ payer: createNoopSigner(admin), account: config })]);
74
+ const instructions = await Promise.all(byPayer.map((entry) => buildMigrate({ payer, account: entry.address, ...(isConfigAccount(entry.data) ? {} : { config }) })));
75
+ const batches = batchesOf(instructions);
76
+ const topUp = byPayer.reduce((sum, entry) => sum + entry.topUp, 0n);
77
+ const configTopUp = configEntry?.topUp ?? 0n;
78
+ const adminTopUp = proposal === null ? 0n : configTopUp;
79
+ const counts = countBy(byPayer.map((entry) => entry.name));
80
+ const summary = [
81
+ one === null
82
+ ? `Migrates ${byPayer.length} outdated engine accounts in ${batches.length} transactions: ${Object.entries(counts).map(([name, n]) => `${n} ${name}`).join(", ") || "none"}`
83
+ : `Migrates ${one.address}, an outdated ${planned[0]?.from ?? "engine account"}`,
84
+ ...(topUp === 0n ? [] : [`Pays ${topUp} lamports of rent from ${payer.address} for the accounts that grow; no account loses lamports`]),
85
+ ...(one === null ? [`Skips ${current.length} accounts that are already current`] : []),
86
+ ...(unmigrated.length === 0 ? [] : [`Cannot migrate ${unmigrated.length} accounts of a layout no program version wrote; close them with intent-engine close-legacy`]),
87
+ ...(proposal === null
88
+ ? []
89
+ : [
90
+ `Only the admin ${admin} migrates the config: import config_proposal.transaction_base58 into the multisig as a proposal`,
91
+ ...(adminTopUp === 0n ? [] : [`The admin ${admin} pays ${adminTopUp} lamports of rent for the config and must hold them before the proposal executes`]),
92
+ ]),
93
+ ];
94
+ const shown = {
95
+ payer: payer.address,
96
+ migrate: counts,
97
+ current: current.length,
98
+ unmigrated,
99
+ top_up_lamports: topUp + adminTopUp,
100
+ ...(configEntry === undefined ? {} : { config: { address: configEntry.address, admin, top_up_lamports: configTopUp } }),
101
+ transactions: batches.length,
102
+ ...(proposal === null ? {} : { config_proposal: proposal }),
103
+ summary,
104
+ };
105
+ if (instructions.length === 0) {
106
+ return { ...shown, sent: false, next: proposal === null ? NOTHING_TO_MIGRATE : AUTHORITY_NEXT };
107
+ }
108
+ if (one !== null) {
109
+ return previewed(transport, instructions, payer, shown, command.yes);
110
+ }
111
+ if (!command.yes) {
112
+ return { ...shown, sent: false, next: NOT_SENT };
113
+ }
114
+ const signatures = [];
115
+ const failed = [];
116
+ for (const [at, batch] of batches.entries()) {
117
+ const accounts = byPayer.slice(at * MIGRATE_BATCH, at * MIGRATE_BATCH + batch.length).map((entry) => entry.address);
118
+ try {
119
+ signatures.push(await transport.send(batch, payer));
120
+ }
121
+ catch (error) {
122
+ failed.push({ accounts, error: errorText(error) });
123
+ }
124
+ }
125
+ return { ...shown, sent: true, signatures, failed };
126
+ }
127
+ //# sourceMappingURL=migrate-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate-commands.js","sourceRoot":"","sources":["../../src/migrate-commands.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ export type Snapshot = {
22
22
  upgradeAuthority: string | null;
23
23
  programHash: string | null;
24
24
  };
25
- export type AlertKind = "config" | "upgrade-authority" | "program-hash" | "fill-amount" | "fill-rate" | "rpc";
25
+ export type AlertKind = "config" | "upgrade-authority" | "program-hash" | "fill-amount" | "fill-rate" | "mint-cap" | "rpc";
26
26
  export type Alert = {
27
27
  kind: AlertKind;
28
28
  field: string;
@@ -53,6 +53,10 @@ export type MonitorState = {
53
53
  seen: Set<string> | null;
54
54
  };
55
55
  export declare const freshState: () => MonitorState;
56
+ export declare function capStatus(mint: Address, cap: {
57
+ outstanding: bigint;
58
+ totalLimit: bigint;
59
+ } | null): string;
56
60
  export declare function checkOnce(transport: Transport, baseline: Baseline, spec: MonitorSpec, state: MonitorState, now: bigint, url: string): Promise<Alert[]>;
57
61
  export declare const line: (alert: Alert) => string;
58
62
  export declare function monitor(url: string, file: string, spec: MonitorSpec, runtime: Runtime, transport: Transport, io: Io): Promise<number>;
@@ -1,7 +1,7 @@
1
1
  import { createHash } from "node:crypto";
2
2
  import { getAddressDecoder } from "@solana/kit";
3
3
  import { findConfigPda, findProgramDataAddress, getConfigDecoder, getConfigDiscriminatorBytes, INTENT_ENGINE_PROGRAM_ADDRESS, } from "@intent-engine/core";
4
- import { CLOCK_SYSVAR } from "@intent-engine/client";
4
+ import { CLOCK_SYSVAR, loadMintCap } from "@intent-engine/client";
5
5
  import { UsageError } from "./arg-values.js";
6
6
  import { fillsIn, inputMintsOf } from "./monitor-fills.js";
7
7
  import { printableLines, redactUrl, render } from "./render.js";
@@ -149,6 +149,26 @@ export async function readBaseline(file, runtime) {
149
149
  }
150
150
  const same = (a, b) => JSON.stringify(a) === JSON.stringify(b);
151
151
  export const freshState = () => ({ alerted: new Map(), lastSlot: null, stalledFor: 0, failing: false, seen: null });
152
+ export function capStatus(mint, cap) {
153
+ if (cap === null) {
154
+ return `${mint} has no mint cap`;
155
+ }
156
+ const limit = cap.totalLimit === 0n ? "no total limit" : `a total limit of ${cap.totalLimit}`;
157
+ return `mint cap of ${mint}: ${cap.outstanding} raw units outstanding, ${limit}`;
158
+ }
159
+ async function capFindings(transport, spec, slot) {
160
+ const found = [];
161
+ for (const mint of spec.maxFill.keys()) {
162
+ const cap = (await loadMintCap(transport, mint))?.cap;
163
+ if (cap !== undefined && cap.totalLimit > 0n && cap.outstanding >= cap.totalLimit) {
164
+ found.push({
165
+ key: `mintCap.${mint}`,
166
+ alert: { kind: "mint-cap", field: mint, expected: `below ${cap.totalLimit}`, observed: cap.outstanding.toString(), slot: Number(slot) },
167
+ });
168
+ }
169
+ }
170
+ return found;
171
+ }
152
172
  function differences(baseline, now) {
153
173
  const slot = Number(now.slot);
154
174
  const found = [];
@@ -169,8 +189,7 @@ function differences(baseline, now) {
169
189
  compare("programHash", "program-hash", "programHash", baseline.programHash, now.programHash ?? MISSING);
170
190
  return found;
171
191
  }
172
- function stateAlerts(baseline, now, state) {
173
- const found = differences(baseline, now);
192
+ function stateAlerts(found, state) {
174
193
  const keys = new Set(found.map((f) => f.key));
175
194
  for (const key of [...state.alerted.keys()]) {
176
195
  if (!keys.has(key)) {
@@ -246,7 +265,7 @@ export async function checkOnce(transport, baseline, spec, state, now, url) {
246
265
  try {
247
266
  const current = await snapshot(transport);
248
267
  alerts = [
249
- ...stateAlerts(baseline, current, state),
268
+ ...stateAlerts([...differences(baseline, current), ...(await capFindings(transport, spec, current.slot))], state),
250
269
  ...slotAlerts(current, state),
251
270
  ...(await fillAlerts(transport, spec, state, now - BigInt(spec.interval))),
252
271
  ];
@@ -282,6 +301,14 @@ export async function monitor(url, file, spec, runtime, transport, io) {
282
301
  const state = freshState();
283
302
  io.err(`watching program ${INTENT_ENGINE_PROGRAM_ADDRESS} on ${redactUrl(url)} every ${spec.interval}s` +
284
303
  (spec.webhook === null ? "" : `; alerts also go to ${redactUrl(spec.webhook)}`));
304
+ for (const mint of spec.maxFill.keys()) {
305
+ try {
306
+ io.err(capStatus(mint, (await loadMintCap(transport, mint))?.cap ?? null));
307
+ }
308
+ catch (error) {
309
+ io.err(`the mint cap of ${mint} cannot be read: ${scrubbed(error instanceof Error ? error.message : String(error), url)}`);
310
+ }
311
+ }
285
312
  let raised = 0;
286
313
  for (;;) {
287
314
  for (const alert of await checkOnce(transport, baseline, spec, state, runtime.now(), url)) {
@@ -1 +1 @@
1
- {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/monitor.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Address, KeyPairSigner } from "@solana/kit";
1
+ import type { Address, MessagePartialSigner, TransactionPartialSigner } from "@solana/kit";
2
2
  import { type Transport } from "@intent-engine/client";
3
3
  export type SimulatedRelease = {
4
4
  ok: true;
@@ -14,5 +14,6 @@ export type ReleaseInput = {
14
14
  payTo: Address;
15
15
  result: bigint;
16
16
  sha256: string;
17
+ salt?: string | undefined;
17
18
  };
18
- export declare function simulateRelease(transport: Transport, judge: KeyPairSigner, release: ReleaseInput): Promise<SimulatedRelease>;
19
+ export declare function simulateRelease(transport: Transport, judge: TransactionPartialSigner & MessagePartialSigner, release: ReleaseInput): Promise<SimulatedRelease>;
@@ -28,6 +28,7 @@ export async function simulateRelease(transport, judge, release) {
28
28
  payTo: release.payTo,
29
29
  result: release.result,
30
30
  deliveredSha256: release.sha256,
31
+ ...(release.salt === undefined ? {} : { deliveredSalt: release.salt }),
31
32
  });
32
33
  }
33
34
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"release-simulation.js","sourceRoot":"","sources":["../../src/release-simulation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAmB,SAAS,EAAkB,MAAM,uBAAuB,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAMvF,MAAM,SAAU,SAAQ,KAAK;IAClB,UAAU,CAAa;IAEhC,YAAY,UAAsB;QAChC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAED,SAAS,aAAa,CAAC,IAAuB;IAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,6BAA6B,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAClJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAoB,EAAE,KAAoB,EAAE,OAAqB;IACrG,MAAM,KAAK,GAAc;QACvB,GAAG,YAAY,CAAC,SAAS,CAAC;QAC1B,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,IAAI,SAAS,CAAC,MAAM,SAAS,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/E,CAAC;KACF,CAAC;IACF,IAAI,CAAC;QACH,MAAM,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC;YACrE,KAAK;YACL,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,eAAe,EAAE,OAAO,CAAC,MAAM;SAChC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC;YACtD,OAAO,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACrI,CAAC;QACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QAC1C,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACtF,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,2CAA2C,EAAE,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"file":"release-simulation.js","sourceRoot":"","sources":["../../src/release-simulation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAmB,SAAS,EAAkB,MAAM,uBAAuB,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAMvF,MAAM,SAAU,SAAQ,KAAK;IAClB,UAAU,CAAa;IAEhC,YAAY,UAAsB;QAChC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAED,SAAS,aAAa,CAAC,IAAuB;IAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,6BAA6B,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAClJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAoB,EAAE,KAAsD,EAAE,OAAqB;IACvI,MAAM,KAAK,GAAc;QACvB,GAAG,YAAY,CAAC,SAAS,CAAC;QAC1B,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,IAAI,SAAS,CAAC,MAAM,SAAS,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/E,CAAC;KACF,CAAC;IACF,IAAI,CAAC;QACH,MAAM,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC;YACrE,KAAK;YACL,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,eAAe,EAAE,OAAO,CAAC,MAAM;YAC/B,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;SACvE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC;YACtD,OAAO,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACrI,CAAC;QACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QAC1C,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACtF,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,2CAA2C,EAAE,CAAC;AAC3E,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { Address } from "@solana/kit";
2
+ import { type DeliveryKey } from "@intent-engine/core";
2
3
  import { type Transport } from "@intent-engine/client";
3
4
  import type { Command } from "./command-types.js";
4
5
  import type { Runtime } from "./runtime.js";
@@ -8,6 +9,11 @@ type Sealing = Extract<Command, {
8
9
  type Reading = Extract<Command, {
9
10
  name: "spec";
10
11
  }>;
12
+ export declare const encryptionKeyLines: (key: string | null, removed: boolean) => string[];
13
+ export declare const encryptionKeyNext: (publicKey: string) => string;
14
+ export declare function newEncryptionKey(out: string, runtime: Runtime): Promise<object>;
15
+ export declare function loadEncryptionKeys(runtime: Runtime, paths?: readonly string[]): Promise<DeliveryKey[]>;
16
+ export declare function loadEncryptionKey(runtime: Runtime, path: string): Promise<DeliveryKey>;
11
17
  export declare const MAX_SEALED_INPUT = 67108864;
12
18
  export declare const jobClosed: (intent: Address) => string;
13
19
  export declare function sealing(command: Sealing, runtime: Runtime): Promise<object>;
@@ -1,8 +1,26 @@
1
1
  import { createHash } from "node:crypto";
2
2
  import { readFile, writeFile } from "node:fs/promises";
3
- import { NotInvited, seal, sealedTo, SealedError, unseal } from "@intent-engine/core";
3
+ import { EncryptionKeyError, newEncryptionKeyFile, NotInvited, readEncryptionKeyFile, seal, sealedTo, SealedError, unseal } from "@intent-engine/core";
4
4
  import { createClient, SpecSealed, SpecUnreadable } from "@intent-engine/client";
5
5
  import { FlowRefused } from "./flows.js";
6
+ export const encryptionKeyLines = (key, removed) => key !== null ? [`Encryption key: ${key}; deliveries are sealed to it`] : removed ? ["Encryption key: none; deliveries are sealed to the key derived from the wallet"] : [];
7
+ export const encryptionKeyNext = (publicKey) => `publish the public key with profile set --encryption-key ${publicKey}, then judge with --encryption-keypair naming this file; it only decrypts and never signs`;
8
+ export async function newEncryptionKey(out, runtime) {
9
+ const { text, publicKey } = await newEncryptionKeyFile();
10
+ await runtime.saveText(out, text, true);
11
+ return { out, encryption_key: publicKey, next: encryptionKeyNext(publicKey) };
12
+ }
13
+ export async function loadEncryptionKeys(runtime, paths = []) {
14
+ return Promise.all(paths.map((path) => loadEncryptionKey(runtime, path)));
15
+ }
16
+ export async function loadEncryptionKey(runtime, path) {
17
+ try {
18
+ return await readEncryptionKeyFile(await runtime.readText(path));
19
+ }
20
+ catch (error) {
21
+ throw error instanceof EncryptionKeyError ? new FlowRefused(`--encryption-keypair ${path}: ${error.message}`) : error;
22
+ }
23
+ }
6
24
  export const MAX_SEALED_INPUT = 67_108_864;
7
25
  export const jobClosed = (intent) => `the job ${intent} is closed: it was paid, cancelled or expired, or never existed`;
8
26
  const sha256 = (bytes) => createHash("sha256").update(bytes).digest("hex");
@@ -1 +1 @@
1
- {"version":3,"file":"sealed-commands.js","sourceRoot":"","sources":["../../src/sealed-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAkB,MAAM,uBAAuB,CAAC;AAEjG,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAMzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;AAE3C,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAe,EAAU,EAAE,CAAC,WAAW,MAAM,iEAAiE,CAAC;AAEzI,MAAM,MAAM,GAAG,CAAC,KAAiB,EAAU,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE/F,KAAK,UAAU,OAAO,CAAC,IAAY;IACjC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,IAAI,KAAK,CAAC,MAAM,GAAG,gBAAgB,EAAE,CAAC;QACpC,MAAM,IAAI,WAAW,CAAC,GAAG,IAAI,mBAAmB,gBAAgB,QAAQ,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAgB,EAAE,OAAgB;IAC9D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;IAC1G,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,KAAiB,CAAC;IACtB,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,YAAY,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5K,CAAC;IACD,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAgB,EAAE,OAAgB,EAAE,SAAoB;IACxF,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,IAAgD,EAAE,EAAE,CAC9E,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACtC,MAAM,IAAI,cAAc,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IACL,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvG,IAAI,IAAI,CAAC;IACT,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,YAAY,UAAU,IAAI,KAAK,YAAY,cAAc,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAChH,CAAC;IACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,WAAW,CAAC,CAAC,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,OAAO,CAAC,MAAM,8EAA8E,CAAC,CAAC;IACxN,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,MAAM,MAAM,GAA0B,IAAI,CAAC,QAAQ,CAAC;IACpD,OAAO;QACL,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QACtD,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KAC5E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"sealed-commands.js","sourceRoot":"","sources":["../../src/sealed-commands.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { Address } from "@solana/kit";
2
2
  import { type Intent } from "@intent-engine/core";
3
3
  import { type Flight, type Pricer, type SolverOptions } from "@intent-engine/solver";
4
- import { type ProgramAccount, type Transport } from "@intent-engine/client";
4
+ import { ConfirmMismatch, type ProgramAccount, type Transport } from "@intent-engine/client";
5
5
  import type { Command } from "./command-types.js";
6
6
  import type { Runtime } from "./runtime.js";
7
7
  export declare const ENV_JUPITER_KEY = "JUPITER_API_KEY";
@@ -11,6 +11,8 @@ export declare const SOLVER_TABLE_NEXT = "put these in an address lookup table y
11
11
  export type SolveCommand = Extract<Command, {
12
12
  name: "solve";
13
13
  }>;
14
+ export declare const secondNodeSkip: (error: ConfirmMismatch) => string;
15
+ export declare function confirmedFill(transport: Transport, second: Transport): (intent: Address, accounts: readonly Address[]) => Promise<string | null>;
14
16
  export declare const IN_FLIGHT_SECONDS = 90n;
15
17
  export declare const REFRESH_AFTER_SECONDS = 60n;
16
18
  export declare function decodedChanges(changed: readonly ProgramAccount[]): {
@@ -1,6 +1,7 @@
1
- import { findAssociatedTokenAddress, getIntentDecoder, IntentStatus } from "@intent-engine/core";
2
- import { cachedPricer, answered, decodeLookupTable, firstPricer, heldBy, inventoryPricer, landings, releaseHolds, issuePricer, backoff, jitoBundles, jupiterPricer, MAX_BUNDLE, remembering, tick, tipAccount, unheld, } from "@intent-engine/solver";
3
- import { chainTime, createdAccount, loadConfig, tokenAmountOf, tokenProgramOf, } from "@intent-engine/client";
1
+ import { findAssociatedTokenAddress, findVaultPda, getIntentDecoder, IntentStatus } from "@intent-engine/core";
2
+ import { cachedPricer, answered, decodeLookupTable, firstPricer, allowanceOf, heldBy, inventoryPricer, landings, releaseHolds, issuePricer, backoff, jitoBundles, jupiterPricer, MAX_BUNDLE, remembering, tick, tipAccount, unheld, } from "@intent-engine/solver";
3
+ import { chainTime, ConfirmMismatch, confirmOnBoth, createdAccount, loadConfig, tokenAmountOf, tokenProgramOf, } from "@intent-engine/client";
4
+ import { rentRate } from "./agent/budget.js";
4
5
  import { priceOf, withPriority } from "./compute.js";
5
6
  import { QUOTE_TTL } from "./args.js";
6
7
  import { tally } from "./solve-stats.js";
@@ -12,6 +13,24 @@ export function jupiterHost(url) {
12
13
  return host === JUPITER_DOMAIN || host.endsWith(`.${JUPITER_DOMAIN}`);
13
14
  }
14
15
  export const SOLVER_TABLE_NEXT = "put these in an address lookup table you own (solana address-lookup-table create, then extend with them) and pass it to solve with --lookup-table";
16
+ export const secondNodeSkip = (error) => error.field === "second node"
17
+ ? `the second RPC node could not be read (${error.second}), so the fill was not sent`
18
+ : `the two RPC nodes report a different ${error.field}: the first ${error.first}, the second ${error.second}; the fill was not sent`;
19
+ export function confirmedFill(transport, second) {
20
+ return async (intent, accounts) => {
21
+ const [vault] = await findVaultPda({ intent });
22
+ try {
23
+ await confirmOnBoth(transport, second, { intent, accounts: [vault, ...accounts] });
24
+ return null;
25
+ }
26
+ catch (error) {
27
+ if (error instanceof ConfirmMismatch) {
28
+ return secondNodeSkip(error);
29
+ }
30
+ throw error;
31
+ }
32
+ };
33
+ }
15
34
  export const IN_FLIGHT_SECONDS = 90n;
16
35
  export const REFRESH_AFTER_SECONDS = 60n;
17
36
  export function decodedChanges(changed) {
@@ -99,6 +118,9 @@ export async function watchSolveWith(command, interval, runtime, transport, opti
99
118
  ...(order === undefined ? {} : { intent: order }),
100
119
  });
101
120
  }
121
+ if (report.low !== undefined) {
122
+ emit({ at: now, low: report.low });
123
+ }
102
124
  if (filled.length + sent.length + failed.length + lost.length > 0) {
103
125
  emit({ at: now, scan: full ? "full" : "changed", ms: Math.round(performance.now() - began), filled, sent, failed: [...lost, ...failed] });
104
126
  acted += filled.length + sent.length;
@@ -141,8 +163,10 @@ export async function solverOptions(command, runtime, transport, heldBack) {
141
163
  now: () => chainTime(transport),
142
164
  tokenProgram: (mint) => tokenProgramOf(transport, mint),
143
165
  mintData: async (mint) => (await transport.getAccount(mint))?.data ?? null,
166
+ rent: () => rentRate(transport),
144
167
  exists: async (address) => (await createdAccount(transport, address)) !== null,
145
168
  tokenAmount: async (address) => tokenAmountOf((await transport.getAccount(address))?.data ?? null) ?? 0n,
169
+ allowance: async (address, delegate) => allowanceOf((await transport.getAccount(address))?.data ?? null, delegate),
146
170
  lookupTables: async (addresses) => {
147
171
  const tables = {};
148
172
  for (const address of addresses) {
@@ -161,8 +185,9 @@ export async function solverOptions(command, runtime, transport, heldBack) {
161
185
  };
162
186
  const bundle = command.jito === undefined ? undefined : jitoBundles({ url: command.jito, fetch: runtime.fetch });
163
187
  const priced = (routes) => Promise.all(routes.map(async (route) => ({ ...route, outputTokenProgram: await tokenProgramOf(transport, route.outputMint) })));
188
+ const owner = command.inventoryOwner;
164
189
  const held = async (mint) => {
165
- const token = await findAssociatedTokenAddress({ owner: solver.address, mint, tokenProgram: await tokenProgramOf(transport, mint) });
190
+ const token = await findAssociatedTokenAddress({ owner: owner ?? solver.address, mint, tokenProgram: await tokenProgramOf(transport, mint) });
166
191
  return unheld(tokenAmountOf((await transport.getAccount(token))?.data ?? null) ?? 0n, heldBack?.(token) ?? 0n);
167
192
  };
168
193
  const stocked = command.inventory ?? [];
@@ -185,6 +210,7 @@ export async function solverOptions(command, runtime, transport, heldBack) {
185
210
  chain,
186
211
  pricer: firstPricer(...[inventory, routed].filter((pricer) => pricer !== null)),
187
212
  solver,
213
+ ...(owner === undefined ? {} : { inventoryOwner: owner }),
188
214
  strategy: {
189
215
  minProfit: command.minProfit,
190
216
  maxFeeBps: command.maxFeeBps,
@@ -194,6 +220,7 @@ export async function solverOptions(command, runtime, transport, heldBack) {
194
220
  },
195
221
  concurrency: command.concurrency,
196
222
  ...(heldBack === undefined ? {} : { held: heldBack }),
223
+ ...(command.confirmUrl === undefined ? {} : { confirm: confirmedFill(transport, runtime.transport(command.confirmUrl)) }),
197
224
  maxSolCost: command.maxSolCost,
198
225
  maxRent: command.maxRent,
199
226
  tip: command.tipLamports === 0n ? null : { account: tipAccount(runtime.entropy()), lamports: command.tipLamports },
@@ -1 +1 @@
1
- {"version":3,"file":"solve-commands.js","sourceRoot":"","sources":["../../src/solve-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solve-commands.js","sourceRoot":"","sources":["../../src/solve-commands.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,10 @@ export declare function committeeOf(sub: string | undefined, remote: Remote, val
5
5
  export declare function reputationOf(sub: string | undefined, remote: Remote, values: Values): Command;
6
6
  export declare function feedbackOf(sub: string | undefined, remote: Remote, values: Values): Command;
7
7
  export declare const CLAIMS_SUBS = "claims needs show, open, take, drop, settle, standby, leave or advance";
8
- export declare const PROFILE_SUBS = "profile needs show, set or close";
8
+ export declare const PROFILE_SUBS = "profile needs show, set, close or encryption-key new";
9
+ export declare const ENCRYPTION_KEY_SUB = "profile encryption-key needs new";
10
+ export declare const ENCRYPTION_KEY_TEXT = "--encryption-key is an X25519 public key: 32 bytes in base58, canonical and not of small order, or none to remove it";
9
11
  export declare const STAKE_FORMAT: string;
10
12
  export declare const PROFILE_RULE = "a profile needs --skills of 1 to 8 distinct tags, each 1 to 16 of a-z, 0-9 and - not starting or ending with -, an --endpoint of https:// and at most 128 printable characters without spaces or \\, and --doc-url only together with --doc-sha256";
11
13
  export declare function optionsFor(argv: readonly string[]): typeof OPTIONS;
12
- export declare function trustOf(verb: string, sub: string | undefined, remote: Remote, values: Values): Command;
14
+ export declare function trustOf(verb: string, sub: string | undefined, remote: Remote, values: Values, third?: string): Command;