@intent-engine/cli 0.1.41 → 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 (184) 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 +11 -4
  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 +22 -0
  33. package/dist/src/agent/problems.js +33 -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 +16 -6
  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 +70 -2
  100. package/dist/src/arg-options.js +39 -10
  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 +14 -10
  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.d.ts +6 -2
  115. package/dist/src/claim-commands.js +115 -6
  116. package/dist/src/claim-commands.js.map +1 -1
  117. package/dist/src/clusters.d.ts +1 -0
  118. package/dist/src/clusters.js +1 -0
  119. package/dist/src/clusters.js.map +1 -1
  120. package/dist/src/command-types.d.ts +65 -1
  121. package/dist/src/commands.js +40 -8
  122. package/dist/src/commands.js.map +1 -1
  123. package/dist/src/committee-commands.d.ts +13 -2
  124. package/dist/src/committee-commands.js +58 -11
  125. package/dist/src/committee-commands.js.map +1 -1
  126. package/dist/src/crank.d.ts +3 -3
  127. package/dist/src/crank.js +11 -9
  128. package/dist/src/crank.js.map +1 -1
  129. package/dist/src/float-commands.d.ts +17 -0
  130. package/dist/src/float-commands.js +94 -0
  131. package/dist/src/float-commands.js.map +1 -0
  132. package/dist/src/flow-commands.js +2 -2
  133. package/dist/src/flow-commands.js.map +1 -1
  134. package/dist/src/flows.d.ts +2 -2
  135. package/dist/src/flows.js +8 -2
  136. package/dist/src/flows.js.map +1 -1
  137. package/dist/src/job-args.js +16 -3
  138. package/dist/src/job-args.js.map +1 -1
  139. package/dist/src/job-commands.js +40 -10
  140. package/dist/src/job-commands.js.map +1 -1
  141. package/dist/src/job-filters.d.ts +15 -3
  142. package/dist/src/job-filters.js +31 -6
  143. package/dist/src/job-filters.js.map +1 -1
  144. package/dist/src/judge-digest.d.ts +7 -0
  145. package/dist/src/judge-digest.js +27 -0
  146. package/dist/src/judge-digest.js.map +1 -0
  147. package/dist/src/judge-watch.js +16 -6
  148. package/dist/src/judge-watch.js.map +1 -1
  149. package/dist/src/judge.d.ts +18 -1
  150. package/dist/src/judge.js +87 -17
  151. package/dist/src/judge.js.map +1 -1
  152. package/dist/src/ledger-keys.d.ts +4 -1
  153. package/dist/src/ledger-keys.js +21 -5
  154. package/dist/src/ledger-keys.js.map +1 -1
  155. package/dist/src/legacy-commands.d.ts +8 -0
  156. package/dist/src/legacy-commands.js +94 -0
  157. package/dist/src/legacy-commands.js.map +1 -0
  158. package/dist/src/main.d.ts +3 -0
  159. package/dist/src/main.js +5 -0
  160. package/dist/src/main.js.map +1 -1
  161. package/dist/src/migrate-commands.d.ts +10 -0
  162. package/dist/src/migrate-commands.js +127 -0
  163. package/dist/src/migrate-commands.js.map +1 -0
  164. package/dist/src/monitor.d.ts +5 -1
  165. package/dist/src/monitor.js +31 -4
  166. package/dist/src/monitor.js.map +1 -1
  167. package/dist/src/release-simulation.d.ts +3 -2
  168. package/dist/src/release-simulation.js +1 -0
  169. package/dist/src/release-simulation.js.map +1 -1
  170. package/dist/src/sealed-commands.d.ts +6 -0
  171. package/dist/src/sealed-commands.js +19 -1
  172. package/dist/src/sealed-commands.js.map +1 -1
  173. package/dist/src/solve-commands.d.ts +3 -1
  174. package/dist/src/solve-commands.js +31 -4
  175. package/dist/src/solve-commands.js.map +1 -1
  176. package/dist/src/trust-args.d.ts +5 -3
  177. package/dist/src/trust-args.js +48 -9
  178. package/dist/src/trust-args.js.map +1 -1
  179. package/dist/src/version.d.ts +1 -1
  180. package/dist/src/version.js +1 -1
  181. package/dist/src/wallet.d.ts +8 -2
  182. package/dist/src/wallet.js +44 -7
  183. package/dist/src/wallet.js.map +1 -1
  184. package/package.json +5 -4
@@ -1,7 +1,7 @@
1
1
  import type { Address } from "@solana/kit";
2
- import { type FeeConfig, type Intent } from "@intent-engine/core";
2
+ import { type Intent } from "@intent-engine/core";
3
3
  export declare const STATUS: readonly ["open", "filled", "cancelled", "expired", "filling"];
