Skip to content

Releases: chainbound/bolt

v0.4.0-alpha

17 Jan 14:55
28d8b2e
Compare
Choose a tag to compare

Important

This release contains breaking changes and requires action. Please refer to the migration guide for any details!

New Features

Firewall delegation

Firewall delegation allows proposers to set an external third party as their network entrypoint or firewall. It gets rid of the
requirement to expose an HTTP RPC endpoint for accepting inclusion requests (inbound), and instead subscribes to the configured firewall over a
websocket connection (outbound). The firewall will then stream valid, filtered inclusion requests over the websocket connection.

Some of the other duties of the firewall include:

  • Spam and DoS prevention
  • Pricing inclusion requests correctly (see more below)
  • Communicating prices with consumers (wallets, users)

Currently, we operate a firewall RPC on Holesky at wss://rpc-holesky.bolt.chainbound.io/api/v1/firewall_stream.

Read more about firewall delegation here.

New pricing model

This new release also comes with an upgraded, dynamic pricing model that's based on joint research by Nethermind and Chainbound.
The model is described in this post. In short,
it provides an estimate for the floor price an inclusion preconfirmation MUST have so that the proposer has a very minimal chance of
losing revenue by committing to it.

Our model varies slightly from the original description due to implementation details, which we'll cover in another document. Additionally,
the bolt-sidecar allows proposers to configure a minimum profit parameter that is added to the floor price in order to arrive at a total
priority fee.

Check out all release notes here.

