@ckb-firewall/cli 0.1.2 → 0.2.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.
Files changed (71) hide show
  1. package/README.md +23 -67
  2. package/dist/commands/add.d.ts.map +1 -1
  3. package/dist/commands/add.js +23 -15
  4. package/dist/commands/add.js.map +1 -1
  5. package/dist/commands/check.d.ts +9 -0
  6. package/dist/commands/check.d.ts.map +1 -0
  7. package/dist/commands/check.js +84 -0
  8. package/dist/commands/check.js.map +1 -0
  9. package/dist/commands/execute.d.ts.map +1 -1
  10. package/dist/commands/execute.js +112 -17
  11. package/dist/commands/execute.js.map +1 -1
  12. package/dist/commands/export.d.ts +6 -0
  13. package/dist/commands/export.d.ts.map +1 -0
  14. package/dist/commands/export.js +41 -0
  15. package/dist/commands/export.js.map +1 -0
  16. package/dist/commands/import.d.ts +6 -0
  17. package/dist/commands/import.d.ts.map +1 -0
  18. package/dist/commands/import.js +148 -0
  19. package/dist/commands/import.js.map +1 -0
  20. package/dist/commands/inspect.d.ts.map +1 -1
  21. package/dist/commands/inspect.js +30 -7
  22. package/dist/commands/inspect.js.map +1 -1
  23. package/dist/commands/propose.d.ts.map +1 -1
  24. package/dist/commands/propose.js +29 -4
  25. package/dist/commands/propose.js.map +1 -1
  26. package/dist/commands/remove.d.ts.map +1 -1
  27. package/dist/commands/remove.js +23 -15
  28. package/dist/commands/remove.js.map +1 -1
  29. package/dist/commands/sign.d.ts +1 -0
  30. package/dist/commands/sign.d.ts.map +1 -1
  31. package/dist/commands/sign.js +16 -22
  32. package/dist/commands/sign.js.map +1 -1
  33. package/dist/commands/vote.d.ts +1 -1
  34. package/dist/commands/vote.d.ts.map +1 -1
  35. package/dist/commands/vote.js +71 -15
  36. package/dist/commands/vote.js.map +1 -1
  37. package/dist/index.js +34 -34
  38. package/dist/index.js.map +1 -1
  39. package/dist/lib/blkl.d.ts +11 -1
  40. package/dist/lib/blkl.d.ts.map +1 -1
  41. package/dist/lib/blkl.js +95 -5
  42. package/dist/lib/blkl.js.map +1 -1
  43. package/dist/lib/defaults.d.ts +13 -2
  44. package/dist/lib/defaults.d.ts.map +1 -1
  45. package/dist/lib/defaults.js +29 -7
  46. package/dist/lib/defaults.js.map +1 -1
  47. package/dist/lib/placeholder-governance.d.ts +2 -0
  48. package/dist/lib/placeholder-governance.d.ts.map +1 -0
  49. package/dist/lib/placeholder-governance.js +8 -0
  50. package/dist/lib/placeholder-governance.js.map +1 -0
  51. package/dist/lib/proposals.d.ts +5 -1
  52. package/dist/lib/proposals.d.ts.map +1 -1
  53. package/dist/lib/proposals.js +37 -3
  54. package/dist/lib/proposals.js.map +1 -1
  55. package/dist/lib/registry.d.ts +5 -0
  56. package/dist/lib/registry.d.ts.map +1 -0
  57. package/dist/lib/registry.js +24 -0
  58. package/dist/lib/registry.js.map +1 -0
  59. package/dist/lib/rpc.d.ts +2 -2
  60. package/dist/lib/rpc.d.ts.map +1 -1
  61. package/dist/lib/rpc.js +60 -15
  62. package/dist/lib/rpc.js.map +1 -1
  63. package/dist/lib/validator-set.d.ts +7 -0
  64. package/dist/lib/validator-set.d.ts.map +1 -0
  65. package/dist/lib/validator-set.js +78 -0
  66. package/dist/lib/validator-set.js.map +1 -0
  67. package/dist/lib/witness.d.ts +6 -6
  68. package/dist/lib/witness.d.ts.map +1 -1
  69. package/dist/lib/witness.js +16 -10
  70. package/dist/lib/witness.js.map +1 -1
  71. package/package.json +3 -2
