Skip to content
Merged
Show file tree
Hide file tree
Changes from 44 commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
42b30ea
feat: initial code for 3SF
unnawut Jul 30, 2025
eeb0d8e
fix: quick fixes to get build passes first
unnawut Jul 31, 2025
565451a
fix: clippy and fmt suggestions
unnawut Jul 31, 2025
34b419a
fix: more linting
unnawut Jul 31, 2025
6879532
fix: cargo udeps
unnawut Jul 31, 2025
17d845c
Simplify justifications init
unnawut Jul 31, 2025
f9217a2
Rename Vote and VoteData
unnawut Jul 31, 2025
e47a432
Use range any instead of for loop
unnawut Jul 31, 2025
0357874
fix: better upsert
unnawut Jul 31, 2025
f9121e1
fix: Vote and SignedVote
unnawut Jul 31, 2025
e1fac7b
docs: change todo from adding TreeHash to splitting the Staker and se…
unnawut Jul 31, 2025
486ab5b
refactor: use B256 directly
unnawut Aug 1, 2025
306b951
refactor: bring back Config and use U4096 for both max blocks and val…
unnawut Aug 1, 2025
dc49f5c
refactor: usize to u64
unnawut Aug 1, 2025
b7b3347
fix: remove proposer_index from block
unnawut Aug 1, 2025
3cde64a
refactor: replace let _ with expect()
unnawut Aug 1, 2025
e637f4b
fix: unwrap to expect
unnawut Aug 1, 2025
3805ccb
fix: mis-implementation of latest_votes
unnawut Aug 1, 2025
29562bb
fix: Staker instantiation
unnawut Aug 1, 2025
9c31cc3
fix: change Weak<RefCell<>> to Arc<Mutex<>>
unnawut Aug 1, 2025
809a3db
feat: move Staker from common/consensus/lean to common/lean_chain
unnawut Aug 1, 2025
183456e
fix: tracing::info! instead of println!
unnawut Aug 1, 2025
3117b6f
chore: doc comments
unnawut Aug 1, 2025
e0877d0
fix: make pr suggestions
unnawut Aug 1, 2025
4a3ccca
feat: replace compute_hash() with TreeHash
unnawut Aug 1, 2025
172bcc1
fix: make pr
unnawut Aug 1, 2025
70254cc
feat: implement flat justifications
unnawut Aug 1, 2025
4296b13
fix: formatting
unnawut Aug 1, 2025
0cf3728
feat: replace compute_hash() with tree_hash_root() for LeanState
unnawut Aug 1, 2025
534f705
docs: add comments from Python impl
unnawut Aug 1, 2025
7a74b7b
fix: remove unused deps
unnawut Aug 1, 2025
0da5620
fix: Staker sequence
unnawut Aug 1, 2025
87ea21f
feat: update max slots from 4096 to 262144
unnawut Aug 4, 2025
bb6458a
refactor: better vector filters
unnawut Aug 4, 2025
6a8c0d8
fix: Use U1073741824 for justifications and integers when typenum is …
unnawut Aug 4, 2025
2e09fcc
fix: type comparison
unnawut Aug 4, 2025
789692c
fix: remove clones
unnawut Aug 4, 2025
21c5742
refactor: one less clone()
unnawut Aug 4, 2025
2243990
refactor: ream_lean_chain to ream_chain_lean
unnawut Aug 4, 2025
d62af71
fix: proper justifications handling
unnawut Aug 4, 2025
c85d6ea
feat: use anyhow
unnawut Aug 4, 2025
15f3b00
chore: make pr
unnawut Aug 4, 2025
ba481ae
fix: deps sort
unnawut Aug 4, 2025
214bb60
chore: better error messages
unnawut Aug 4, 2025
aa09db6
fix: LeanState::new() return the instance directly
unnawut Aug 5, 2025
5f32a91
refactor: return early for initialize_justifications...
unnawut Aug 5, 2025
3bbd246
refactor: anyhow consistency
unnawut Aug 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 26 additions & 7 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 4 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ members = [
"crates/account_manager",
"crates/common/beacon_api_types",
"crates/common/chain/beacon",
"crates/common/chain/lean",
"crates/common/checkpoint_sync",
"crates/common/consensus/beacon",
"crates/common/consensus/lean",
Expand Down Expand Up @@ -99,7 +100,7 @@ serde_json = "1.0.139"
serde_yaml = "0.9"
sha2 = "0.10"
snap = "1.1"
ssz_types = "0.11"
ssz_types = { git = "https://github.com/ReamLabs/ssz_types", branch = "removable-variable-list" }
tempdir = "0.3.7"
tempfile = "3.19"
thiserror = "2.0.11"
Expand All @@ -117,8 +118,10 @@ ream-account-manager = { path = "crates/account_manager" }
ream-beacon-api-types = { path = "crates/common/beacon_api_types" }
ream-bls = { path = "crates/crypto/bls", features = ["zkcrypto"] } # Default feature is zkcrypto
ream-chain-beacon = { path = "crates/common/chain/beacon" }
ream-chain-lean = { path = "crates/common/chain/lean" }
ream-checkpoint-sync = { path = "crates/common/checkpoint_sync" }
ream-consensus-beacon = { path = "crates/common/consensus/beacon" }
ream-consensus-lean = { path = "crates/common/consensus/lean" }
ream-consensus-misc = { path = "crates/common/consensus/misc" }
ream-discv5 = { path = "crates/networking/discv5" }
ream-execution-engine = { path = "crates/common/execution_engine" }
Expand Down
25 changes: 25 additions & 0 deletions crates/common/chain/lean/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
[package]
name = "ream-chain-lean"
authors.workspace = true
edition.workspace = true
keywords.workspace = true
license.workspace = true
readme.workspace = true
repository.workspace = true
rust-version.workspace = true
version.workspace = true

[dependencies]
alloy-primitives.workspace = true
anyhow.workspace = true
serde.workspace = true
ssz_types.workspace = true
tokio.workspace = true
tracing.workspace = true
tree_hash.workspace = true

# ream dependencies
ream-consensus-lean.workspace = true
ream-network-spec.workspace = true
ream-p2p.workspace = true
ream-pqc.workspace = true
1 change: 1 addition & 0 deletions crates/common/chain/lean/src/lib.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
pub mod staker;
Loading