@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.
- package/dist/src/accounts.d.ts +4 -2
- package/dist/src/accounts.js +5 -4
- package/dist/src/accounts.js.map +1 -1
- package/dist/src/add-to.js +2 -2
- package/dist/src/add-to.js.map +1 -1
- package/dist/src/admin-commands.d.ts +22 -1
- package/dist/src/admin-commands.js +44 -12
- package/dist/src/admin-commands.js.map +1 -1
- package/dist/src/agent/actions.d.ts +1 -0
- package/dist/src/agent/actions.js +15 -1
- package/dist/src/agent/actions.js.map +1 -1
- package/dist/src/agent/budget.d.ts +5 -5
- package/dist/src/agent/budget.js +26 -6
- package/dist/src/agent/budget.js.map +1 -1
- package/dist/src/agent/claims.d.ts +2 -1
- package/dist/src/agent/claims.js +1 -1
- package/dist/src/agent/claims.js.map +1 -1
- package/dist/src/agent/create.d.ts +16 -7
- package/dist/src/agent/create.js +25 -3
- package/dist/src/agent/create.js.map +1 -1
- package/dist/src/agent/jobs.js +11 -4
- package/dist/src/agent/jobs.js.map +1 -1
- package/dist/src/agent/mandate-agent.js +3 -2
- package/dist/src/agent/mandate-agent.js.map +1 -1
- package/dist/src/agent/mandate-revoke.js +1 -1
- package/dist/src/agent/mandate-revoke.js.map +1 -1
- package/dist/src/agent/owner.js +4 -2
- package/dist/src/agent/owner.js.map +1 -1
- package/dist/src/agent/prepare.d.ts +1 -1
- package/dist/src/agent/prepare.js +9 -2
- package/dist/src/agent/prepare.js.map +1 -1
- package/dist/src/agent/problems.d.ts +22 -0
- package/dist/src/agent/problems.js +33 -5
- package/dist/src/agent/problems.js.map +1 -1
- package/dist/src/agent/profile.d.ts +1 -0
- package/dist/src/agent/profile.js +30 -5
- package/dist/src/agent/profile.js.map +1 -1
- package/dist/src/agent/read.js +3 -4
- package/dist/src/agent/read.js.map +1 -1
- package/dist/src/agent/reputation.js +16 -7
- package/dist/src/agent/reputation.js.map +1 -1
- package/dist/src/agent/sales.js +17 -23
- package/dist/src/agent/sales.js.map +1 -1
- package/dist/src/agent/settle.js +1 -0
- package/dist/src/agent/settle.js.map +1 -1
- package/dist/src/agent/signed-prepare.js +3 -2
- package/dist/src/agent/signed-prepare.js.map +1 -1
- package/dist/src/agent/signed-relay.d.ts +1 -1
- package/dist/src/agent/signed-relay.js +2 -1
- package/dist/src/agent/signed-relay.js.map +1 -1
- package/dist/src/agent/signed-submit.js +7 -5
- package/dist/src/agent/signed-submit.js.map +1 -1
- package/dist/src/agent/signed-terms.d.ts +1 -5
- package/dist/src/agent/spec.js +16 -4
- package/dist/src/agent/spec.js.map +1 -1
- package/dist/src/agent/wallet/account.js +2 -1
- package/dist/src/agent/wallet/account.js.map +1 -1
- package/dist/src/agent/wallet/attest.d.ts +2 -0
- package/dist/src/agent/wallet/attest.js +46 -24
- package/dist/src/agent/wallet/attest.js.map +1 -1
- package/dist/src/agent/wallet/committee.js +29 -17
- package/dist/src/agent/wallet/committee.js.map +1 -1
- package/dist/src/agent/wallet/delivery.d.ts +4 -1
- package/dist/src/agent/wallet/delivery.js +80 -23
- package/dist/src/agent/wallet/delivery.js.map +1 -1
- package/dist/src/agent/wallet/escrow.js +9 -4
- package/dist/src/agent/wallet/escrow.js.map +1 -1
- package/dist/src/agent/wallet/fills.js +4 -3
- package/dist/src/agent/wallet/fills.js.map +1 -1
- package/dist/src/agent/wallet/guard.d.ts +32 -0
- package/dist/src/agent/wallet/guard.js +131 -9
- package/dist/src/agent/wallet/guard.js.map +1 -1
- package/dist/src/agent/wallet/history.js +2 -2
- package/dist/src/agent/wallet/history.js.map +1 -1
- package/dist/src/agent/wallet/offer.d.ts +18 -0
- package/dist/src/agent/wallet/offer.js +2 -1
- package/dist/src/agent/wallet/offer.js.map +1 -1
- package/dist/src/agent/wallet/openings.d.ts +37 -0
- package/dist/src/agent/wallet/openings.js +73 -0
- package/dist/src/agent/wallet/openings.js.map +1 -0
- package/dist/src/agent/wallet/receipt.d.ts +6 -0
- package/dist/src/agent/wallet/receipt.js +21 -3
- package/dist/src/agent/wallet/receipt.js.map +1 -1
- package/dist/src/agent/wallet/record.d.ts +3 -2
- package/dist/src/agent/wallet/record.js +16 -10
- package/dist/src/agent/wallet/record.js.map +1 -1
- package/dist/src/agent/wallet/split.d.ts +1 -0
- package/dist/src/agent/wallet/split.js +84 -57
- package/dist/src/agent/wallet/split.js.map +1 -1
- package/dist/src/agent/wallet/trade.js +2 -1
- package/dist/src/agent/wallet/trade.js.map +1 -1
- package/dist/src/agent/wallet/unwrap.js +2 -1
- package/dist/src/agent/wallet/unwrap.js.map +1 -1
- package/dist/src/agent/work-claims.js +16 -6
- package/dist/src/agent/work-claims.js.map +1 -1
- package/dist/src/arg-admin.d.ts +1 -1
- package/dist/src/arg-admin.js +4 -0
- package/dist/src/arg-admin.js.map +1 -1
- package/dist/src/arg-options.d.ts +70 -2
- package/dist/src/arg-options.js +39 -10
- package/dist/src/arg-options.js.map +1 -1
- package/dist/src/arg-solve.d.ts +6 -0
- package/dist/src/arg-solve.js +46 -1
- package/dist/src/arg-solve.js.map +1 -1
- package/dist/src/arg-usage.d.ts +2 -2
- package/dist/src/arg-usage.js +14 -10
- package/dist/src/arg-usage.js.map +1 -1
- package/dist/src/arg-values.d.ts +20 -1
- package/dist/src/arg-values.js +72 -2
- package/dist/src/arg-values.js.map +1 -1
- package/dist/src/args.d.ts +4 -1
- package/dist/src/args.js +39 -9
- package/dist/src/args.js.map +1 -1
- package/dist/src/claim-commands.d.ts +6 -2
- package/dist/src/claim-commands.js +115 -6
- package/dist/src/claim-commands.js.map +1 -1
- package/dist/src/clusters.d.ts +1 -0
- package/dist/src/clusters.js +1 -0
- package/dist/src/clusters.js.map +1 -1
- package/dist/src/command-types.d.ts +65 -1
- package/dist/src/commands.js +40 -8
- package/dist/src/commands.js.map +1 -1
- package/dist/src/committee-commands.d.ts +13 -2
- package/dist/src/committee-commands.js +58 -11
- package/dist/src/committee-commands.js.map +1 -1
- package/dist/src/crank.d.ts +3 -3
- package/dist/src/crank.js +11 -9
- package/dist/src/crank.js.map +1 -1
- package/dist/src/float-commands.d.ts +17 -0
- package/dist/src/float-commands.js +94 -0
- package/dist/src/float-commands.js.map +1 -0
- package/dist/src/flow-commands.js +2 -2
- package/dist/src/flow-commands.js.map +1 -1
- package/dist/src/flows.d.ts +2 -2
- package/dist/src/flows.js +8 -2
- package/dist/src/flows.js.map +1 -1
- package/dist/src/job-args.js +16 -3
- package/dist/src/job-args.js.map +1 -1
- package/dist/src/job-commands.js +40 -10
- package/dist/src/job-commands.js.map +1 -1
- package/dist/src/job-filters.d.ts +15 -3
- package/dist/src/job-filters.js +31 -6
- package/dist/src/job-filters.js.map +1 -1
- package/dist/src/judge-digest.d.ts +7 -0
- package/dist/src/judge-digest.js +27 -0
- package/dist/src/judge-digest.js.map +1 -0
- package/dist/src/judge-watch.js +16 -6
- package/dist/src/judge-watch.js.map +1 -1
- package/dist/src/judge.d.ts +18 -1
- package/dist/src/judge.js +87 -17
- package/dist/src/judge.js.map +1 -1
- package/dist/src/ledger-keys.d.ts +4 -1
- package/dist/src/ledger-keys.js +21 -5
- package/dist/src/ledger-keys.js.map +1 -1
- package/dist/src/legacy-commands.d.ts +8 -0
- package/dist/src/legacy-commands.js +94 -0
- package/dist/src/legacy-commands.js.map +1 -0
- package/dist/src/main.d.ts +3 -0
- package/dist/src/main.js +5 -0
- package/dist/src/main.js.map +1 -1
- package/dist/src/migrate-commands.d.ts +10 -0
- package/dist/src/migrate-commands.js +127 -0
- package/dist/src/migrate-commands.js.map +1 -0
- package/dist/src/monitor.d.ts +5 -1
- package/dist/src/monitor.js +31 -4
- package/dist/src/monitor.js.map +1 -1
- package/dist/src/release-simulation.d.ts +3 -2
- package/dist/src/release-simulation.js +1 -0
- package/dist/src/release-simulation.js.map +1 -1
- package/dist/src/sealed-commands.d.ts +6 -0
- package/dist/src/sealed-commands.js +19 -1
- package/dist/src/sealed-commands.js.map +1 -1
- package/dist/src/solve-commands.d.ts +3 -1
- package/dist/src/solve-commands.js +31 -4
- package/dist/src/solve-commands.js.map +1 -1
- package/dist/src/trust-args.d.ts +5 -3
- package/dist/src/trust-args.js +48 -9
- package/dist/src/trust-args.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/wallet.d.ts +8 -2
- package/dist/src/wallet.js +44 -7
- package/dist/src/wallet.js.map +1 -1
- package/package.json +5 -4
package/dist/src/ledger-keys.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isKeyPairSigner } from "@solana/kit";
|
|
1
2
|
import { isLedgerPath, LedgerPathError, ledgerSigner, openUsb, parseLedgerPath } from "@intent-engine/client";
|
|
2
3
|
import { UsageError } from "./arg-values.js";
|
|
3
4
|
export const LEDGER_COMMANDS = [
|
|
@@ -8,18 +9,25 @@ export const LEDGER_COMMANDS = [
|
|
|
8
9
|
"approve",
|
|
9
10
|
"revoke-approval",
|
|
10
11
|
"deliver",
|
|
12
|
+
"judge",
|
|
13
|
+
"committee vote",
|
|
14
|
+
"committee release",
|
|
15
|
+
"signed prepare",
|
|
11
16
|
"advance-nonce",
|
|
12
17
|
"advance-epoch",
|
|
13
18
|
"claims take",
|
|
14
19
|
"claims drop",
|
|
15
20
|
"mandate grant",
|
|
16
21
|
"mandate revoke",
|
|
22
|
+
"profile set",
|
|
23
|
+
"profile close",
|
|
24
|
+
"solver float",
|
|
17
25
|
];
|
|
18
26
|
const DEVICE_COMMANDS = new Set(LEDGER_COMMANDS);
|
|
19
|
-
const SPACED = /^(claims|committee|mandate|profile|signed)-/;
|
|
27
|
+
const SPACED = /^(claims|committee|judge|mandate|profile|signed|solver)-/;
|
|
20
28
|
export function commandName(command) {
|
|
21
29
|
const name = command.name === "flow" ? command.flow : command.name === "lookup" ? command.lookup : command.name;
|
|
22
|
-
return name.replace(SPACED, "$1 ");
|
|
30
|
+
return name.replace(SPACED, "$1 ").replace(/^solver float-revoke$/, "solver float");
|
|
23
31
|
}
|
|
24
32
|
function keyPaths(command) {
|
|
25
33
|
const found = command;
|
|
@@ -29,13 +37,14 @@ export const needsKeyFile = (name, path) => `${name} needs a key file, not the L
|
|
|
29
37
|
export const signsOnDevice = (command) => DEVICE_COMMANDS.has(commandName(command));
|
|
30
38
|
const walletPath = (command, saved) => command.name === "mcp" && command.wallet !== null && saved !== undefined ? [saved] : [];
|
|
31
39
|
export function checkLedgerPaths(command, saved) {
|
|
32
|
-
const
|
|
40
|
+
const keys = keyPaths(command).filter(isLedgerPath);
|
|
41
|
+
const devices = [...keys, ...walletPath(command, saved).filter(isLedgerPath)];
|
|
33
42
|
if (devices.length === 0) {
|
|
34
43
|
return;
|
|
35
44
|
}
|
|
36
45
|
const name = commandName(command);
|
|
37
|
-
if (!signsOnDevice(command)) {
|
|
38
|
-
throw new UsageError(needsKeyFile(name,
|
|
46
|
+
if (keys.length > 0 && !signsOnDevice(command)) {
|
|
47
|
+
throw new UsageError(needsKeyFile(name, keys[0] ?? ""));
|
|
39
48
|
}
|
|
40
49
|
for (const path of devices) {
|
|
41
50
|
try {
|
|
@@ -47,4 +56,11 @@ export function checkLedgerPaths(command, saved) {
|
|
|
47
56
|
}
|
|
48
57
|
}
|
|
49
58
|
export const transactionSigner = async (runtime, path) => isLedgerPath(path) ? ledgerSigner(path, runtime.ledger ?? openUsb) : runtime.loadSigner(path);
|
|
59
|
+
export const messageSigner = async (runtime, path) => isLedgerPath(path) ? ledgerSigner(path, runtime.ledger ?? openUsb) : runtime.loadSigner(path);
|
|
60
|
+
export function keyFileSigner(signer, name, path) {
|
|
61
|
+
if (!isKeyPairSigner(signer)) {
|
|
62
|
+
throw new UsageError(needsKeyFile(name, path));
|
|
63
|
+
}
|
|
64
|
+
return signer;
|
|
65
|
+
}
|
|
50
66
|
//# sourceMappingURL=ledger-keys.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger-keys.js","sourceRoot":"","sources":["../../src/ledger-keys.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ledger-keys.js","sourceRoot":"","sources":["../../src/ledger-keys.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type Transport } from "@intent-engine/client";
|
|
2
|
+
import type { Command } from "./command-types.js";
|
|
3
|
+
import type { Runtime } from "./runtime.js";
|
|
4
|
+
type CloseLegacy = Extract<Command, {
|
|
5
|
+
name: "close-legacy";
|
|
6
|
+
}>;
|
|
7
|
+
export declare function closeLegacy(command: CloseLegacy, runtime: Runtime, transport: Transport): Promise<object>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { boardTerms, buildCloseLegacy, findVaultPda, getIntentDecoder, INTENT_DISCRIMINATOR, INTENT_ENGINE_PROGRAM_ADDRESS, IntentStatus, isCurrentAccount, legacyStakeTo, lineIntent, migratesInPlace, recordedPayer, storedVersion, TOKEN_2022_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS, } from "@intent-engine/core";
|
|
2
|
+
import { chainTime, createdAccount, loadConfig } from "@intent-engine/client";
|
|
3
|
+
import { previewed } from "./admin-commands.js";
|
|
4
|
+
import { transactionSigner } from "./ledger-keys.js";
|
|
5
|
+
const isIntent = (data) => INTENT_DISCRIMINATOR.every((b, i) => data[i] === b);
|
|
6
|
+
async function escrowOpen(transport, intent, now) {
|
|
7
|
+
const view = await createdAccount(transport, intent);
|
|
8
|
+
if (view === null || view.owner !== INTENT_ENGINE_PROGRAM_ADDRESS || !isIntent(view.data)) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
const stored = storedVersion(view.data);
|
|
12
|
+
if (stored === null || stored.version < stored.layout.oldest || stored.version > stored.layout.version) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
const held = getIntentDecoder().decode(view.data);
|
|
16
|
+
return held.status === IntentStatus.Open && now < held.expiresAt;
|
|
17
|
+
}
|
|
18
|
+
async function stakeOf(transport, terms) {
|
|
19
|
+
if (terms === null) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
const now = await chainTime(transport);
|
|
23
|
+
return legacyStakeTo(terms, await escrowOpen(transport, terms.intent, now), now);
|
|
24
|
+
}
|
|
25
|
+
export async function closeLegacy(command, runtime, transport) {
|
|
26
|
+
const payer = await transactionSigner(runtime, command.keypair);
|
|
27
|
+
const account = command.address;
|
|
28
|
+
const view = await createdAccount(transport, account);
|
|
29
|
+
if (view === null) {
|
|
30
|
+
throw new Error(`${account} does not exist`);
|
|
31
|
+
}
|
|
32
|
+
if (view.owner !== INTENT_ENGINE_PROGRAM_ADDRESS) {
|
|
33
|
+
throw new Error(`${account} is not an engine account; close-legacy closes only accounts the engine program owns`);
|
|
34
|
+
}
|
|
35
|
+
const stored = storedVersion(view.data);
|
|
36
|
+
if (isCurrentAccount(view.data)) {
|
|
37
|
+
throw new Error(`${account} is a current ${stored?.layout.name ?? "engine"} account; close-legacy closes only accounts of an earlier layout or version`);
|
|
38
|
+
}
|
|
39
|
+
if (migratesInPlace(view.data)) {
|
|
40
|
+
throw new Error(`${account} is a ${stored?.layout.name ?? "engine"} account, which is upgraded in place and never closed`);
|
|
41
|
+
}
|
|
42
|
+
const line = lineIntent(view.data);
|
|
43
|
+
if (line !== null && (await escrowOpen(transport, line, await chainTime(transport)))) {
|
|
44
|
+
throw new Error(`${account} is an outdated ${stored?.layout.name ?? "line"} account of escrow ${line}, which is still open; closing it would drop its place in the line, so upgrade it with intent-engine migrate instead`);
|
|
45
|
+
}
|
|
46
|
+
const intent = isIntent(view.data);
|
|
47
|
+
const [vault] = await findVaultPda({ intent: account });
|
|
48
|
+
const vaultView = intent ? await createdAccount(transport, vault) : null;
|
|
49
|
+
if (vaultView !== null && [TOKEN_PROGRAM_ADDRESS, TOKEN_2022_PROGRAM_ADDRESS].includes(vaultView.owner) && vaultView.data.length > 0) {
|
|
50
|
+
throw new Error(`the vault ${vault} of intent ${account} still holds its escrow; cancel, expire or close the intent first so its owner gets every token back`);
|
|
51
|
+
}
|
|
52
|
+
const recorded = recordedPayer(view.data);
|
|
53
|
+
const recordedView = recorded === null ? null : await createdAccount(transport, recorded);
|
|
54
|
+
const unpayable = recordedView?.executable === true;
|
|
55
|
+
const config = recorded === null || unpayable ? await loadConfig(transport) : null;
|
|
56
|
+
const payee = recorded ?? config?.config.feeRecipient;
|
|
57
|
+
if (payee === undefined) {
|
|
58
|
+
throw new Error(`no wallet to pay for ${account}`);
|
|
59
|
+
}
|
|
60
|
+
const rentTo = unpayable ? config?.config.feeRecipient : payee;
|
|
61
|
+
if (rentTo === undefined) {
|
|
62
|
+
throw new Error(`no wallet to pay for ${account}`);
|
|
63
|
+
}
|
|
64
|
+
const terms = boardTerms(view.data);
|
|
65
|
+
const receiver = await stakeOf(transport, terms);
|
|
66
|
+
const stakeTo = receiver === null || receiver === rentTo ? null : receiver;
|
|
67
|
+
const stake = stakeTo === null ? 0n : (terms?.held ?? 0n);
|
|
68
|
+
const instruction = await buildCloseLegacy({
|
|
69
|
+
account,
|
|
70
|
+
payee,
|
|
71
|
+
...(config === null ? {} : { config: config.address }),
|
|
72
|
+
...(intent ? { vault } : {}),
|
|
73
|
+
...(line === null ? {} : { intent: line }),
|
|
74
|
+
...(stakeTo === null ? {} : { stakeTo }),
|
|
75
|
+
...(unpayable ? { feeTo: rentTo } : {}),
|
|
76
|
+
});
|
|
77
|
+
const what = stored === null
|
|
78
|
+
? `an engine account of ${view.data.length} bytes that matches no account type`
|
|
79
|
+
: `an outdated ${stored.layout.name} account: version ${stored.version}, ${view.data.length} bytes; the current one is version ${stored.layout.version}, ${stored.layout.space} bytes`;
|
|
80
|
+
const rest = view.lamports - stake;
|
|
81
|
+
const share = stake === 0n ? `all its ${rest}` : `the other ${rest}`;
|
|
82
|
+
const why = unpayable
|
|
83
|
+
? `the config's fee recipient, since ${payee}, which its layout records as the payer, cannot hold lamports`
|
|
84
|
+
: recorded === null
|
|
85
|
+
? "the config's fee recipient, since its layout records no payer"
|
|
86
|
+
: "the wallet its layout records as the one that paid for it";
|
|
87
|
+
const summary = [
|
|
88
|
+
`Closes ${account}, ${what}`,
|
|
89
|
+
...(stakeTo === null ? [] : [`Pays the ${stake} lamports of claim stake it holds to ${stakeTo}, as settling the claim would`]),
|
|
90
|
+
`Sends ${share} lamports to ${rentTo}, ${why}`,
|
|
91
|
+
];
|
|
92
|
+
return previewed(transport, [instruction], payer, { account, payee: rentTo, lamports: view.lamports, summary }, command.yes);
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=legacy-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy-commands.js","sourceRoot":"","sources":["../../src/legacy-commands.ts"],"names":[],"mappings":"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"}
|
package/dist/src/main.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Readable, Writable } from "node:stream";
|
|
2
2
|
import { type KeyPairSigner } from "@solana/kit";
|
|
3
|
+
import { type Command } from "./args.js";
|
|
3
4
|
import { type Runtime } from "./commands.js";
|
|
4
5
|
export declare const EXIT_OK = 0;
|
|
5
6
|
export declare const EXIT_FAILED = 1;
|
|
@@ -15,6 +16,8 @@ type Io = {
|
|
|
15
16
|
export { render } from "./render.js";
|
|
16
17
|
export declare const unreachable: (url: string) => string;
|
|
17
18
|
export declare const PREVIEW_ONLY = "nothing was sent; pass --yes to sign and send it";
|
|
19
|
+
export declare const ONE_NODE = "this reads one RPC node; set the confirm-url setting with setup --confirm-url <cluster>, or pass --confirm-url, to check a second node before a release";
|
|
20
|
+
export declare const readsOneNode: (command: Command) => boolean;
|
|
18
21
|
export declare function main(argv: readonly string[], runtime: Runtime, io: Io): Promise<number>;
|
|
19
22
|
export declare const keypairUnreadable: (path: string) => string;
|
|
20
23
|
export declare function loadKeypairBytes(path: string, platform?: string, home?: string): Promise<Uint8Array>;
|
package/dist/src/main.js
CHANGED
|
@@ -29,6 +29,8 @@ export { render } from "./render.js";
|
|
|
29
29
|
export const unreachable = (url) => `cannot reach the RPC node at ${url}; check your network connection and that this endpoint is up, or pass another --url or set ${ENV_URL}`;
|
|
30
30
|
export const PREVIEW_ONLY = "nothing was sent; pass --yes to sign and send it";
|
|
31
31
|
const PREVIEWED = new Set(["cancel", "expire", "close"]);
|
|
32
|
+
export const ONE_NODE = "this reads one RPC node; set the confirm-url setting with setup --confirm-url <cluster>, or pass --confirm-url, to check a second node before a release";
|
|
33
|
+
export const readsOneNode = (command) => (command.name === "judge" || command.name === "committee-release" || (command.name === "mcp" && command.wallet !== null)) && command.confirmUrl === undefined;
|
|
32
34
|
const offline = (error) => error instanceof TypeError && error.message === "fetch failed";
|
|
33
35
|
function message(error, url) {
|
|
34
36
|
if (unfundedSend(error)) {
|
|
@@ -53,6 +55,9 @@ export async function main(argv, runtime, io) {
|
|
|
53
55
|
const command = parse(argv, settings);
|
|
54
56
|
url = "url" in command ? command.url : undefined;
|
|
55
57
|
checkLedgerPaths(command, settings[ENV_KEYPAIR]);
|
|
58
|
+
if (readsOneNode(command)) {
|
|
59
|
+
process.stderr.write(`${ONE_NODE}\n`);
|
|
60
|
+
}
|
|
56
61
|
const show = (value) => io.out(command.name === "help" || outputOf(argv) === "text" ? renderText(value) : render(value));
|
|
57
62
|
if (command.name === "follow") {
|
|
58
63
|
const transport = withPriority(runtime.transport(command.url), command.priority);
|
package/dist/src/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,eAAe,EAAsB,MAAM,aAAa,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,mBAAmB,EAAE,OAAO,EAAgB,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC/I,OAAO,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type Transport } from "@intent-engine/client";
|
|
2
|
+
import type { Command } from "./command-types.js";
|
|
3
|
+
import type { Runtime } from "./runtime.js";
|
|
4
|
+
type Migrate = Extract<Command, {
|
|
5
|
+
name: "migrate";
|
|
6
|
+
}>;
|
|
7
|
+
export declare const MIGRATE_BATCH = 8;
|
|
8
|
+
export declare const NOTHING_TO_MIGRATE = "nothing to migrate: every engine account is current or needs close-legacy";
|
|
9
|
+
export declare function migrate(command: Migrate, runtime: Runtime, transport: Transport): Promise<object>;
|
|
10
|
+
export {};
|
|
@@ -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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"}
|
package/dist/src/monitor.d.ts
CHANGED
|
@@ -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>;
|
package/dist/src/monitor.js
CHANGED
|
@@ -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(
|
|
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)) {
|
package/dist/src/monitor.js.map
CHANGED
|
@@ -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,
|
|
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:
|
|
19
|
+
export declare function simulateRelease(transport: Transport, judge: TransactionPartialSigner & MessagePartialSigner, release: ReleaseInput): Promise<SimulatedRelease>;
|