@@ -0,0 +1,41 @@
1
+ import { writeFileSync } from "node:fs";
2
+ import chalk from "chalk";
3
+ import logSymbols from "log-symbols";
4
+ import inquirer from "inquirer";
5
+ import { loadProposal, listProposals } from "../lib/proposals.js";
6
+ export async function exportCommand(opts) {
7
+ // ── select proposal ──────────────────────────────────────────────────────
8
+ let proposalId = opts.proposal?.trim() ?? "";
9
+ if (!proposalId) {
10
+ const all = listProposals();
11
+ if (all.length === 0) {
12
+ console.log(logSymbols.warning, chalk.yellow("No proposals found. Create one with: ckb-firewall propose"));
13
+ process.exit(0);
14
+ }
15
+ const { chosen } = await inquirer.prompt([
16
+ {
17
+ type: "list",
18
+ name: "chosen",
19
+ message: "Select proposal to export:",
20
+ choices: all.map((p) => ({
21
+ name: `${chalk.bold(p.id)} ${p.action} ${p.lockArgs.slice(0, 24)}… [${p.status}]`,
22
+ value: p.id,
23
+ })),
24
+ },
25
+ ]);
26
+ proposalId = chosen;
27
+ }
28
+ const proposal = loadProposal(proposalId);
29
+ const json = JSON.stringify(proposal, null, 2) + "\n";
30
+ // ── write output ─────────────────────────────────────────────────────────
31
+ if (opts.out) {
32
+ writeFileSync(opts.out, json, "utf8");
33
+ console.log(logSymbols.success, `Proposal exported to ${chalk.bold(opts.out)}`);
34
+ console.log(chalk.dim(" Share this file with other governance participants."));
35
+ console.log(chalk.dim(` They can import it with: ckb-firewall import ${opts.out}`));
36
+ }
37
+ else {
38
+ process.stdout.write(json);
39
+ }
40
+ }
41
+ //# sourceMappingURL=export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOlE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAmB;IACrD,4EAA4E;IAE5E,IAAI,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;QAC5B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,2DAA2D,CAAC,CAAC,CAAC;YAC3G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAqB;YAC3D;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,4BAA4B;gBACrC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACvB,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG;oBACnF,KAAK,EAAE,CAAC,CAAC,EAAE;iBACZ,CAAC,CAAC;aACJ;SACF,CAAC,CAAC;QACH,UAAU,GAAG,MAAM,CAAC;IACtB,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAEtD,4EAA4E;IAE5E,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,wBAAwB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,kDAAkD,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACvF,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ export interface ImportOptions {
2
+ file: string;
3
+ force?: boolean;
4
+ }
5
+ export declare function importCommand(opts: ImportOptions): Promise<void>;
6
+ //# sourceMappingURL=import.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/commands/import.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAuDD,wBAAsB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAqGtE"}
@@ -0,0 +1,148 @@
1
+ import { readFileSync, existsSync } from "node:fs";
2
+ import chalk from "chalk";
3
+ import logSymbols from "log-symbols";
4
+ import inquirer from "inquirer";
5
+ import { saveProposal, loadProposal, getProposalsDir, computeProposalIdHash, computeVoteDigestHash, } from "../lib/proposals.js";
6
+ import { join } from "node:path";
7
+ function validateAndRepair(raw) {
8
+ if (typeof raw !== "object" || raw === null) {
9
+ throw new Error("Not a valid proposal object.");
10
+ }
11
+ const p = raw;
12
+ const requiredStrings = [
13
+ "id", "proposalIdHash", "action", "lockArgs", "expiresAt",
14
+ "evidence", "classification", "severity", "rationale", "proposer",
15
+ "submittedAt", "reviewWindowEndsAt", "status", "voteDigestHash",
16
+ ];
17
+ for (const key of requiredStrings) {
18
+ if (typeof p[key] !== "string") {
19
+ throw new Error(`Missing or invalid field: "${key}"`);
20
+ }
21
+ }
22
+ if (!Array.isArray(p.votes) || !Array.isArray(p.signatures)) {
23
+ throw new Error("Fields 'votes' and 'signatures' must be arrays.");
24
+ }
25
+ if (p.action !== "add" && p.action !== "remove") {
26
+ throw new Error(`Invalid action: "${p.action}"`);
27
+ }
28
+ // Recompute proposalIdHash to verify integrity.
29
+ const computed = computeProposalIdHash({
30
+ action: p.action,
31
+ lockArgs: p.lockArgs,
32
+ expiresAt: p.expiresAt,
33
+ evidence: p.evidence,
34
+ classification: p.classification,
35
+ severity: p.severity,
36
+ rationale: p.rationale,
37
+ proposer: p.proposer,
38
+ submittedAt: p.submittedAt,
39
+ });
40
+ if (computed !== p.proposalIdHash) {
41
+ throw new Error(`proposalIdHash integrity check failed.\n File: ${p.proposalIdHash}\n Expected: ${computed}`);
42
+ }
43
+ // Recompute voteDigestHash to verify vote integrity.
44
+ const recomputedDigest = computeVoteDigestHash(p.votes);
45
+ if (recomputedDigest !== p.voteDigestHash) {
46
+ throw new Error(`voteDigestHash integrity check failed — votes may have been tampered.\n File: ${p.voteDigestHash}\n Expected: ${recomputedDigest}`);
47
+ }
48
+ return raw;
49
+ }
50
+ export async function importCommand(opts) {
51
+ // ── read and parse ───────────────────────────────────────────────────────
52
+ if (!existsSync(opts.file)) {
53
+ console.error(logSymbols.error, chalk.red(`File not found: ${opts.file}`));
54
+ process.exit(1);
55
+ }
56
+ let raw;
57
+ try {
58
+ raw = JSON.parse(readFileSync(opts.file, "utf8"));
59
+ }
60
+ catch {
61
+ console.error(logSymbols.error, chalk.red(`Could not parse JSON from ${opts.file}`));
62
+ process.exit(1);
63
+ }
64
+ let proposal;
65
+ try {
66
+ proposal = validateAndRepair(raw);
67
+ }
68
+ catch (err) {
69
+ console.error(logSymbols.error, chalk.red("Proposal file is invalid:"));
70
+ console.error(chalk.dim(` ${err instanceof Error ? err.message : String(err)}`));
71
+ process.exit(1);
72
+ }
73
+ // ── conflict check ───────────────────────────────────────────────────────
74
+ const dir = getProposalsDir();
75
+ const destPath = join(dir, `${proposal.id}.json`);
76
+ if (existsSync(destPath) && !opts.force) {
77
+ let existing;
78
+ try {
79
+ existing = loadProposal(proposal.id);
80
+ }
81
+ catch {
82
+ // File exists but can't be loaded — overwrite.
83
+ existing = proposal;
84
+ }
85
+ if (existing.proposalIdHash === proposal.proposalIdHash) {
86
+ // Same proposal. Merge votes and signatures (take union, prefer incoming if newer).
87
+ const mergedVotes = [...existing.votes];
88
+ for (const v of proposal.votes) {
89
+ if (!mergedVotes.some((ev) => ev.pubkey.toLowerCase() === v.pubkey.toLowerCase())) {
90
+ mergedVotes.push(v);
91
+ }
92
+ }
93
+ const mergedSigs = [...existing.signatures];
94
+ for (const s of proposal.signatures) {
95
+ if (!mergedSigs.some((es) => es.signerIndex === s.signerIndex)) {
96
+ mergedSigs.push(s);
97
+ }
98
+ }
99
+ const mergedVoteDigest = computeVoteDigestHash(mergedVotes);
100
+ const merged = {
101
+ ...proposal,
102
+ votes: mergedVotes,
103
+ voteDigestHash: mergedVoteDigest,
104
+ signatures: mergedSigs,
105
+ // Keep the more advanced status.
106
+ status: rankStatus(existing.status) >= rankStatus(proposal.status)
107
+ ? existing.status
108
+ : proposal.status,
109
+ };
110
+ saveProposal(merged);
111
+ console.log();
112
+ console.log(logSymbols.success, `Proposal ${chalk.bold(proposal.id)} merged.`);
113
+ console.log(` Votes: ${mergedVotes.length} (${proposal.votes.length - existing.votes.length} new)`);
114
+ console.log(` Signatures: ${mergedSigs.length} (${proposal.signatures.length - existing.signatures.length} new)`);
115
+ console.log();
116
+ return;
117
+ }
118
+ // Different proposal, same short ID (collision) — ask the user.
119
+ console.log(logSymbols.warning, chalk.yellow(`A different proposal with ID ${chalk.bold(proposal.id)} already exists locally.`));
120
+ const { overwrite } = await inquirer.prompt([
121
+ { type: "confirm", name: "overwrite", message: "Overwrite it?", default: false },
122
+ ]);
123
+ if (!overwrite) {
124
+ console.log("Import cancelled.");
125
+ return;
126
+ }
127
+ }
128
+ saveProposal(proposal);
129
+ console.log();
130
+ console.log(logSymbols.success, `Proposal ${chalk.bold(proposal.id)} imported.`);
131
+ console.log(` Action: ${proposal.action} ${chalk.dim(proposal.lockArgs.slice(0, 36))}${proposal.lockArgs.length > 36 ? "…" : ""}`);
132
+ console.log(` Status: ${proposal.status}`);
133
+ console.log(` Votes: ${proposal.votes.length} Signatures: ${proposal.signatures.length}`);
134
+ console.log();
135
+ console.log(chalk.dim(" Next steps:"));
136
+ if (proposal.status === "pending-review" || proposal.status === "voting") {
137
+ console.log(chalk.dim(` ckb-firewall vote --proposal ${proposal.id}`));
138
+ }
139
+ if (proposal.status === "approved") {
140
+ console.log(chalk.dim(` ckb-firewall sign --proposal ${proposal.id}`));
141
+ }
142
+ console.log();
143
+ }
144
+ function rankStatus(status) {
145
+ const order = ["pending-review", "voting", "approved", "rejected", "executed"];
146
+ return order.indexOf(status);
147
+ }
148
+ //# sourceMappingURL=import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/commands/import.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAaA,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAyExE;AAED,wBAAgB,eAAe,IAAI,cAAc,CAMhD"}
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAcA,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAiGxE;AAED,wBAAgB,eAAe,IAAI,cAAc,CAMhD"}
@@ -4,20 +4,24 @@ import logSymbols from "log-symbols";
4
4
  import ora from "ora";
