arc402-cli 0.7.5 → 0.9.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/INK6-UX-SPEC.md +446 -0
- 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 +87 -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 +9 -14
- package/dist/tui/Header.js.map +1 -1
- package/dist/tui/InputLine.d.ts +1 -2
- package/dist/tui/InputLine.d.ts.map +1 -1
- package/dist/tui/InputLine.js +92 -46
- 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/components/Button.d.ts +7 -0
- package/dist/tui/components/Button.d.ts.map +1 -0
- package/dist/tui/components/Button.js +18 -0
- package/dist/tui/components/Button.js.map +1 -0
- package/dist/tui/components/CeremonyView.d.ts +13 -0
- package/dist/tui/components/CeremonyView.d.ts.map +1 -0
- package/dist/tui/components/CeremonyView.js +7 -0
- package/dist/tui/components/CeremonyView.js.map +1 -0
- package/dist/tui/components/CompletionDropdown.d.ts +7 -0
- package/dist/tui/components/CompletionDropdown.d.ts.map +1 -0
- package/dist/tui/components/CompletionDropdown.js +20 -0
- package/dist/tui/components/CompletionDropdown.js.map +1 -0
- package/dist/tui/components/ConfirmPrompt.d.ts +9 -0
- package/dist/tui/components/ConfirmPrompt.d.ts.map +1 -0
- package/dist/tui/components/ConfirmPrompt.js +7 -0
- package/dist/tui/components/ConfirmPrompt.js.map +1 -0
- package/dist/tui/components/InteractiveTable.d.ts +14 -0
- package/dist/tui/components/InteractiveTable.d.ts.map +1 -0
- package/dist/tui/components/InteractiveTable.js +58 -0
- package/dist/tui/components/InteractiveTable.js.map +1 -0
- package/dist/tui/components/StepSpinner.d.ts +11 -0
- package/dist/tui/components/StepSpinner.d.ts.map +1 -0
- package/dist/tui/components/StepSpinner.js +29 -0
- package/dist/tui/components/StepSpinner.js.map +1 -0
- package/dist/tui/components/Toast.d.ts +18 -0
- package/dist/tui/components/Toast.d.ts.map +1 -0
- package/dist/tui/components/Toast.js +25 -0
- package/dist/tui/components/Toast.js.map +1 -0
- package/dist/tui/index.d.ts.map +1 -1
- package/dist/tui/index.js +28 -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/useNotifications.d.ts +9 -0
- package/dist/tui/useNotifications.d.ts.map +1 -0
- package/dist/tui/useNotifications.js +14 -0
- package/dist/tui/useNotifications.js.map +1 -0
- package/dist/tui/useScroll.js +9 -12
- package/dist/tui/useScroll.js.map +1 -1
- package/dist/ui/banner.d.ts +12 -0
- package/dist/ui/banner.d.ts.map +1 -1
- package/dist/ui/banner.js +35 -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 +75 -52
- package/src/tui/Header.tsx +26 -12
- package/src/tui/InputLine.tsx +108 -33
- package/src/tui/Viewport.tsx +22 -18
- package/src/tui/WalletConnectPairing.tsx +131 -0
- package/src/tui/components/Button.tsx +38 -0
- package/src/tui/components/CeremonyView.tsx +39 -0
- package/src/tui/components/CompletionDropdown.tsx +59 -0
- package/src/tui/components/ConfirmPrompt.tsx +36 -0
- package/src/tui/components/InteractiveTable.tsx +112 -0
- package/src/tui/components/StepSpinner.tsx +84 -0
- package/src/tui/components/Toast.tsx +59 -0
- package/src/tui/index.tsx +27 -9
- package/src/tui/useChat.ts +1 -1
- package/src/tui/useCommand.ts +86 -183
- package/src/tui/useNotifications.ts +28 -0
- package/src/ui/banner.ts +29 -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/dispute.js
CHANGED
|
@@ -1,19 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const client_1 = require("../client");
|
|
12
|
-
const hash_1 = require("../utils/hash");
|
|
13
|
-
const wallet_router_1 = require("../wallet-router");
|
|
14
|
-
const abis_1 = require("../abis");
|
|
15
|
-
const colors_1 = require("../ui/colors");
|
|
16
|
-
function registerDisputeCommand(program) {
|
|
1
|
+
import { ethers } from "ethers";
|
|
2
|
+
import prompts from "prompts";
|
|
3
|
+
import { ArbitrationVote, DirectDisputeReason, DisputeClass, DisputeMode, DisputeOutcome, EvidenceType, ServiceAgreementClient, DisputeArbitrationClient } from "@arc402/sdk";
|
|
4
|
+
import { loadConfig } from "../config.js";
|
|
5
|
+
import { getClient, requireSigner } from "../client.js";
|
|
6
|
+
import { hashFile, hashString } from "../utils/hash.js";
|
|
7
|
+
import { printSenderInfo, executeContractWriteViaWallet } from "../wallet-router.js";
|
|
8
|
+
import { SERVICE_AGREEMENT_ABI } from "../abis.js";
|
|
9
|
+
import { c } from '../ui/colors.js';
|
|
10
|
+
export function registerDisputeCommand(program) {
|
|
17
11
|
const dispute = program.command("dispute").description("Formal dispute workflow; remediation-first by default, with narrow hard-fail direct-dispute exceptions");
|
|
18
12
|
// Fee quote (requires DisputeArbitration configured) — read-only, no wallet routing needed
|
|
19
13
|
dispute.command("fee-quote <agreementId>")
|
|
@@ -23,23 +17,23 @@ function registerDisputeCommand(program) {
|
|
|
23
17
|
.requiredOption("--mode <mode>", "unilateral|mutual")
|
|
24
18
|
.requiredOption("--class <class>", "hard-failure|ambiguity|high-sensitivity")
|
|
25
19
|
.action(async (agreementId, opts) => {
|
|
26
|
-
const config =
|
|
20
|
+
const config = loadConfig();
|
|
27
21
|
if (!config.disputeArbitrationAddress)
|
|
28
22
|
throw new Error("disputeArbitrationAddress missing in config");
|
|
29
|
-
const { provider } = await
|
|
30
|
-
const client = new
|
|
31
|
-
const modeMap = { unilateral:
|
|
23
|
+
const { provider } = await getClient(config);
|
|
24
|
+
const client = new DisputeArbitrationClient(config.disputeArbitrationAddress, provider);
|
|
25
|
+
const modeMap = { unilateral: DisputeMode.UNILATERAL, mutual: DisputeMode.MUTUAL };
|
|
32
26
|
const classMap = {
|
|
33
|
-
'hard-failure':
|
|
34
|
-
'ambiguity':
|
|
35
|
-
'high-sensitivity':
|
|
27
|
+
'hard-failure': DisputeClass.HARD_FAILURE,
|
|
28
|
+
'ambiguity': DisputeClass.AMBIGUITY_QUALITY,
|
|
29
|
+
'high-sensitivity': DisputeClass.HIGH_SENSITIVITY,
|
|
36
30
|
};
|
|
37
31
|
const mode = modeMap[String(opts.mode).toLowerCase()];
|
|
38
32
|
const disputeClass = classMap[String(opts.class).toLowerCase()];
|
|
39
33
|
if (!mode || !disputeClass)
|
|
40
34
|
throw new Error("Invalid --mode or --class");
|
|
41
35
|
const feeInTokens = await client.getFeeQuote(BigInt(opts.price), opts.token, mode, disputeClass);
|
|
42
|
-
console.log(' ' +
|
|
36
|
+
console.log(' ' + c.mark + c.white(` Fee quote — agreement #${agreementId}: ${feeInTokens.toString()} tokens`));
|
|
43
37
|
});
|
|
44
38
|
// Open with explicit mode/class
|
|
45
39
|
dispute.command("open-with-mode <agreementId>")
|
|
@@ -49,61 +43,61 @@ function registerDisputeCommand(program) {
|
|
|
49
43
|
.requiredOption("--reason <reason>")
|
|
50
44
|
.option("--fee <fee>", "Fee in wei (for ETH agreements)", "0")
|
|
51
45
|
.action(async (agreementId, opts) => {
|
|
52
|
-
const config =
|
|
46
|
+
const config = loadConfig();
|
|
53
47
|
if (!config.serviceAgreementAddress)
|
|
54
48
|
throw new Error("serviceAgreementAddress missing in config");
|
|
55
|
-
const { signer } = await
|
|
56
|
-
const modeMap = { unilateral:
|
|
49
|
+
const { signer } = await requireSigner(config);
|
|
50
|
+
const modeMap = { unilateral: DisputeMode.UNILATERAL, mutual: DisputeMode.MUTUAL };
|
|
57
51
|
const classMap = {
|
|
58
|
-
'hard-failure':
|
|
59
|
-
'ambiguity':
|
|
60
|
-
'high-sensitivity':
|
|
52
|
+
'hard-failure': DisputeClass.HARD_FAILURE,
|
|
53
|
+
'ambiguity': DisputeClass.AMBIGUITY_QUALITY,
|
|
54
|
+
'high-sensitivity': DisputeClass.HIGH_SENSITIVITY,
|
|
61
55
|
};
|
|
62
56
|
const mode = modeMap[String(opts.mode).toLowerCase()];
|
|
63
57
|
const disputeClass = classMap[String(opts.class).toLowerCase()];
|
|
64
58
|
if (!mode || !disputeClass)
|
|
65
59
|
throw new Error("Invalid --mode or --class");
|
|
66
|
-
|
|
60
|
+
printSenderInfo(config);
|
|
67
61
|
if (config.walletContractAddress) {
|
|
68
|
-
await
|
|
62
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "openDisputeWithMode", [BigInt(agreementId), mode, disputeClass, opts.reason], BigInt(opts.fee));
|
|
69
63
|
}
|
|
70
64
|
else {
|
|
71
|
-
const client = new
|
|
65
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
72
66
|
await client.openDisputeWithMode(BigInt(agreementId), mode, disputeClass, opts.reason, BigInt(opts.fee));
|
|
73
67
|
}
|
|
74
|
-
console.log(' ' +
|
|
68
|
+
console.log(' ' + c.success + c.white(` Dispute opened — agreement #${agreementId}`));
|
|
75
69
|
});
|
|
76
70
|
// Join mutual dispute (respondent pays their half) — DisputeArbitration contract, no wallet routing
|
|
77
71
|
dispute.command("join <agreementId>")
|
|
78
72
|
.description("Join a mutual dispute as respondent (pays half the fee)")
|
|
79
73
|
.option("--fee <fee>", "Half-fee in wei (for ETH agreements)", "0")
|
|
80
74
|
.action(async (agreementId, opts) => {
|
|
81
|
-
const config =
|
|
75
|
+
const config = loadConfig();
|
|
82
76
|
if (!config.disputeArbitrationAddress)
|
|
83
77
|
throw new Error("disputeArbitrationAddress missing in config");
|
|
84
|
-
const { signer } = await
|
|
85
|
-
const client = new
|
|
78
|
+
const { signer } = await requireSigner(config);
|
|
79
|
+
const client = new DisputeArbitrationClient(config.disputeArbitrationAddress, signer);
|
|
86
80
|
await client.joinMutualDispute(BigInt(agreementId), BigInt(opts.fee));
|
|
87
|
-
console.log(' ' +
|
|
81
|
+
console.log(' ' + c.success + c.white(` Joined mutual dispute — agreement #${agreementId}`));
|
|
88
82
|
});
|
|
89
83
|
dispute.command("open <id>")
|
|
90
84
|
.requiredOption("--reason <reason>")
|
|
91
85
|
.option("--escalated", "Use escalateToDispute after remediation", false)
|
|
92
86
|
.option("--direct <type>", "Direct-dispute hard-fail reason: no-delivery|deadline-breach|invalid-deliverable|safety-critical")
|
|
93
87
|
.action(async (id, opts) => {
|
|
94
|
-
const config =
|
|
88
|
+
const config = loadConfig();
|
|
95
89
|
if (!config.serviceAgreementAddress)
|
|
96
90
|
throw new Error("serviceAgreementAddress missing in config");
|
|
97
91
|
// Pre-flight: check disputeModule is configured (J4-01)
|
|
98
92
|
{
|
|
99
|
-
const { provider: dpProvider } = await
|
|
100
|
-
const saCheck = new
|
|
101
|
-
let disputeModuleAddr =
|
|
93
|
+
const { provider: dpProvider } = await getClient(config);
|
|
94
|
+
const saCheck = new ethers.Contract(config.serviceAgreementAddress, ["function disputeModule() external view returns (address)"], dpProvider);
|
|
95
|
+
let disputeModuleAddr = ethers.ZeroAddress;
|
|
102
96
|
try {
|
|
103
97
|
disputeModuleAddr = await saCheck.disputeModule();
|
|
104
98
|
}
|
|
105
99
|
catch { /* assume not configured */ }
|
|
106
|
-
if (disputeModuleAddr ===
|
|
100
|
+
if (disputeModuleAddr === ethers.ZeroAddress) {
|
|
107
101
|
console.error(`No dispute module configured on this ServiceAgreement.`);
|
|
108
102
|
console.error(`Disputes require a DisputeModule to be set by the SA owner.`);
|
|
109
103
|
console.error(`This protocol deployment may not support formal disputes.`);
|
|
@@ -112,17 +106,17 @@ function registerDisputeCommand(program) {
|
|
|
112
106
|
}
|
|
113
107
|
// Pre-flight: read dispute fee and prompt user (J4-02)
|
|
114
108
|
if (config.disputeArbitrationAddress) {
|
|
115
|
-
const { provider: feeProvider } = await
|
|
116
|
-
const daCheck = new
|
|
109
|
+
const { provider: feeProvider } = await getClient(config);
|
|
110
|
+
const daCheck = new ethers.Contract(config.disputeArbitrationAddress, ["function getDisputeFee() external view returns (uint256)"], feeProvider);
|
|
117
111
|
let feeWei = 0n;
|
|
118
112
|
try {
|
|
119
113
|
feeWei = await daCheck.getDisputeFee();
|
|
120
114
|
}
|
|
121
115
|
catch { /* fee getter may not exist — assume 0 */ }
|
|
122
116
|
if (feeWei > 0n) {
|
|
123
|
-
const feeEth =
|
|
117
|
+
const feeEth = ethers.formatEther(feeWei);
|
|
124
118
|
console.log(`\nDispute fee: ${feeEth} ETH. This will be deducted from your wallet.`);
|
|
125
|
-
const { proceed } = await (
|
|
119
|
+
const { proceed } = await prompts({
|
|
126
120
|
type: "confirm",
|
|
127
121
|
name: "proceed",
|
|
128
122
|
message: "Continue?",
|
|
@@ -134,32 +128,32 @@ function registerDisputeCommand(program) {
|
|
|
134
128
|
}
|
|
135
129
|
}
|
|
136
130
|
}
|
|
137
|
-
const { signer } = await
|
|
131
|
+
const { signer } = await requireSigner(config);
|
|
138
132
|
const directMap = {
|
|
139
|
-
'no-delivery':
|
|
140
|
-
'deadline-breach':
|
|
141
|
-
'invalid-deliverable':
|
|
142
|
-
'safety-critical':
|
|
133
|
+
'no-delivery': DirectDisputeReason.NO_DELIVERY,
|
|
134
|
+
'deadline-breach': DirectDisputeReason.HARD_DEADLINE_BREACH,
|
|
135
|
+
'invalid-deliverable': DirectDisputeReason.INVALID_OR_FRAUDULENT_DELIVERABLE,
|
|
136
|
+
'safety-critical': DirectDisputeReason.SAFETY_CRITICAL_VIOLATION,
|
|
143
137
|
};
|
|
144
138
|
if (opts.escalated && opts.direct)
|
|
145
139
|
throw new Error('Choose either --escalated or --direct, not both');
|
|
146
|
-
|
|
140
|
+
printSenderInfo(config);
|
|
147
141
|
if (config.walletContractAddress) {
|
|
148
142
|
if (opts.direct) {
|
|
149
143
|
const directReason = directMap[String(opts.direct).toLowerCase()];
|
|
150
144
|
if (directReason === undefined)
|
|
151
145
|
throw new Error('Unsupported --direct reason');
|
|
152
|
-
await
|
|
146
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "directDispute", [BigInt(id), directReason, opts.reason]);
|
|
153
147
|
}
|
|
154
148
|
else if (opts.escalated) {
|
|
155
|
-
await
|
|
149
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "escalateToDispute", [BigInt(id), opts.reason]);
|
|
156
150
|
}
|
|
157
151
|
else {
|
|
158
|
-
await
|
|
152
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "dispute", [BigInt(id), opts.reason]);
|
|
159
153
|
}
|
|
160
154
|
}
|
|
161
155
|
else {
|
|
162
|
-
const client = new
|
|
156
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
163
157
|
if (opts.direct) {
|
|
164
158
|
const directReason = directMap[String(opts.direct).toLowerCase()];
|
|
165
159
|
if (directReason === undefined)
|
|
@@ -173,11 +167,11 @@ function registerDisputeCommand(program) {
|
|
|
173
167
|
await client.dispute(BigInt(id), opts.reason);
|
|
174
168
|
}
|
|
175
169
|
}
|
|
176
|
-
console.log(' ' +
|
|
170
|
+
console.log(' ' + c.success + c.white(` Dispute opened — agreement #${id}`));
|
|
177
171
|
// J4-04: Display arbitration selection window deadline
|
|
178
172
|
try {
|
|
179
|
-
const { provider: dpAW } = await
|
|
180
|
-
const saAW = new
|
|
173
|
+
const { provider: dpAW } = await getClient(config);
|
|
174
|
+
const saAW = new ethers.Contract(config.serviceAgreementAddress, ["function ARBITRATION_SELECTION_WINDOW() external view returns (uint256)"], dpAW);
|
|
181
175
|
const selectionWindow = await saAW.ARBITRATION_SELECTION_WINDOW();
|
|
182
176
|
const deadlineDate = new Date(Date.now() + Number(selectionWindow) * 1000);
|
|
183
177
|
console.log(`Arbitration selection window closes: ${deadlineDate.toLocaleString()}. An arbitrator must be assigned before then.`);
|
|
@@ -185,30 +179,30 @@ function registerDisputeCommand(program) {
|
|
|
185
179
|
catch { /* not available on this deployment */ }
|
|
186
180
|
});
|
|
187
181
|
dispute.command("evidence <id>").requiredOption("--type <type>", "transcript|deliverable|acceptance|communication|external|other").option("--file <path>").option("--text <text>").option("--uri <uri>", "External evidence URI", "").action(async (id, opts) => {
|
|
188
|
-
const config =
|
|
182
|
+
const config = loadConfig();
|
|
189
183
|
if (!config.serviceAgreementAddress)
|
|
190
184
|
throw new Error("serviceAgreementAddress missing in config");
|
|
191
|
-
const { signer } = await
|
|
192
|
-
const mapping = { transcript:
|
|
193
|
-
const hash = opts.file ?
|
|
194
|
-
const evidenceType = mapping[String(opts.type).toLowerCase()] ??
|
|
195
|
-
|
|
185
|
+
const { signer } = await requireSigner(config);
|
|
186
|
+
const mapping = { transcript: EvidenceType.TRANSCRIPT, deliverable: EvidenceType.DELIVERABLE, acceptance: EvidenceType.ACCEPTANCE_CRITERIA, communication: EvidenceType.COMMUNICATION, external: EvidenceType.EXTERNAL_REFERENCE, other: EvidenceType.OTHER };
|
|
187
|
+
const hash = opts.file ? hashFile(opts.file) : hashString(opts.text ?? opts.uri ?? `evidence:${id}`);
|
|
188
|
+
const evidenceType = mapping[String(opts.type).toLowerCase()] ?? EvidenceType.OTHER;
|
|
189
|
+
printSenderInfo(config);
|
|
196
190
|
if (config.walletContractAddress) {
|
|
197
|
-
await
|
|
191
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "submitDisputeEvidence", [BigInt(id), evidenceType, hash, opts.uri]);
|
|
198
192
|
}
|
|
199
193
|
else {
|
|
200
|
-
const client = new
|
|
194
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
201
195
|
await client.submitDisputeEvidence(BigInt(id), evidenceType, hash, opts.uri);
|
|
202
196
|
}
|
|
203
|
-
console.log(' ' +
|
|
197
|
+
console.log(' ' + c.success + c.white(` Evidence submitted — agreement #${id}`));
|
|
204
198
|
});
|
|
205
199
|
// status — read-only, no wallet routing needed
|
|
206
200
|
dispute.command("status <id>").option("--json").action(async (id, opts) => {
|
|
207
|
-
const config =
|
|
201
|
+
const config = loadConfig();
|
|
208
202
|
if (!config.serviceAgreementAddress)
|
|
209
203
|
throw new Error("serviceAgreementAddress missing in config");
|
|
210
|
-
const { provider } = await
|
|
211
|
-
const client = new
|
|
204
|
+
const { provider } = await getClient(config);
|
|
205
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, provider);
|
|
212
206
|
const result = {
|
|
213
207
|
case: await client.getDisputeCase(BigInt(id)),
|
|
214
208
|
arbitration: await client.getArbitrationCase(BigInt(id)),
|
|
@@ -220,13 +214,13 @@ function registerDisputeCommand(program) {
|
|
|
220
214
|
.description("Nominate an arbitrator during the on-chain arbitration phase")
|
|
221
215
|
.requiredOption("--arbitrator <address>")
|
|
222
216
|
.action(async (id, opts) => {
|
|
223
|
-
const config =
|
|
217
|
+
const config = loadConfig();
|
|
224
218
|
if (!config.serviceAgreementAddress)
|
|
225
219
|
throw new Error("serviceAgreementAddress missing in config");
|
|
226
220
|
// Pre-flight: check arbitrator is approved (J4-03)
|
|
227
221
|
if (config.disputeArbitrationAddress) {
|
|
228
|
-
const { provider: arbProvider } = await
|
|
229
|
-
const daCheck = new
|
|
222
|
+
const { provider: arbProvider } = await getClient(config);
|
|
223
|
+
const daCheck = new ethers.Contract(config.disputeArbitrationAddress, ["function isApprovedArbitrator(address arbitrator) external view returns (bool)"], arbProvider);
|
|
230
224
|
let isApproved = true;
|
|
231
225
|
try {
|
|
232
226
|
isApproved = await daCheck.isApprovedArbitrator(opts.arbitrator);
|
|
@@ -238,16 +232,16 @@ function registerDisputeCommand(program) {
|
|
|
238
232
|
process.exit(1);
|
|
239
233
|
}
|
|
240
234
|
}
|
|
241
|
-
const { signer } = await
|
|
242
|
-
|
|
235
|
+
const { signer } = await requireSigner(config);
|
|
236
|
+
printSenderInfo(config);
|
|
243
237
|
if (config.walletContractAddress) {
|
|
244
|
-
await
|
|
238
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "nominateArbitrator", [BigInt(id), opts.arbitrator]);
|
|
245
239
|
}
|
|
246
240
|
else {
|
|
247
|
-
const client = new
|
|
241
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
248
242
|
await client.nominateArbitrator(BigInt(id), opts.arbitrator);
|
|
249
243
|
}
|
|
250
|
-
console.log(' ' +
|
|
244
|
+
console.log(' ' + c.success + c.white(` Arbitrator nominated — agreement #${id}`));
|
|
251
245
|
});
|
|
252
246
|
dispute.command("vote <id>")
|
|
253
247
|
.description("Cast an arbitration vote on-chain")
|
|
@@ -255,13 +249,13 @@ function registerDisputeCommand(program) {
|
|
|
255
249
|
.option("--provider-award <amount>", "Wei/token units", "0")
|
|
256
250
|
.option("--client-award <amount>", "Wei/token units", "0")
|
|
257
251
|
.action(async (id, opts) => {
|
|
258
|
-
const config =
|
|
252
|
+
const config = loadConfig();
|
|
259
253
|
if (!config.serviceAgreementAddress)
|
|
260
254
|
throw new Error("serviceAgreementAddress missing in config");
|
|
261
|
-
const { signer, address: voterAddress, provider: voteProvider } = await
|
|
255
|
+
const { signer, address: voterAddress, provider: voteProvider } = await requireSigner(config);
|
|
262
256
|
// J4-05: Pre-flight — verify caller is on the arbitration panel
|
|
263
257
|
try {
|
|
264
|
-
const saClient = new
|
|
258
|
+
const saClient = new ServiceAgreementClient(config.serviceAgreementAddress, voteProvider);
|
|
265
259
|
const arbCase = await saClient.getArbitrationCase(BigInt(id));
|
|
266
260
|
const onPanel = arbCase.arbitrators.map((a) => a.toLowerCase()).includes(voterAddress.toLowerCase());
|
|
267
261
|
if (!onPanel) {
|
|
@@ -275,75 +269,75 @@ function registerDisputeCommand(program) {
|
|
|
275
269
|
// If read fails, skip the check and let the transaction reveal the error
|
|
276
270
|
}
|
|
277
271
|
const mapping = {
|
|
278
|
-
provider:
|
|
279
|
-
refund:
|
|
280
|
-
split:
|
|
281
|
-
'human-review':
|
|
272
|
+
provider: ArbitrationVote.PROVIDER_WINS,
|
|
273
|
+
refund: ArbitrationVote.CLIENT_REFUND,
|
|
274
|
+
split: ArbitrationVote.SPLIT,
|
|
275
|
+
'human-review': ArbitrationVote.HUMAN_REVIEW_REQUIRED,
|
|
282
276
|
};
|
|
283
277
|
const vote = mapping[String(opts.vote).toLowerCase()];
|
|
284
278
|
if (vote === undefined)
|
|
285
279
|
throw new Error('Unsupported --vote value');
|
|
286
|
-
|
|
280
|
+
printSenderInfo(config);
|
|
287
281
|
if (config.walletContractAddress) {
|
|
288
|
-
await
|
|
282
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "castArbitrationVote", [BigInt(id), vote, BigInt(opts.providerAward), BigInt(opts.clientAward)]);
|
|
289
283
|
}
|
|
290
284
|
else {
|
|
291
|
-
const client = new
|
|
285
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
292
286
|
await client.castArbitrationVote(BigInt(id), vote, BigInt(opts.providerAward), BigInt(opts.clientAward));
|
|
293
287
|
}
|
|
294
|
-
console.log(' ' +
|
|
288
|
+
console.log(' ' + c.success + c.white(` Vote recorded — agreement #${id}`));
|
|
295
289
|
});
|
|
296
290
|
dispute.command("human <id>")
|
|
297
291
|
.description("Request human escalation when arbitration stalls or requires human backstop")
|
|
298
292
|
.requiredOption("--reason <reason>")
|
|
299
293
|
.action(async (id, opts) => {
|
|
300
|
-
const config =
|
|
294
|
+
const config = loadConfig();
|
|
301
295
|
if (!config.serviceAgreementAddress)
|
|
302
296
|
throw new Error("serviceAgreementAddress missing in config");
|
|
303
|
-
const { signer } = await
|
|
304
|
-
|
|
297
|
+
const { signer } = await requireSigner(config);
|
|
298
|
+
printSenderInfo(config);
|
|
305
299
|
if (config.walletContractAddress) {
|
|
306
|
-
await
|
|
300
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "requestHumanEscalation", [BigInt(id), opts.reason]);
|
|
307
301
|
}
|
|
308
302
|
else {
|
|
309
|
-
const client = new
|
|
303
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
310
304
|
await client.requestHumanEscalation(BigInt(id), opts.reason);
|
|
311
305
|
}
|
|
312
|
-
console.log(' ' +
|
|
306
|
+
console.log(' ' + c.success + c.white(` Escalated to human — agreement #${id}`));
|
|
313
307
|
});
|
|
314
308
|
dispute.command("resolve <id>").description("Owner-only admin path if you are operating the dispute contract").requiredOption("--outcome <outcome>", "provider|refund|partial-provider|partial-client|mutual-cancel|human-review").option("--provider-award <amount>", "Wei/token units", "0").option("--client-award <amount>", "Wei/token units", "0").action(async (id, opts) => {
|
|
315
|
-
const config =
|
|
309
|
+
const config = loadConfig();
|
|
316
310
|
if (!config.serviceAgreementAddress)
|
|
317
311
|
throw new Error("serviceAgreementAddress missing in config");
|
|
318
|
-
const { signer } = await
|
|
319
|
-
const mapping = { provider:
|
|
320
|
-
|
|
312
|
+
const { signer } = await requireSigner(config);
|
|
313
|
+
const mapping = { provider: DisputeOutcome.PROVIDER_WINS, refund: DisputeOutcome.CLIENT_REFUND, 'partial-provider': DisputeOutcome.PARTIAL_PROVIDER, 'partial-client': DisputeOutcome.PARTIAL_CLIENT, 'mutual-cancel': DisputeOutcome.MUTUAL_CANCEL, 'human-review': DisputeOutcome.HUMAN_REVIEW_REQUIRED };
|
|
314
|
+
printSenderInfo(config);
|
|
321
315
|
if (config.walletContractAddress) {
|
|
322
|
-
await
|
|
316
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "resolveDisputeDetailed", [BigInt(id), mapping[String(opts.outcome)], BigInt(opts.providerAward), BigInt(opts.clientAward)]);
|
|
323
317
|
}
|
|
324
318
|
else {
|
|
325
|
-
const client = new
|
|
319
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
326
320
|
await client.resolveDisputeDetailed(BigInt(id), mapping[String(opts.outcome)], BigInt(opts.providerAward), BigInt(opts.clientAward));
|
|
327
321
|
}
|
|
328
|
-
console.log(' ' +
|
|
322
|
+
console.log(' ' + c.success + c.white(` Resolved — agreement #${id}`));
|
|
329
323
|
});
|
|
330
324
|
dispute.command("owner-resolve <agreementId>")
|
|
331
325
|
.description("Owner-only: resolve a dispute directly in favor of provider or client. Requires DISPUTED or ESCALATED_TO_HUMAN status.")
|
|
332
326
|
.option("--favor-provider", "Resolve in favor of the provider (default: false = favor client)", false)
|
|
333
327
|
.action(async (agreementId, opts) => {
|
|
334
|
-
const config =
|
|
328
|
+
const config = loadConfig();
|
|
335
329
|
if (!config.serviceAgreementAddress)
|
|
336
330
|
throw new Error("serviceAgreementAddress missing in config");
|
|
337
|
-
const { signer } = await
|
|
338
|
-
|
|
331
|
+
const { signer } = await requireSigner(config);
|
|
332
|
+
printSenderInfo(config);
|
|
339
333
|
if (config.walletContractAddress) {
|
|
340
|
-
await
|
|
334
|
+
await executeContractWriteViaWallet(config.walletContractAddress, signer, config.serviceAgreementAddress, SERVICE_AGREEMENT_ABI, "ownerResolveDispute", [BigInt(agreementId), !!opts.favorProvider]);
|
|
341
335
|
}
|
|
342
336
|
else {
|
|
343
|
-
const client = new
|
|
337
|
+
const client = new ServiceAgreementClient(config.serviceAgreementAddress, signer);
|
|
344
338
|
await client.ownerResolveDispute(BigInt(agreementId), !!opts.favorProvider);
|
|
345
339
|
}
|
|
346
|
-
console.log(' ' +
|
|
340
|
+
console.log(' ' + c.success + c.white(` Owner resolved — agreement #${agreementId}`));
|
|
347
341
|
});
|
|
348
342
|
}
|
|
349
343
|
//# sourceMappingURL=dispute.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispute.js","sourceRoot":"","sources":["../../src/commands/dispute.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dispute.js","sourceRoot":"","sources":["../../src/commands/dispute.ts"],"names":[],"mappings":"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"}
|