What's Changed

  • fix(sidecar): discard inclusion requests for past slots by @mempirate in #606
  • fix: build bolt-boost with ssz compat version updated by @merklefruit in #619
  • Faheelsattar/remove expiry flag by @faheelsattar in #620
  • feat(bolt-sidecar): add config for retry function by @estensen in #630
  • feat(builder-api): more descriptive logs by @mempirate in #631
  • docs(holesky): add bn configurations for local blocks by @mempirate in #643
  • feat(cli): add command to output a compressed pubkey hash by @merklefruit in #644
  • feat(bolt-sidecar): use pricing model to validate priority fee by @estensen in #599
  • feat(sidecar): firewall delegation by @thedevbirb in #552
  • chore(sidecar): update reth to v1.1.5 by @merklefruit in #650
  • feat(bolt-sidecar): add version to metadata endpoint by @estensen in #649
  • chore(sidecar): bump version to v0.4.0-alpha.rc1 by @thedevbirb in #652
  • chore(bolt-sidecar): remove BOLT_SIDECAR_MAX_COMMITMENTS_PER_SLOT by @estensen in #653
  • chore: bump rust version everywhere by @thedevbirb in #654
  • Feature flag to exclude high compute test_keystore_signer tests by @0ex-d in #655
  • Tests run on public testnet for quicker CI/CD by @0ex-d in #661
  • Chore: Bolt-CLI: Use library for confirmation logic by @0ex-d in #674
  • Chore: Bolt-CLI: exhaustive err match on inquire Error by @0ex-d in #675
  • fix(sidecar): JSON-RPC error codes by @thedevbirb in #658
  • chore(sidecar): add TLS provider by @thedevbirb in #678
  • chore(docker/holesky): cleanup docker compose files by @thedevbirb in #657
  • fix(testnets/holesky): pbs bn startup by @mempirate in #679
  • chore(bolt-sidecar): log unexpected websocket messages by @estensen in #680
  • chore(bolt-sidecar): add params in err message by @faheelsattar in #660
  • fix(sidecar): ping messages were not sent by @thedevbirb in #683
  • chore(sidecar, holesky): update example environment variables files by @thedevbirb in #685
  • feat(contracts): BoltManagerV3 by @merklefruit in #551
  • docs(holesky): add v0.4.0-alpha migration guide by @mempirate in #686
  • feat(cli): bump to v0.1.2 by @mempirate in #690
  • chore(bolt-boost): bump commit-boost-client to v0.5.0 by @estensen in #682
  • ci: docker build cmd wip by @mempirate in #694
  • ci: docker build cmd wip by @mempirate in #695
  • fix(holesky): cb config + bump images for release by @thedevbirb in #691
  • fix(sidecar): flaky head tracker test by @mempirate in #699
  • chore(deps): bump tracing from 0.1.40 to 0.1.41 in /bolt-boost by @dependabot in #609
  • chore(deps): bump serde_json from 1.0.133 to 1.0.134 in /bolt-boost by @dependabot in #611
  • chore(deps): bump serde_json from 1.0.133 to 1.0.134 in /bolt-sidecar by @dependabot in #615
  • chore(deps): bump tree_hash from 0.8.0 to 0.9.0 in /bolt-sidecar by @dependabot in #616
  • chore(deps): bump alloy from 0.8.0 to 0.8.3 in /bolt-boost by @dependabot in #607
  • chore(deps): bump alloy from 0.8.0 to 0.8.3 in /bolt-sidecar by @dependabot in #614
  • chore(repo): use custom taplo configs to format TOML by @merklefruit in #617
  • chore(deps): bump alloy from 0.7.3 to 0.8.3 in /bolt-cli by @dependabot in #612
  • chore(deps): bump types from v5.3.0 to v6.0.1 in /bolt-boost by @dependabot in #608
  • chore(deps): bump serde_json from 1.0.133 to 1.0.134 in /bolt-cli by @dependabot in #613
  • chore(deps): bump serde from 1.0.216 to 1.0.217 in /bolt-sidecar by @dependabot in #627
  • chore(deps): bump serde from 1.0.216 to 1.0.217 in /bolt-boost by @dependabot in #623
  • chore(deps): bump thiserror from 2.0.7 to 2.0.9 in /bolt-boost by @dependabot in #621
  • chore(deps): bump thiserror from 2.0.7 to 2.0.9 in /bolt-sidecar by @dependabot in #629
  • chore(deps): bump alloy-node-bindings from 0.8.0 to 0.8.3 in /bolt-sidecar by @dependabot in #628
  • chore(deps): bump tracing-subscriber from 0.3.18 to 0.3.19 in /bolt-boost by @dependabot in #622
  • chore(deps): bump thiserror from 2.0.7 to 2.0.9 in /bolt-cli by @dependabot in #626
  • chore(deps): bump serde from 1.0.216 to 1.0.217 in /bolt-cli by @dependabot in #624
  • fix: add symbiotic opt in scripts by @merklefruit in #558
  • chore(deps): bump alloy-node-bindings from 0.7.2 to 0.8.3 in /bolt-cli by @dependabot in #625
  • chore(deps): bump async-trait from 0.1.83 to 0.1.84 in /bolt-boost by @dependabot in #633
  • chore(deps): bump rustls from 0.23.19 to 0.23.20 in /bolt-cli by @dependabot in #637
  • chore(deps): bump async-trait from 0.1.83 to 0.1.84 in /bolt-sidecar by @dependabot in #639
  • chore(deps): bump prost from 0.13.3 to 0.13.4 in /bolt-cli by @dependabot in #636
  • chore(deps): bump axum-extra from 0.9.6 to 0.10.0 in /bolt-boost by @dependabot in #635
  • chore(deps): bump alloy from 0.8.3 to 0.9.2 in /bolt-cli by @dependabot in #638
  • chore(deps): bump alloy from 0.8.3 to 0.9.2 in /bolt-sidecar by @dependabot in #640
  • chore(deps): bump axum-extra from 0.9.6 to 0.10.0 in /bolt-sidecar by @dependabot in #641
  • chore(deps): bump tokio from 1.42.0 to 1.43.0 in /bolt-sidecar by @dependabot in #672
  • chore(deps): bump serde_json from 1.0.134 to 1.0.135 in /bolt-cli by @dependabot in #668
  • chore(deps): bump async-trait from 0.1.84 to 0.1.85 in /bolt-boost by @dependabot in #662
  • chore(deps): bump ethereum_ssz from 0.8.1 to 0.8.2 in /bolt-sidecar by @dependabot in #669
  • chore(deps): bump ethereum_ssz from 0.8.1 to 0.8.2 in /bolt-boost by @dependabot in #664
  • chore(deps): bump tokio from 1.42.0 to 1.43....
Read more

cli-v0.1.2

17 Jan 09:24
e4a0d1b
Compare
Choose a tag to compare

TLDR

This release is mandatory for those wishing to change their RPC for bolt v0.4.0-alpha.

🔧 Bug Fixes

  • Better error handling

✨ New Features

  • Now command to update your operator RPC: bolt operators <protocol> update-rpc
  • New command to output compressed pubkey hash (useful for debugging)
  • Better parsing of values, can now use 1ether or 2gwei

🛠️ Refactoring and Maintenance

  • New library for confirmation logic
  • Various dependency updates

