[Tracker] Pluto ↔ Charon port — master tracker
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Domain
- blockchain, distributed-systems
Research direction
Start with the linked track epics #395, #396, and #397, then read the Go source and AGENTS.md before writing Rust. Use core/qbft, core/consensus, and cmd/run as the named integration points, and run cargo test --workspace --all-features. Done means the Phase 1 QBFT gate and the Phase 4 pluto run four-node compose flow pass end to end.
Written by the indexing model from the issue text.
Description
Pluto ↔ Charon port — master tracker
🎯 Goal
Fully port charon run to Pluto. Everything tracked here exists to land pluto run at functional parity with charon run — a runnable distributed-validator node that boots, joins peers, runs DKG-derived keyshares, and produces valid signed duties end-to-end.
Anything that does not directly serve pluto run parity is out of scope for this tracker.
Status
This issue tracks the Go → Rust port of Charon into Pluto. Work is grouped into three parallel tracks, plus integration anchors. Track ownership can scale up or down as the team changes — labels and sub-issue links are the source of truth, not fixed assignments.
The detailed plan (phases, calendar, risks) lives in the team Slack thread; this issue holds the issue graph.
Track epics
The three track epics are wired as sub-issues of this tracker — see the GitHub sub-issues panel for live progress bars.
- #395 — Track A — Duty pipeline + consensus
- #396 — Track B — Validator API + tracker
- #397 — Track C — Orchestration + CLI
Integration milestones
- Phase 1 gate: QBFT strategysim parity green (
core/qbftasync rewrite +core/consensus) - 🏁 Final goal / Phase 4 gate:
pluto runboots a 4-node compose and runs one slot end-to-end → #403 (cmd/run) closed implies this tracker can close
Conventions
- One PR per Go module (preserve the charon ↔ pluto bijection)
- Read the Go source before writing Rust (per
AGENTS.md) - Cross-track review on every PR
cargo test --workspace --all-featuresmust be green at every integration sync point
Labels
track:duty-pipelinetrack:validator-apitrack:orchestration-cli
Use these to filter issue lists per track.
- Dominant language
- Rust
- Stars
- 8
- Forks
- 5
- Avg merge
- 4d 16h
- Merged PRs (30d)
- 37
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from NethermindEth/pluto
-
enhancement rust
Difficulty 4/5 3-5 days Newbie friendliness 45/100
NethermindEth/pluto#640 ·
-
rust
Difficulty 5/5 Over a week Newbie friendliness 45/100
NethermindEth/pluto#638 · 1 comment ·
-
enhancement rust
Difficulty 5/5 Over a week Newbie friendliness 35/100
NethermindEth/pluto#635 ·
-
documentation
Difficulty 4/5 3-5 days Newbie friendliness 55/100
NethermindEth/pluto#634 · 3 comments ·
-
bug track:orchestration-cli
Difficulty 5/5 Over a week Newbie friendliness 28/100
NethermindEth/pluto#632 ·
All issues in NethermindEth/pluto
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
kwakseongjae/auto-hwp#319 ·
-
area:cli bug filter-quality good first issue priority:medium
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
bevyengine/bevy#25861 ·
-
comp-datalake
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
ClickHouse/ClickHouse#121222 ·
-
enhancement remote
Difficulty 2/5 1-3 hours Newbie friendliness 68/100