Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
19bd39c
Upgrade to reth 1.4.7 and main rollup-boost branch (#112)
avalonche Jun 4, 2025
d325dbd
Add block number and DA used to logging (#107)
cody-wang-cb Jun 4, 2025
81cae28
Add gas limit and DA transaction results for tracing (#110)
avalonche Jun 4, 2025
6f2f7fb
Use block number as hex (#116)
ferranbt Jun 4, 2025
2397b4f
feat: add a justfile to run tests (#106)
therustmonk Jun 4, 2025
3e9ffeb
Add another builder tx after the first flashblock (#121)
Jun 4, 2025
7e24aba
Add reverting hashes + min block number to Bundle (#115)
ferranbt Jun 5, 2025
cd9684c
feat: add a feature to activate otlp telemetry (#31)
therustmonk Jun 5, 2025
1dcac5f
Bundles: Ensure that the min block number is inside the MAX_BLOCK_RAN…
trianglesphere Jun 6, 2025
0c59cb7
Fix bundle type reverting hashes optional param (#126)
ferranbt Jun 6, 2025
726089a
Remove toml and add feature gate (#117)
Jun 6, 2025
0320e89
Move bundle validation to primitives folder (#129)
ferranbt Jun 7, 2025
8c5737a
Split op-rbuilder in lib and main (#138)
ferranbt Jun 9, 2025
046a730
In-process tests, optional dockerized validation node (#132)
karim-agha Jun 11, 2025
68ded82
fmt (#142)
Jun 11, 2025
75db54f
Add minTimestamp and maxTimestamp as optional fields to bundle (#141)
akundaz Jun 11, 2025
c527f74
Add metric for bundles received (#149)
akundaz Jun 12, 2025
a1b9bb8
Add metric to count reverted bundles (#151)
akundaz Jun 16, 2025
b248d3b
Remove extra generic param (#152)
Jun 16, 2025
05b3171
Add pingpong and closing frame handle (#154)
Jun 16, 2025
98d3374
Supress infallible clippy error (#155)
Jun 16, 2025
5b34904
Use tungstenite provided ping handling (#156)
Jun 16, 2025
30bf302
Avoid boxing for the txlogging task (#153)
therustmonk Jun 16, 2025
12078ff
Fix regression tester command (#160)
ferranbt Jun 17, 2025
a87b1ba
Genesis command outputs genesis file (#159)
ferranbt Jun 17, 2025
1afc698
Update docs (#161)
ferranbt Jun 17, 2025
19b271d
Account for flashblocks time drift (#123)
Jun 17, 2025
90123e5
Run the vanilla tests using both the flashblocks builder and the vani…
karim-agha Jun 17, 2025
102a5fb
fix: add default-run to the op-rbuilder's manifest (#162)
therustmonk Jun 17, 2025
9ceeb68
Add ci workflow to build independent docker images + nightly (#163)
ferranbt Jun 17, 2025
0670aa3
Flashtestions (#137)
avalonche Jun 17, 2025
4f1931b
Flashtestations flag (#165)
avalonche Jun 17, 2025
408840b
Add some telemetry for `eth_sendBundle` (#176)
akundaz Jun 23, 2025
a62d35e
Review (#170)
SozinM Jun 25, 2025
255d50b
Add cli flag for funding key (#168)
avalonche Jun 25, 2025
e1a445f
Move builder tx right after deposits and put it into base flashblock …
SozinM Jun 26, 2025
2ecd976
Implement correct flashblocks time cutoff (#172)
SozinM Jun 27, 2025
13802c3
Change default leeway-time + add handing for block cancellation (#185)
SozinM Jul 1, 2025
8459271
Bump reth 1.5.0 (#186)
krl Jul 3, 2025
69a58d8
Add simple logging to timer task (#191)
SozinM Jul 7, 2025
dc1b00c
Improve metrics so we could better plot them (#193)
SozinM Jul 9, 2025
4664acb
Bump reth to 1.5.1 (#192)
SozinM Jul 9, 2025
6888235
Fix ordering issue by not including arriving txs into the best transa…
SozinM Jul 9, 2025
eba783d
Remove without_updates for flashblocks (#198)
SozinM Jul 11, 2025
990ba53
Add a test to validate that no-tx-pool works (#199)
ferranbt Jul 15, 2025
f0636ba
Add TDX quote provider service (#200)
avalonche Jul 16, 2025
d987794
Add gauge metrics for block building steps (#205)
akundaz Jul 17, 2025
183311e
Remove redundant account initialization (#208)
krl Jul 17, 2025
6b0f5aa
Add flashblocks index to payload building context (#210)
avalonche Jul 22, 2025
591b08a
add tdx-quote-provider to release workflow (#204)
ilyaluk Jul 22, 2025
65938aa
gauge metrics to inspect flag settings (#207)
akundaz Jul 22, 2025
9b62aab
Fix tdx-quote-provider release workflow (#211)
ilyaluk Jul 22, 2025
c08025b
Bump reth to 1.6 (#215)
krl Jul 24, 2025
8909ca1
fix op-rbuilder release workflow (#216)
ilyaluk Jul 25, 2025
ef159dd
Less confusing naming, state is called db and db is called state (#219)
krl Jul 31, 2025
c5c46f3
Add flashblock number filters to eth_sendBundle (#213)
akundaz Jul 31, 2025
daab741
Add reproducibility flags (#218)
alexhulbert Jul 31, 2025
3e3ead7
Fix bundle state and produce executed block (#223)
SozinM Aug 4, 2025
0ec0644
Add caching to generator (#221)
avalonche Aug 4, 2025
bb31c69
fix: record missing flashblocks (#225)
akundaz Aug 7, 2025
784ad05
fix: record num txs built with flashblocks enabled (#227)
akundaz Aug 7, 2025
d9d33d2
combine eth api modifications (#231)
akundaz Aug 12, 2025
9d4ce99
Add correct metric value (#234)
SozinM Aug 13, 2025
0524dac
feat: add transaction gas limit (#214)
varun-doshi Aug 13, 2025
13a16d5
Update README.md (#201)
operagxoksana Aug 14, 2025
574e296
merge from upstream main
cody-wang-cb Aug 14, 2025
f6681a5
fix builder
cody-wang-cb Aug 14, 2025
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
10 changes: 4 additions & 6 deletions .github/workflows/checks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ jobs:
- nightly
features:
- ""

steps:
- name: Checkout sources
uses: actions/checkout@v4
Expand Down Expand Up @@ -58,21 +59,18 @@ jobs:
version: nightly

- name: Install native dependencies
run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev clang libclang-dev llvm build-essential pkg-config
run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev clang libclang-dev llvm build-essential pkg-config libtss2-dev

- name: Compile tester
run: make tester

- name: Compile op-rbuilder
run: cargo build -p op-rbuilder --bin op-rbuilder

- name: Download op-reth
run: |
./scripts/ci/download-op-reth.sh
echo "$(pwd)" >> $GITHUB_PATH

- name: Lint
run: make lint

- name: Test
run: make test
env:
TESTS_TEMP_DIR: ${{ github.workspace }}
2 changes: 1 addition & 1 deletion .github/workflows/checks_docker.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Docker Build
name: Docker Build Check

on:
workflow_dispatch:
Expand Down
88 changes: 88 additions & 0 deletions .github/workflows/docker_build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
name: Docker Build Release

on:
workflow_dispatch:
schedule:
- cron: "0 1 * * *"

jobs:
extract-version:
name: Extract version
runs-on: warp-ubuntu-latest-x64-16x
outputs:
VERSION: ${{ steps.extract_version.outputs.VERSION }}
steps:
- name: Extract version
id: extract_version
run: |
if [[ "${GITHUB_REF_TYPE}" == "tag" ]]; then
VERSION="${GITHUB_REF#refs/tags/}"
else
VERSION="$(echo ${GITHUB_SHA} | cut -c1-7)"
fi
echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT

echo "| | |" >> $GITHUB_STEP_SUMMARY
echo "| ------------------- | ---------------------- |" >> $GITHUB_STEP_SUMMARY
echo "| \`GITHUB_REF_TYPE\` | \`${GITHUB_REF_TYPE}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`GITHUB_REF_NAME\` | \`${GITHUB_REF_NAME}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`GITHUB_REF\` | \`${GITHUB_REF}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`GITHUB_SHA\` | \`${GITHUB_SHA}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`VERSION\` | \`${VERSION}\` |" >> $GITHUB_STEP_SUMMARY

build-docker:
name: Build and publish Docker image
needs: extract-version
runs-on: ${{ matrix.configs.runner }}
env:
VERSION: ${{ needs.extract-version.outputs.VERSION }}
permissions:
contents: read
packages: write
strategy:
matrix:
configs:
- target: linux/amd64
runner: warp-ubuntu-latest-x64-16x
- target: linux/arm64
runner: warp-ubuntu-latest-arm64-16x
steps:
- name: checkout sources
uses: actions/checkout@v4

- name: docker qemu
uses: docker/setup-qemu-action@v3

- name: docker buildx
uses: docker/setup-buildx-action@v3

- name: docker metadata
uses: docker/metadata-action@v5
id: meta
with:
images: ghcr.io/${{ github.repository }}
labels: org.opencontainers.image.source=${{ github.repositoryUrl }}
tags: |
type=sha
type=schedule,pattern=nightly

- name: docker login
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: docker build and push op-rbuilder
uses: docker/build-push-action@v5
with:
cache-from: type=gha
cache-to: type=gha,mode=max
file: Dockerfile
context: .
labels: ${{ steps.meta.outputs.labels }}
platforms: ${{ matrix.configs.target }}
push: true
tags: ${{ steps.meta.outputs.tags }}
build-args: |
RBUILDER_BIN=op-rbuilder
2 changes: 1 addition & 1 deletion .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Release Optimism
on:
push:
tags:
- "v*"
- "op-rbuilder/v*"
workflow_dispatch:
inputs:
draft-release:
Expand Down
67 changes: 67 additions & 0 deletions .github/workflows/tdx_quote_provider_checks.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: TDX Quote Provider CI

on:
push:
branches: [main]
pull_request:

env:
CARGO_TERM_COLOR: always

jobs:
check:
name: Check
runs-on: warp-ubuntu-latest-x64-16x
defaults:
run:
working-directory: "./crates/tdx-quote-provider"
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
components: rustfmt

- name: Install native dependencies
run: sudo apt-get update && sudo apt-get install -y libtss2-dev

- name: Cache dependencies
uses: Swatinem/rust-cache@v2

- name: Run build
run: cargo build

- name: Check formatting
run: cargo fmt --all -- --check

- name: Run clippy
run: cargo clippy -- -D warnings

- name: Run tests
run: cargo test --all-features

- name: Check for common mistakes
run: cargo check

docker:
name: Docker Build
runs-on: warp-ubuntu-latest-x64-16x
defaults:
run:
working-directory: "./crates/tdx-quote-provider"
steps:
- uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Build Docker image
uses: docker/build-push-action@v5
with:
context: .
push: false
cache-from: type=gha
cache-to: type=gha,mode=max
141 changes: 141 additions & 0 deletions .github/workflows/tdx_quote_provider_release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
name: Release TDX Quote Provider

on:
push:
tags:
- "tdx-quote-provider/v*"
workflow_dispatch:
inputs:
draft-release:
default: false
description: "Draft Release"
required: false
type: boolean
features:
default: ""
description: "Binary Compilation Features"
options:
- ""
required: false
type: choice

jobs:
extract-version:
name: Extract version
runs-on: warp-ubuntu-latest-x64-16x
outputs:
VERSION: ${{ steps.extract_version.outputs.VERSION }}
steps:
- name: Extract version
id: extract_version
run: |
if [[ "${GITHUB_REF_TYPE}" == "tag" ]]; then
VERSION="${GITHUB_REF#refs/tags/tdx-quote-provider/}"
else
VERSION="$(echo ${GITHUB_SHA} | cut -c1-7)"
fi
echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT

echo "| | |" >> $GITHUB_STEP_SUMMARY
echo "| ------------------- | ---------------------- |" >> $GITHUB_STEP_SUMMARY
echo "| \`GITHUB_REF_TYPE\` | \`${GITHUB_REF_TYPE}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`GITHUB_REF_NAME\` | \`${GITHUB_REF_NAME}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`GITHUB_REF\` | \`${GITHUB_REF}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`GITHUB_SHA\` | \`${GITHUB_SHA}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`VERSION\` | \`${VERSION}\` |" >> $GITHUB_STEP_SUMMARY
echo "| \`FEATURES\` | \`${{ github.event.inputs.features || 'none' }}\` |" >> $GITHUB_STEP_SUMMARY

build-binary:
name: Build binary
needs: extract-version
runs-on: ${{ matrix.configs.runner }}
container:
image: ubuntu:22.04
permissions:
contents: write
packages: write
strategy:
matrix:
configs:
- target: x86_64-unknown-linux-gnu
runner: warp-ubuntu-latest-x64-32x
- target: aarch64-unknown-linux-gnu
runner: warp-ubuntu-latest-arm64-32x
# Paused until docker is pre-installed https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md
# - target: aarch64-apple-darwin
# runner: warp-macos-14-arm64-6x
features:
- ${{ github.event.inputs.features || '' }}

steps:
- name: Install dependencies
run: |
apt-get update
apt-get install -y \
build-essential \
curl \
git \
libclang-dev \
libssl-dev \
libtss2-dev \
pkg-config \
protobuf-compiler
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y

- uses: actions/checkout@v4 # must install git before checkout and set safe.directory after checkout because of container

- name: Build tdx-quote-provider binary
run: |
git config --global --add safe.directory "$(pwd)"
. $HOME/.cargo/env
cargo build --release --features=${{ matrix.features }} --target ${{ matrix.configs.target }} --package tdx-quote-provider
mkdir -p artifacts
mv target/${{ matrix.configs.target }}/release/tdx-quote-provider artifacts/tdx-quote-provider-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target }}${{ matrix.features && '-' }}${{ matrix.features }}

- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: tdx-quote-provider-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target }}${{ matrix.features && '-' }}${{ matrix.features }}
path: artifacts

draft-release:
name: Draft release
if: ${{ github.event.inputs.draft-release == 'true' || github.event_name == 'push'}} # when manually triggered or version tagged
needs: [extract-version, build-binary]
runs-on: warp-ubuntu-latest-x64-16x
env:
VERSION: op-${{ needs.extract-version.outputs.VERSION }}
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Download artifacts
uses: actions/download-artifact@v4
with:
merge-multiple: true
path: artifacts

- name: Record artifacts checksums
working-directory: artifacts
run: |
find ./ || true
for file in *; do sha256sum "$file" >> sha256sums.txt; done;
cat sha256sums.txt

- name: Create release draft
uses: softprops/[email protected]
id: create-release-draft
with:
draft: true
files: artifacts/*
generate_release_notes: true
name: ${{ env.VERSION }}
tag_name: ${{ env.VERSION }}

- name: Write Github Step Summary
run: |
echo "---"
echo "### Release Draft: ${{ env.VERSION }}" >> $GITHUB_STEP_SUMMARY
echo "${{ steps.create-release-draft.outputs.url }}" >> $GITHUB_STEP_SUMMARY
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
/integration_logs
genesis.json
/op-reth
.env

# editors
.code
Expand Down
Loading
Loading