5
5
  import { parseRegistryPayload } from "@ckb-firewall/sdk";
6
6
  import { getLiveCell } from "../lib/rpc.js";
7
+ import { resolveRegistryOutpoint } from "../lib/registry.js";
7
8
  import { TESTNET_REGISTRY_CELL, TESTNET_RPC_URL, } from "../lib/defaults.js";
8
9
  import { printHints, printVotingCallout } from "../lib/hints.js";
9
10
  import { listProposals } from "../lib/proposals.js";
10
11
  export async function inspectCommand(opts) {
11
12
  const rpcUrl = opts.rpcUrl;
12
- const txHash = opts.registryTx;
13
- const index = Number.parseInt(opts.registryIndex, 10);
14
- if (!Number.isInteger(index) || index < 0) {
13
+ const configuredTx = opts.registryTx;
14
+ const configuredIndex = Number.parseInt(opts.registryIndex, 10);
15
+ if (!Number.isInteger(configuredIndex) || configuredIndex < 0) {
15
16
  console.error(logSymbols.error, chalk.red("--registry-index must be a non-negative integer."));
16
17
  process.exit(1);
17
18
  }
18
19
  const spinner = ora(`Fetching registry cell from ${rpcUrl}`).start();
19
20
  let cell;
21
+ let txHash = configuredTx;
22
+ let index = configuredIndex;
20
23
  try {
24
+ ({ txHash, index } = await resolveRegistryOutpoint(rpcUrl, configuredTx, configuredIndex));
21
25
  cell = await getLiveCell(rpcUrl, txHash, index);
22
26
  spinner.succeed("Registry cell loaded");
23
27
  }
@@ -50,14 +54,33 @@ export async function inspectCommand(opts) {
50
54
  head: [
51
55
  chalk.cyan("Lock Args (identifier)"),
52
56
  chalk.cyan("Expires At"),
57
+ chalk.cyan("Status"),
53
58
  ],
54
59
  style: { head: [], border: [] },
55
60
  });
61
+ const nowSec = BigInt(Math.floor(Date.now() / 1000));
62
+ let expiredCount = 0;
56
63
  for (const entry of payload.entries) {
57
- const expires = entry.expiresAt === 0n
58
- ? chalk.dim("never")
59
- : new Date(Number(entry.expiresAt) * 1000).toISOString();
60
- table.push([entry.identifier, expires]);
64
+ let expires;
65
+ let status;
66
+ if (entry.expiresAt === 0n) {
67
+ expires = chalk.dim("never");
68
+ status = chalk.green("active");
69
+ }
70
+ else if (entry.expiresAt <= nowSec) {
71
+ expires = chalk.dim(new Date(Number(entry.expiresAt) * 1000).toISOString());
72
+ status = chalk.red("EXPIRED");
73
+ expiredCount++;
74
+ }
75
+ else {
76
+ expires = new Date(Number(entry.expiresAt) * 1000).toISOString();
77
+ status = chalk.green("active");
78
+ }
79
+ table.push([entry.identifier, expires, status]);
80
+ }
81
+ if (expiredCount > 0) {
82
+ console.log(logSymbols.warning, chalk.yellow(`${expiredCount} expired ${expiredCount === 1 ? "entry" : "entries"} — submit a removal proposal to compact the registry.`));
83
+ console.log();
61
84
  }
62
85
  console.log(table.toString());
63
86
  console.log();
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"propose.d.ts","sourceRoot":"","sources":["../../src/commands/propose.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAOD,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA8OxE"}
1
+ {"version":3,"file":"propose.d.ts","sourceRoot":"","sources":["../../src/commands/propose.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAOD,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA+QxE"}
@@ -218,6 +218,31 @@ export async function proposeCommand(opts) {
218
218
  signatures: [],
219
219
  };
220
220
  saveProposal(proposal);
221
+ // ── timing warnings ──────────────────────────────────────────────────────
222
+ // Warn if a temporary entry would expire before the governance process can complete.
223
+ // Minimum realistic timeline: 72h review + ~24h voting + ~24h signing = ~120h.
224
+ const MIN_GOVERNANCE_SECONDS = 120 * 60 * 60;
225
+ if (expiresAt !== "0") {
226
+ const expiryUnix = Number(expiresAt);
227
+ const nowUnix = Math.floor(Date.now() / 1000);
228
+ const timeUntilExpiry = expiryUnix - nowUnix;
229
+ if (timeUntilExpiry < MIN_GOVERNANCE_SECONDS) {
230
+ const hRemaining = Math.floor(timeUntilExpiry / 3600);
231
+ console.log();
232
+ console.log(logSymbols.warning, chalk.yellow(`Expiry warning: this entry expires in ~${hRemaining}h, but the full governance ` +
233
+ `flow (72h review + voting + signing) takes at least 120h. ` +
234
+ `The entry may expire before it can be executed.`));
235
+ }
236
+ }
237
+ // ── IPFS hint ────────────────────────────────────────────────────────────
238
+ const looksLikeUrl = /^https?:\/\//.test(evidence);
239
+ const looksLikeTxHash = /^0x[0-9a-fA-F]{64}$/.test(evidence);
240
+ if (!looksLikeUrl && !looksLikeTxHash) {
241
+ console.log();
242
+ console.log(chalk.dim(" Tip: consider pinning your evidence to IPFS for decentralized, " +
243
+ "tamper-evident archival:\n" +
244
+ " ipfs add <evidence-file> → include the resulting CID as evidence in future proposals."));
245
+ }
221
246
  // ── output ───────────────────────────────────────────────────────────────
222
247
  console.log();
223
248
  console.log(logSymbols.success, chalk.green("Proposal created"));
@@ -230,10 +255,10 @@ export async function proposeCommand(opts) {
230
255
  console.log(` Stored at: ${getProposalsDir()}`);
231
256
  console.log();
232
257
  console.log(chalk.bold("Next steps:"));
233
- console.log(` 1. Share the proposal ID ${chalk.bold(proposal.id)} with validators for the 72-hour review.`);
234
- console.log(` 2. Collect votes: ${chalk.dim(`ckb-firewall vote --proposal ${proposal.id}`)}`);
235
- console.log(` 3. Sign (3-of-5): ${chalk.dim(`ckb-firewall sign --proposal ${proposal.id}`)}`);
236
- console.log(` 4. Execute: ${chalk.dim(`ckb-firewall execute --proposal ${proposal.id}`)}`);
258
+ console.log(` 1. Export and share: ${chalk.dim(`ckb-firewall export --proposal ${proposal.id} --out proposal-${proposal.id}.json`)}`);
259
+ console.log(` 2. Collect votes: ${chalk.dim(`ckb-firewall vote --proposal ${proposal.id}`)}`);
260
+ console.log(` 3. Sign (3-of-5): ${chalk.dim(`ckb-firewall sign --proposal ${proposal.id}`)}`);
261
+ console.log(` 4. Execute: ${chalk.dim(`ckb-firewall execute --proposal ${proposal.id}`)}`);
237
262
  console.log();
238
263
  printHints("propose");
239
264
  }
@@ -1 +1 @@
1
- {"version":3,"file":"propose.js","sourceRoot":"","sources":["../../src/commands/propose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"propose.js","sourceRoot":"","sources":["../../src/commands/propose.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":"AA6BA,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AA4CD,wBAAsB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAwMtE;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CASvD"}
1
+ {"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":"AAgCA,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AA4CD,wBAAsB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA8MtE;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CASvD"}
@@ -6,10 +6,11 @@ import ora from "ora";
6
6
  import inquirer from "inquirer";
7
7
  import { parseRegistryPayload } from "@ckb-firewall/sdk";
8
8
  import { getLiveCell } from "../lib/rpc.js";
9
- import { encodeRegistryPayload, removeEntry, bytesToHex, hexToBytes, strip0x, } from "../lib/blkl.js";
10
- import { ckbBlake2b, buildGov1Witness, buildWitnessArgs, placeholderSigners, } from "../lib/witness.js";
9
+ import { encodeRegistryPayload, extractGovernanceHeaderRaw, removeEntry, bytesToHex, hexToBytes, strip0x, } from "../lib/blkl.js";
10
+ import { ckbBlake2b, buildGov1WitnessV2, buildGovernanceSigWitness, buildWitnessArgs, placeholderSigners, } from "../lib/witness.js";
11
11
  import { TESTNET_RPC_URL, TESTNET_REGISTRY_CELL, TESTNET_CONTRACT_OUTPOINTS, SECP256K1_DEP_GROUP, } from "../lib/defaults.js";
12
12
  import { printHints } from "../lib/hints.js";
13
+ import { assertPlaceholderGovernanceAllowed } from "../lib/placeholder-governance.js";
13
14
  function isValidHex(value) {
14
15
  const clean = strip0x(value);
15
16
  return clean.length > 0 && /^[0-9a-fA-F]+$/.test(clean) && clean.length % 2 === 0;
@@ -51,6 +52,13 @@ async function promptLockArgs(entries) {
51
52
  return manual.trim();
52
53
  }
53
54
  export async function removeCommand(opts) {
55
+ try {
56
+ assertPlaceholderGovernanceAllowed("ckb-firewall remove");
57
+ }
58
+ catch (err) {
59
+ console.error(logSymbols.error, chalk.red(err instanceof Error ? err.message : String(err)));
60
+ process.exit(1);
61
+ }
54
62
  const rpcUrl = opts.rpcUrl;
55
63
  const txHash = opts.registryTx;
56
64
  const index = Number.parseInt(opts.registryIndex, 10);
@@ -77,7 +85,7 @@ export async function removeCommand(opts) {
77
85
  currentPayload = parseRegistryPayload(cell.data);
78
86
  }
79
87
  catch {
80
- console.error(logSymbols.error, chalk.red("The registry cell does not contain a valid BLKL v1 payload."));
88
+ console.error(logSymbols.error, chalk.red("The registry cell does not contain a valid BLKL v2 payload."));
81
89
  console.error(chalk.dim(" Pass --registry-tx and --registry-index to point at the correct cell."));
82
90
  process.exit(1);
83
91
  }
@@ -117,7 +125,8 @@ export async function removeCommand(opts) {
117
125
  // ── build new payload ────────────────────────────────────────────────────
118
126
  const newEntries = removeEntry(currentPayload.entries, lockArgs);
119
127
  const newPayload = { version: currentPayload.version, entries: newEntries };
120
- const newBlkl = encodeRegistryPayload(newPayload);
128
+ const govHeaderRaw = extractGovernanceHeaderRaw(cell.data);
129
+ const newBlkl = encodeRegistryPayload(newPayload, govHeaderRaw ?? undefined);
121
130
  const oldBlkl = hexToBytes(cell.data);
122
131
  console.log();
123
132
  console.log(chalk.bold("Proposed change:"));
@@ -130,17 +139,9 @@ export async function removeCommand(opts) {
130
139
  const voteDigestHash = ckbBlake2b(proposalIdHash);
131
140
  const oldRoot = ckbBlake2b(oldBlkl);
132
141
  const newRoot = ckbBlake2b(newBlkl);
133
- const gov1 = buildGov1Witness({
134
- proposalIdHash,
135
- voteDigestHash,
136
- oldRoot,
137
- newRoot,
138
- signers: placeholderSigners(3),
139
- });
140
- const witnessBytes = buildWitnessArgs({
141
- lock: new Uint8Array(65),
142
- inputType: gov1,
143
- });
142
+ const gov1 = buildGov1WitnessV2({ proposalIdHash, voteDigestHash, oldRoot, newRoot });
143
+ const sigWitness = buildGovernanceSigWitness(placeholderSigners(3));
144
+ const witnessBytes = buildWitnessArgs({ lock: sigWitness, inputType: gov1 });
144
145
  // ── build transaction ────────────────────────────────────────────────────
145
146
  const txJson = {
146
147
  transaction: {
@@ -154,6 +155,13 @@ export async function removeCommand(opts) {
154
155
  },
155
156
  dep_type: "code",
156
157
  },
158
+ {
159
+ out_point: {
160
+ tx_hash: TESTNET_CONTRACT_OUTPOINTS.governanceLock.txHash,
161
+ index: `0x${TESTNET_CONTRACT_OUTPOINTS.governanceLock.index.toString(16)}`,
162
+ },
163
+ dep_type: "code",
164
+ },
157
165
  ],
158
166
  header_deps: [],
159
167
  inputs: [
@@ -1 +1 @@
1
- {"version":3,"file":"remove.js","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remove.js","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,6 @@ export interface SignOptions {
3
3
  signerIndex?: string;
4
4
  key?: string;
5
5
  }
6
+ export declare function parseSignerIndex(value: string): number | null;
6
7
  export declare function signCommand(opts: SignOptions): Promise<void>;
7
8
  //# sourceMappingURL=sign.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../../src/commands/sign.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA2BD,wBAAsB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgKlE"}
1
+ {"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../../src/commands/sign.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAcD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG7D;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmKlE"}