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

feat(ci): add linkspector #329

Merged
merged 10 commits into from
Oct 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .github/.linkspector.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
dirs:
- .

excludedDirs:
- bolt-contracts/lib
- testnets/helder

useGitIgnore: true
10 changes: 9 additions & 1 deletion .github/workflows/contracts_ci.yml
Original file line number Diff line number Diff line change
@@ -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:
Expand Down
26 changes: 26 additions & 0 deletions .github/workflows/linkspector.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Linkspector

on:
pull_request:
push:
branches:
- unstable

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
check-links:
name: runner / linkspector
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run linkspector
uses: umbrelladocs/[email protected]
with:
github_token: ${{ secrets.github_token }}
reporter: github-pr-review
config_file: .github/.linkspector.yml
fail_on_error: true
filter_mode: nofilter
7 changes: 3 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)

<!-- vim-markdown-toc -->
Expand Down Expand Up @@ -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:
Expand Down
2 changes: 1 addition & 1 deletion bolt-boost/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

<!-- TODO: Add usage docs -->
11 changes: 5 additions & 6 deletions bolt-contracts/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand All @@ -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 |
Expand All @@ -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:
Expand All @@ -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.

Expand All @@ -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
Expand Down
2 changes: 1 addition & 1 deletion bolt-contracts/docs/admin/upgrading.md
Original file line number Diff line number Diff line change
Expand Up @@ -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`:
Expand Down
Loading