Summary
Security Hardening
- Proof & Validation Security: Strengthened proof generation and validator validation checks across node API components to enhance accuracy and trustworthiness.
- Execution & State Transition Protection: Enhanced concurrency handling, error safeguards, and streamlined state transitions for smoother and safer operations.
- Optimized Dependencies & Cleanup: Updated dependencies, refactored code, and cleared redundant functions to boost performance and reduce technical debt.
Breaking
It is NOT backwards compatible with bartio-beacon-80084
genesis; it is state breaking with respect to v0.2.0-alpha.8.
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Bartio | General |
---|---|---|
Payload Builders | None | Recommended |
Non-Payload Builders | None | Recommended |
What's Changed
- kurtosis (forge-script) : Enhancement to handle dependency from GitHub by @nidhi-singh02 in #1979
- test(proofs): consistency tests for working proof generation & verification by @calbera in #2015
- Made StoreKey singleton by @abi87 in #2018
- chore(cometBFTService): drop redundant context assignemets by @abi87 in #2020
- bet(testnet/config): Update app.toml according to the new releases by @chuck-bear in #2023
- chore(DefaultServiceOptions): minor chainID loading refactoring by @abi87 in #2022
- chore(cometBFTService): some more minor cleanups by @abi87 in #2021
- chore(all): Run make generate-check by @abi87 in #2027
- chore(CometBFTService): simplified cometBFTService Info by @abi87 in #2028
- chore(cometBFTService): simplified CometBFTService by @abi87 in #2026
- chore(primitives): renaming nits and comments fixes by @abi87 in #2030
- chore(encoding): dropped go-json direct dependency by @abi87 in #2033
- chore(all): update mockery by @abi87 in #2036
- chore(consensus-types): Dropped double allocation in NewFromSSZ by @abi87 in #2040
- chore(consensus-types): Use
EthSecp256k1CredentialPrefix
constant for clarity by @abi87 in #2039 - chore(primitives): fixed
ExecutionAddress
validation by @abi87 in #2034 - chore(primitives): dropped duplicated jwt function by @abi87 in #2037
- chore(consensus-types): Make slashings use math.Gwei by @abi87 in #2038
- chore(CometBFTService): minor InitChain cleanup by @abi87 in #2035
- chore(consensus-types): fixed proposer index type by @abi87 in #2041
- chore(primitives):
hex.String
basic cleanup by @abi87 in #2044 - chore(many): Typographical issues by @abi87 in #2032
- chore(primitives): Consolidating hex.NewString by @abi87 in #2047
- chore(execution): fixed failedBlocks concurrency by @abi87 in #2060
- chore(execution): fixed tickers stop by @abi87 in #2059
- chore(execution): protect
rpc.header
for concurrent access by @abi87 in #2058 - chore(primitives): hardened NewRootFromHex by @abi87 in #2051
- chore(primitives): Reorganized
bytes
unit tests by @abi87 in #2052 - chore(primitives): dropped primitives service types by @abi87 in #2063
- chore(all): updated mockery to v 2.46.3 by @abi87 in #2067
- chore(execution): Dropped DenebPlus redundant check by @abi87 in #2069
- chore(execution): another defer ticker fix by @abi87 in #2070
- feat(node-api): use timestamp ID instead of execution ID for proof namespace by @calbera in #2066
- fix(node-api): Use the correct id in the proof endpoints routes by @calbera in #2078
- chore(primitives): minor optimization for
PowerOfTwo
functions by @abi87 in #2081 - chore(storage): close storage iterators by @abi87 in #2077
- chore(primitives): hardened NewU256FromBigInt by @abi87 in #2079
- chore(primitives): hardened
GweiFromWei
to avoid integer truncation by @abi87 in #2080 - chore(consensus-types): Coherent
BeaconBlock
construction by @abi87 in #2082 - chore(node-api): Add json tags to returned beacon block header data by @calbera in #2084
- Fix - Update makefile to use new kurtosis repo by @gummybera in #2085
- chore(primitives): Dropped
hex.String
by @abi87 in #2048 - fix(beacon): consolidated next payload timestamp calculations by @abi87 in #2094
- chore(payload): uniform error handling for ExecutionPayload retrieval by @abi87 in #2088
- feat(node-api): proof of proposer index in beacon block by @calbera in #2099
- chore(storage): hardened db range by @abi87 in #2106
- Fix - Update erigon repo by @gummybera in #2121
- fix: let the create-validator command retrieve the loaded configuration. by @dezzeus in #2128
- chore(state-transition): Add basic unit tests by @abi87 in #2114
- chore(dep): updated mimetype dep by @abi87 in #2105
- fix(node-api): hardened node-api default address by @abi87 in #2092
- bug(cli): hardened convert amount to avoid truncation by @abi87 in #2104
- chore(da): improved blob processor encapsulation by @abi87 in #2113
- bug(state-transitions): coherent use of effective balance increment by @abi87 in #2103
- bug(state-transition): increase balance when validator balance is changed by @abi87 in #2111
- fix(execution): hardened verifyChainIDAndConnection by @abi87 in #2086
- fix(payload): guard
SendForceHeadFCU
withpb.Enabled
by @abi87 in #2087 - fix(node-api): added ValidateValidatorStatus by @abi87 in #2090
- fix(node-api): hardened
CustomValidator
validation by @abi87 in #2093 - chore(consensus-type): Fixed ExecutionPayload json marshalling by @abi87 in #2042
- fix(consensus, blockchain): set execution payload timestamp based on CometBFT timestamp by @abi87 in #2095
- perf(state-transition): reduce amount of withdrawals processed by @abi87 in #2110
- fix(consensus, beacon): hardened proposer validation by @abi87 in #2102
- fix(beacon): Hardened sidecars validation by @abi87 in #2108
- chore(state-processor): consolidated state processors UTs by @abi87 in #2136
- chore(deps): bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 in /build/tools in the go_modules group across 1 directory by @dependabot in #2130
- chore(README): added Discord badge and minor fix by @abi87 in #2140
- test: fix e2e tests so they pass locally by @MaanavKhaitan in #2054
- fix(state-transition): skip execution payload timestamp validation on Bartio by @abi87 in #2147
- fix(state-transition): Withdrawals backward compatibility with Bartio by @abi87 in #2148
- chore: fix and execute mod tidy by @dezzeus in #2138
- fix(consensus): fix consensus height logging by @abi87 in #2149
- chore: add support for local devnet boonet by @abi87 in #2152
- chore(all): update SSZ dependencies by @abi87 in #2153
New Contributors
- @dezzeus made their first contribution in #2128
- @MaanavKhaitan made their first contribution in #2054
Full Changelog: v0.2.0-alpha.8...v0.3.0-alpha.0
Binaries
System | Architecture | Binary | PGP Signature |
---|---|---|---|
amd64 | beacond-v0.3.0-alpha.0-linux-amd64 | ||
arm64 | beacond-v0.3.0-alpha.0-linux-arm64 | ||
arm64 | beacond-v0.3.0-alpha.0-darwin-arm64 | ||
System | Option | - | Resource |
Docker | berachain/beacon-kit |