Epic: Lantern Full Node tier — snapshot-free, small-footprint, secure, pure-Go
Tracking issue for the Full node tier ("Full node for everyone, runs on a Mac mini"). Sits above Light (~1 GB, done) and PDP/mid = F1 (persistent 2-5 GB, done).
The design (from the 2026-07-01 feasibility work)
A Lantern full node is an F3-anchored full node: it follows and serves the entire chain surface, boots without a snapshot, holds a tunable low-GB working set, and verifies everything pure-Go it can. It does not re-execute the FVM or verify SNARKs natively yet — it trusts the F3 finality layer (the network's own BLS-aggregate 2/3-power BFT) for those. This boot trust is strictly stronger than a single-source 76 GB snapshot import.
Why the two Rust dependencies exist (investigated against lotus master)
Full block validation in Lotus needs filecoin-ffi (Rust) in exactly two places:
VerifyWinningPoSt — a Groth16-over-BLS12-381 SNARK verify (#TBD)
TipSetState — FVM (WASM) message re-execution (#TBD)
Everything else (VRF, ticket, beacon, block sig, miner-power, win-count) is pure-Go BLS/arithmetic Lantern already has via gnark-crypto.
Staged "kill Rust" roadmap
Child issues
Sibling epic: #100 (running-head trust / eclipse resistance).
Internal design notes: FULL-NODE-VERDICT, FULL-NODE-LOTUS-LIFT, PURE-GO-PROOFS-FVM (kept out of repo).
Epic: Lantern Full Node tier — snapshot-free, small-footprint, secure, pure-Go
Tracking issue for the Full node tier ("Full node for everyone, runs on a Mac mini"). Sits above Light (~1 GB, done) and PDP/mid = F1 (persistent 2-5 GB, done).
The design (from the 2026-07-01 feasibility work)
A Lantern full node is an F3-anchored full node: it follows and serves the entire chain surface, boots without a snapshot, holds a tunable low-GB working set, and verifies everything pure-Go it can. It does not re-execute the FVM or verify SNARKs natively yet — it trusts the F3 finality layer (the network's own BLS-aggregate 2/3-power BFT) for those. This boot trust is strictly stronger than a single-source 76 GB snapshot import.
Why the two Rust dependencies exist (investigated against lotus master)
Full block validation in Lotus needs
filecoin-ffi(Rust) in exactly two places:VerifyWinningPoSt— a Groth16-over-BLS12-381 SNARK verify (#TBD)TipSetState— FVM (WASM) message re-execution (#TBD)Everything else (VRF, ticket, beacon, block sig, miner-power, win-count) is pure-Go BLS/arithmetic Lantern already has via gnark-crypto.
Staged "kill Rust" roadmap
Child issues
Sibling epic: #100 (running-head trust / eclipse resistance).
Internal design notes: FULL-NODE-VERDICT, FULL-NODE-LOTUS-LIFT, PURE-GO-PROOFS-FVM (kept out of repo).