@aura-protocol/cli 0.1.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -67
- package/bin/aura.js +0 -0
- package/dist/commands/confidential.d.ts +1 -1
- package/dist/commands/confidential.js +276 -597
- package/dist/commands/confidential.js.map +1 -1
- package/dist/commands/config.d.ts +1 -1
- package/dist/commands/config.js +26 -8
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/dashboard.d.ts +1 -1
- package/dist/commands/dashboard.js +6 -7
- package/dist/commands/dashboard.js.map +1 -1
- package/dist/commands/dwallet.d.ts +1 -1
- package/dist/commands/dwallet.js +52 -41
- package/dist/commands/dwallet.js.map +1 -1
- package/dist/commands/execution.d.ts +1 -1
- package/dist/commands/execution.js +111 -175
- package/dist/commands/execution.js.map +1 -1
- package/dist/commands/features.d.ts +1 -1
- package/dist/commands/features.js +15 -10
- package/dist/commands/features.js.map +1 -1
- package/dist/commands/generated.d.ts +20 -0
- package/dist/commands/generated.js +61 -0
- package/dist/commands/generated.js.map +1 -0
- package/dist/commands/governance.d.ts +1 -1
- package/dist/commands/governance.js +113 -99
- package/dist/commands/governance.js.map +1 -1
- package/dist/commands/helpers.d.ts +5 -2
- package/dist/commands/helpers.js +79 -16
- package/dist/commands/helpers.js.map +1 -1
- package/dist/commands/instruction-exec.d.ts +27 -0
- package/dist/commands/instruction-exec.js +171 -0
- package/dist/commands/instruction-exec.js.map +1 -0
- package/dist/commands/instruction.d.ts +9 -0
- package/dist/commands/instruction.js +81 -0
- package/dist/commands/instruction.js.map +1 -0
- package/dist/commands/pda.d.ts +1 -1
- package/dist/commands/pda.js +15 -7
- package/dist/commands/pda.js.map +1 -1
- package/dist/commands/treasury.d.ts +1 -1
- package/dist/commands/treasury.js +201 -186
- package/dist/commands/treasury.js.map +1 -1
- package/dist/core/config.d.ts +35 -0
- package/dist/core/config.js +97 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/context.d.ts +51 -0
- package/dist/core/context.js +60 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/errors.d.ts +38 -0
- package/dist/core/errors.js +138 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/network.d.ts +18 -0
- package/dist/core/network.js +38 -0
- package/dist/core/network.js.map +1 -0
- package/dist/core/runner.d.ts +45 -0
- package/dist/core/runner.js +219 -0
- package/dist/core/runner.js.map +1 -0
- package/dist/core/security.d.ts +28 -0
- package/dist/core/security.js +83 -0
- package/dist/core/security.js.map +1 -0
- package/dist/core/wallet.d.ts +2 -0
- package/dist/core/wallet.js +21 -0
- package/dist/core/wallet.js.map +1 -0
- package/dist/ika.d.ts +0 -9
- package/dist/ika.js +0 -48
- package/dist/ika.js.map +1 -1
- package/dist/index.js +56 -13
- package/dist/index.js.map +1 -1
- package/dist/lib/domain.d.ts +16 -0
- package/dist/lib/domain.js +88 -0
- package/dist/lib/domain.js.map +1 -0
- package/dist/lib/ika.d.ts +81 -0
- package/dist/lib/ika.js +192 -0
- package/dist/lib/ika.js.map +1 -0
- package/dist/lib/instructions.d.ts +79 -0
- package/dist/lib/instructions.js +421 -0
- package/dist/lib/instructions.js.map +1 -0
- package/dist/lib/protocol.d.ts +99 -0
- package/dist/lib/protocol.js +327 -0
- package/dist/lib/protocol.js.map +1 -0
- package/dist/lib/treasury-view.d.ts +11 -0
- package/dist/lib/treasury-view.js +126 -0
- package/dist/lib/treasury-view.js.map +1 -0
- package/dist/output.js +0 -3
- package/dist/output.js.map +1 -1
- package/dist/program-instructions.d.ts +1 -1
- package/dist/protocol.d.ts +0 -1
- package/dist/protocol.js +0 -7
- package/dist/protocol.js.map +1 -1
- package/dist/treasury-view.js +1 -1
- package/dist/treasury-view.js.map +1 -1
- package/dist/ui/dashboard.d.ts +7 -0
- package/dist/ui/dashboard.js +99 -0
- package/dist/ui/dashboard.js.map +1 -0
- package/dist/ui/format.d.ts +9 -0
- package/dist/ui/format.js +92 -0
- package/dist/ui/format.js.map +1 -0
- package/dist/ui/output.d.ts +58 -0
- package/dist/ui/output.js +208 -0
- package/dist/ui/output.js.map +1 -0
- package/dist/ui/theme.d.ts +52 -0
- package/dist/ui/theme.js +110 -0
- package/dist/ui/theme.js.map +1 -0
- package/dist/vendor/encrypt/generated/grpc/encrypt_service.d.ts +1 -1
- package/dist/vendor/encrypt/generated/grpc/encrypt_service.js +36 -13
- package/dist/vendor/encrypt/generated/grpc/encrypt_service.js.map +1 -1
- package/dist/vendor/encrypt/grpc.d.ts +2 -2
- package/dist/vendor/encrypt/grpc.js +1 -3
- package/dist/vendor/encrypt/grpc.js.map +1 -1
- package/dist/vendor/ika/bcs-types.js +107 -50
- package/dist/vendor/ika/bcs-types.js.map +1 -1
- package/dist/vendor/ika/generated/grpc/ika_dwallet.d.ts +1 -1
- package/dist/vendor/ika/generated/grpc/ika_dwallet.js +14 -4
- package/dist/vendor/ika/generated/grpc/ika_dwallet.js.map +1 -1
- package/dist/vendor/ika/grpc.d.ts +1 -1
- package/dist/vendor/ika/grpc.js +49 -24
- package/dist/vendor/ika/grpc.js.map +1 -1
- package/package.json +16 -13
- package/dist/ascii.d.ts +0 -1
- package/dist/ascii.js +0 -2
- package/dist/ascii.js.map +0 -1
|
@@ -1,13 +1,27 @@
|
|
|
1
|
+
import { instructions } from "@aura-protocol/sdk-ts";
|
|
1
2
|
import { PublicKey } from "@solana/web3.js";
|
|
2
|
-
import
|
|
3
|
-
import { buildCliContext } from "../context.js";
|
|
4
|
-
import {
|
|
3
|
+
import BN from "bn.js";
|
|
4
|
+
import { buildCliContext } from "../core/context.js";
|
|
5
|
+
import { CliError } from "../core/errors.js";
|
|
6
|
+
import { runInstructions } from "../core/runner.js";
|
|
5
7
|
import { buildConfigureMultisigArgs, buildConfigureSwarmArgs, parseCsv, promptNumber, promptString, resolveTreasuryAccount, } from "./helpers.js";
|
|
6
8
|
function parsePublicKeys(values) {
|
|
7
|
-
return values.map((value) =>
|
|
9
|
+
return values.map((value) => {
|
|
10
|
+
try {
|
|
11
|
+
return new PublicKey(value);
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
throw CliError.invalidInput("--guardians", `base58 public key (got "${value}")`);
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
function nowSeconds() {
|
|
19
|
+
return new BN(Math.floor(Date.now() / 1000));
|
|
8
20
|
}
|
|
9
21
|
export function registerGovernanceCommands(program) {
|
|
10
|
-
const governance = program
|
|
22
|
+
const governance = program
|
|
23
|
+
.command("governance")
|
|
24
|
+
.description("Manage treasury governance settings");
|
|
11
25
|
governance
|
|
12
26
|
.command("multisig")
|
|
13
27
|
.description("Configure an emergency guardian multisig")
|
|
@@ -17,36 +31,37 @@ export function registerGovernanceCommands(program) {
|
|
|
17
31
|
.option("--guardians <pk,pk,...>", "comma-separated guardian pubkeys")
|
|
18
32
|
.action(async function governanceMultisig() {
|
|
19
33
|
const ctx = buildCliContext(this);
|
|
20
|
-
|
|
21
|
-
|
|
34
|
+
const wallet = ctx.wallet;
|
|
35
|
+
if (!wallet) {
|
|
36
|
+
throw new CliError("A wallet is required to configure multisig.", {
|
|
37
|
+
code: "WALLET_REQUIRED",
|
|
38
|
+
});
|
|
22
39
|
}
|
|
23
40
|
const options = this.opts();
|
|
24
41
|
const treasuryState = await resolveTreasuryAccount(ctx, {
|
|
25
|
-
agentId: typeof options
|
|
26
|
-
treasury: typeof options
|
|
42
|
+
agentId: typeof options.agentId === "string" ? options.agentId : undefined,
|
|
43
|
+
treasury: typeof options.treasury === "string" ? options.treasury : undefined,
|
|
27
44
|
});
|
|
28
|
-
const guardiansInput = await promptString(typeof options
|
|
45
|
+
const guardiansInput = await promptString(typeof options.guardians === "string" ? options.guardians : undefined, "Guardian pubkeys (comma-separated)");
|
|
29
46
|
const guardians = parsePublicKeys(parseCsv(guardiansInput));
|
|
30
|
-
const requiredSignatures = await promptNumber(typeof options
|
|
31
|
-
const args = buildConfigureMultisigArgs({
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
47
|
+
const requiredSignatures = await promptNumber(typeof options.required === "number" ? options.required : undefined, "Required signatures");
|
|
48
|
+
const args = buildConfigureMultisigArgs({
|
|
49
|
+
requiredSignatures,
|
|
50
|
+
guardians,
|
|
51
|
+
});
|
|
52
|
+
const instruction = await instructions.governance.configureMultisig(ctx.client, {
|
|
53
|
+
accounts: {
|
|
54
|
+
owner: wallet.publicKey,
|
|
36
55
|
treasury: treasuryState.treasury,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
emitJson(ctx.output, { treasury: treasuryState.treasury, signature });
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
printSuccess(ctx.output, `Multisig configured: ${signature}`);
|
|
56
|
+
},
|
|
57
|
+
args,
|
|
58
|
+
});
|
|
59
|
+
await runInstructions(ctx, [instruction], {
|
|
60
|
+
action: "Configure multisig",
|
|
61
|
+
instructionName: "configure_multisig",
|
|
62
|
+
summary: [["quorum", `${requiredSignatures}-of-${guardians.length}`]],
|
|
63
|
+
result: { treasury: treasuryState.treasury },
|
|
64
|
+
});
|
|
50
65
|
});
|
|
51
66
|
governance
|
|
52
67
|
.command("swarm")
|
|
@@ -58,42 +73,42 @@ export function registerGovernanceCommands(program) {
|
|
|
58
73
|
.option("--pool-limit <usd>", "shared pool limit in USD", Number)
|
|
59
74
|
.action(async function governanceSwarm() {
|
|
60
75
|
const ctx = buildCliContext(this);
|
|
61
|
-
|
|
62
|
-
|
|
76
|
+
const wallet = ctx.wallet;
|
|
77
|
+
if (!wallet) {
|
|
78
|
+
throw new CliError("A wallet is required to configure a swarm.", {
|
|
79
|
+
code: "WALLET_REQUIRED",
|
|
80
|
+
});
|
|
63
81
|
}
|
|
64
82
|
const options = this.opts();
|
|
65
83
|
const treasuryState = await resolveTreasuryAccount(ctx, {
|
|
66
|
-
agentId: typeof options
|
|
67
|
-
treasury: typeof options
|
|
84
|
+
agentId: typeof options.agentId === "string" ? options.agentId : undefined,
|
|
85
|
+
treasury: typeof options.treasury === "string" ? options.treasury : undefined,
|
|
68
86
|
});
|
|
69
|
-
const swarmId = await promptString(typeof options
|
|
70
|
-
const membersInput = await promptString(typeof options
|
|
71
|
-
const sharedPoolLimitUsd = await promptNumber(typeof options
|
|
87
|
+
const swarmId = await promptString(typeof options.swarmId === "string" ? options.swarmId : undefined, "Swarm ID");
|
|
88
|
+
const membersInput = await promptString(typeof options.members === "string" ? options.members : undefined, "Member agent IDs (comma-separated)");
|
|
89
|
+
const sharedPoolLimitUsd = await promptNumber(typeof options.poolLimit === "number" ? options.poolLimit : undefined, "Shared pool limit (USD)");
|
|
72
90
|
const args = buildConfigureSwarmArgs({
|
|
73
91
|
swarmId,
|
|
74
92
|
memberAgents: parseCsv(membersInput),
|
|
75
93
|
sharedPoolLimitUsd,
|
|
76
94
|
});
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
if (ctx.output.json) {
|
|
91
|
-
emitJson(ctx.output, { treasury: treasuryState.treasury, signature });
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
printSuccess(ctx.output, `Swarm configured: ${signature}`);
|
|
95
|
+
const instruction = await instructions.swarm.configureSwarm(ctx.client, {
|
|
96
|
+
accounts: { owner: wallet.publicKey, treasury: treasuryState.treasury },
|
|
97
|
+
args,
|
|
98
|
+
});
|
|
99
|
+
await runInstructions(ctx, [instruction], {
|
|
100
|
+
action: "Configure swarm",
|
|
101
|
+
instructionName: "configure_swarm",
|
|
102
|
+
summary: [
|
|
103
|
+
["swarm", swarmId],
|
|
104
|
+
["pool", `$${sharedPoolLimitUsd}`],
|
|
105
|
+
],
|
|
106
|
+
result: { treasury: treasuryState.treasury },
|
|
107
|
+
});
|
|
95
108
|
});
|
|
96
|
-
const override = governance
|
|
109
|
+
const override = governance
|
|
110
|
+
.command("override")
|
|
111
|
+
.description("Manage emergency override proposals");
|
|
97
112
|
override
|
|
98
113
|
.command("propose")
|
|
99
114
|
.description("Guardian proposes a higher daily limit")
|
|
@@ -102,34 +117,36 @@ export function registerGovernanceCommands(program) {
|
|
|
102
117
|
.option("--new-daily-limit <usd>", "new daily limit in USD", Number)
|
|
103
118
|
.action(async function governanceOverridePropose() {
|
|
104
119
|
const ctx = buildCliContext(this);
|
|
105
|
-
|
|
106
|
-
|
|
120
|
+
const wallet = ctx.wallet;
|
|
121
|
+
if (!wallet) {
|
|
122
|
+
throw new CliError("A wallet is required to propose an override.", {
|
|
123
|
+
code: "WALLET_REQUIRED",
|
|
124
|
+
});
|
|
107
125
|
}
|
|
108
126
|
const options = this.opts();
|
|
109
127
|
const treasuryState = await resolveTreasuryAccount(ctx, {
|
|
110
|
-
agentId: typeof options
|
|
111
|
-
treasury: typeof options
|
|
128
|
+
agentId: typeof options.agentId === "string" ? options.agentId : undefined,
|
|
129
|
+
treasury: typeof options.treasury === "string" ? options.treasury : undefined,
|
|
112
130
|
});
|
|
113
|
-
const newDailyLimitUsd = await promptNumber(typeof options
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
131
|
+
const newDailyLimitUsd = await promptNumber(typeof options.newDailyLimit === "number"
|
|
132
|
+
? options.newDailyLimit
|
|
133
|
+
: undefined, "New daily limit (USD)");
|
|
134
|
+
const instruction = await instructions.governance.proposeOverride(ctx.client, {
|
|
135
|
+
accounts: {
|
|
136
|
+
guardian: wallet.publicKey,
|
|
119
137
|
treasury: treasuryState.treasury,
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
}
|
|
132
|
-
printSuccess(ctx.output, `Override proposed: ${signature}`);
|
|
138
|
+
},
|
|
139
|
+
args: {
|
|
140
|
+
newDailyLimitUsd: new BN(newDailyLimitUsd),
|
|
141
|
+
now: nowSeconds(),
|
|
142
|
+
},
|
|
143
|
+
});
|
|
144
|
+
await runInstructions(ctx, [instruction], {
|
|
145
|
+
action: "Propose override",
|
|
146
|
+
instructionName: "propose_override",
|
|
147
|
+
summary: [["new daily", `$${newDailyLimitUsd}`]],
|
|
148
|
+
result: { treasury: treasuryState.treasury },
|
|
149
|
+
});
|
|
133
150
|
});
|
|
134
151
|
override
|
|
135
152
|
.command("collect")
|
|
@@ -138,32 +155,29 @@ export function registerGovernanceCommands(program) {
|
|
|
138
155
|
.option("--treasury <pda>", "treasury PDA")
|
|
139
156
|
.action(async function governanceOverrideCollect() {
|
|
140
157
|
const ctx = buildCliContext(this);
|
|
141
|
-
|
|
142
|
-
|
|
158
|
+
const wallet = ctx.wallet;
|
|
159
|
+
if (!wallet) {
|
|
160
|
+
throw new CliError("A wallet is required to collect an override signature.", {
|
|
161
|
+
code: "WALLET_REQUIRED",
|
|
162
|
+
});
|
|
143
163
|
}
|
|
144
164
|
const options = this.opts();
|
|
145
165
|
const treasuryState = await resolveTreasuryAccount(ctx, {
|
|
146
|
-
agentId: typeof options
|
|
147
|
-
treasury: typeof options
|
|
166
|
+
agentId: typeof options.agentId === "string" ? options.agentId : undefined,
|
|
167
|
+
treasury: typeof options.treasury === "string" ? options.treasury : undefined,
|
|
148
168
|
});
|
|
149
|
-
const
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
emitJson(ctx.output, {
|
|
153
|
-
action: "governance.override.collect",
|
|
169
|
+
const instruction = await instructions.governance.collectOverrideSignature(ctx.client, {
|
|
170
|
+
accounts: {
|
|
171
|
+
guardian: wallet.publicKey,
|
|
154
172
|
treasury: treasuryState.treasury,
|
|
155
|
-
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
emitJson(ctx.output, { treasury: treasuryState.treasury, signature });
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
printSuccess(ctx.output, `Override signature collected: ${signature}`);
|
|
173
|
+
},
|
|
174
|
+
args: { now: nowSeconds() },
|
|
175
|
+
});
|
|
176
|
+
await runInstructions(ctx, [instruction], {
|
|
177
|
+
action: "Collect override signature",
|
|
178
|
+
instructionName: "collect_override_signature",
|
|
179
|
+
result: { treasury: treasuryState.treasury },
|
|
180
|
+
});
|
|
167
181
|
});
|
|
168
182
|
}
|
|
169
183
|
//# sourceMappingURL=governance.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance.js","sourceRoot":"","sources":["../../src/commands/governance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,
|
|
1
|
+
{"version":3,"file":"governance.js","sourceRoot":"","sources":["../../src/commands/governance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { type ConfigureMultisigArgs, type ConfigureSwarmArgs, type CreateTreasuryArgs, type ProposeConfidentialTransactionArgs, type ProposeTransactionArgs, type RegisterDwalletArgs, type TreasuryAccountRecord } from "
|
|
1
|
+
import { type ConfigureMultisigArgs, type ConfigureSwarmArgs, type CreateTreasuryArgs, type ProposeConfidentialTransactionArgs, type ProposeTransactionArgs, type RegisterDwalletArgs, type TreasuryAccountRecord } from "@aura-protocol/sdk-ts";
|
|
2
2
|
import { PublicKey } from "@solana/web3.js";
|
|
3
|
-
import type { CliContext } from "../context.js";
|
|
3
|
+
import type { CliContext } from "../core/context.js";
|
|
4
4
|
export interface TreasuryLookupOptions {
|
|
5
5
|
treasury?: string;
|
|
6
6
|
agentId?: string;
|
|
@@ -22,6 +22,7 @@ export declare function resolveTreasuryAccount(ctx: CliContext, options: Treasur
|
|
|
22
22
|
account: TreasuryAccountRecord;
|
|
23
23
|
agentId: string;
|
|
24
24
|
}>;
|
|
25
|
+
export declare function fetchTreasury(ctx: CliContext, treasury: PublicKey): Promise<TreasuryAccountRecord>;
|
|
25
26
|
export declare function buildCreateTreasuryArgs(inputValue: {
|
|
26
27
|
agentId: string;
|
|
27
28
|
aiAuthority: PublicKey;
|
|
@@ -71,6 +72,8 @@ export declare function buildProposeConfidentialArgs(inputValue: {
|
|
|
71
72
|
export declare function buildConfigureMultisigArgs(inputValue: {
|
|
72
73
|
requiredSignatures: number;
|
|
73
74
|
guardians: PublicKey[];
|
|
75
|
+
guardianWeights?: number[];
|
|
76
|
+
requiredApprovalWeight?: number;
|
|
74
77
|
}): ConfigureMultisigArgs;
|
|
75
78
|
export declare function buildConfigureSwarmArgs(inputValue: {
|
|
76
79
|
swarmId: string;
|
package/dist/commands/helpers.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { accounts, deriveTreasuryAddress, validateAddress, validateAgentId, validateAmountUsd, validateDwalletId, validateGuardians, validateMultisigThreshold, validateSwarmMembers, } from "@aura-protocol/sdk-ts";
|
|
1
2
|
import { confirm, input, number, select } from "@inquirer/prompts";
|
|
2
|
-
import BN from "bn.js";
|
|
3
|
-
import { validateAddress, validateAgentId, validateAmountUsd, validateDwalletId, validateGuardians, validateMultisigThreshold, validateSwarmMembers, } from "../sdk.js";
|
|
4
3
|
import { PublicKey } from "@solana/web3.js";
|
|
5
|
-
import
|
|
4
|
+
import BN from "bn.js";
|
|
5
|
+
import { listChainChoices, listTransactionTypeChoices, parseChain, parseTransactionType, } from "../lib/domain.js";
|
|
6
6
|
function requireWallet(ctx) {
|
|
7
7
|
if (!ctx.wallet) {
|
|
8
8
|
throw new Error("This command requires a wallet. Configure one with 'aura config init' or pass --wallet.");
|
|
@@ -95,23 +95,27 @@ export async function resolveTreasuryAccount(ctx, options) {
|
|
|
95
95
|
const wallet = requireWallet(ctx);
|
|
96
96
|
if (options.treasury) {
|
|
97
97
|
const treasury = new PublicKey(options.treasury);
|
|
98
|
-
const account = await ctx.client
|
|
98
|
+
const account = await accounts.fetchTreasuryAccount(ctx.client, treasury);
|
|
99
99
|
return { treasury, account, agentId: account.agentId };
|
|
100
100
|
}
|
|
101
101
|
const agentId = options.agentId ?? ctx.config.defaultAgentId;
|
|
102
102
|
if (!agentId) {
|
|
103
103
|
throw new Error("Pass --agent-id or --treasury, or set defaultAgentId in your CLI config.");
|
|
104
104
|
}
|
|
105
|
-
const
|
|
106
|
-
|
|
105
|
+
const [treasury] = deriveTreasuryAddress(wallet.publicKey, agentId, ctx.programId);
|
|
106
|
+
const account = await accounts.fetchTreasuryAccountNullable(ctx.client, treasury);
|
|
107
|
+
if (!account) {
|
|
107
108
|
throw new Error(`No treasury found for owner ${wallet.publicKey.toBase58()} and agentId '${agentId}'.`);
|
|
108
109
|
}
|
|
109
110
|
return {
|
|
110
|
-
treasury
|
|
111
|
-
account
|
|
111
|
+
treasury,
|
|
112
|
+
account,
|
|
112
113
|
agentId,
|
|
113
114
|
};
|
|
114
115
|
}
|
|
116
|
+
export async function fetchTreasury(ctx, treasury) {
|
|
117
|
+
return await accounts.fetchTreasuryAccount(ctx.client, treasury);
|
|
118
|
+
}
|
|
115
119
|
export function buildCreateTreasuryArgs(inputValue) {
|
|
116
120
|
validateAgentId(inputValue.agentId);
|
|
117
121
|
validateAmountUsd(inputValue.dailyLimitUsd);
|
|
@@ -125,8 +129,10 @@ export function buildCreateTreasuryArgs(inputValue) {
|
|
|
125
129
|
policyConfig: {
|
|
126
130
|
dailyLimitUsd: new BN(inputValue.dailyLimitUsd),
|
|
127
131
|
perTxLimitUsd: new BN(inputValue.perTxLimitUsd),
|
|
128
|
-
daytimeHourlyLimitUsd: new BN(inputValue.daytimeHourlyLimitUsd ??
|
|
129
|
-
|
|
132
|
+
daytimeHourlyLimitUsd: new BN(inputValue.daytimeHourlyLimitUsd ??
|
|
133
|
+
Math.floor(inputValue.dailyLimitUsd / 10)),
|
|
134
|
+
nighttimeHourlyLimitUsd: new BN(inputValue.nighttimeHourlyLimitUsd ??
|
|
135
|
+
Math.floor(inputValue.dailyLimitUsd / 20)),
|
|
130
136
|
velocityLimitUsd: new BN(inputValue.velocityLimitUsd ?? Math.floor(inputValue.dailyLimitUsd / 2)),
|
|
131
137
|
allowedProtocolBitmap: new BN(31),
|
|
132
138
|
maxSlippageBps: new BN(inputValue.maxSlippageBps ?? 100),
|
|
@@ -155,6 +161,24 @@ export function buildCreateTreasuryArgs(inputValue) {
|
|
|
155
161
|
requireComplianceOracleFreshness: false,
|
|
156
162
|
maxStalenessSecs: new BN(300),
|
|
157
163
|
},
|
|
164
|
+
failureModes: {
|
|
165
|
+
// Conservative defaults: every failure mode is fail-closed (0) and no
|
|
166
|
+
// fail-open budget is granted. Loosen these per-treasury via the
|
|
167
|
+
// policy/budget commands once operational needs are understood.
|
|
168
|
+
quoteFreshness: 0,
|
|
169
|
+
counterpartyRisk: 0,
|
|
170
|
+
slippage: 0,
|
|
171
|
+
anomaly: 0,
|
|
172
|
+
balanceOracleStale: 0,
|
|
173
|
+
complianceOracle: 0,
|
|
174
|
+
encryptLiveness: 0,
|
|
175
|
+
dwalletLiveness: 0,
|
|
176
|
+
maxFailOpenUsd: new BN(0),
|
|
177
|
+
failOpenWindowSecs: new BN(0),
|
|
178
|
+
failOpenBudgetUsd: new BN(0),
|
|
179
|
+
failOpenMaxPerWindow: 0,
|
|
180
|
+
staleFallbackLimitUsd: new BN(0),
|
|
181
|
+
},
|
|
158
182
|
},
|
|
159
183
|
protocolFees: {
|
|
160
184
|
treasuryCreationFeeUsd: new BN(100),
|
|
@@ -188,12 +212,36 @@ export function buildProposeTransactionArgs(inputValue) {
|
|
|
188
212
|
txType: inputValue.txType,
|
|
189
213
|
protocolId: inputValue.protocolId ?? null,
|
|
190
214
|
currentTimestamp: new BN(Math.floor(Date.now() / 1000)),
|
|
191
|
-
expectedOutputUsd: inputValue.expectedOutputUsd !== undefined
|
|
192
|
-
|
|
193
|
-
|
|
215
|
+
expectedOutputUsd: inputValue.expectedOutputUsd !== undefined
|
|
216
|
+
? new BN(inputValue.expectedOutputUsd)
|
|
217
|
+
: null,
|
|
218
|
+
actualOutputUsd: inputValue.actualOutputUsd !== undefined
|
|
219
|
+
? new BN(inputValue.actualOutputUsd)
|
|
220
|
+
: null,
|
|
221
|
+
quoteAgeSecs: inputValue.quoteAgeSecs !== undefined
|
|
222
|
+
? new BN(inputValue.quoteAgeSecs)
|
|
223
|
+
: null,
|
|
194
224
|
counterpartyRiskScore: inputValue.counterpartyRiskScore ?? null,
|
|
195
225
|
recipientOrContract: inputValue.recipient,
|
|
196
226
|
sanctionsProof: [],
|
|
227
|
+
// Optional chain-specific execution-binding fields. Left null for the
|
|
228
|
+
// ergonomic propose flow; supply them via `aura execution propose-transaction`
|
|
229
|
+
// (raw instruction) when binding a concrete on-chain transaction.
|
|
230
|
+
assetId: null,
|
|
231
|
+
nativeAmount: null,
|
|
232
|
+
decimals: null,
|
|
233
|
+
gasNativeAmount: null,
|
|
234
|
+
gasAssetId: null,
|
|
235
|
+
evmChainId: null,
|
|
236
|
+
replayNonce: null,
|
|
237
|
+
gasLimit: null,
|
|
238
|
+
maxFeeNative: null,
|
|
239
|
+
calldataHash: null,
|
|
240
|
+
utxoSetHash: null,
|
|
241
|
+
sighashType: null,
|
|
242
|
+
solanaRecentBlockhash: null,
|
|
243
|
+
solanaMessageHash: null,
|
|
244
|
+
confirmationsRequired: null,
|
|
197
245
|
};
|
|
198
246
|
}
|
|
199
247
|
export function buildProposeConfidentialArgs(inputValue) {
|
|
@@ -205,9 +253,15 @@ export function buildProposeConfidentialArgs(inputValue) {
|
|
|
205
253
|
txType: inputValue.txType,
|
|
206
254
|
protocolId: inputValue.protocolId ?? null,
|
|
207
255
|
currentTimestamp: new BN(Math.floor(Date.now() / 1000)),
|
|
208
|
-
expectedOutputUsd: inputValue.expectedOutputUsd !== undefined
|
|
209
|
-
|
|
210
|
-
|
|
256
|
+
expectedOutputUsd: inputValue.expectedOutputUsd !== undefined
|
|
257
|
+
? new BN(inputValue.expectedOutputUsd)
|
|
258
|
+
: null,
|
|
259
|
+
actualOutputUsd: inputValue.actualOutputUsd !== undefined
|
|
260
|
+
? new BN(inputValue.actualOutputUsd)
|
|
261
|
+
: null,
|
|
262
|
+
quoteAgeSecs: inputValue.quoteAgeSecs !== undefined
|
|
263
|
+
? new BN(inputValue.quoteAgeSecs)
|
|
264
|
+
: null,
|
|
211
265
|
counterpartyRiskScore: inputValue.counterpartyRiskScore ?? null,
|
|
212
266
|
recipientOrContract: inputValue.recipient,
|
|
213
267
|
};
|
|
@@ -215,9 +269,18 @@ export function buildProposeConfidentialArgs(inputValue) {
|
|
|
215
269
|
export function buildConfigureMultisigArgs(inputValue) {
|
|
216
270
|
validateGuardians(inputValue.guardians);
|
|
217
271
|
validateMultisigThreshold(inputValue.requiredSignatures, inputValue.guardians.length);
|
|
272
|
+
// Default to equal-weight guardians (weight 1 each) so the multisig behaves
|
|
273
|
+
// as a simple N-of-M. `requiredApprovalWeight` then mirrors the signature
|
|
274
|
+
// threshold. Pass explicit weights for weighted-quorum governance.
|
|
275
|
+
const guardianWeights = inputValue.guardianWeights ?? inputValue.guardians.map(() => 1);
|
|
276
|
+
if (guardianWeights.length !== inputValue.guardians.length) {
|
|
277
|
+
throw new Error("guardianWeights length must match the guardian count");
|
|
278
|
+
}
|
|
218
279
|
return {
|
|
219
280
|
requiredSignatures: inputValue.requiredSignatures,
|
|
220
281
|
guardians: inputValue.guardians,
|
|
282
|
+
guardianWeights,
|
|
283
|
+
requiredApprovalWeight: inputValue.requiredApprovalWeight ?? inputValue.requiredSignatures,
|
|
221
284
|
timestamp: new BN(Math.floor(Date.now() / 1000)),
|
|
222
285
|
};
|
|
223
286
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/commands/helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/commands/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared plumbing for IDL-driven instruction commands.
|
|
3
|
+
*
|
|
4
|
+
* Both the raw `aura ix` surface and the generated per-domain subcommands
|
|
5
|
+
* (`aura <domain> <instruction>`) funnel through here: identical flags, schema
|
|
6
|
+
* help, account/arg parsing, signer resolution, and the secure send pipeline.
|
|
7
|
+
*/
|
|
8
|
+
import type { Command } from "commander";
|
|
9
|
+
import { type CliContext } from "../core/context.js";
|
|
10
|
+
import { type ProgramInstructionSchema } from "../lib/instructions.js";
|
|
11
|
+
/** Adds the standard build/send flags shared by every instruction command. */
|
|
12
|
+
export declare function addBuildOptions(cmd: Command): Command;
|
|
13
|
+
export interface ParsedBuildOptions {
|
|
14
|
+
accounts: Record<string, unknown>;
|
|
15
|
+
args: Record<string, unknown> | unknown[];
|
|
16
|
+
}
|
|
17
|
+
/** Merges --accounts/--args JSON with repeatable --account/--arg key=value overrides. */
|
|
18
|
+
export declare function parseBuildOptions(options: Record<string, unknown>): ParsedBuildOptions;
|
|
19
|
+
/** Renders an instruction's account/argument schema as themed tables. */
|
|
20
|
+
export declare function printInstructionSchema(ctx: CliContext, schema: ProgramInstructionSchema): void;
|
|
21
|
+
/**
|
|
22
|
+
* Builds an instruction from CLI flags and runs it through the secure pipeline.
|
|
23
|
+
* Handles `--schema` (no wallet needed) before anything else.
|
|
24
|
+
*/
|
|
25
|
+
export declare function execInstruction(command: Command, instructionName: string): Promise<void>;
|
|
26
|
+
/** Help text appended to a generated subcommand: its accounts and args. */
|
|
27
|
+
export declare function instructionHelpText(instructionName: string): string;
|