From 530e45901fd86854049d780439ca3302050fde1d Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 11:58:56 +0100 Subject: [PATCH 01/10] feat(ci): add linkspector --- .github/workflows/linkspector.yml | 14 ++++++++++++++ .linkspector.yml | 7 +++++++ 2 files changed, 21 insertions(+) create mode 100644 .github/workflows/linkspector.yml create mode 100644 .linkspector.yml diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml new file mode 100644 index 000000000..4ff35e8e3 --- /dev/null +++ b/.github/workflows/linkspector.yml @@ -0,0 +1,14 @@ +name: Linkspector +on: [pull_request] +jobs: + check-links: + name: runner / linkspector + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Run linkspector + uses: umbrelladocs/action-linkspector@v1 + with: + github_token: ${{ secrets.github_token }} + reporter: github-pr-review + fail_on_error: true \ No newline at end of file diff --git a/.linkspector.yml b/.linkspector.yml new file mode 100644 index 000000000..511f8020a --- /dev/null +++ b/.linkspector.yml @@ -0,0 +1,7 @@ +dirs: + - . + +excludedDirs: + - bolt-contracts/lib + +useGitIgnore: true \ No newline at end of file From 424ceddf58044c3374369badaaf246482b5961df Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:08:53 +0100 Subject: [PATCH 02/10] feat(ci): move linkspector config, try fix issue --- .linkspector.yml => .github/.linkspector.yml | 0 .github/workflows/linkspector.yml | 11 +++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) rename .linkspector.yml => .github/.linkspector.yml (100%) diff --git a/.linkspector.yml b/.github/.linkspector.yml similarity index 100% rename from .linkspector.yml rename to .github/.linkspector.yml diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml index 4ff35e8e3..4bdb5d252 100644 --- a/.github/workflows/linkspector.yml +++ b/.github/workflows/linkspector.yml @@ -1,5 +1,11 @@ name: Linkspector -on: [pull_request] + +on: [push, pull_request] + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: check-links: name: runner / linkspector @@ -11,4 +17,5 @@ jobs: with: github_token: ${{ secrets.github_token }} reporter: github-pr-review - fail_on_error: true \ No newline at end of file + config_file: .github/.linkspector.yml + # fail_level: error \ No newline at end of file From 9ce4202b00d37b47822d220804eaa2ad2aeea057 Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:13:17 +0100 Subject: [PATCH 03/10] feat(ci): try fix --- .github/workflows/contracts_ci.yml | 10 +++++++++- .github/workflows/linkspector.yml | 6 +++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/.github/workflows/contracts_ci.yml b/.github/workflows/contracts_ci.yml index c09da57e7..58e55948b 100644 --- a/.github/workflows/contracts_ci.yml +++ b/.github/workflows/contracts_ci.yml @@ -1,6 +1,14 @@ name: Bolt-contracts CI -on: [push, pull_request] +on: + push: + paths: + - "bolt-contracts/**" + branches: + - unstable + pull_request: + paths: + - "bolt-contracts/**" jobs: check: diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml index 4bdb5d252..5aa6404d9 100644 --- a/.github/workflows/linkspector.yml +++ b/.github/workflows/linkspector.yml @@ -1,6 +1,10 @@ name: Linkspector -on: [push, pull_request] +on: + pull_request: + push: + branches: + - unstable concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} From e87684e5c1f1e779c1a173c32383e6ef9e46e739 Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:15:08 +0100 Subject: [PATCH 04/10] feat(ci): try fix --- .github/workflows/linkspector.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml index 5aa6404d9..87112fc13 100644 --- a/.github/workflows/linkspector.yml +++ b/.github/workflows/linkspector.yml @@ -17,7 +17,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Run linkspector - uses: umbrelladocs/action-linkspector@v1 + uses: umbrelladocs/action-linkspector@v1.1.3 with: github_token: ${{ secrets.github_token }} reporter: github-pr-review From b2bdf0f3949699e219506ca66110983086737098 Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:15:19 +0100 Subject: [PATCH 05/10] feat(ci): try fix --- .github/workflows/linkspector.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml index 87112fc13..485b88d26 100644 --- a/.github/workflows/linkspector.yml +++ b/.github/workflows/linkspector.yml @@ -22,4 +22,4 @@ jobs: github_token: ${{ secrets.github_token }} reporter: github-pr-review config_file: .github/.linkspector.yml - # fail_level: error \ No newline at end of file + fail_level: error \ No newline at end of file From 6c595f92a274a2992e39be6f2e63eb813d3ec2c5 Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:17:18 +0100 Subject: [PATCH 06/10] feat(ci): try fix --- .github/workflows/linkspector.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml index 485b88d26..61369fdac 100644 --- a/.github/workflows/linkspector.yml +++ b/.github/workflows/linkspector.yml @@ -22,4 +22,4 @@ jobs: github_token: ${{ secrets.github_token }} reporter: github-pr-review config_file: .github/.linkspector.yml - fail_level: error \ No newline at end of file + fail_on_error: true \ No newline at end of file From 7cbebe59aafdb9ef7f87076ab8ba01013d9c2221 Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:20:24 +0100 Subject: [PATCH 07/10] feat(ci): try fix --- .github/.linkspector.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/.linkspector.yml b/.github/.linkspector.yml index 511f8020a..d3623840f 100644 --- a/.github/.linkspector.yml +++ b/.github/.linkspector.yml @@ -1,7 +1,7 @@ dirs: - - . + - ../ excludedDirs: - - bolt-contracts/lib + - ../bolt-contracts/lib useGitIgnore: true \ No newline at end of file From 94ea176b6c510e04653e8b231672258fff1f73ec Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:22:29 +0100 Subject: [PATCH 08/10] feat(ci): try fix --- .github/.linkspector.yml | 4 ++-- .github/workflows/linkspector.yml | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/.linkspector.yml b/.github/.linkspector.yml index d3623840f..511f8020a 100644 --- a/.github/.linkspector.yml +++ b/.github/.linkspector.yml @@ -1,7 +1,7 @@ dirs: - - ../ + - . excludedDirs: - - ../bolt-contracts/lib + - bolt-contracts/lib useGitIgnore: true \ No newline at end of file diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml index 61369fdac..92526550a 100644 --- a/.github/workflows/linkspector.yml +++ b/.github/workflows/linkspector.yml @@ -22,4 +22,5 @@ jobs: github_token: ${{ secrets.github_token }} reporter: github-pr-review config_file: .github/.linkspector.yml - fail_on_error: true \ No newline at end of file + fail_on_error: true + filter_mode: nofilter \ No newline at end of file From e9fc4386f36880c1627b89e32f560a1d589286d3 Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:27:44 +0100 Subject: [PATCH 09/10] feat(ci): try fix --- .github/workflows/linkspector.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml index 92526550a..9cf35a3fa 100644 --- a/.github/workflows/linkspector.yml +++ b/.github/workflows/linkspector.yml @@ -20,7 +20,7 @@ jobs: uses: umbrelladocs/action-linkspector@v1.1.3 with: github_token: ${{ secrets.github_token }} - reporter: github-pr-review + reporter: github-pr-check config_file: .github/.linkspector.yml fail_on_error: true filter_mode: nofilter \ No newline at end of file From ca2da9be745109033a962b3df392874dd2c6ad4d Mon Sep 17 00:00:00 2001 From: Jonas Bostoen Date: Mon, 28 Oct 2024 12:36:53 +0100 Subject: [PATCH 10/10] feat(ci): try fix --- .github/.linkspector.yml | 1 + .github/workflows/linkspector.yml | 2 +- README.md | 7 +++---- bolt-boost/README.md | 2 +- bolt-contracts/README.md | 11 +++++------ bolt-contracts/docs/admin/upgrading.md | 2 +- 6 files changed, 12 insertions(+), 13 deletions(-) diff --git a/.github/.linkspector.yml b/.github/.linkspector.yml index 511f8020a..f914de298 100644 --- a/.github/.linkspector.yml +++ b/.github/.linkspector.yml @@ -3,5 +3,6 @@ dirs: excludedDirs: - bolt-contracts/lib + - testnets/helder useGitIgnore: true \ No newline at end of file diff --git a/.github/workflows/linkspector.yml b/.github/workflows/linkspector.yml index 9cf35a3fa..92526550a 100644 --- a/.github/workflows/linkspector.yml +++ b/.github/workflows/linkspector.yml @@ -20,7 +20,7 @@ jobs: uses: umbrelladocs/action-linkspector@v1.1.3 with: github_token: ${{ secrets.github_token }} - reporter: github-pr-check + reporter: github-pr-review config_file: .github/.linkspector.yml fail_on_error: true filter_mode: nofilter \ No newline at end of file diff --git a/README.md b/README.md index 76acc921c..cd677471c 100644 --- a/README.md +++ b/README.md @@ -27,9 +27,8 @@ - [Additional components](#additional-components) - [Kurtosis Devnet](#kurtosis-devnet) - [Requirements and setup](#requirements-and-setup) - - [Running the devnet](#running-the-devnet-and-demo) - - [Stopping the devnet](#stopping-the-devnet-and-demo) -- [Telemetry & Metrics](#telemetry-&-metrics) + - [Running the devnet](#running-the-devnet) + - [Stopping the devnet](#stopping-the-devnet) - [License](#license) @@ -178,7 +177,7 @@ just up **Commit-Boost support** The devnet by default will run using a fork of MEV-Boost which supports -the [Constraints-API](https://docs.boltprotocol.xyz/api/builder). Bolt also +the [Constraints-API](https://docs.boltprotocol.xyz/technical-docs/api/builder). Bolt also supports [Commit-Boost][commit-boost] by providing a compatible MEV-Boost module called _Bolt-Boost_ that implements the Constraints-API. To use it in the devnet add the appropriate `bolt_boost_image` in the `kurtosis_config.yaml` file: diff --git a/bolt-boost/README.md b/bolt-boost/README.md index 13f1da4f5..5ed7fe736 100644 --- a/bolt-boost/README.md +++ b/bolt-boost/README.md @@ -5,6 +5,6 @@ with the [constraints-API][constraints-api]. It inherits the PBS module configur for the modified `get_header` call. [commit-boost]: https://commit-boost.github.io/commit-boost-client -[constraints-api]: https://docs.boltprotocol.xyz/api/builder +[constraints-api]: https://docs.boltprotocol.xyz/technical-docs/api/builder diff --git a/bolt-contracts/README.md b/bolt-contracts/README.md index 30bf9c069..f335c8f52 100644 --- a/bolt-contracts/README.md +++ b/bolt-contracts/README.md @@ -7,11 +7,10 @@ - [Admin Privileges](#admin-privileges) - [Validator Registration: `BoltValidators`](#validator-registration-boltvalidators) - [Bolt Network Entrypoint: `BoltManager`](#bolt-network-entrypoint-boltmanager) -- [Fault Proof Challenge and Slashing: `BoltChallenger`](#fault-proof-challenge-and-slashing-boltchallenger) +- [Fault Proof Challenge: `BoltChallenger`](#fault-proof-challenge-boltchallenger) - [Holesky Deployments](#holesky-deployments) - [Testing](#testing) - [Security Considerations](#security-considerations) -- [Conclusion](#conclusion) ## Overview @@ -38,7 +37,7 @@ and multiple system-wide parameters can be changed by this administrator in the ## System-wide Parameters: `BoltParameters` -[`BoltParameters`](./src/contracts/BoltParameters.sol) is an upgradeable storage contract that stores system-wide parameters that the other +[`BoltParameters`](./src/contracts/BoltParametersV1.sol) is an upgradeable storage contract that stores system-wide parameters that the other contracts can read from. An overview is given in the table below: | Parameter | Initial Value | Mutable after deployment | @@ -58,7 +57,7 @@ The values of these parameters can also be found in [`parameters.json`](./config ## Validator Registration: `BoltValidators` -The [`BoltValidators`](./src/contracts/BoltValidators.sol) contract is the only point of entry for +The [`BoltValidators`](./src/contracts/BoltValidatorsV1.sol) contract is the only point of entry for validators to signal their intent to participate in Bolt Protocol and authenticate with their BLS private key. The registration process includes the following steps: @@ -77,7 +76,7 @@ will allow us to test the registration flow in a controlled environment. ## Bolt Network Entrypoint: `BoltManager` -The [`BoltManager`](./src/contracts/BoltManager.sol) contract is a crucial component of Bolt that +The [`BoltManager`](./src/contracts/BoltManagerV1.sol) contract is a crucial component of Bolt that integrates with restaking ecosystems Symbiotic and Eigenlayer. It manages the registration and coordination of validators, operators, and vaults within the Bolt network. @@ -92,7 +91,7 @@ the `IBoltMiddleware` contracts, such as `BoltSymbioticMiddleware` and `BoltEige ## Fault Proof Challenge: `BoltChallenger` -The [`BoltChallenger`](./src/contracts/BoltChallenger.sol) contract is the component responsible +The [`BoltChallenger`](./src/contracts/BoltChallengerV1.sol) contract is the component responsible for handling fault attribution in the case of a validator failing to meet their commitments. In short, the challenger contract allows any user to challenge a validator's commitment by opening diff --git a/bolt-contracts/docs/admin/upgrading.md b/bolt-contracts/docs/admin/upgrading.md index 28de9192f..a0c5abf7a 100644 --- a/bolt-contracts/docs/admin/upgrading.md +++ b/bolt-contracts/docs/admin/upgrading.md @@ -13,7 +13,7 @@ bytes memory initManager = abi.encodeCall(BoltManagerV2.initialize, (params)); Upgrades.upgradeProxy(proxy, "BoltManagerV2.sol", initManager, opts); ``` -Before an upgrade, update the [`Upgrade.s.sol`](../script/holesky/Upgrade.s.sol) script to include the correct contracts, references and configurations. +Before an upgrade, update the [`Upgrade.s.sol](../../script/holesky/admin/Upgrade.s.sol) script to include the correct contracts, references and configurations. ## Unsafe In order to run an unsafe upgrade, set `Options.unsafeSkipAllChecks` to `true`: