Description
Migrate gean from devnet-3 to devnet-4 covering XMSS crypto migration, dual-key validators, block envelope simplification, recursive aggregation, and fork choice convergence.
Work is structured in phases matching the leanSpec devnet-4 changes.
Spec Reference
- leanSpec pinned at
16e50a5fcc8be837f09aabf30c92e653bc36dad4
Branch
Phases
Phase 1: Crypto Migration
Migrate XMSS from Dim64Base8 (3112-byte signatures) to Dim46Base8 (2536-byte signatures).
Phase 2: Dual-Key Validator Model
Phase 3: Block Envelope Simplification
Phase 4: CGo Safety
Phase 5: Recursive Aggregation
Select
Fill
Aggregate
Phase 6: Fork Choice Convergence
Phase 7: Networking
Phase 8: Source Alignment
Phase 9: Spec Tests
How to Run
make run-setup # first time: build + generate keys
make run # terminal 1: aggregator
make run-node1 # terminal 2
make run-node2 # terminal 3
Description
Migrate gean from devnet-3 to devnet-4 covering XMSS crypto migration, dual-key validators, block envelope simplification, recursive aggregation, and fork choice convergence.
Work is structured in phases matching the leanSpec devnet-4 changes.
Spec Reference
16e50a5fcc8be837f09aabf30c92e653bc36dad4Branch
devnet-4Phases
Phase 1: Crypto Migration
Migrate XMSS from
Dim64Base8(3112-byte signatures) toDim46Base8(2536-byte signatures).hashsig-glueto leansig devnet4Dim46Base8SignatureSizeintypes/constants.go(3112 → 2536)attestation_encoding.goblock_encoding.goPhase 2: Dual-Key Validator Model
Validatorstruct:AttestationPubkeyProposalPubkeySignAttestationSignBlockGenesisValidatorEntrywith dual keysannotated_validators.yamlPhase 3: Block Envelope Simplification
SignedBlock:Block+BlockSignaturesBlockWithAttestationProposerAttestationhash_tree_root(block)with proposal keyPhase 4: CGo Safety
runtime.Pinnerin:AggregateWithChildrenVerifyAggregatedSignaturePhase 5: Recursive Aggregation
Select
Fill
Aggregate
Recursive aggregation via
AggregateWithChildrenEnforce minimum 2 inputs
Phase 6: Fork Choice Convergence
AppliedIndex,LatestKnown,LatestNewupdateHeadbefore proposalPromoteNewToKnown+updateHeadinmaybeProposePhase 7: Networking
--aggregate-subnet-idsCLI flag0Phase 8: Source Alignment
Phase 9: Spec Tests
attestationPubkey,proposalPubkey)SignedBlockProposerAttestationfrom forkchoice testsLEAN_SPEC_COMMIT_HASHHow to Run