4
- export declare function quoteOf(intent: Intent, config: FeeConfig, at: bigint): {
4
+ export declare function quoteOf(intent: Intent, at: bigint): {
5
5
  at: bigint;
6
6
  amountIn: bigint;
7
7
  requiredOut: bigint;
@@ -28,8 +28,10 @@ export declare function describeIntent(address: Address, intent: Intent): {
28
28
  filled: bigint;
29
29
  revision: number;
30
30
  bounty: number;
31
+ feeBps: number;
31
32
  partner?: Address;
32
33
  partnerBps?: number;
34
+ partnerCutBps?: number;
33
35
  params: {
34
36
  kind: string;
35
37
  raw: string;
@@ -1,9 +1,9 @@
1
- import { decodeParams, decodeParamsLoose, feeBpsFor, remainingOf, requiredOut, splitFees, INTENT_VERSION, Kind, } from "@intent-engine/core";
1
+ import { decodeParams, decodeParamsLoose, remainingOf, requiredOut, splitFees, INTENT_VERSION, Kind, } from "@intent-engine/core";
2
2
  export const STATUS = ["open", "filled", "cancelled", "expired", "filling"];
3
- export function quoteOf(intent, config, at) {
3
+ export function quoteOf(intent, at) {
4
4
  const params = decodeParams(intent.kind, Uint8Array.from(intent.params));
5
5
  const amountIn = remainingOf(intent);
6
- const feeBps = feeBpsFor(config, params.kind);
6
+ const feeBps = intent.feeBps;
7
7
  const fees = splitFees(amountIn, feeBps, intent.partnerBps, intent.partnerCutBps);
8
8
  return {
9
9
  at,
@@ -39,7 +39,8 @@ export function describeIntent(address, intent) {
39
39
  filled: intent.filled,
40
40
  revision: intent.revision,
41
41
  bounty: intent.bounty,
42
- ...(intent.partnerBps === 0 ? {} : { partner: intent.partner, partnerBps: intent.partnerBps }),
42
+ feeBps: intent.feeBps,
43
+ ...(intent.partnerBps === 0 ? {} : { partner: intent.partner, partnerBps: intent.partnerBps, partnerCutBps: intent.partnerCutBps }),
43
44
  params: "unknown" in params && params.unknown
44
45
  ? { kind: `unknown(${params.kind})`, raw: hex(params.raw), reason: params.reason }
45
46
  : { ...params, kind: Kind[params.kind] },
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/accounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/accounts.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ export function withStartupTimeout(text) {
40
40
  const end = after < 0 ? lines.length : start + 1 + after;
41
41
  const eol = text.includes("\r\n") ? "\r" : "";
42
42
  const setting = `startup_timeout_sec = ${CODEX_STARTUP_TIMEOUT}${eol}`;
43
- for (let i = start + 1; i < end; i++) {
43
+ for (let i = start + 1; i !== end; i++) {
44
44
  const found = TIMEOUT.exec(lines[i] ?? "");
45
45
  if (found !== null) {
46
46
  lines[i] = setting;
@@ -48,7 +48,7 @@ export function withStartupTimeout(text) {
48
48
  }
49
49
  }
50
50
  let last = end;
51
- while (last > start + 1 && (lines[last - 1] ?? "").trim() === "") {
51
+ while (lines[last - 1]?.trim() === "") {
52
52
  last--;
53
53
  }
54
54
  lines.splice(last, 0, setting);
@@ -1 +1 @@
1
- {"version":3,"file":"add-to.js","sourceRoot":"","sources":["../../src/add-to.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-to.js","sourceRoot":"","sources":["../../src/add-to.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,31 @@ import type { Command } from "./command-types.js";
4
4
  import type { Runtime } from "./runtime.js";
5
5
  export declare const configExists: (config: Address) => string;
6
6
  export declare const AUTHORITY_NEXT = "import transaction_base58 into the multisig as a proposal (its blockhash and fee payer are replaced there), or build one from instructions; it carries no compute budget so it can run from a vault";
7
+ export declare function unsignedFor(transport: Transport, authority: Address, instructions: Instruction[]): Promise<{
8
+ transaction: string;
9
+ fee_payer: Address;
10
+ signers: Address[];
11
+ last_valid_block_height: bigint;
12
+ units_consumed: bigint | null;
13
+ priority_fee_lamports: bigint;
14
+ logs: string[];
15
+ transaction_base58: string;
16
+ instructions: {
17
+ program: Address<string>;
18
+ accounts: {
19
+ address: Address<string>;
20
+ signer: boolean;
21
+ writable: boolean;
22
+ }[];
23
+ data: string;
24
+ }[];
25
+ next: string;
26
+ }>;
7
27
  export declare function previewed(transport: Transport, instructions: Instruction[], signer: TransactionPartialSigner, shown: object, yes: boolean): Promise<object>;
8
28
  type AdminCommand = Extract<Command, {
9
- name: "init-config" | "raise-pause" | "lower-pause" | "update-config" | "propose-admin" | "accept-admin" | "set-economics" | "set-mint-cap" | "set-caps-required";
29
+ name: "init-config" | "raise-pause" | "lower-pause" | "update-config" | "propose-admin" | "accept-admin" | "set-economics" | "set-mint-cap" | "set-caps-required" | "set-committee-floor";
10
30
  }>;
31
+ export declare const floorsFull: (mint: Address) => string;
11
32
  export declare function showMintCap(transport: Transport, mint: Address): Promise<object>;
12
33
  export declare function adminCommand(command: AdminCommand, runtime: Runtime, transport: Transport): Promise<object>;
13
34
  export {};
@@ -1,5 +1,5 @@
1
1
  import { createNoopSigner, getBase58Decoder, getBase64Decoder, getBase64Encoder, isSignerRole, isWritableRole, } from "@solana/kit";
2
- import { buildAcceptAdmin, buildProposeAdmin, buildUpdateConfig, buildInitConfig, buildLowerPause, buildRaisePause, buildUpdateEconomics, buildSetCapsRequired, buildSetMintCap, capWindow, findConfigPda, findMintCapAddress, feeBpsFor, kindBit, PAUSE_CREATE, PAUSE_FILL, } from "@intent-engine/core";
2
+ import { buildAcceptAdmin, buildProposeAdmin, buildUpdateConfig, buildInitConfig, buildLowerPause, buildRaisePause, buildUpdateEconomics, buildSetCapsRequired, buildSetCommitteeFloor, buildSetMintCap, capWindow, committeeFloorOf, committeeFloors, FLOOR_THRESHOLD, MAX_COMMITTEE_FLOORS, findConfigPda, findMintCapAddress, feeBpsFor, kindBit, PAUSE_CREATE, PAUSE_FILL, } from "@intent-engine/core";
3
3
  import { chainTime, clusterDomain, loadConfig, loadMintCap, MissingAccount } from "@intent-engine/client";
4
4
  import { redactUrl } from "./render.js";
5
5
  import { prepare } from "./agent/prepare.js";
@@ -36,18 +36,21 @@ async function administer(transport, url, runtime, by, build, summary, extra = {
36
36
  return { ...described, sent: true, signature: await transport.send(instructions, signer) };
37
37
  }
38
38
  const instructions = await build(createNoopSigner(by.authority));
39
- const unbudgeted = { ...transport, budget: async (ixs) => [...ixs] };
40
- const view = preparedView(await prepare(unbudgeted, instructions, by.authority));
41
39
  return {
42
40
  ...extra,
43
41
  cluster,
44
42
  summary: summary(by.authority),
45
- unsigned: {
46
- ...view,
47
- transaction_base58: getBase58Decoder().decode(getBase64Encoder().encode(view.transaction)),
48
- instructions: instructions.map(instructionView),
49
- next: AUTHORITY_NEXT,
50
- },
43
+ unsigned: await unsignedFor(transport, by.authority, instructions),
44
+ };
45
+ }
46
+ export async function unsignedFor(transport, authority, instructions) {
47
+ const unbudgeted = { ...transport, budget: async (ixs) => [...ixs] };
48
+ const view = preparedView(await prepare(unbudgeted, instructions, authority));
49
+ return {
50
+ ...view,
51
+ transaction_base58: getBase58Decoder().decode(getBase64Encoder().encode(view.transaction)),
52
+ instructions: instructions.map(instructionView),
53
+ next: AUTHORITY_NEXT,
51
54
  };
52
55
  }
53
56
  export async function previewed(transport, instructions, signer, shown, yes) {
@@ -57,7 +60,10 @@ export async function previewed(transport, instructions, signer, shown, yes) {
57
60
  }
58
61
  return { ...shown, sent: true, signature: await transport.send(instructions, signer) };
59
62
  }
60
- const capLine = (cap) => `at most ${cap.maxPerOrder} raw units per intent and ${cap.windowCap} per ${cap.windowSecs} second window`;
63
+ const floorLine = (floor) => (floor === 0n ? "none" : `${floor} raw units`);
64
+ export const floorsFull = (mint) => `the engine keeps a committee floor for at most ${MAX_COMMITTEE_FLOORS} tokens and has no room for ${mint}; set one of them to zero first`;
65
+ const totalLine = (totalLimit) => (totalLimit === 0n ? "no total limit" : `at most ${totalLimit} outstanding at once`);
66
+ const capLine = (cap) => `at most ${cap.maxPerOrder} raw units per intent and ${cap.windowCap} per ${cap.windowSecs} second window, ${totalLine(cap.totalLimit)}`;
61
67
  export async function showMintCap(transport, mint) {
62
68
  const found = await loadMintCap(transport, mint);
63
69
  if (found === null) {
@@ -73,11 +79,14 @@ export async function showMintCap(transport, mint) {
73
79
  maxPerOrder: cap.maxPerOrder,
74
80
  windowCap: cap.windowCap,
75
81
  windowSecs: cap.windowSecs,
82
+ totalLimit: cap.totalLimit,
83
+ outstanding: cap.outstanding,
76
84
  window: { start: window.start, ends: window.ends, used: window.used, left: window.left },
77
85
  capsRequired: config.capsRequired !== 0,
78
86
  summary: [
79
87
  `Intents selling ${mint} escrow ${capLine(cap)}`,
80
88
  `This window: ${window.used} used, ${window.left} left, until ${window.ends}`,
89
+ `Outstanding: ${cap.outstanding} held for open intents, ${totalLine(cap.totalLimit)}`,
81
90
  config.capsRequired !== 0 ? "Caps are required: every create must pass this cap" : "Caps are off: creates ignore this cap until set-caps-required on",
82
91
  ],
83
92
  };
@@ -161,13 +170,23 @@ export async function adminCommand(command, runtime, transport) {
161
170
  ]);
162
171
  }
163
172
  case "set-mint-cap": {
164
- const limits = { maxPerOrder: command.maxPerOrder, windowCap: command.windowCap, windowSecs: command.windowSecs };
165
173
  const [found, mintCap] = await Promise.all([loadMintCap(transport, command.mint), findMintCapAddress(command.mint)]);
174
+ const limits = {
175
+ maxPerOrder: command.maxPerOrder,
176
+ windowCap: command.windowCap,
177
+ windowSecs: command.windowSecs,
178
+ totalLimit: command.totalLimit ?? found?.cap.totalLimit ?? 0n,
179
+ };
166
180
  return administer(transport, command.url, runtime, command.by, async (admin) => [await buildSetMintCap({ admin, mint: command.mint, ...limits })], (signer) => [
167
181
  found === null
168
182
  ? `Creates the mint cap ${mintCap} for ${command.mint}, paid by ${signer}: ${capLine(limits)}`
169
183
  : `Mint cap of ${command.mint}: ${capLine(found.cap)} -> ${capLine(limits)}`,
170
- ...(found === null ? [] : [`Keeps the current window: ${found.cap.windowUsed} used since ${found.cap.windowStart}`]),
184
+ ...(found === null
185
+ ? []
186
+ : [
187
+ `Keeps the current window: ${found.cap.windowUsed} used since ${found.cap.windowStart}`,
188
+ `Keeps the outstanding amount: ${found.cap.outstanding} held for open intents`,
189
+ ]),
171
190
  ], { mintCap });
172
191
  }
173
192
  case "set-caps-required": {
@@ -180,6 +199,19 @@ export async function adminCommand(command, runtime, transport) {
180
199
  : "Creates then ignore mint caps",
181
200
  ]);
182
201
  }
202
+ case "set-committee-floor": {
203
+ const { config } = await loadConfig(transport);
204
+ const now = committeeFloorOf(config, command.mint);
205
+ if (now === 0n && command.floor !== 0n && committeeFloors(config).length >= MAX_COMMITTEE_FLOORS) {
206
+ throw new Error(floorsFull(command.mint));
207
+ }
208
+ return administer(transport, command.url, runtime, command.by, async (admin) => [await buildSetCommitteeFloor({ admin, mint: command.mint, floor: command.floor })], () => [
209
+ `Committee floor of ${command.mint}: ${floorLine(now)} -> ${floorLine(command.floor)}`,
210
+ command.floor === 0n
211
+ ? "Any attestor may then judge proof escrows of this token"
212
+ : `Proof escrows of ${command.floor} raw units or more of this token then need a committee of at least ${FLOOR_THRESHOLD} judges as attestor`,
213
+ ]);
214
+ }
183
215
  }
184
216
  }
185
217
  //# sourceMappingURL=admin-commands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"admin-commands.js","sourceRoot":"","sources":["../../src/admin-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-commands.js","sourceRoot":"","sources":["../../src/admin-commands.ts"],"names":[],"mappings":"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"}
@@ -47,5 +47,6 @@ export type Outcome = {
47
47
  ok: false;
48
48
  problem: Problem;
49
49
  };
50
+ export declare function askedOf(name: string, raw: unknown): string;
50
51
  export declare function invoke(action: AnyAction, ctx: AgentContext, raw: unknown): Promise<Outcome>;
51
52
  export {};
@@ -21,8 +21,22 @@ export class OutputMismatch extends Error {
21
21
  this.name = "OutputMismatch";
22
22
  }
23
23
  }
24
+ const SENDING = new Set(["send", "approval"]);
25
+ const canonical = (value) => Array.isArray(value)
26
+ ? value.map(canonical)
27
+ : value !== null && typeof value === "object"
28
+ ? Object.fromEntries(Object.keys(value)
29
+ .sort()
30
+ .map((k) => [k, value[k]])
31
+ .filter(([, v]) => v !== undefined)
32
+ .map(([k, v]) => [k, canonical(v)]))
33
+ : value;
34
+ export function askedOf(name, raw) {
35
+ const input = raw !== null && typeof raw === "object" && !Array.isArray(raw) ? Object.fromEntries(Object.entries(raw).filter(([k]) => !SENDING.has(k))) : raw;
36
+ return JSON.stringify([name, canonical(input ?? {})]);
37
+ }
24
38
  export async function invoke(action, ctx, raw) {
25
- const call = callOf();
39
+ const call = callOf(askedOf(action.name, raw));
26
40
  try {
27
41
  const input = action.input.read(raw ?? {}, "");
28
42
  const value = toJson(await action.run({ ...ctx, transport: memoized(ctx.transport) }, input, call));
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/agent/actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAkC,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAgB,SAAS,EAAE,MAAM,eAAe,CAAC;AAGxD,OAAO,EAAa,MAAM,EAAe,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAe,MAAM,aAAa,CAAC;AAiCxD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAI,MAAiB,EAAa,EAAE,CAAC,MAA8B,CAAC;AAE1F,MAAM,UAAU,MAAM,CAAC,KAAc;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,YAAY,MAAc,EAAE,KAAmB;QAC7C,KAAK,CAAC,GAAG,MAAM,wCAAwC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAID,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,MAAiB,EAAE,GAAiB,EAAE,GAAY;IAC7E,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;IACtB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,KAAc,EAAE,IAAI,CAAC,CAAC,CAAC;QAC7G,IAAI,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,YAAY,YAAY,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACvF,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAgC,EAAE,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACvC,IAAI,EAAE,CAAC;QACT,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;IAC9E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/agent/actions.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,15 @@
1
+ import { type RentSysvar, type Transport } from "@intent-engine/client";
2
+ export { MAX_RENT_PER_BYTE, MIN_RENT_PER_BYTE, UnsupportedRent, unsupportedRent, unsupportedThreshold } from "@intent-engine/solver";
1
3
  export declare const BUDGET_WINDOW = 3600n;
2
- export declare const ACCOUNT_OVERHEAD_BYTES = 128n;
3
- export declare const RENT_LAMPORTS_PER_BYTE = 6960n;
4
4
  export declare const VAULT_BYTES = 170;
5
5
  export declare const SIGNATURE_FEE = 5000n;
6
6
  export declare const TOKEN_ACCOUNT_RENT_BYTES = 170;
7
- export declare const rentFor: (bytes: number) => bigint;
7
+ export declare function rentRate(transport: Transport): Promise<RentSysvar>;
8
+ export declare const rentFor: (bytes: number, rent: RentSysvar) => bigint;
8
9
  export declare function createCost(economics: {
9
10
  createFee: number;
10
11
  crankBounty: number;
11
- }): bigint;
12
+ }, rent: RentSysvar): bigint;
12
13
  type Spend = {
13
14
  at: bigint;
14
15
  lamports: bigint;
@@ -20,4 +21,3 @@ export type Budget = {
20
21
  export declare const budgetOf: (hourly: bigint) => Budget;
21
22
  export declare function reserve(budget: Budget, lamports: bigint, now: bigint): Spend;
22
23
  export declare function release(budget: Budget, spend: Spend): void;
23
- export {};
@@ -1,17 +1,37 @@
1
1
  import { getIntentSize } from "@intent-engine/core";
2
+ import { rentExemptFor, rentSysvar, unmemoized } from "@intent-engine/client";
3
+ import { checkedRent } from "@intent-engine/solver";
2
4
  import { AgentRefusal } from "./problems.js";
5
+ export { MAX_RENT_PER_BYTE, MIN_RENT_PER_BYTE, UnsupportedRent, unsupportedRent, unsupportedThreshold } from "@intent-engine/solver";
3
6
  export const BUDGET_WINDOW = 3600n;
4
- export const ACCOUNT_OVERHEAD_BYTES = 128n;
5
- export const RENT_LAMPORTS_PER_BYTE = 6960n;
6
7
  export const VAULT_BYTES = 170;
7
8
  export const SIGNATURE_FEE = 5000n;
8
9
  export const TOKEN_ACCOUNT_RENT_BYTES = 170;
9
- export const rentFor = (bytes) => (BigInt(bytes) + ACCOUNT_OVERHEAD_BYTES) * RENT_LAMPORTS_PER_BYTE;
10
- export function createCost(economics) {
10
+ async function readRent(transport) {
11
+ return checkedRent(await rentSysvar(transport));
12
+ }
13
+ const rentRates = new WeakMap();
14
+ export function rentRate(transport) {
15
+ const source = unmemoized(transport);
16
+ const known = rentRates.get(source);
17
+ if (known !== undefined) {
18
+ return known;
19
+ }
20
+ const pending = readRent(source);
21
+ rentRates.set(source, pending);
22
+ pending.catch(() => {
23
+ if (rentRates.get(source) === pending) {
24
+ rentRates.delete(source);
25
+ }
26
+ });
27
+ return pending;
28
+ }
29
+ export const rentFor = (bytes, rent) => rentExemptFor(rent, bytes);
30
+ export function createCost(economics, rent) {
11
31
  return (BigInt(economics.createFee) +
12
32
  BigInt(economics.crankBounty) +
13
- rentFor(getIntentSize()) +
14
- rentFor(VAULT_BYTES) +
33
+ rentFor(getIntentSize(), rent) +
34
+ rentFor(VAULT_BYTES, rent) +
15
35
  SIGNATURE_FEE);
16
36
  }
17
37
  export const budgetOf = (hourly) => ({ hourly, spends: [] });
@@ -1 +1 @@
1
- {"version":3,"file":"budget.js","sourceRoot":"","sources":["../../../src/agent/budget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,CAAC,MAAM,aAAa,GAAG,KAAM,CAAC;AACpC,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAC3C,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC;AAC/B,MAAM,CAAC,MAAM,aAAa,GAAG,KAAM,CAAC;AACpC,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAE5C,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,sBAAsB,CAAC,GAAG,sBAAsB,CAAC;AAEpH,MAAM,UAAU,UAAU,CAAC,SAAqD;IAC9E,OAAO,CACL,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC;QAC3B,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;QAC7B,OAAO,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,CAAC,WAAW,CAAC;QACpB,aAAa,CACd,CAAC;AACJ,CAAC;AAMD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;AAE7E,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,QAAgB,EAAE,GAAW;IACnE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACpE,IAAI,IAAI,GAAG,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,YAAY,CACpB,iBAAiB,EACjB,sBAAsB,MAAM,CAAC,MAAM,8BAA8B,MAAM,CAAC,MAAM,GAAG,IAAI,qBAAqB,QAAQ,EAAE,CACrH,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;IACpC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,KAAY;IAClD,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"budget.js","sourceRoot":"","sources":["../../../src/agent/budget.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,10 @@ export type Claims = {
7
7
  };
8
8
  export type Call = {
9
9
  undo: (() => void)[];
10
+ asked?: string;
10
11
  };
11
12
  export declare const claimsOf: () => Claims;
12
- export declare const callOf: () => Call;
13
+ export declare const callOf: (asked?: string) => Call;
13
14
  export declare function claimedBy(claims: Claims, owner: Address, now: bigint): Set<bigint>;
14
15
  export declare function claim(claims: Claims, call: Call, owner: Address, nonce: bigint, until: bigint, now: bigint): void;
15
16
  export declare function enter(claims: Claims, key: string): () => void;
@@ -2,7 +2,7 @@ import { AgentRefusal } from "./problems.js";
2
2
  export const PREPARED_TTL = 120n;
3
3
  export const MAX_PENDING_PER_OWNER = 16;
4
4
  export const claimsOf = () => ({ held: new Map(), busy: new Set() });
5
- export const callOf = () => ({ undo: [] });
5
+ export const callOf = (asked) => ({ undo: [], ...(asked === undefined ? {} : { asked }) });
6
6
  function prune(claims, now) {
7
7
  for (const [owner, held] of claims.held) {
8
8
  for (const [nonce, until] of held) {
@@ -1 +1 @@
1
- {"version":3,"file":"claims.js","sourceRoot":"","sources":["../../../src/agent/claims.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;AACjC,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAMxC,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAW,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;AAE7E,MAAM,CAAC,MAAM,MAAM,GAAG,GAAS,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;AAEjD,SAAS,KAAK,CAAC,MAAc,EAAE,GAAW;IACxC,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;YAClC,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;gBAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,KAAc,EAAE,GAAW;IACnE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnB,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,MAAc,EAAE,IAAU,EAAE,KAAc,EAAE,KAAa,EAAE,KAAa,EAAE,GAAW;IACzG,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,YAAY,CACpB,eAAe,EACf,SAAS,KAAK,OAAO,KAAK,0HAA0H,CACrJ,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,IAAI,qBAAqB,EAAE,CAAC;QAC1C,MAAM,IAAI,YAAY,CACpB,gBAAgB,EAChB,GAAG,KAAK,gBAAgB,qBAAqB,kIAAkI,CAChL,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAkB,CAAC;IACjE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,MAAc,EAAE,GAAW;IAC/C,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,YAAY,CACpB,gBAAgB,EAChB,2GAA2G,CAC5G,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,OAAO,GAAG,EAAE;QACV,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"claims.js","sourceRoot":"","sources":["../../../src/agent/claims.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- import { type FeeConfig, type IntentParams } from "@intent-engine/core";
1
+ import { type Address } from "@solana/kit";
2
+ import { type Config, type FeeConfig, type IntentParams } from "@intent-engine/core";
3
+ import { type Transport } from "@intent-engine/client";
2
4
  export declare const SPEC_URL_PLAIN = "is a plain http url, which a public cluster may not use; give an https url";
3
5
  export declare const WRAPPED = ", as wrapped SOL they unwrap themselves";
4
6
  export declare const MAX_EXPIRES_IN: number;
@@ -8,16 +10,16 @@ export declare function expiryOf(input: {
8
10
  expires_in?: number;
9
11
  }, now: bigint): bigint;
10
12
  export declare const termsInput: {
11
- owner: import("./schema.js").Schema<import("@solana/kit").Address>;
12
- input_mint: import("./schema.js").Schema<import("@solana/kit").Address>;
13
- output_mint: import("./schema.js").Schema<import("@solana/kit").Address>;
13
+ owner: import("./schema.js").Schema<Address>;
14
+ input_mint: import("./schema.js").Schema<Address>;
15
+ output_mint: import("./schema.js").Schema<Address>;
14
16
  order: import("./schema.js").Schema<({
15
17
  kind: "attested";
16
18
  } & {
17
19
  amount_in: bigint;
18
20
  min_result: bigint;
19
21
  max_result: bigint;
20
- attestor: import("@solana/kit").Address;
22
+ attestor: Address;
21
23
  } & {
22
24
  spec_hash?: string;
23
25
  judge_fee?: bigint;
@@ -51,13 +53,13 @@ export declare const termsInput: {
51
53
  };
52
54
  partner: {
53
55
  optional: import("./schema.js").Schema<{
54
- account: import("@solana/kit").Address;
56
+ account: Address;
55
57
  bps: number;
56
58
  } & {}>;
57
59
  };
58
60
  };
59
61
  export declare const termsOutput: {
60
- intent: import("./schema.js").Schema<import("@solana/kit").Address>;
62
+ intent: import("./schema.js").Schema<Address>;
61
63
  nonce: import("./schema.js").Schema<bigint>;
62
64
  expires_at: import("./schema.js").Schema<bigint>;
63
65
  escrow: import("./schema.js").Schema<bigint>;
@@ -70,4 +72,11 @@ export type SettleConfig = FeeConfig & {
70
72
  partnerCutBps: number;
71
73
  };
72
74
  export declare function neverSettles(params: IntentParams, config: SettleConfig, partnerBps: number, decimals: number): string | undefined;
75
+ type Floors = Pick<Config, "floorMints" | "floorAmounts">;
76
+ export declare const committeeNeeded: (escrow: string, floor: string, attestor: Address) => string;
77
+ export declare function floorLines(config: Floors, mint: Address, decimals: number): string[];
78
+ export declare function escrowJudge(transport: Transport, config: Floors, mint: Address, params: IntentParams, decimals: number): Promise<{
79
+ committee?: Address;
80
+ }>;
73
81
  export declare const prepareCreate: import("./actions.js").AnyAction;
82
+ export {};
@@ -1,6 +1,6 @@
1
1
  import { createNoopSigner } from "@solana/kit";
2
- import { buildCreateIntent, describeTerms, encodeParams, escrowAmount, feeBpsFor, formatAmount, findAssociatedTokenAddress, findConfigPda, findIntentPda, findUserStatePda, formatTime, isMemoUrl, Kind, MEMO_URL_RULE, specMemo, LONG_LIVED_SECONDS, NATIVE_MINT, partnerBaseOf, partnerFeeLine, releaseSettles, settleBounds, validate, settlementWarnings, WARN_LONG_LIVED, WARN_RECEIVER, } from "@intent-engine/core";
3
- import { chainTime, CLOCK_SYSVAR, initUserIfMissing, loadConfig, loadUser, memoInstruction, mintCapOf, mintOf, PLAIN_HTTP_ON_PUBLIC, plainHttpOnPublic, tokenAccountIfMissing, wrapIfShort, } from "@intent-engine/client";
2
+ import { buildCreateIntent, committeeFloorOf, FLOOR_THRESHOLD, describeTerms, encodeParams, escrowAmount, feeBpsFor, formatAmount, findAssociatedTokenAddress, findConfigPda, findIntentPda, findUserStatePda, formatTime, isMemoUrl, Kind, MEMO_URL_RULE, specMemo, LONG_LIVED_SECONDS, NATIVE_MINT, partnerBaseOf, partnerFeeLine, releaseSettles, settleBounds, validate, settlementWarnings, WARN_LONG_LIVED, WARN_RECEIVER, } from "@intent-engine/core";
3
+ import { chainTime, CLOCK_SYSVAR, CommitteeNeeded, escrowCommittee, initUserIfMissing, loadConfig, loadUser, memoInstruction, mintCapOf, mintOf, PLAIN_HTTP_ON_PUBLIC, plainHttpOnPublic, keylessJudges, tokenAccountIfMissing, WARN_NO_JUDGE_KEY, wrapIfShort, } from "@intent-engine/client";
4
4
  import { define } from "./actions.js";
5
5
  import { tool } from "./names.js";
6
6
  import { claim, claimedBy, PREPARED_TTL } from "./claims.js";
@@ -59,7 +59,7 @@ export function neverSettles(params, config, partnerBps, decimals) {
59
59
  return undefined;
60
60
  }
61
61
  const shown = (raw) => formatAmount(raw, decimals);
62
- const left = terms.amount > terms.judgeFee ? terms.amount - terms.judgeFee : 0n;
62
+ const left = terms.amount <= terms.judgeFee ? 0n : terms.amount - terms.judgeFee;
63
63
  const { leastAmount, mostJudgeFee } = settleBounds(terms);
64
64
  const fixes = [
65
65
  ...(leastAmount === undefined ? [] : [`escrow at least ${shown(leastAmount)}`]),
@@ -67,6 +67,22 @@ export function neverSettles(params, config, partnerBps, decimals) {
67
67
  ];
68
68
  return `no release of this escrow could settle: ${shown(terms.amount)} less the ${shown(terms.judgeFee)} judge fee leaves ${shown(left)}, too little for the rounded-up ${terms.feeBps} bps protocol fee and ${partnerBps} bps partner fee; ${fixes.length === 0 ? "no amount settles under today's config" : fixes.join(", or ")}`;
69
69
  }
70
+ export const committeeNeeded = (escrow, floor, attestor) => `this escrow of ${escrow} reaches its token's committee floor of ${floor}, so its attestor must be a committee of at least ${FLOOR_THRESHOLD} judges; ${attestor} is not. Name such a committee, or escrow less`;
71
+ export function floorLines(config, mint, decimals) {
72
+ const floor = committeeFloorOf(config, mint);
73
+ return floor === 0n ? [] : [`Committee floor: escrows of ${formatAmount(floor, decimals)} or more of this token need a committee of at least ${FLOOR_THRESHOLD} judges as attestor`];
74
+ }
75
+ export async function escrowJudge(transport, config, mint, params, decimals) {
76
+ try {
77
+ return await escrowCommittee(transport, config, mint, params);
78
+ }
79
+ catch (error) {
80
+ if (error instanceof CommitteeNeeded) {
81
+ throw new AgentRefusal("CommitteeRequired", committeeNeeded(formatAmount(error.escrow, decimals), formatAmount(error.floor, decimals), error.attestor));
82
+ }
83
+ throw error;
84
+ }
85
+ }
70
86
  export const prepareCreate = define({
71
87
  name: tool("prepare_create"),
72
88
  title: "Prepare a new intent",
@@ -107,6 +123,7 @@ export const prepareCreate = define({
107
123
  throw new AgentRefusal("NeverSettles", unsettled);
108
124
  }
109
125
  const params = validate(order);
126
+ const judged = await escrowJudge(transport, config, input.input_mint, params, inputToken.decimals);
110
127
  const user = await loadUser(transport, input.owner);
111
128
  if (input.nonce !== undefined) {
112
129
  await unusedIntent(transport, input.owner, input.nonce);
@@ -143,11 +160,13 @@ export const prepareCreate = define({
143
160
  outputTokenProgram: outputToken.tokenProgram,
144
161
  ...(elsewhere ? { receiver: receiver.address, receiverAuthority: recipient } : {}),
145
162
  ...(mintCap === undefined ? {} : { mintCap }),
163
+ ...judged,
146
164
  });
147
165
  const register = await initUserIfMissing(user, input.owner);
148
166
  const wrap = await wrapIfShort(transport, input.owner, input.input_mint, inputToken.tokenProgram, escrowAmount(params));
149
167
  const published = specUrl === undefined ? [] : [memoInstruction(owner, specMemo(specUrl))];
150
168
  const prepared = await prepare(transport, [...register, ...receiver.create, ...wrap.instructions, create, ...published], input.owner);
169
+ const keyless = params.kind === Kind.AttestedResult && params.specHash.some((b) => b !== 0) ? await keylessJudges(transport, params.attestor) : [];
151
170
  return {
152
171
  intent,
153
172
  nonce,
@@ -156,6 +175,8 @@ export const prepareCreate = define({
156
175
  summary: [
157
176
  ...describeTerms({ kind: params.kind, params: encodeParams(params), inputMint: input.input_mint, outputMint: input.output_mint }, { inputDecimals: inputToken.decimals, outputDecimals: outputToken.decimals, ...tokenNames(input.input_mint, input.output_mint) }),
158
177
  `Expires: ${formatTime(expiresAt)}`,
178
+ ...(params.kind === Kind.AttestedResult ? floorLines(config, input.input_mint, inputToken.decimals) : []),
179
+ ...(judged.committee === undefined ? [] : [`Judged by: the committee ${judged.committee}, passed with the create`]),
159
180
  ...(specUrl === undefined ? [] : [`Publishes: the acceptance spec's url ${specUrl}, in a memo the owner signs`]),
160
181
  ...(elsewhere ? [`Pays to: ${recipient}, who receives what the solver pays${input.output_mint === NATIVE_MINT ? WRAPPED : ""}`] : []),
161
182
  ...(input.partner === undefined ? [] : [partnerFeeLine(input.partner.bps, input.partner.account, partnerBaseOf(params))]),
@@ -170,6 +191,7 @@ export const prepareCreate = define({
170
191
  warnings: [
171
192
  ...warningsOf(params, expiresAt, now, inputToken.scaled || outputToken.scaled),
172
193
  ...(elsewhere ? [WARN_RECEIVER] : []),
194
+ ...keyless.map((wallet) => `${WARN_NO_JUDGE_KEY}: the profile of ${wallet} publishes no encryption key`),
173
195
  ],
174
196
  create_fee: BigInt(config.createFee),
175
197
  crank_bounty: BigInt(config.crankBounty),