Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DO NOT MERGE] working diff of latest changes against boonet #2335

Draft
wants to merge 270 commits into
base: boonet
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
270 commits
Select commit Hold shift + click to select a range
502deb9
6/n Remove slashinginfo and slotdata (#2284)
fridrik01 Dec 17, 2024
d3228bc
chore(blobs): Cleanup configurable constants for BlobSidecars (#2262)
shotes Dec 18, 2024
0b784a5
chore(blobs): parallelize blobSidecar header checks (#2286)
shotes Dec 18, 2024
f40a241
Remove PayloadAttributesT generic type
fridrik01 Dec 17, 2024
1dcbf4d
fix: remove err check for nil to address nilaway false positive
fridrik01 Dec 17, 2024
c08698e
appease nilaway
abi87 Dec 18, 2024
bd74b71
feat(state-transition): add deposits root to beacon state (#2296)
abi87 Dec 20, 2024
f30b1db
chore(state): cleanup deposits special casing (#2304)
calbera Dec 20, 2024
e5e526b
chore(all): update cosmos-sdk deps (#2221)
abi87 Dec 20, 2024
b04368c
Updated go.mod and go.sum to pull latest version of cometbft.
alesforz Dec 20, 2024
582b803
8/n Remove BlobSidecarT and BlobSidecarsT generic type (#2307)
fridrik01 Dec 20, 2024
497c9b4
9/n Remove PayloadIDT generic type (#2293)
fridrik01 Dec 20, 2024
b0cc796
Merge pull request #2309 from informalsystems/alesforz/bls-type-is-ptr
fridrik01 Dec 20, 2024
f9e2640
Enable nilaway on CI and remove build tags from linters (#2310)
fridrik01 Dec 20, 2024
7e5f02d
10/n Remove BeaconBlockT and BeaconStateT generic types (#2297)
fridrik01 Dec 20, 2024
0a2b137
chore(blobs): Validate `Index` field in `BlobSidecar` during processi…
shotes Dec 20, 2024
763d7d8
fix(blobs): Validate sidecar `KzgCommitments` and disallow sidecar om…
shotes Dec 20, 2024
8ec48e5
chore(state): use passed in context from comet during process proposa…
calbera Dec 20, 2024
f2c6e5c
chore(blobs): remove `Len`, `GetSidecars`, and `Get` from `BlobSideca…
shotes Dec 20, 2024
c988366
Add make lint-ci which runs all CI linters (#2314)
fridrik01 Dec 20, 2024
4c7ff6d
fix: timeout_commit defaults to 0 in init (#2312)
fridrik01 Dec 20, 2024
1e1a869
chore(test): readme for e2e-test (#2316)
nidhi-singh02 Dec 20, 2024
02cac35
Fix failing inclusion proofs and add test case
shotes Dec 21, 2024
5e8e5b3
lint and fix test case
shotes Dec 21, 2024
27367ed
Merge pull request #21 from berachain/up-to-date
calbera Dec 21, 2024
c992f54
Add .vscode launch.json/tasks.json to repository with nice defaults
fridrik01 Dec 21, 2024
6a0a3dc
fix: make lint-ci
fridrik01 Dec 21, 2024
cf9c913
Update address in add-premined-deposit launch config
fridrik01 Dec 21, 2024
f92a30c
fix: failing e2e test due to missing configuration in repo
fridrik01 Dec 21, 2024
c291a3b
Merge pull request #24 from berachain/fix-lint-ci
calbera Dec 22, 2024
43132ee
Merge pull request #23 from berachain/add-vscode-launch-and-tasks
calbera Dec 22, 2024
707a49b
Merge pull request #25 from berachain/disable-docker-login
calbera Dec 22, 2024
3752fba
Merge branch 'main' into fix-invalid-inclusion-proof
calbera Dec 22, 2024
e871aa1
temp
calbera Dec 22, 2024
e25bb8d
Fix inclusion proof depth calculation and explicitly label constants
shotes Dec 23, 2024
b7a1950
Merge branch 'fix-invalid-inclusion-proof' of github.com:berachain/be…
shotes Dec 23, 2024
6765495
lint
shotes Dec 23, 2024
29ba307
1/n Remove DepositStoreT generic type (#32)
fridrik01 Dec 23, 2024
9132cef
Merge pull request #26 from berachain/fix-invalid-inclusion-proof
shotes Dec 23, 2024
2f44ca6
test(e2e): improve e2e suite and fix flakiness (#30)
calbera Dec 23, 2024
c9434c8
Merge branch 'main' of github.com:berachain/beacon-kit-internal into …
calbera Dec 23, 2024
12f6018
chore(ci): update docker image name (#38)
chuck-bear Dec 23, 2024
b75a466
fix: docker hub login for ci (#37)
gummybera Dec 23, 2024
78e92c4
3/n Remove AvailabilityStoreT generic type (#34)
fridrik01 Dec 24, 2024
20e53c9
Merge branch 'main' of github.com:berachain/beacon-kit-internal into …
calbera Dec 24, 2024
f6cc1c9
Remove BlockStoreT generic type (#35)
fridrik01 Dec 24, 2024
e3162d3
Remove beacon KVStoreT genereric type (#36)
fridrik01 Dec 24, 2024
d9e5f19
Remove DepositStoreT generic type
fridrik01 Dec 23, 2024
e795dd1
partial node-api blobs implementation
shotes Dec 24, 2024
50f378f
Spelling
shotes Dec 24, 2024
706138f
Fixes for rebase
shotes Dec 24, 2024
4bceb40
add blob db lookups
shotes Dec 24, 2024
2262e49
add e2e test modifications
shotes Dec 24, 2024
8adf52c
add new api types and handlers
shotes Dec 24, 2024
0883f31
Merge branch 'main' of github.com:berachain/beacon-kit-internal into …
calbera Dec 24, 2024
b919e1b
moved comet consensus parameters to consensus package
abi87 Dec 25, 2024
b7c539d
nit
abi87 Dec 25, 2024
94f87b7
solved minor nolint
abi87 Dec 25, 2024
0a54e22
consolidating cometBFT config into cometBFT package
abi87 Dec 25, 2024
b634144
remove withdrawals special casing
calbera Dec 25, 2024
24e7b3d
note
calbera Dec 25, 2024
03ea7da
remove more special cases from state-transition
calbera Dec 25, 2024
902ab77
some more consolidation
abi87 Dec 25, 2024
ff0a1ea
lint
calbera Dec 25, 2024
e22552c
wip: fixing config.toml overwrite
abi87 Dec 26, 2024
0f1fb40
consolidated consensus parameters
abi87 Dec 26, 2024
353ac04
Merge branch 'comet-consensus-params-cleanup-2' into comet-consensus-…
abi87 Dec 26, 2024
c405269
Merge pull request #40 from berachain/comet-consensus-params-cleanup-1
abi87 Dec 26, 2024
66f11e8
leftover cleanups
abi87 Dec 26, 2024
1291930
Merge branch 'main' into comet-consensus-config-cleanup-1
abi87 Dec 26, 2024
acb108e
Merge pull request #46 from berachain/comet-consensus-params-cleanup-2
abi87 Dec 26, 2024
cea8ad2
Merge branch 'main' into comet-consensus-config-cleanup-1
abi87 Dec 26, 2024
eb9ed73
nit comment
abi87 Dec 26, 2024
923c76c
dropped leftover check about consensus timeout
abi87 Dec 26, 2024
a3c3930
Merge branch 'main' of github.com:berachain/beacon-kit-internal into …
shotes Dec 26, 2024
f6cf036
fixed show-validator command
abi87 Dec 26, 2024
a2cb955
Use forked go-eth2-client
shotes Dec 26, 2024
b92e19d
nit
abi87 Dec 26, 2024
c223931
Working blob e2e test
shotes Dec 26, 2024
a4dd678
Remove prints and cleanup
shotes Dec 26, 2024
4504fea
Make blob db concurrency safe
shotes Dec 26, 2024
206a6c1
Make e2e test validation async
shotes Dec 27, 2024
c90f7b4
lint and other small nits
shotes Dec 27, 2024
377a81c
undo json struct tag change
shotes Dec 27, 2024
4008bef
make gosec happy
shotes Dec 27, 2024
4998d70
Remove test makefile modification
shotes Dec 27, 2024
35134c1
Fix TODOs
shotes Dec 27, 2024
e2db135
fix: make lint-ci
fridrik01 Dec 21, 2024
506fdc2
Add .vscode launch.json/tasks.json to repository with nice defaults
fridrik01 Dec 21, 2024
66a1d1f
Update address in add-premined-deposit launch config
fridrik01 Dec 21, 2024
cea26d6
fix: failing e2e test due to missing configuration in repo
fridrik01 Dec 21, 2024
427f741
1/n Remove DepositStoreT generic type (#32)
fridrik01 Dec 23, 2024
975f66f
Fix failing inclusion proofs and add test case
shotes Dec 21, 2024
8e4bcd6
lint and fix test case
shotes Dec 21, 2024
d9a51e8
Fix inclusion proof depth calculation and explicitly label constants
shotes Dec 23, 2024
f8e4240
lint
shotes Dec 23, 2024
4060ee9
test(e2e): improve e2e suite and fix flakiness (#30)
calbera Dec 23, 2024
a941b69
chore(ci): update docker image name (#38)
chuck-bear Dec 23, 2024
2104783
fix: docker hub login for ci (#37)
gummybera Dec 23, 2024
1f09470
3/n Remove AvailabilityStoreT generic type (#34)
fridrik01 Dec 24, 2024
85879d2
Remove BlockStoreT generic type (#35)
fridrik01 Dec 24, 2024
9319883
Remove beacon KVStoreT genereric type (#36)
fridrik01 Dec 24, 2024
945a27c
moved comet consensus parameters to consensus package
abi87 Dec 25, 2024
487a98f
nit
abi87 Dec 25, 2024
2c45edf
consolidated consensus parameters
abi87 Dec 26, 2024
d8b3c5e
leftover cleanups
abi87 Dec 26, 2024
3e5cd43
Remove all generics from Blockchain service
fridrik01 Dec 26, 2024
bcfd38d
Add core team to CODEOWNERS
fridrik01 Dec 27, 2024
13733af
Merge branch 'main' of github.com:berachain/beacon-kit-internal into …
calbera Dec 27, 2024
d4a32e6
comment out unused state processor funcs
calbera Dec 27, 2024
6beaa01
lint
calbera Dec 27, 2024
37a1963
lint
shotes Dec 28, 2024
2e7ff34
fix thing that golangci-fix broke
shotes Dec 28, 2024
8337f50
Merge branch 'main' into comet-consensus-config-cleanup-1
abi87 Dec 28, 2024
ffd1564
set default configs to Bartio ones
abi87 Dec 28, 2024
6ad5022
Merge branch 'main' of github.com:berachain/beacon-kit-internal into …
shotes Dec 28, 2024
daffe66
Merge pull request #31 from berachain/fix-gen-deps
abi87 Dec 28, 2024
c274cf7
Merge branch 'main' into comet-consensus-config-cleanup-1
abi87 Dec 28, 2024
6d86c7c
Merge pull request #42 from berachain/remove-generics-chainservice
abi87 Dec 28, 2024
6c772a3
Merge branch 'main' into comet-consensus-config-cleanup-1
abi87 Dec 28, 2024
a175270
Merge branch 'main' into fix-show-validator-cmd
abi87 Dec 28, 2024
9e2d995
Extend permissions
fridrik01 Dec 28, 2024
2691e39
Merge pull request #52 from berachain/add-core-to-codeowners
abi87 Dec 28, 2024
09d7350
Merge pull request #41 from berachain/comet-consensus-config-cleanup-1
abi87 Dec 28, 2024
af5d2c1
Update codeowners
fridrik01 Dec 28, 2024
6fa128a
Merge pull request #53 from berachain/update-codeowners
abi87 Dec 28, 2024
cb6e75b
Merge branch 'main' into fix-show-validator-cmd
abi87 Dec 28, 2024
44746c1
Remove ConsensusSidecars concrete type and refactor verifySidecars
fridrik01 Dec 26, 2024
cae37af
Remove all generics from Node API Backend
fridrik01 Dec 26, 2024
3cb3394
Remove all New() functions of concrete types
fridrik01 Dec 28, 2024
74ef773
Merge pull request #54 from berachain/remove-all-new2
abi87 Dec 28, 2024
c2c4ea0
dropped extra vscode config
abi87 Dec 28, 2024
f4c8fce
Merge pull request #49 from berachain/fix-show-validator-cmd
abi87 Dec 28, 2024
abdc571
simplified KVStoreService
abi87 Dec 28, 2024
501fafa
nit
abi87 Dec 28, 2024
0905a33
minor cleanup
abi87 Dec 28, 2024
9ea1e51
some more minor cleanup
abi87 Dec 29, 2024
77d3c46
Merge pull request #55 from berachain/simplify-kvstore-service
abi87 Dec 30, 2024
73fe858
fixed range DB pruning
abi87 Dec 30, 2024
d1a9756
nit
abi87 Dec 30, 2024
f78fe4b
fixed files deletions and UTs
abi87 Dec 30, 2024
b3d0827
move fileDB type assertion to constructor
abi87 Dec 30, 2024
026c49e
fileDB improved error handling
abi87 Dec 30, 2024
1495cbe
Install dev-dependencies as binaries outside of go.mod
fridrik01 Dec 29, 2024
dbfa03c
Merge pull request #58 from berachain/fix-range-db-pruning
abi87 Dec 30, 2024
f4975fc
Merge branch 'main' into node-api-blobs
abi87 Dec 30, 2024
2ea04c0
Merge pull request #56 from berachain/12-29-install_dev-dependencies_…
abi87 Dec 30, 2024
17708a3
Merge branch 'main' into node-api-blobs
abi87 Dec 30, 2024
ad27665
get current slot in node-api backend
calbera Dec 30, 2024
3aedea0
Merge branch 'node-api-blobs' of github.com:berachain/beacon-kit-inte…
calbera Dec 30, 2024
07ba9fa
enforce block max size via CometBFT pameters
abi87 Dec 30, 2024
b03b5d1
debugging blob e2e test
calbera Dec 30, 2024
50be245
explicitly nil-led mempool size parameters
abi87 Dec 30, 2024
e43330b
nit better error msg
calbera Dec 30, 2024
9efa1cf
enabled pbst
abi87 Dec 30, 2024
48d8818
Get slot from node
shotes Dec 31, 2024
066d27d
fix nits
shotes Dec 31, 2024
fa05005
appease gosec
shotes Dec 31, 2024
df4fa95
lint
shotes Dec 31, 2024
5362227
Merge pull request #39 from berachain/node-api-blobs
shotes Dec 31, 2024
4e7321a
fix(consensus): enforce block max size via CometBFT parameters (#60)
abi87 Dec 31, 2024
b52e6c9
Merge branch 'main' into enable_pbst
calbera Dec 31, 2024
60a90ad
Merge pull request #61 from berachain/enable_pbst
abi87 Dec 31, 2024
046c3e7
appease linter
abi87 Jan 1, 2025
57a7d1a
Merge pull request #65 from berachain/happy_lint_happy_life
abi87 Jan 1, 2025
8772f4b
Remove WithinDAPeriod check during blob Persist
shotes Jan 2, 2025
aba7ded
Cleanup Persist and fix testcase
shotes Jan 2, 2025
eeda22f
remove sc copy
shotes Jan 2, 2025
2bd2790
replaced timeout commit with next block delay
abi87 Jan 2, 2025
f923001
chore(blockchain): Introduce the `SignedBeaconBlock` (#63)
shotes Jan 2, 2025
82c0c5b
Merge branch 'main' into replace-timeout-commit-with-next-block-delay
abi87 Jan 2, 2025
216b2de
nit
abi87 Jan 2, 2025
71a7b83
Merge branch 'main' of github.com:berachain/beacon-kit-internal into …
calbera Jan 2, 2025
6248705
nit
abi87 Jan 2, 2025
08e32e0
Merge pull request #66 from berachain/persist-blobs-regardless-da-period
shotes Jan 3, 2025
4d21909
Merge branch 'main' into replace-timeout-commit-with-next-block-delay
abi87 Jan 3, 2025
6e6da6a
nit
abi87 Jan 3, 2025
ef7f9f9
Merge pull request #67 from berachain/replace-timeout-commit-with-nex…
abi87 Jan 3, 2025
5364c90
chore(networks): blob testing devnet configs (#69)
calbera Jan 5, 2025
8934580
chore(kurtosis) : Configure chainID and chainSpec (#51)
nidhi-singh02 Jan 6, 2025
f10b6ea
fix(e2e): Add wait to blob e2e test (#76)
shotes Jan 6, 2025
357a2bf
feature(blockchain): `go-eth2-client` compatibility (#57)
shotes Jan 6, 2025
c616516
fix(blockchain): make `ProcessProposal` and `FinalizeBlock` return er…
shotes Jan 7, 2025
a6134c1
Switch to berachain cometbft fork + fix for privkey serialization (#80)
fridrik01 Jan 7, 2025
aa90610
fix(consensus): reverted `nextBlockDelay` in favor of `timeoutCommit`…
abi87 Jan 7, 2025
6696e2d
fix: flush unsaved writes used by pebbledb in deposit store on exit (…
fridrik01 Jan 7, 2025
d3fe46f
perf(randao): skip verifying randao signature in finalize block (#83)
calbera Jan 8, 2025
3c7dfdb
updated make start-devnet configs
abi87 Jan 8, 2025
68190a2
Merge pull request #89 from berachain/cleanup-make-start-devnet-configs
fridrik01 Jan 8, 2025
c73b7e5
chore(kurtosis): use latest blockscout smart contract verifier image …
calbera Jan 9, 2025
59cdb80
fix: prometheus regex in kurtosis script
fridrik01 Jan 9, 2025
2d58d37
changed empty blocks error handling (#95)
abi87 Jan 9, 2025
e3349e0
fix(consensus): enforce minimal CometBFT timeout (#100)
abi87 Jan 10, 2025
c11e3d0
patched CometBFT timestamp validations (#106)
abi87 Jan 10, 2025
6f08c05
Switch to use spamoor for spamming blobs in kurtosis tests
fridrik01 Jan 10, 2025
ddd87b5
chore(codeowners): update codeowners (#109)
chuck-bear Jan 10, 2025
f2ffc06
chore(codeowners): use team for codeowners file (#2345)
chuck-bear Jan 10, 2025
8f4cc11
[1/n] chore(chain-spec): clean up chain spec implementation and usage…
calbera Jan 11, 2025
baaf235
chore(deposits): Add Further Visibility on Problematic Deposits (#110)
rezbera Jan 11, 2025
1a31289
fix(blobs): un-deduplicate the blob sidecar check (#99)
shotes Jan 11, 2025
e11d868
chore(ci): fix kurtosis install (#116)
chuck-bear Jan 12, 2025
31ddfe7
fix(consensus): some more error handling fixed (#121)
abi87 Jan 13, 2025
1a9aeae
fix(consensus): fix optimistic payload errors (#122)
abi87 Jan 14, 2025
dba63d0
fix(security): Fixes vulnerability with golang.org/x/net #125
rezbera Jan 14, 2025
b444e81
feat(bls): upgrade comet to use BLS signatures aggregation (#118)
calbera Jan 14, 2025
c211f8f
chore(mainnet): chain spec values for mainnet (#107)
calbera Jan 14, 2025
002a1ff
feat: Add support for otterscan when running make-erigon (#127)
fridrik01 Jan 14, 2025
ff4f077
improved sidecars logging (#126)
abi87 Jan 14, 2025
3f6c98a
fix: add required CHAIN_SPEC env varuiable to vscode launch targets
fridrik01 Jan 14, 2025
66f893e
nit
abi87 Jan 14, 2025
0f067aa
Revert "nit"
abi87 Jan 14, 2025
c830d32
feat: Detect if beacond was unsafely shutdown (#84)
fridrik01 Jan 14, 2025
d417d05
validate consensus params (#128)
abi87 Jan 14, 2025
2e9cec4
fix(consensus): fixed ErrAcceptedPayloadStatus handling (#129)
abi87 Jan 14, 2025
673e57b
add cli genesis set storage command
nidhi-singh02 Jan 13, 2025
1c27824
geth primitivies needed
nidhi-singh02 Jan 13, 2025
405fb75
unit test added
nidhi-singh02 Jan 13, 2025
e3759ce
chainSpec in setstorage as func arg
nidhi-singh02 Jan 15, 2025
757394b
Merge pull request #120 from berachain/cli-deposit
nidhi-singh02 Jan 15, 2025
0c98111
chore(chain-spec): use a default chain spec of mainnet if no env var …
calbera Jan 15, 2025
5d9fb51
chore(types): enforce eth1 withdrawal credentials to eth2 spec (#134)
calbera Jan 15, 2025
b3ad6f5
fix(cli): set-deposit-storage -- only modify slot0, slot1 in eth-gene…
calbera Jan 16, 2025
887332d
chore(metrics): Add Block Gas Used Gauge (#139)
rezbera Jan 16, 2025
fbed58c
fix(metrics): only report EL gas used in FinalizeBlock (#140)
calbera Jan 16, 2025
b2ea040
Release Workflow - Sign Build Artefacts (#141)
gummybera Jan 17, 2025
043c153
fix(state-transition): Correctly enforce local validation of beacon b…
calbera Jan 17, 2025
1381d8d
chore(codeowners): use team for codeowners file (#2345)
chuck-bear Jan 10, 2025
9ba376e
Merge remote-tracking branch 'origin' into rebase-beaconkit-internal
abi87 Jan 18, 2025
4779a08
Merge pull request #2362 from berachain/rebase-beaconkit-internal
abi87 Jan 18, 2025
1d3cc46
chore(scripts): fix docker push to public ghcr (#2363)
calbera Jan 18, 2025
3674116
explicitly check consensus txs count
abi87 Jan 18, 2025
d03f029
Merge pull request #2365 from berachain/harden-consensus-txs-check
abi87 Jan 18, 2025
e7afc59
LICENSE: Update change date and contact info (#2351)
fridrik01 Jan 18, 2025
39c4ebe
fix(consensus): validate block slot (#2368)
abi87 Jan 18, 2025
ce54f45
fix(state-transition): Deposit's signature domain must be fork-agnost…
abi87 Jan 18, 2025
7b02411
fix(state-transition): Correctly enforce deposits length to avoid pan…
calbera Jan 18, 2025
487a5d1
chore(license): Update LICENSE to 2025 (#2372)
calbera Jan 18, 2025
b91c4b6
chore(state-transition): allow validators with non-eth1 withdrawal cr…
calbera Jan 18, 2025
c5c04b8
chore(README): cleanup (#2374)
abi87 Jan 18, 2025
395085d
fix(execution-client): duplicated payload duration metric (#2367)
abi87 Jan 18, 2025
5dfa536
fix: handle sigterm properly in case genesis is in the future (#2380)
fridrik01 Jan 19, 2025
4dc9ae7
Wrap pebble DB to use SetSync always with deposit store. (#2381)
GrizzlyBera Jan 20, 2025
a5f27ba
chore(engine): Remove Unused Errors and Functions (#2384)
rezbera Jan 21, 2025
1a275ea
feat(api): add debug endpoint to beacon API (#2387)
calbera Jan 22, 2025
c1ae2d7
1/2 fix(cli): Align `genesis validator-root` cmd with processing of g…
calbera Jan 22, 2025
d720486
Fix - Release workflow (#2395)
gummybera Jan 22, 2025
dddd9d2
chore(kurtosis): kurtosis setup to get deposit contract storage slots…
nidhi-singh02 Jan 22, 2025
3e35bb4
feat: print results from create-validator in json for easier parsing …
fridrik01 Jan 23, 2025
890fd41
fix(cli): `beacond deposit validate` had wrong number of args (#2397)
abi87 Jan 23, 2025
419cd66
2/2 chore(cli): improve tooling around deposits (#2392)
calbera Jan 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SPDX-License-Identifier: MIT
#
# Copyright (c) 2024 Berachain Foundation
# Copyright (c) 2025 Berachain Foundation
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation
Expand Down
13 changes: 13 additions & 0 deletions .github/workflows/berachain_release.asc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----

mDMEZ4wNfRYJKwYBBAHaRw8BAQdAwL8LSYcQrJUeVlFEB8z8CHvCVwF1pIeCesfz
STwDJFq0IGFCZWFyIChyaykgPGFiZWFyQGJlcmFjaGFpbi5jb20+iJkEExYKAEEW
IQTdYm1hDE1/yPhSAHZyntHMpH7vzQUCZ4wNfQIbAwUJAE8aAAULCQgHAgIiAgYV
CgkICwIEFgIDAQIeBwIXgAAKCRByntHMpH7vzZVwAQDFwlQUWDm6ElGJGujpOwmg
v4ErEw4RQ9QhFU+m/W9egQD+P0itmUAoiEbM8YXHmpEcmS8ThL15EFf4/oDQ85xR
KwW4OARnjA19EgorBgEEAZdVAQUBAQdA7eVLItcuC8tZqrn6BSQI85EU6UURjhon
OOZVl5SnCgEDAQgHiH4EGBYKACYWIQTdYm1hDE1/yPhSAHZyntHMpH7vzQUCZ4wN
fQIbDAUJAE8aAAAKCRByntHMpH7vzQqzAP4yhkQN4ppTkvylGQVhq6dS6plCBSvl
r1JKaeihAncYzgEA2X3HcALQlzaW3KY5aFAiAKRb4ihRMRIqoeeemmRsVww=
=Jr9o
-----END PGP PUBLIC KEY BLOCK-----
51 changes: 17 additions & 34 deletions .github/workflows/pipeline.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SPDX-License-Identifier: MIT
#
# Copyright (c) 2024 Berachain Foundation
# Copyright (c) 2025 Berachain Foundation
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation
Expand Down Expand Up @@ -43,18 +43,17 @@ concurrency:
cancel-in-progress: ${{ !(github.base_ref == 'refs/heads/main' && github.event_name == 'merge_group') || github.ref != 'refs/heads/main' }}

env:
GCP_ID_PROVIDER: 'projects/341806074811/locations/global/workloadIdentityPools/oidc-apps-automation-st-01-pool/providers/gh-apps-oidc-provider'
GCP_SERVICE_ACCOUNT: 'sa-apps-deployment@prj-berachain-automation-st-01.iam.gserviceaccount.com'
GCP_ID_PROVIDER: "projects/341806074811/locations/global/workloadIdentityPools/oidc-apps-automation-st-01-pool/providers/gh-apps-oidc-provider"
GCP_SERVICE_ACCOUNT: "sa-apps-deployment@prj-berachain-automation-st-01.iam.gserviceaccount.com"
GCP_REGISTRY: northamerica-northeast1-docker.pkg.dev
GHCR_REGISTRY: ghcr.io
PUSH_DOCKER_IMAGE: ${{ (github.base_ref == github.head_ref && github.event_name == 'push') || github.ref == 'refs/tags/v*'}}
VERSION: ${{ github.ref_name }}

jobs:

# -------------------------------------------------------------------------- #
# Main Pipeline #
# -------------------------------------------------------------------------- #
# -------------------------------------------------------------------------- #
# Main Pipeline #
# -------------------------------------------------------------------------- #

ci:
strategy:
Expand Down Expand Up @@ -90,7 +89,7 @@ jobs:
- name: Setup Golang
uses: actions/setup-go@v5
with:
go-version: "1.23.0"
go-version: "1.23.4"
check-latest: true
cache-dependency-path: "**/*.sum"
if: ${{ !(matrix.args == 'test-forge-cover' || matrix.args == 'test-forge-fuzz') }}
Expand All @@ -106,10 +105,9 @@ jobs:
files: ./${{ matrix.args }}.txt
if: ${{ matrix.args == 'test-unit-cover' || matrix.args == 'test-forge-cover'}}


# -------------------------------------------------------------------------- #
# E2E Testing #
# -------------------------------------------------------------------------- #
# -------------------------------------------------------------------------- #
# E2E Testing #
# -------------------------------------------------------------------------- #

ci-e2e:
strategy:
Expand Down Expand Up @@ -144,6 +142,8 @@ jobs:
uses: docker/setup-buildx-action@v1
- name: Install Kurtosis
run: |
sudo apt-get install ca-certificates
sudo apt update
echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list
sudo apt update
sudo apt install kurtosis-cli=$(go list -m -f '{{.Version}}' github.com/kurtosis-tech/kurtosis/api/golang | sed 's/^v//') -y
Expand All @@ -155,9 +155,9 @@ jobs:
env:
GOPATH: /home/runner/go

# -------------------------------------------------------------------------- #
# Docker Container Build and Push #
# -------------------------------------------------------------------------- #
# -------------------------------------------------------------------------- #
# Docker Container Build and Push #
# -------------------------------------------------------------------------- #

build-and-push-container:
runs-on:
Expand Down Expand Up @@ -199,26 +199,9 @@ jobs:
with:
registry: ${{ env.GHCR_REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GH_TOKEN }}

- if: ${{ env.PUSH_DOCKER_IMAGE == 'true' }}
name: Authenticate to Google Cloud
id: 'auth'
uses: 'google-github-actions/auth@v2'
with:
workload_identity_provider: ${{ env.GCP_ID_PROVIDER }}
service_account: ${{ env.GCP_SERVICE_ACCOUNT }}

- if: ${{ env.PUSH_DOCKER_IMAGE == 'true' }}
name: 'Set up Cloud SDK'
uses: 'google-github-actions/setup-gcloud@v2'

- if: ${{ env.PUSH_DOCKER_IMAGE == 'true' }}
name: Setup Docker to use Google Cloud OIDC
run: |
gcloud auth configure-docker ${{ env.GCP_REGISTRY }} --quiet
password: ${{ secrets.GHCR_TOKEN }}

- if: ${{ env.PUSH_DOCKER_IMAGE == 'true' }}
name: Push Docker image
run: |
make push-docker-gcp push-docker-github
make push-docker-github
53 changes: 41 additions & 12 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SPDX-License-Identifier: MIT
#
# Copyright (c) 2024 Berachain Foundation
# Copyright (c) 2025 Berachain Foundation
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation
Expand Down Expand Up @@ -33,9 +33,9 @@ on:
- 'release/*'

env:
REPO_NAME: ${{ github.repository_owner }}/beacon-kit
IMAGE_NAME: ${{ github.repository_owner }}/beacon-kit
GH_TOKEN: ${{ secrets.DEV_PAT }}
REPO_NAME: ${{ github.repository }}
IMAGE_NAME: ${{ github.repository }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

jobs:
# Job to extract version
Expand Down Expand Up @@ -77,16 +77,34 @@ jobs:
GOOS: ${{ matrix.configs.target-os }}
GOARCH: ${{ matrix.configs.arch }}

- name: Import GPG key
run: echo "$GPG_KEY" | gpg --batch --import
env:
GPG_KEY: ${{ secrets.GPG_KEY }}

- name: Build ${{ matrix.build.binary }}
run: |
make build-${{ matrix.configs.target-os }}-${{ matrix.configs.arch }}-${{ needs.extract-version.outputs.VERSION }}
tar -czvf ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target-os }}-${{ matrix.configs.arch }}.tar.gz -C build/bin .

- name: Sign binary archive
run: gpg --batch --yes --pinentry-mode=loopback --passphrase "$GPG_KEY_PASSPHRASE" --detach-sign ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target-os }}-${{ matrix.configs.arch }}.tar.gz
env:
GPG_KEY_PASSPHRASE: ${{ secrets.GPG_KEY_PASSPHRASE }}

# Upload binaries
- uses: actions/upload-artifact@v4
# Upload archives and signatures
- name: Upload archive
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target-os }}-${{ matrix.configs.arch }}.tar.gz
path: ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target-os }}-${{ matrix.configs.arch }}.tar.gz
path: |
${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target-os }}-${{ matrix.configs.arch }}.tar.gz
- name: Upload archive signature
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target-os }}-${{ matrix.configs.arch }}.tar.gz.sig
path: |
${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target-os }}-${{ matrix.configs.arch }}.tar.gz.sig

# Job to draft release
draft-release:
Expand All @@ -111,7 +129,6 @@ jobs:
echo "EOF" >> $GITHUB_OUTPUT
- name: Create release draft
env:
GITHUB_USER: ${{ github.repository_owner }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# The formatting here is borrowed from Reth (which is borrowed from Lighthouse (which is borrowed from OpenEthereum)):
# https://github.com/openethereum/openethereum/blob/6c2d392d867b058ff867c4373e40850ca3f96969/.github/workflows/build.yml
Expand Down Expand Up @@ -157,12 +174,24 @@ jobs:

| System | Architecture | Binary | PGP Signature |
|:---:|:---:|:---:|:---|
| <img src="https://simpleicons.org/icons/linux.svg" style="width: 32px;"/> | amd64 | [beacond-${{ env.VERSION }}-linux-amd64](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-linux-amd64.tar.gz) |
| <img src="https://simpleicons.org/icons/linux.svg" style="width: 32px;"/> | arm64 | [beacond-${{ env.VERSION }}-linux-arm64](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-linux-arm64.tar.gz) |
| <img src="https://simpleicons.org/icons/apple.svg" style="width: 32px;"/> | arm64 | [beacond-${{ env.VERSION }}-darwin-arm64](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-darwin-arm64.tar.gz) |
| | | | |
| <img src="https://simpleicons.org/icons/linux.svg" style="width: 32px;"/> | amd64 | [beacond-${{ env.VERSION }}-linux-amd64](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-linux-amd64.tar.gz) | [Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-linux-amd64.tar.gz.sig) |
| <img src="https://simpleicons.org/icons/linux.svg" style="width: 32px;"/> | arm64 | [beacond-${{ env.VERSION }}-linux-arm64](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-linux-arm64.tar.gz) | [Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-linux-arm64.tar.gz.sig) |
| <img src="https://simpleicons.org/icons/apple.svg" style="width: 32px;"/> | arm64 | [beacond-${{ env.VERSION }}-darwin-arm64](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-darwin-arm64.tar.gz) | [Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/beacond-${{ env.VERSION }}-darwin-arm64.tar.gz.sig) |
| **System** | **Option** | - | **Resource** |
| <img src="https://simpleicons.org/icons/docker.svg" style="width: 32px;"/> | Docker | | [${{ env.IMAGE_NAME }}](https://ghcr.io/berachain/beacon-kit) |

### Verifying signatures
Use gpg to verify the signature on these binary archives. This is important to make sure that the content you\'ve downloaded is legitimate. gpg can be installed with most package managers. For example:
- `brew install gpg` on mac
- `apt install gpg` on Ubuntu/Debian

Once gpg is installed, import our public key into its database and verify:
- [Download signing public key from here](https://raw.githubusercontent.com/${{ github.repository }}/${{ github.ref_name }}/.github/workflows/berachain_release.asc).
- Run `gpg --import berachain_release.asc`
- Verify with `gpg --verify {signature}.sig {binary}.tar.gz`
- This message is expected: `WARNING: This key is not certified with a trusted signature!`
- To resolve the warning, trust the key by signing with your own keypair. `gpg --lsign-key <keyid>`

ENDBODY
)
assets=()
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ site/
contracts/cache
contracts/out
tmp/
cscope.files

##########
# Golang #
Expand Down
2 changes: 1 addition & 1 deletion .mockery.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SPDX-License-Identifier: MIT
#
# Copyright (c) 2024 Berachain Foundation
# Copyright (c) 2025 Berachain Foundation
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation
Expand Down
120 changes: 120 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Init local devnet",
"type": "go",
"request": "launch",
"preLaunchTask": "build",
"mode": "exec",
"program": "${workspaceFolder}/build/bin/beacond",
"args": [
"init",
"localtestnet",
"--chain-id=beacond-2061",
"--home=${workspaceFolder}/.tmp/beacond",
],
"env": {
"CHAIN_SPEC": "devnet"
},
"internalConsoleOptions": "openOnSessionStart",
"presentation": {
"group": "initialize",
"order": 1
},
},
{
"name": "Add premined deposit",
"type": "go",
"request": "launch",
"mode": "exec",
"program": "${workspaceFolder}/build/bin/beacond",
"preLaunchTask": "build",
"args": [
"genesis",
"add-premined-deposit",
"32000000000",
"0x20f33ce90a13a4b5e7697e3544c3083b8f8a51d4",
"--home=${workspaceFolder}/.tmp/beacond",
],
"env": {
"CHAIN_SPEC": "devnet"
},
"internalConsoleOptions": "openOnSessionStart",
"presentation": {
"group": "initialize",
"order": 2
},
},
{
"name": "Collect premined deposit",
"type": "go",
"request": "launch",
"preLaunchTask": "build",
"mode": "exec",
"program": "${workspaceFolder}/build/bin/beacond",
"args": [
"genesis",
"collect-premined-deposits",
"--home=${workspaceFolder}/.tmp/beacond",
],
"env": {
"CHAIN_SPEC": "devnet"
},
"internalConsoleOptions": "openOnSessionStart",
"presentation": {
"group": "initialize",
"order": 3
},
},
{
"name": "Genesis execution payload",
"type": "go",
"request": "launch",
"preLaunchTask": "build",
"mode": "exec",
"program": "${workspaceFolder}/build/bin/beacond",
"args": [
"genesis",
"execution-payload",
"${workspaceFolder}/testing/files/eth-genesis.json",
"--home=${workspaceFolder}/.tmp/beacond",
],
"env": {
"CHAIN_SPEC": "devnet"
},
"internalConsoleOptions": "openOnSessionStart",
"presentation": {
"group": "initialize",
"order": 4
},
},
{
"name": "Start beacond",
"type": "go",
"request": "launch",
"preLaunchTask": "build",
"mode": "exec",
"program": "${workspaceFolder}/build/bin/beacond",
"args": [
"start",
"--pruning=nothing",
"--beacon-kit.logger.log-level=info",
"--home=${workspaceFolder}/.tmp/beacond",
"--beacon-kit.engine.jwt-secret-path=${workspaceFolder}/testing/files/jwt.hex",
"--beacon-kit.block-store-service.enabled",
"--beacon-kit.node-api.enabled",
"--beacon-kit.node-api.logging",
],
"internalConsoleOptions": "openOnSessionStart",
"env": {
"CHAIN_SPEC": "devnet"
},
"presentation": {
"group": "run",
"order": 1
},
"suppressMultipleSessionWarning": true,
}
]
}
13 changes: 13 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "make build COSMOS_BUILD_OPTIONS=nostrip",
"presentation": {
"close": true
}
}
]
}
2 changes: 1 addition & 1 deletion CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1 @@
* @itsdevbear @abi87
* @berachain/core-admin
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
### Stage 0 - Build Arguments ###
#######################################################

ARG GO_VERSION=1.23.0
ARG GO_VERSION=1.23.4
ARG RUNNER_IMAGE=alpine:3.20
ARG BUILD_TAGS="netgo,muslc,blst,bls12381,pebbledb"
ARG NAME=beacond
Expand Down Expand Up @@ -105,7 +105,7 @@ COPY --from=builder /workdir/build/bin/${APP_NAME} /usr/bin/${APP_NAME}
# TODO: We should un hood this part, its very specific
# to our kurtosis setup.
RUN mkdir -p /root/jwt /root/kzg && \
apk add --no-cache bash sed curl
apk add --no-cache bash sed curl jq

EXPOSE 26656
EXPOSE 26657
Expand Down
Loading
Loading