This release marks the deployments of bolt on the Holesky testnet.
TLDR
- Holesky readyness
- Validator onboarding guide: https://github.com/chainbound/bolt/blob/holesky/testnets/holesky/README.md
- Relay & builder support (Aestus, Titan, Bloxroute)
- Deployed Bolt RPC: https://rpc-holesky.bolt.chainbound.io
- Fully deployed Bolt registry (no slashing)
- Validator batch registration
- EigenLayer & Symbiotic support for collateral
- Updated constraints-API and PBS pipeline
- Helix reference implementation: gattaca-com/helix#49
- Flashbots builder reference implementation: https://github.com/chainbound/bolt-builder
- Mev-boost reference implementation: https://github.com/chainbound/bolt-mev-boost
- Forkdiffs: https://chainbound.github.io/bolt-forkdiffs
- Support for constraints delegation
- Support for ERC-2335 keystores signers
bolt
CLI to interact with the protocol- generate delegation messages
- register and update validators
- register operators and check their status
- More robust and observable sidecar
- Prometheus metrics + Grafana dashboard
- Reorg handling
- Minimum fee
What's Changed
- fix: build local payload with timestamp from beacon clock by @merklefruit in #194
- Telemetry & Metrics by @thedevbirb in #204
- feat(sidecar): commit-boost integration by @namn-grg in #203
- Bolt-boost module by @mempirate in #207
- fix(devnet): avoid deploying deprecated contracts by @merklefruit in #220
- feat(sidecar): constraints client by @namn-grg in #212
- New constraints-API by @mempirate in #221
- chore(sidecar): use validator pubkey instead of index by @namn-grg in #234
- docs(contracts): added EigenLayer integration in README by @thedevbirb in #232
- chore(sidecar): update constraint api by @namn-grg in #240
- feat: contracts middleware interface by @thedevbirb in #235
- chore(ci): bump actions to remove warnings by @estensen in #249
- feat(sidecar): min priority fee by @namn-grg in #246
- feat(registry): added max committed gas limit per validator by @merklefruit in #251
- chore: Bolt-Boost and Helix images for devnet by @thedevbirb in #258
- Builder: update to new Constraints API by @thedevbirb in #241
- fix: update types & drop bundle support by @mempirate in #256
- fix: constraints message fixes by @mempirate in #262
- docs(devnet): add link to install historical version of kurtosis CLI by @thedevbirb in #260
- fix: remove metrics clash with cb client by @merklefruit in #265
- fix(devnet): raise gas price to match new min priority fee of 1 gwei by @thedevbirb in #264
- fix: insert into constraints cache by @merklefruit in #266
- chore(ci): add bolt_boost ci + run only if there are diffs on its path by @merklefruit in #267
- feat: updgrade commit-boost to v0.3.0 by @mempirate in #268
- chore: pin rust toolchain everywhere,
just fmt
with nightly formatter pinned by @thedevbirb in #269 - fix(bolt-boost): re-enable logging to stdout by @merklefruit in #270
- fix: bolt-boost build by @merklefruit in #274
- fix: justfile after ethereum package upgrade + renaming by @thedevbirb in #261
- fix(bolt-boost): current slot logic by @thedevbirb in #280
- docs(devnet): specify how to run bolt-boost by @thedevbirb in #277
- fix(sidecar): commit boost flag rename by @thedevbirb in #275
- chore(builder): disable authorized pubkeys checks for testing on the devnet by @thedevbirb in #282
- feat(sidecar): sign messages using the correct signing domain by @merklefruit in #281
- chore(restore): stacked challenges PR by @merklefruit in #289
- feat(sidecar): ERC-2335 Keystore signer by @thedevbirb in #287
- fix: updated devnet by @merklefruit in #285
- feat(contracts): new challenger by @merklefruit in #223
- feat(sidecar): load delegations on startup and send them upon registration by @merklefruit in #292
- feat: repo README updates by @merklefruit in #294
- feat(contracts): registry updates by @mempirate in #278
- feat: add delegations cli by @namn-grg in #293
- feat(bolt-boost): delegations/revocations update by @merklefruit in #297
- feat(mev-boost): delegations/revocations update by @merklefruit in #298
- feat(sidecar): add commitment signing key + holesky deployment scripts by @merklefruit in #301
- feat(sidecar): keystore secrets path in config by @thedevbirb in #299
- fix: symbiotic network opt-in by @merklefruit in #304
- feat(contracts): new registry (V1) by @merklefruit in #202
- chore(sidecar): add most important feature -- ascii art on startup by @thedevbirb in #312
- chore: deploy EL middleware upgrade script by @merklefruit in #314
- feat: periphery deployments by @mempirate in #311
- feat:
bolt-cli
revamp: add Dirk support by @merklefruit in #309 - cleanup: remove
bolt-web-demo
folder by @thedevbirb in #319 - cleanup: remove
mev-boost-relay
by @thedevbirb in #320 - fix(devnet): use pre-built helix image by @merklefruit in #303
- chore: remove
builder
andmev-boost
by @mempirate in #323 - chore: rm bolt-client binary 🧹 by @merklefruit in #326
- chore: rm bolt-kurtosis-client binary by @merklefruit in #327
- feat(cli):
bolt send
command by @merklefruit in #321 - feat(ci): add linkspector by @mempirate in #329
enable-unsafe-lookahead
flag by @thedevbirb in #330- chore!(sidecar): drop TOML support by @thedevbirb in #333
- docs(holesky): clarify order of operations by @mempirate in #335
- feat(sidecar): gross tip revenue metric by @mempirate in #339
- feat(registry): cheaper on-chain batch opt-in (48k gas) by @merklefruit in #336
- Integrate with the Bolt registry to check if pubkeys are registered by @thedevbirb in #340
- fix(sidecar): error message for manager call by @thedevbirb in #346
- fix(sidecar): use validator keys and not delegated ones for pub key check by @thedevbirb in #347
- fix(sidecar): split public key hashes into chunks to avoid EL limits by @thedevbirb in #349
- fix(sidecar): find delegatees logic by @thedevbirb in #350
- fix(sidecar): builder proxy not spinning up with delegations by @thedevbirb in #352
- chore(sidecar): warn in case of inconsistent gross revenue calculations by @thedevbirb in #353
- fix(sidecar): Debug for blob transactions so it's not noisy by @thedevbirb in #356
- feat(cli): dirk delegations integration test by @merklefruit in #358
- chore(sidecar): minimal module refactor + add missing docs by @merklefruit in #362
- chore(holesky/docker): mount volumes on predefined paths by @thedevbirb in #357
- chore(holesky/pbs): update helix config by @thedevbirb in #364
- feat: solve outstanding TODOs by @merklefruit in #361
- chore: cleanup libraries, rm unused code by @merklefruit in #355
- fix!(config): remove empty environment variables set like 'VAR=' when parsing options by @thedevbirb in #367
- Add Dockerfile to
bolt
CLI by @thedevbirb in #363 - fix(holesky/docker): add environment variable replacement in entrypoint by @thedevbirb in #371
- chore(sidecar): cleanup + remove TODOs (continue) by @merklefruit in #370
- small fixes by @merklefruit in #374
- Remove stale templates in case of missed slots by @thedevbirb in #375
- Holesky Launch by @thedevbirb in #296
- Review logs on commitment deadline by @thedevbirb in #377
- chore(sidecar): bump alloy version to 0.6.3 by @merklefruit in #378
- fix(bolt-boost):
generalized_indeces
->generalized_indexes
by @thedevbirb in #380 - feat(sidecar): add flag to disable consensus checks for testing purposes by @thedevbirb in #381
- feat(sidecar): --unsafe-disable-onchain-checks flag by @thedevbirb in #382
- fix(sidecar): avoid panicking if base fee can't be fetched by @merklefruit in #383
- chore: cleanup monorepo outdated scripts by @merklefruit in #384
- feat: add Devcon validators guide by @merklefruit in #376
- chore: version bump:
0.3.0-alpha
by @merklefruit in #386 - feat(sidecar): metadata endpoint by @thedevbirb in #387
- chore: update bolt rpc api endpoint according to versioned spec by @merklefruit in #388
- feat: add fast multi-platform build by @merklefruit in #389
- chore(testnets): remove devcon commit-boost setup by @merklefruit in #394
- fix: handle unexepcted pubkey hash returned from boltmanager by @merklefruit in #396
- chore: add supported holesky relay list by @merklefruit in #398
- feat: new commit-boost setup guide by @merklefruit in #395
- chore(docs): add firewall explanation by @merklefruit in #403
- meta: add issue templates by @mempirate in #407
- chore(sidecar): mog unused dependencies with cargo-machete by @merklefruit in #402
- fix(cli): update
send
command to new bolt-rpc specs by @merklefruit in #405 - feat(bolt-cli):
validators
andoperators
commands by @thedevbirb in #400
New Contributors
Full Changelog: v0.2.1-alpha...v0.3.0-alpha