Skip to content

crates/cli docs are stale: parity table marks shipped commands as not implemented, enr help names a nonexistent key file #584

Description

@emlautarom1-agent

Summary

Two documentation defects in crates/cli:

  1. README.md last changed on 21 April. Its Charon-parity table marks eleven commands as "Not implemented" that ship today, and its "Commands (current)" section documents only three of the eight top-level commands the binary exposes.
  2. pluto enr --help tells the operator to look for a file that does not exist.

Parity table rows that are wrong

Marked ❌ at README.md#L61-L85, all present in cli.rs:

Command Landed
run #503, 2026-07-07
unsafe, unsafe run #503, 2026-07-07
relay #224, 2026-02-27
dkg #316, 2026-04-23
alpha, alpha test + all/peers/beacon/validator/mev/infra #149, 2026-02-16

Genuinely still unimplemented, and correct as-is: combine, alpha add-validators, exit and its five subcommands.

Wrong key filename in enr help

cli.rs#L39 reads:

long_about = "Prints an Ethereum Node Record (ENR) from this client's pluto-enr-private-key. This serves as a public key that identifies this client to its peers."

No such file is ever produced or read. KEY_FILE_NAME in p2p::k1 is charon-enr-private-key; dkg::disk requires it under that name; run's --p2p-private-key defaults to .charon/charon-enr-private-key. This is also the one place the string appears — pluto-enr-private-key has no other occurrence in the tree.

Charon's cmd/enr.go Long is otherwise identical and names charon-enr-private-key, so the fix restores parity as well as accuracy.

Work

  • cli.rs: change pluto-enr-private-key to charon-enr-private-key in the Enr variant's long_about.
  • README.md: flip the eleven stale rows to ✅ and drop their "Not implemented" notes.
  • README.md: extend "Commands (current)" to cover run, relay, dkg, alpha test and create cluster with their flags, matching the depth of the existing enr and create entries.

Acceptance

  • Every ✅/❌ in the parity table matches the subcommands pluto --help actually exposes.
  • A reader can find every implemented top-level command in the prose section.
  • No help text or doc names a key file the binary does not use.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status
In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions