arc402-cli 0.7.5 → 0.8.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/MIGRATION-SPEC.md +108 -0
- package/dist/abis.js +14 -17
- package/dist/abis.js.map +1 -1
- package/dist/bundler.d.ts +1 -1
- package/dist/bundler.d.ts.map +1 -1
- package/dist/bundler.js +27 -61
- package/dist/bundler.js.map +1 -1
- package/dist/client.d.ts +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +5 -9
- package/dist/client.js.map +1 -1
- package/dist/coinbase-smart-wallet.js +1 -4
- package/dist/coinbase-smart-wallet.js.map +1 -1
- package/dist/commands/accept.js +25 -28
- package/dist/commands/accept.js.map +1 -1
- package/dist/commands/agent-handshake.js +15 -18
- package/dist/commands/agent-handshake.js.map +1 -1
- package/dist/commands/agent.js +98 -104
- package/dist/commands/agent.js.map +1 -1
- package/dist/commands/agreements.js +62 -98
- package/dist/commands/agreements.js.map +1 -1
- package/dist/commands/arbitrator.js +45 -81
- package/dist/commands/arbitrator.js.map +1 -1
- package/dist/commands/arena-handshake.js +27 -30
- package/dist/commands/arena-handshake.js.map +1 -1
- package/dist/commands/arena.js +12 -18
- package/dist/commands/arena.js.map +1 -1
- package/dist/commands/backup.js +30 -36
- package/dist/commands/backup.js.map +1 -1
- package/dist/commands/cancel.js +15 -18
- package/dist/commands/cancel.js.map +1 -1
- package/dist/commands/channel.js +45 -81
- package/dist/commands/channel.js.map +1 -1
- package/dist/commands/coldstart.js +31 -34
- package/dist/commands/coldstart.js.map +1 -1
- package/dist/commands/config.js +23 -29
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/contract-interaction.js +12 -15
- package/dist/commands/contract-interaction.js.map +1 -1
- package/dist/commands/daemon.d.ts.map +1 -1
- package/dist/commands/daemon.js +98 -135
- package/dist/commands/daemon.js.map +1 -1
- package/dist/commands/deliver.js +37 -76
- package/dist/commands/deliver.js.map +1 -1
- package/dist/commands/discover.js +24 -27
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/dispute.js +104 -110
- package/dist/commands/dispute.js.map +1 -1
- package/dist/commands/doctor.js +16 -55
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/endpoint.js +56 -95
- package/dist/commands/endpoint.js.map +1 -1
- package/dist/commands/feed.js +11 -18
- package/dist/commands/feed.js.map +1 -1
- package/dist/commands/hire.js +37 -40
- package/dist/commands/hire.js.map +1 -1
- package/dist/commands/migrate.js +30 -33
- package/dist/commands/migrate.js.map +1 -1
- package/dist/commands/negotiate.d.ts.map +1 -1
- package/dist/commands/negotiate.js +34 -36
- package/dist/commands/negotiate.js.map +1 -1
- package/dist/commands/openshell.js +68 -104
- package/dist/commands/openshell.js.map +1 -1
- package/dist/commands/owner.js +17 -20
- package/dist/commands/owner.js.map +1 -1
- package/dist/commands/policy.js +41 -43
- package/dist/commands/policy.js.map +1 -1
- package/dist/commands/relay.d.ts.map +1 -1
- package/dist/commands/relay.js +18 -51
- package/dist/commands/relay.js.map +1 -1
- package/dist/commands/remediate.js +20 -23
- package/dist/commands/remediate.js.map +1 -1
- package/dist/commands/reputation.js +25 -27
- package/dist/commands/reputation.js.map +1 -1
- package/dist/commands/setup.js +65 -104
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/trust.js +17 -20
- package/dist/commands/trust.js.map +1 -1
- package/dist/commands/verify.js +18 -21
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/wallet.js +619 -625
- package/dist/commands/wallet.js.map +1 -1
- package/dist/commands/watch.js +33 -36
- package/dist/commands/watch.js.map +1 -1
- package/dist/commands/watchtower.js +37 -73
- package/dist/commands/watchtower.js.map +1 -1
- package/dist/commands/workroom.d.ts.map +1 -1
- package/dist/commands/workroom.js +138 -171
- package/dist/commands/workroom.js.map +1 -1
- package/dist/config.js +21 -65
- package/dist/config.js.map +1 -1
- package/dist/daemon/config.d.ts.map +1 -1
- package/dist/daemon/config.js +16 -53
- package/dist/daemon/config.js.map +1 -1
- package/dist/daemon/hire-listener.d.ts +3 -3
- package/dist/daemon/hire-listener.d.ts.map +1 -1
- package/dist/daemon/hire-listener.js +13 -47
- package/dist/daemon/hire-listener.js.map +1 -1
- package/dist/daemon/index.d.ts +1 -1
- package/dist/daemon/index.d.ts.map +1 -1
- package/dist/daemon/index.js +50 -88
- package/dist/daemon/index.js.map +1 -1
- package/dist/daemon/job-lifecycle.d.ts +1 -1
- package/dist/daemon/job-lifecycle.d.ts.map +1 -1
- package/dist/daemon/job-lifecycle.js +11 -51
- package/dist/daemon/job-lifecycle.js.map +1 -1
- package/dist/daemon/notify.d.ts +1 -1
- package/dist/daemon/notify.d.ts.map +1 -1
- package/dist/daemon/notify.js +19 -53
- package/dist/daemon/notify.js.map +1 -1
- package/dist/daemon/token-metering.js +8 -47
- package/dist/daemon/token-metering.js.map +1 -1
- package/dist/daemon/userops.d.ts +2 -2
- package/dist/daemon/userops.d.ts.map +1 -1
- package/dist/daemon/userops.js +23 -27
- package/dist/daemon/userops.js.map +1 -1
- package/dist/daemon/wallet-monitor.d.ts +1 -1
- package/dist/daemon/wallet-monitor.d.ts.map +1 -1
- package/dist/daemon/wallet-monitor.js +8 -12
- package/dist/daemon/wallet-monitor.js.map +1 -1
- package/dist/drain-v4.js +26 -64
- package/dist/drain-v4.js.map +1 -1
- package/dist/endpoint-config.js +20 -63
- package/dist/endpoint-config.js.map +1 -1
- package/dist/endpoint-notify.js +9 -48
- package/dist/endpoint-notify.js.map +1 -1
- package/dist/index.js +16 -50
- package/dist/index.js.map +1 -1
- package/dist/openshell-runtime.d.ts.map +1 -1
- package/dist/openshell-runtime.js +38 -82
- package/dist/openshell-runtime.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +77 -83
- package/dist/program.js.map +1 -1
- package/dist/repl.js +25 -31
- package/dist/repl.js.map +1 -1
- package/dist/signing.js +3 -6
- package/dist/signing.js.map +1 -1
- package/dist/telegram-notify.js +3 -40
- package/dist/telegram-notify.js.map +1 -1
- package/dist/tui/App.d.ts +1 -9
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +47 -65
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/Footer.js +4 -7
- package/dist/tui/Footer.js.map +1 -1
- package/dist/tui/Header.d.ts +1 -2
- package/dist/tui/Header.d.ts.map +1 -1
- package/dist/tui/Header.js +8 -14
- package/dist/tui/Header.js.map +1 -1
- package/dist/tui/InputLine.js +17 -23
- package/dist/tui/InputLine.js.map +1 -1
- package/dist/tui/Viewport.d.ts +5 -4
- package/dist/tui/Viewport.d.ts.map +1 -1
- package/dist/tui/Viewport.js +20 -13
- package/dist/tui/Viewport.js.map +1 -1
- package/dist/tui/WalletConnectPairing.d.ts +23 -0
- package/dist/tui/WalletConnectPairing.d.ts.map +1 -0
- package/dist/tui/WalletConnectPairing.js +75 -0
- package/dist/tui/WalletConnectPairing.js.map +1 -0
- package/dist/tui/index.d.ts.map +1 -1
- package/dist/tui/index.js +14 -21
- package/dist/tui/index.js.map +1 -1
- package/dist/tui/useChat.js +13 -19
- package/dist/tui/useChat.js.map +1 -1
- package/dist/tui/useCommand.d.ts +2 -7
- package/dist/tui/useCommand.d.ts.map +1 -1
- package/dist/tui/useCommand.js +77 -165
- package/dist/tui/useCommand.js.map +1 -1
- package/dist/tui/useScroll.js +9 -12
- package/dist/tui/useScroll.js.map +1 -1
- package/dist/ui/banner.js +12 -19
- package/dist/ui/banner.js.map +1 -1
- package/dist/ui/colors.js +13 -19
- package/dist/ui/colors.js.map +1 -1
- package/dist/ui/format.js +6 -14
- package/dist/ui/format.js.map +1 -1
- package/dist/ui/spinner.js +6 -12
- package/dist/ui/spinner.js.map +1 -1
- package/dist/ui/tree.js +3 -6
- package/dist/ui/tree.js.map +1 -1
- package/dist/utils/format.js +27 -41
- package/dist/utils/format.js.map +1 -1
- package/dist/utils/hash.js +4 -42
- package/dist/utils/hash.js.map +1 -1
- package/dist/utils/time.js +2 -6
- package/dist/utils/time.js.map +1 -1
- package/dist/wallet-router.d.ts +1 -1
- package/dist/wallet-router.d.ts.map +1 -1
- package/dist/wallet-router.js +12 -19
- package/dist/wallet-router.js.map +1 -1
- package/dist/walletconnect-session.d.ts +1 -1
- package/dist/walletconnect-session.d.ts.map +1 -1
- package/dist/walletconnect-session.js +6 -11
- package/dist/walletconnect-session.js.map +1 -1
- package/dist/walletconnect.d.ts +6 -1
- package/dist/walletconnect.d.ts.map +1 -1
- package/dist/walletconnect.js +32 -35
- package/dist/walletconnect.js.map +1 -1
- package/package.json +7 -6
- package/src/bundler.ts +1 -1
- package/src/client.ts +1 -1
- package/src/commands/accept.ts +7 -7
- package/src/commands/agent-handshake.ts +4 -4
- package/src/commands/agent.ts +9 -9
- package/src/commands/agreements.ts +8 -8
- package/src/commands/arbitrator.ts +5 -5
- package/src/commands/arena-handshake.ts +6 -6
- package/src/commands/arena.ts +2 -2
- package/src/commands/backup.ts +1 -1
- package/src/commands/cancel.ts +6 -6
- package/src/commands/channel.ts +6 -6
- package/src/commands/coldstart.ts +5 -5
- package/src/commands/config.ts +2 -2
- package/src/commands/contract-interaction.ts +2 -2
- package/src/commands/daemon.ts +14 -11
- package/src/commands/deliver.ts +9 -9
- package/src/commands/discover.ts +5 -5
- package/src/commands/dispute.ts +7 -7
- package/src/commands/doctor.ts +2 -2
- package/src/commands/endpoint.ts +6 -6
- package/src/commands/feed.ts +1 -1
- package/src/commands/hire.ts +10 -10
- package/src/commands/migrate.ts +7 -7
- package/src/commands/negotiate.ts +6 -5
- package/src/commands/openshell.ts +4 -4
- package/src/commands/owner.ts +5 -5
- package/src/commands/policy.ts +5 -5
- package/src/commands/relay.ts +5 -1
- package/src/commands/remediate.ts +5 -5
- package/src/commands/reputation.ts +6 -6
- package/src/commands/setup.ts +1 -1
- package/src/commands/trust.ts +6 -6
- package/src/commands/verify.ts +6 -6
- package/src/commands/wallet.ts +15 -15
- package/src/commands/watch.ts +3 -3
- package/src/commands/watchtower.ts +6 -6
- package/src/commands/workroom.ts +14 -10
- package/src/daemon/config.ts +2 -1
- package/src/daemon/hire-listener.ts +3 -3
- package/src/daemon/index.ts +10 -9
- package/src/daemon/job-lifecycle.ts +1 -1
- package/src/daemon/notify.ts +4 -4
- package/src/daemon/userops.ts +4 -4
- package/src/daemon/wallet-monitor.ts +2 -2
- package/src/endpoint-notify.ts +1 -1
- package/src/index.ts +8 -7
- package/src/openshell-runtime.ts +5 -1
- package/src/program.ts +36 -36
- package/src/repl.ts +3 -3
- package/src/tui/App.tsx +26 -47
- package/src/tui/Header.tsx +3 -10
- package/src/tui/InputLine.tsx +1 -1
- package/src/tui/Viewport.tsx +22 -18
- package/src/tui/WalletConnectPairing.tsx +131 -0
- package/src/tui/index.tsx +7 -8
- package/src/tui/useChat.ts +1 -1
- package/src/tui/useCommand.ts +86 -183
- package/src/ui/banner.ts +2 -2
- package/src/ui/tree.ts +1 -1
- package/src/wallet-router.ts +2 -2
- package/src/walletconnect-session.ts +1 -1
- package/src/walletconnect.ts +20 -5
- package/tsconfig.json +16 -7
package/dist/commands/feed.js
CHANGED
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.runFeed = runFeed;
|
|
7
|
-
exports.registerFeedCommand = registerFeedCommand;
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
1
|
+
import chalk from "chalk";
|
|
9
2
|
const SUBGRAPH_URL = "https://api.studio.thegraph.com/query/1744310/arc-402/v0.2.0";
|
|
10
3
|
const HS_TYPE_LABELS = {
|
|
11
4
|
0: "Respected",
|
|
@@ -108,17 +101,17 @@ function renderFeedEvent(ev) {
|
|
|
108
101
|
const toName = to["name"] || shortAddr(to["id"]);
|
|
109
102
|
const label = HS_TYPE_LABELS[Number(h["hsType"])] ?? `Type${h["hsType"]}`;
|
|
110
103
|
const note = h["note"] ? ` "${h["note"]}"` : "";
|
|
111
|
-
return
|
|
104
|
+
return chalk.cyan(`${ts} 🤝 ${fromName} → ${toName} ${label}${note}`);
|
|
112
105
|
}
|
|
113
106
|
case "hire": {
|
|
114
107
|
const a = ev.raw;
|
|
115
108
|
const price = a["price"] ? ` ${weiToEth(a["price"])} ETH` : "";
|
|
116
|
-
return
|
|
109
|
+
return chalk.yellow(`${ts} 📋 ${shortAddr(a["client"])} hired ${shortAddr(a["provider"])} ${a["serviceType"]}${price}`);
|
|
117
110
|
}
|
|
118
111
|
case "fulfill": {
|
|
119
112
|
const a = ev.raw;
|
|
120
113
|
const price = a["price"] ? ` ${weiToEth(a["price"])} ETH released` : "";
|
|
121
|
-
return
|
|
114
|
+
return chalk.green(`${ts} ✅ Agreement #${a["id"].slice(0, 8)} fulfilled${price}`);
|
|
122
115
|
}
|
|
123
116
|
case "vouch": {
|
|
124
117
|
const v = ev.raw;
|
|
@@ -127,11 +120,11 @@ function renderFeedEvent(ev) {
|
|
|
127
120
|
const vName = voucher["name"] || shortAddr(voucher["id"]);
|
|
128
121
|
const nName = newAgent["name"] || shortAddr(newAgent["id"]);
|
|
129
122
|
const stake = v["stakeAmount"] ? ` ${weiToUsdc(v["stakeAmount"])} USDC staked` : "";
|
|
130
|
-
return
|
|
123
|
+
return chalk.magenta(`${ts} 🔗 ${vName} vouched for ${nName}${stake}`);
|
|
131
124
|
}
|
|
132
125
|
}
|
|
133
126
|
}
|
|
134
|
-
async function runFeed(opts) {
|
|
127
|
+
export async function runFeed(opts) {
|
|
135
128
|
const limit = parseInt(opts.limit ?? "20", 10);
|
|
136
129
|
const typeFilter = opts.type;
|
|
137
130
|
const events = await fetchFeedEvents(limit, typeFilter);
|
|
@@ -158,7 +151,7 @@ async function runFeed(opts) {
|
|
|
158
151
|
console.log(JSON.stringify(newEvents, null, 2));
|
|
159
152
|
}
|
|
160
153
|
else {
|
|
161
|
-
console.log(
|
|
154
|
+
console.log(chalk.dim("─".repeat(50)));
|
|
162
155
|
for (const ev of [...newEvents].reverse()) {
|
|
163
156
|
console.log(renderFeedEvent(ev));
|
|
164
157
|
}
|
|
@@ -168,15 +161,15 @@ async function runFeed(opts) {
|
|
|
168
161
|
}
|
|
169
162
|
catch {
|
|
170
163
|
if (!opts.json)
|
|
171
|
-
console.log(
|
|
164
|
+
console.log(chalk.dim(" (subgraph unavailable)"));
|
|
172
165
|
}
|
|
173
|
-
},
|
|
166
|
+
}, 30_000);
|
|
174
167
|
process.on("SIGINT", () => {
|
|
175
168
|
clearInterval(interval);
|
|
176
169
|
process.exit(0);
|
|
177
170
|
});
|
|
178
171
|
}
|
|
179
|
-
function registerFeedCommand(program) {
|
|
172
|
+
export function registerFeedCommand(program) {
|
|
180
173
|
program
|
|
181
174
|
.command("feed")
|
|
182
175
|
.description("Live terminal feed of recent Arena events")
|
|
@@ -194,7 +187,7 @@ function registerFeedCommand(program) {
|
|
|
194
187
|
console.log(JSON.stringify({ error: "Subgraph unavailable", details: msg }));
|
|
195
188
|
}
|
|
196
189
|
else {
|
|
197
|
-
console.error(
|
|
190
|
+
console.error(chalk.red(`Subgraph unavailable: ${msg}`));
|
|
198
191
|
}
|
|
199
192
|
process.exit(1);
|
|
200
193
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed.js","sourceRoot":"","sources":["../../src/commands/feed.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"feed.js","sourceRoot":"","sources":["../../src/commands/feed.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/hire.js
CHANGED
|
@@ -1,21 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const spinner_1 = require("../ui/spinner");
|
|
14
|
-
const tree_1 = require("../ui/tree");
|
|
15
|
-
const format_1 = require("../ui/format");
|
|
1
|
+
import { ServiceAgreementClient, SessionManager } from "@arc402/sdk";
|
|
2
|
+
import { ethers } from "ethers";
|
|
3
|
+
import { getUsdcAddress, loadConfig } from "../config.js";
|
|
4
|
+
import { requireSigner } from "../client.js";
|
|
5
|
+
import { hashFile, hashString } from "../utils/hash.js";
|
|
6
|
+
import { parseDuration } from "../utils/time.js";
|
|
7
|
+
import { printSenderInfo, executeContractWriteViaWallet } from "../wallet-router.js";
|
|
8
|
+
import { AGENT_REGISTRY_ABI, SERVICE_AGREEMENT_ABI } from "../abis.js";
|
|
9
|
+
import { c } from '../ui/colors.js';
|
|
10
|
+
import { startSpinner } from '../ui/spinner.js';
|
|
11
|
+
import { renderTree } from '../ui/tree.js';
|
|
12
|
+
import { formatAddress } from '../ui/format.js';
|
|
16
13
|
const DEFAULT_REGISTRY_ADDRESS = "0xD5c2851B00090c92Ba7F4723FB548bb30C9B6865";
|
|
17
|
-
const sessionManager = new
|
|
18
|
-
function registerHireCommand(program) {
|
|
14
|
+
const sessionManager = new SessionManager();
|
|
15
|
+
export function registerHireCommand(program) {
|
|
19
16
|
program
|
|
20
17
|
.command("hire")
|
|
21
18
|
.description("Create the on-chain commitment after off-chain negotiation")
|
|
@@ -29,11 +26,11 @@ function registerHireCommand(program) {
|
|
|
29
26
|
.option("--session <sessionId>", "Load agreed price and deadline from a completed negotiation session")
|
|
30
27
|
.option("--json")
|
|
31
28
|
.action(async (opts) => {
|
|
32
|
-
const config =
|
|
29
|
+
const config = loadConfig();
|
|
33
30
|
if (!config.serviceAgreementAddress)
|
|
34
31
|
throw new Error("serviceAgreementAddress missing in config");
|
|
35
|
-
const { signer, address } = await
|
|
36
|
-
const client = new
|
|
32
|
+
const { signer, address } = await requireSigner(config);
|
|
33
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
37
34
|
let maxAmount;
|
|
38
35
|
let deadlineArg;
|
|
39
36
|
let transcriptHash;
|
|
@@ -63,10 +60,10 @@ function registerHireCommand(program) {
|
|
|
63
60
|
maxAmount = String(BigInt(Math.round(parseFloat(ethSuffix[1]) * 1e18)));
|
|
64
61
|
else if (usdcSuffix)
|
|
65
62
|
maxAmount = usdcSuffix[1]; // keep decimal for USDC path
|
|
66
|
-
const token = useUsdc ?
|
|
63
|
+
const token = useUsdc ? getUsdcAddress(config) : ethers.ZeroAddress;
|
|
67
64
|
let price;
|
|
68
65
|
try {
|
|
69
|
-
price = useUsdc ? BigInt(Math.round(Number(maxAmount) *
|
|
66
|
+
price = useUsdc ? BigInt(Math.round(Number(maxAmount) * 1_000_000)) : BigInt(maxAmount);
|
|
70
67
|
}
|
|
71
68
|
catch {
|
|
72
69
|
throw new Error(`Invalid --max value "${opts.max}". Use wei (1000000000000000), ETH (0.001eth), or USDC (1USDC)`);
|
|
@@ -81,8 +78,8 @@ function registerHireCommand(program) {
|
|
|
81
78
|
// Pre-flight: check provider is registered in AgentRegistry (J2-02)
|
|
82
79
|
const agentRegistryAddress = config.agentRegistryV2Address ?? config.agentRegistryAddress;
|
|
83
80
|
if (agentRegistryAddress) {
|
|
84
|
-
const arProvider = new
|
|
85
|
-
const arCheck = new
|
|
81
|
+
const arProvider = new ethers.JsonRpcProvider(config.rpcUrl);
|
|
82
|
+
const arCheck = new ethers.Contract(agentRegistryAddress, ["function isRegistered(address wallet) external view returns (bool)"], arProvider);
|
|
86
83
|
let isRegistered = true;
|
|
87
84
|
try {
|
|
88
85
|
isRegistered = await arCheck.isRegistered(opts.agent);
|
|
@@ -96,8 +93,8 @@ function registerHireCommand(program) {
|
|
|
96
93
|
}
|
|
97
94
|
// Pre-flight: check token is allowed on this ServiceAgreement (J2-01)
|
|
98
95
|
if (useUsdc) {
|
|
99
|
-
const saProvider = new
|
|
100
|
-
const saCheck = new
|
|
96
|
+
const saProvider = new ethers.JsonRpcProvider(config.rpcUrl);
|
|
97
|
+
const saCheck = new ethers.Contract(config.serviceAgreementAddress, ["function allowedTokens(address) external view returns (bool)"], saProvider);
|
|
101
98
|
let isAllowed = false;
|
|
102
99
|
try {
|
|
103
100
|
isAllowed = await saCheck.allowedTokens(token);
|
|
@@ -114,9 +111,9 @@ function registerHireCommand(program) {
|
|
|
114
111
|
}
|
|
115
112
|
}
|
|
116
113
|
// Use spec hash as deliverables hash; if transcript exists, incorporate it
|
|
117
|
-
const baseHash = opts.deliverableSpec ?
|
|
114
|
+
const baseHash = opts.deliverableSpec ? hashFile(opts.deliverableSpec) : hashString(opts.task);
|
|
118
115
|
const deliverablesHash = transcriptHash
|
|
119
|
-
?
|
|
116
|
+
? ethers.keccak256(ethers.toUtf8Bytes(baseHash + transcriptHash))
|
|
120
117
|
: baseHash;
|
|
121
118
|
// Parse deadline: if it looks like an ISO date, convert to seconds from now
|
|
122
119
|
let deadlineSeconds;
|
|
@@ -128,18 +125,18 @@ function registerHireCommand(program) {
|
|
|
128
125
|
throw new Error(`Deadline ${deadlineArg} is in the past`);
|
|
129
126
|
}
|
|
130
127
|
else {
|
|
131
|
-
deadlineSeconds =
|
|
128
|
+
deadlineSeconds = parseDuration(deadlineArg);
|
|
132
129
|
}
|
|
133
|
-
|
|
130
|
+
printSenderInfo(config);
|
|
134
131
|
let agreementId;
|
|
135
|
-
const hireSpinner =
|
|
132
|
+
const hireSpinner = startSpinner('Submitting agreement...');
|
|
136
133
|
if (config.walletContractAddress) {
|
|
137
134
|
// Smart wallet path — wallet handles per-tx USDC approval via maxApprovalAmount
|
|
138
|
-
const tx = await
|
|
139
|
-
useUsdc ? token :
|
|
135
|
+
const tx = await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "propose", [opts.agent, opts.serviceType, opts.task, price, token, deadlineSeconds, deliverablesHash], useUsdc ? 0n : price, // ETH value forwarded to SA; 0 for USDC agreements
|
|
136
|
+
useUsdc ? token : ethers.ZeroAddress, // approvalToken for USDC
|
|
140
137
|
useUsdc ? price : 0n);
|
|
141
138
|
const receipt = await tx.wait();
|
|
142
|
-
const saInterface = new
|
|
139
|
+
const saInterface = new ethers.Interface(SERVICE_AGREEMENT_ABI);
|
|
143
140
|
let found = false;
|
|
144
141
|
for (const log of receipt.logs) {
|
|
145
142
|
if (log.address.toLowerCase() === config.serviceAgreementAddress.toLowerCase()) {
|
|
@@ -160,7 +157,7 @@ function registerHireCommand(program) {
|
|
|
160
157
|
else {
|
|
161
158
|
// EOA path — existing behaviour
|
|
162
159
|
if (useUsdc) {
|
|
163
|
-
const usdc = new
|
|
160
|
+
const usdc = new ethers.Contract(token, ["function approve(address spender,uint256 amount) external returns (bool)", "function allowance(address owner,address spender) external view returns (uint256)"], signer);
|
|
164
161
|
const allowance = await usdc.allowance(address, config.serviceAgreementAddress);
|
|
165
162
|
if (allowance < price)
|
|
166
163
|
await (await usdc.approve(config.serviceAgreementAddress, price)).wait();
|
|
@@ -180,8 +177,8 @@ function registerHireCommand(program) {
|
|
|
180
177
|
// Notify provider's HTTP endpoint (non-blocking)
|
|
181
178
|
const hireRegistryAddress = config.agentRegistryV2Address ?? config.agentRegistryAddress ?? DEFAULT_REGISTRY_ADDRESS;
|
|
182
179
|
try {
|
|
183
|
-
const hireProvider = new
|
|
184
|
-
const hireRegistry = new
|
|
180
|
+
const hireProvider = new ethers.JsonRpcProvider(config.rpcUrl);
|
|
181
|
+
const hireRegistry = new ethers.Contract(hireRegistryAddress, AGENT_REGISTRY_ABI, hireProvider);
|
|
185
182
|
const agentData = await hireRegistry.getAgent(opts.agent);
|
|
186
183
|
const endpoint = agentData.endpoint;
|
|
187
184
|
if (endpoint) {
|
|
@@ -216,16 +213,16 @@ function registerHireCommand(program) {
|
|
|
216
213
|
output.sessionId = opts.session;
|
|
217
214
|
return console.log(JSON.stringify(output, null, 2));
|
|
218
215
|
}
|
|
219
|
-
console.log(' ' +
|
|
216
|
+
console.log(' ' + c.success + c.white(` Agreement #${agreementId} proposed`));
|
|
220
217
|
const hireTreeItems = [
|
|
221
|
-
{ label: 'Agent', value:
|
|
218
|
+
{ label: 'Agent', value: formatAddress(opts.agent) },
|
|
222
219
|
{ label: 'Task', value: opts.task.slice(0, 60) + (opts.task.length > 60 ? '...' : '') },
|
|
223
220
|
{ label: 'Service', value: opts.serviceType },
|
|
224
221
|
{ label: 'Hash', value: String(deliverablesHash), last: !transcriptHash },
|
|
225
222
|
];
|
|
226
223
|
if (transcriptHash)
|
|
227
224
|
hireTreeItems.push({ label: 'Transcript', value: transcriptHash, last: true });
|
|
228
|
-
|
|
225
|
+
renderTree(hireTreeItems);
|
|
229
226
|
});
|
|
230
227
|
}
|
|
231
228
|
//# sourceMappingURL=hire.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hire.js","sourceRoot":"","sources":["../../src/commands/hire.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hire.js","sourceRoot":"","sources":["../../src/commands/hire.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/migrate.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const spinner_1 = require("../ui/spinner");
|
|
8
|
-
const tree_1 = require("../ui/tree");
|
|
9
|
-
const format_1 = require("../ui/format");
|
|
1
|
+
import { ethers } from "ethers";
|
|
2
|
+
import { loadConfig } from "../config.js";
|
|
3
|
+
import { getClient, requireSigner } from "../client.js";
|
|
4
|
+
import { startSpinner } from '../ui/spinner.js';
|
|
5
|
+
import { renderTree } from '../ui/tree.js';
|
|
6
|
+
import { formatAddress } from '../ui/format.js';
|
|
10
7
|
const MIGRATION_REGISTRY_ABI = [
|
|
11
8
|
"function registerMigration(address oldWallet, address newWallet) external",
|
|
12
9
|
"function resolveActiveWallet(address wallet) external view returns (address)",
|
|
@@ -15,7 +12,7 @@ const MIGRATION_REGISTRY_ABI = [
|
|
|
15
12
|
"function migratedFrom(address wallet) external view returns (address)",
|
|
16
13
|
"event MigrationRegistered(address indexed oldWallet, address indexed newWallet, address indexed owner, uint256 migratedAt, uint256 scoreAtMigration, uint256 appliedDecay)",
|
|
17
14
|
];
|
|
18
|
-
function registerMigrateCommands(program) {
|
|
15
|
+
export function registerMigrateCommands(program) {
|
|
19
16
|
const migrate = program
|
|
20
17
|
.command("migrate")
|
|
21
18
|
.description("Wallet migration — register, query status, or print lineage history")
|
|
@@ -28,14 +25,14 @@ function registerMigrateCommands(program) {
|
|
|
28
25
|
console.error("Both wallets must share the same registered owner address.");
|
|
29
26
|
process.exit(1);
|
|
30
27
|
}
|
|
31
|
-
const config =
|
|
28
|
+
const config = loadConfig();
|
|
32
29
|
if (!config.migrationRegistryAddress) {
|
|
33
30
|
console.error("migrationRegistryAddress not configured. Run `arc402 config set migrationRegistryAddress <address>`.");
|
|
34
31
|
process.exit(1);
|
|
35
32
|
}
|
|
36
|
-
const { signer } = await
|
|
37
|
-
const contract = new
|
|
38
|
-
const migrateSpinner =
|
|
33
|
+
const { signer } = await requireSigner(config);
|
|
34
|
+
const contract = new ethers.Contract(config.migrationRegistryAddress, MIGRATION_REGISTRY_ABI, signer);
|
|
35
|
+
const migrateSpinner = startSpinner('Registering migration...');
|
|
39
36
|
const tx = await contract.registerMigration(oldWallet, newWallet);
|
|
40
37
|
const receipt = await tx.wait();
|
|
41
38
|
migrateSpinner.succeed('Migration registered');
|
|
@@ -46,9 +43,9 @@ function registerMigrateCommands(program) {
|
|
|
46
43
|
};
|
|
47
44
|
if (opts.json)
|
|
48
45
|
return console.log(JSON.stringify(payload, null, 2));
|
|
49
|
-
|
|
50
|
-
{ label: 'Old', value:
|
|
51
|
-
{ label: 'New', value:
|
|
46
|
+
renderTree([
|
|
47
|
+
{ label: 'Old', value: formatAddress(oldWallet) },
|
|
48
|
+
{ label: 'New', value: formatAddress(newWallet) },
|
|
52
49
|
{ label: 'Note', value: '10% trust score decay applied', last: true },
|
|
53
50
|
]);
|
|
54
51
|
});
|
|
@@ -58,21 +55,21 @@ function registerMigrateCommands(program) {
|
|
|
58
55
|
.description("Show whether a wallet is in a migration lineage and its current active wallet")
|
|
59
56
|
.option("--json")
|
|
60
57
|
.action(async (address, opts) => {
|
|
61
|
-
const config =
|
|
58
|
+
const config = loadConfig();
|
|
62
59
|
if (!config.migrationRegistryAddress) {
|
|
63
60
|
console.error("migrationRegistryAddress not configured. Run `arc402 config set migrationRegistryAddress <address>`.");
|
|
64
61
|
process.exit(1);
|
|
65
62
|
}
|
|
66
|
-
const { provider } = await
|
|
67
|
-
const contract = new
|
|
63
|
+
const { provider } = await getClient(config);
|
|
64
|
+
const contract = new ethers.Contract(config.migrationRegistryAddress, MIGRATION_REGISTRY_ABI, provider);
|
|
68
65
|
const [activeWallet, migratedTo, migratedFrom] = await Promise.all([
|
|
69
66
|
contract.resolveActiveWallet(address),
|
|
70
67
|
contract.migratedTo(address),
|
|
71
68
|
contract.migratedFrom(address),
|
|
72
69
|
]);
|
|
73
70
|
const isCurrent = activeWallet.toLowerCase() === address.toLowerCase();
|
|
74
|
-
const hasMigrated = migratedTo !==
|
|
75
|
-
const wasSource = migratedFrom !==
|
|
71
|
+
const hasMigrated = migratedTo !== ethers.ZeroAddress;
|
|
72
|
+
const wasSource = migratedFrom !== ethers.ZeroAddress;
|
|
76
73
|
const payload = {
|
|
77
74
|
address,
|
|
78
75
|
activeWallet,
|
|
@@ -83,16 +80,16 @@ function registerMigrateCommands(program) {
|
|
|
83
80
|
if (opts.json)
|
|
84
81
|
return console.log(JSON.stringify(payload, null, 2));
|
|
85
82
|
const statusItems = [
|
|
86
|
-
{ label: 'Address', value:
|
|
87
|
-
{ label: 'Active', value:
|
|
88
|
-
{ label: 'Status', value: isCurrent ? 'current (no further migration)' : `migrated — resolves to ${
|
|
83
|
+
{ label: 'Address', value: formatAddress(address) },
|
|
84
|
+
{ label: 'Active', value: formatAddress(activeWallet) },
|
|
85
|
+
{ label: 'Status', value: isCurrent ? 'current (no further migration)' : `migrated — resolves to ${formatAddress(activeWallet)}` },
|
|
89
86
|
];
|
|
90
87
|
if (hasMigrated)
|
|
91
|
-
statusItems.push({ label: 'Migrated to', value:
|
|
88
|
+
statusItems.push({ label: 'Migrated to', value: formatAddress(migratedTo) });
|
|
92
89
|
if (wasSource)
|
|
93
|
-
statusItems.push({ label: 'Migrated from', value:
|
|
90
|
+
statusItems.push({ label: 'Migrated from', value: formatAddress(migratedFrom) });
|
|
94
91
|
statusItems[statusItems.length - 1].last = true;
|
|
95
|
-
|
|
92
|
+
renderTree(statusItems);
|
|
96
93
|
});
|
|
97
94
|
// ─── migrate lineage <address> ────────────────────────────────────────────
|
|
98
95
|
migrate
|
|
@@ -100,13 +97,13 @@ function registerMigrateCommands(program) {
|
|
|
100
97
|
.description("Print full migration lineage history with timestamps")
|
|
101
98
|
.option("--json")
|
|
102
99
|
.action(async (address, opts) => {
|
|
103
|
-
const config =
|
|
100
|
+
const config = loadConfig();
|
|
104
101
|
if (!config.migrationRegistryAddress) {
|
|
105
102
|
console.error("migrationRegistryAddress not configured. Run `arc402 config set migrationRegistryAddress <address>`.");
|
|
106
103
|
process.exit(1);
|
|
107
104
|
}
|
|
108
|
-
const { provider } = await
|
|
109
|
-
const contract = new
|
|
105
|
+
const { provider } = await getClient(config);
|
|
106
|
+
const contract = new ethers.Contract(config.migrationRegistryAddress, MIGRATION_REGISTRY_ABI, provider);
|
|
110
107
|
const lineage = await contract.getLineage(address);
|
|
111
108
|
if (lineage.length === 0) {
|
|
112
109
|
const payload = { address, lineage: [], migrations: 0 };
|
|
@@ -150,14 +147,14 @@ function registerMigrateCommands(program) {
|
|
|
150
147
|
const lineageItems = lineage.map((addr, i) => {
|
|
151
148
|
const roleLabel = i === 0 ? ' (origin)' : i === lineage.length - 1 ? ' (current)' : '';
|
|
152
149
|
const e = i < entries.length ? entries[i] : null;
|
|
153
|
-
let value =
|
|
150
|
+
let value = formatAddress(addr) + roleLabel;
|
|
154
151
|
if (e?.timestamp)
|
|
155
152
|
value += ` · ${e.timestamp}`;
|
|
156
153
|
if (e?.scoreAtMigration)
|
|
157
154
|
value += ` · score: ${e.scoreAtMigration} (decay: ${Number(e.decayBps) / 100}%)`;
|
|
158
155
|
return { label: `[${i}]`, value, last: i === lineage.length - 1 };
|
|
159
156
|
});
|
|
160
|
-
|
|
157
|
+
renderTree(lineageItems);
|
|
161
158
|
});
|
|
162
159
|
}
|
|
163
160
|
//# sourceMappingURL=migrate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"negotiate.d.ts","sourceRoot":"","sources":["../../src/commands/negotiate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"negotiate.d.ts","sourceRoot":"","sources":["../../src/commands/negotiate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6PhE"}
|