What's Changed

  • chore: parse ether value with units by @merklefruit in #580
  • fix(cli): return non-ABI error responses by @merklefruit in #582
  • fix(cli): remove default --chain in bolt delegate command by @merklefruit in #589
  • feat(cli): add command to output a compressed pubkey hash by @merklefruit in #644
  • Chore: Bolt-CLI: Use library for confirmation logic by @0ex-d in #674
  • Chore: Bolt-CLI: exhaustive err match on inquire Error by @0ex-d in #675
  • feat(cli): add operators update-rpc command by @mempirate in #687
  • feat(cli): bump to v0.1.2 by @mempirate in #690
  • chore: bump rust version everywhere by @thedevbirb in #654
  • chore(deps): bump alloy from 0.7.3 to 0.8.3 in /bolt-cli by @dependabot in #612
  • chore(deps): bump serde_json from 1.0.133 to 1.0.134 in /bolt-cli by @dependabot in #613
  • chore(deps): bump thiserror from 2.0.7 to 2.0.9 in /bolt-cli by @dependabot in #626
  • chore(deps): bump serde from 1.0.216 to 1.0.217 in /bolt-cli by @dependabot in #624
  • chore(deps): bump alloy-node-bindings from 0.7.2 to 0.8.3 in /bolt-cli by @dependabot in #625
  • chore(deps): bump rustls from 0.23.19 to 0.23.20 in /bolt-cli by @dependabot in #637
  • chore(deps): bump prost from 0.13.3 to 0.13.4 in /bolt-cli by @dependabot in #636
  • chore(deps): bump alloy from 0.8.3 to 0.9.2 in /bolt-cli by @dependabot in #638
  • chore(deps): bump serde_json from 1.0.134 to 1.0.135 in /bolt-cli by @dependabot in #668
  • chore(deps): bump tokio from 1.42.0 to 1.43.0 in /bolt-cli by @dependabot in #667

New Contributors

Full Changelog: cli-v0.1.1...cli-v0.1.2

v0.3.1-alpha

20 Dec 14:48
Compare
Choose a tag to compare

What's Changed

Read more

cli-v0.1.1

16 Dec 13:31
ca7c8e9
Compare
Choose a tag to compare

This release brings small quality of life improvements for users of the bolt CLI.

🔧 Bug Fixes
• Don't require secrets for bolt pubkeys local-keystore command flags.
• Operator status returning incorrect stake results.
• Remove redundant command bolt pubkeys public-keys --public-keys.

📚 Documentation Improvements
• The documentation now recommends using the bolt generate bls command directly, removing the need to visit external websites for key generation.
• Highlight that the default RPC used for send commands is the bolt RPC that automatically handles nonces over preconfirmed state.

✨ New Features
• The CLI now logs whether operators have the required collateral and are active, giving users greater visibility when managing operations.

🛠️ Refactoring and Maintenance
• The operators command has been refactored into separate files for cleaner, more maintainable code.
• Unification of KeysSource and SecretsSource brings consistency across the CLI

Full change-log

cli-v0.1.0

06 Dec 09:52
8d2a5f1
Compare
Choose a tag to compare

What's changed

  • CLI command for generating BLS keypair in #517
  • Better contract error handling in #520
  • Validator status command in #508

v0.3.0-alpha

21 Nov 19:17
89253d9
Compare
Choose a tag to compare

This release marks the deployments of bolt on the Holesky testnet.

TLDR

What's Changed

Read more

v0.2.1-alpha

09 Aug 08:33
8a7041c
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.2.0-alpha...v0.2.1-alpha

v0.2.0-alpha

08 Aug 10:40
9b43af0
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.1.3-alpha...v0.2.0-alpha

v0.1.3-alpha

29 Jul 12:46
792b00e
Compare
Choose a tag to compare

Highlights

This alpha release contains breaking changes to the Commitments API that allow for bundles of transactions in a single request.
Furthermore, Merkle multiproofs have been fixed on mev-boost and mev-boost-relay.

What's Changed

Full Changelog: v0.1.2-alpha...v0.1.3-alpha

v0.1.2-alpha

22 Jul 12:25
Compare
Choose a tag to compare

This alpha release contains a multitude of bugfixes and introduces the support for blob inclusion preconfirmations.

What's Changed

New Contributors

  • @mksh made their first contribution in #115

Full Changelog: v0.1.1-alpha...v0.1.2-alpha