Skip to content

fix: use eth maintained tx-fuzz - #110

Merged
barnabasbusa merged 6 commits into
mainfrom
gyani/new-tx-fuzz
Aug 10, 2023
Merged

fix: use eth maintained tx-fuzz#110
barnabasbusa merged 6 commits into
mainfrom
gyani/new-tx-fuzz

Conversation

@h4ck3rk3y

Copy link
Copy Markdown
Collaborator

No description provided.

Comment thread src/transaction_spammer/transaction_spammer.star
@h4ck3rk3y
h4ck3rk3y requested a review from parithosh August 3, 2023 09:40
@barnabasbusa
barnabasbusa enabled auto-merge (squash) August 10, 2023 08:45
@barnabasbusa
barnabasbusa merged commit b0903bd into main Aug 10, 2023
@barnabasbusa
barnabasbusa deleted the gyani/new-tx-fuzz branch August 10, 2023 08:47
h4ck3rk3y added a commit that referenced this pull request Sep 4, 2023
🤖 I have created a release *beep* *boop*
---


##
[0.3.0](0.2.0...0.3.0)
(2023-09-03)


### ⚠ BREAKING CHANGES

* Uses the `plan` object. Users will have to update their Kurtosis CLI
to >= 0.63.0 and restart the engine

### Features

* add beacon-metrics-gazer + beacon-metrics-gazer grafana dashboard
([#114](#114))
([5540587](5540587))
* add deneb support
([#96](#96))
([07ed500](07ed500))
* add ethereumjs to nightly runners
([b86d886](b86d886))
* add ethereumjs to nightly runners
([#154](#154))
([b86d886](b86d886))
* add forkmon
([#107](#107))
([2a8ad19](2a8ad19))
* add light-beaconchain-explorer
([83e01a1](83e01a1))
* add light-beaconchain-explorer
([#125](#125))
([83e01a1](83e01a1))
* add multiple endpoint support for lightbeaconchain expolorer
([#151](#151))
([68572cd](68572cd))
* counting by summing each participant
([f9b638b](f9b638b))
* counting by summing each participant
([#112](#112))
([f9b638b](f9b638b))
* disable login for grafana
([4d7df4b](4d7df4b))
* disable login for grafana
([#122](#122))
([4d7df4b](4d7df4b))
* **formatting:** Add editorconfig, move everything to using tabs (4)
([#106](#106))
([cb0fc69](cb0fc69))
* launch the mock mev builder
([#94](#94))
([7fcd3e2](7fcd3e2))
* make it possible to have capella on epoch 0 or non 0
([#108](#108))
([1133497](1133497))
* make mev more configurable
([#164](#164))
([0165ef1](0165ef1))
* parameterize mev_boost and mev_builder images
([#171](#171))
([28adec1](28adec1))
* snooper support
([#121](#121))
([d2cccf4](d2cccf4))
* support full MEV
([#115](#115))
([e9e8c41](e9e8c41))
* use eth-network-package to spin up participant network
([#90](#90))
([91029ac](91029ac))


### Bug Fixes

* a bug around participants
([#129](#129))
([9382767](9382767))
* delay deneb to 500 epoch
([#102](#102))
([d07270b](d07270b))
* dont spin up extra el/cl client for mock-mev
([#158](#158))
([46d67fc](46d67fc))
* fix an arg parsing bug
([#135](#135))
([f084e7c](f084e7c))
* fix passed argument parsing
([#85](#85))
([a5d40e9](a5d40e9))
* fixed teku validator params for MEV
([#149](#149))
([b0079cf](b0079cf))
* fixing nimbus payload url
([#155](#155))
([55c1f59](55c1f59))
* geth failing after ethash package removal
([#93](#93))
([41e3d2c](41e3d2c)),
closes [#91](#91)
* make besu a bootnode
([29296cd](29296cd))
* make besu a bootnode
([#146](#146))
([29296cd](29296cd))
* make this work with kurtosis 0.65.0
([#73](#73))
([13c72ec](13c72ec))
* mention reth in package readme
([#133](#133))
([d11a689](d11a689))
* move parallel keystore generation to global config
([0789eed](0789eed))
* move parallel keystore generation to global config
([#130](#130))
([0789eed](0789eed))
* nightly tests that rely on etherejums get the right image
([#159](#159))
([97b4d33](97b4d33))
* Nimbus can't run when slot time is below 12s
([#100](#100))
([c38bff9](c38bff9))
* pass right mev-boost url to teku
([#147](#147))
([8bb75d9](8bb75d9))
* pin postgres package
([#174](#174))
([6b8d9d3](6b8d9d3))
* Remove nethermind restriction
([#126](#126))
([373c6c9](373c6c9))
* Switch default images to latest
([#99](#99))
([4a85c9d](4a85c9d))
* Update enclave name flag
([#87](#87))
([6531a7a](6531a7a))
* update genesis generator to support netherminds new format
([#68](#68))
([094352d](094352d))
* update nightly runner
([#163](#163))
([4eba65d](4eba65d))
* use eth maintained tx-fuzz
([#110](#110))
([b0903bd](b0903bd))
* use flashbots builder
([#162](#162))
([7a0c2d0](7a0c2d0))
* use mev-boost-relay by flashbots
([#141](#141))
([fca62fc](fca62fc))
* use named artifacts
([#69](#69))
([968f073](968f073)),
closes [#70](#70)
* Use plan object
([#65](#65))
([8e5d185](8e5d185))
* use v2 endoint to get the head block
([#153](#153))
([f084711](f084711))
* work with latest eth-network-package
([14dc957](14dc957))
* work with latest eth-network-package
([#116](#116))
([14dc957](14dc957))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Gyanendra Mishra <anomaly.the@gmail.com>
darigaaz86 pushed a commit to darigaaz86/kurtosis-eth that referenced this pull request Nov 12, 2025
🤖 I have created a release *beep* *boop*
---


##
[0.3.0](ethpandaops/ethereum-package@0.2.0...0.3.0)
(2023-09-03)


### ⚠ BREAKING CHANGES

* Uses the `plan` object. Users will have to update their Kurtosis CLI
to >= 0.63.0 and restart the engine

### Features

* add beacon-metrics-gazer + beacon-metrics-gazer grafana dashboard
([#114](ethpandaops/ethereum-package#114))
([5540587](ethpandaops/ethereum-package@5540587))
* add deneb support
([#96](ethpandaops/ethereum-package#96))
([07ed500](ethpandaops/ethereum-package@07ed500))
* add ethereumjs to nightly runners
([b86d886](ethpandaops/ethereum-package@b86d886))
* add ethereumjs to nightly runners
([#154](ethpandaops/ethereum-package#154))
([b86d886](ethpandaops/ethereum-package@b86d886))
* add forkmon
([#107](ethpandaops/ethereum-package#107))
([2a8ad19](ethpandaops/ethereum-package@2a8ad19))
* add light-beaconchain-explorer
([83e01a1](ethpandaops/ethereum-package@83e01a1))
* add light-beaconchain-explorer
([#125](ethpandaops/ethereum-package#125))
([83e01a1](ethpandaops/ethereum-package@83e01a1))
* add multiple endpoint support for lightbeaconchain expolorer
([#151](ethpandaops/ethereum-package#151))
([68572cd](ethpandaops/ethereum-package@68572cd))
* counting by summing each participant
([f9b638b](ethpandaops/ethereum-package@f9b638b))
* counting by summing each participant
([#112](ethpandaops/ethereum-package#112))
([f9b638b](ethpandaops/ethereum-package@f9b638b))
* disable login for grafana
([4d7df4b](ethpandaops/ethereum-package@4d7df4b))
* disable login for grafana
([#122](ethpandaops/ethereum-package#122))
([4d7df4b](ethpandaops/ethereum-package@4d7df4b))
* **formatting:** Add editorconfig, move everything to using tabs (4)
([#106](ethpandaops/ethereum-package#106))
([cb0fc69](ethpandaops/ethereum-package@cb0fc69))
* launch the mock mev builder
([#94](ethpandaops/ethereum-package#94))
([7fcd3e2](ethpandaops/ethereum-package@7fcd3e2))
* make it possible to have capella on epoch 0 or non 0
([#108](ethpandaops/ethereum-package#108))
([1133497](ethpandaops/ethereum-package@1133497))
* make mev more configurable
([#164](ethpandaops/ethereum-package#164))
([0165ef1](ethpandaops/ethereum-package@0165ef1))
* parameterize mev_boost and mev_builder images
([#171](ethpandaops/ethereum-package#171))
([28adec1](ethpandaops/ethereum-package@28adec1))
* snooper support
([#121](ethpandaops/ethereum-package#121))
([d2cccf4](ethpandaops/ethereum-package@d2cccf4))
* support full MEV
([#115](ethpandaops/ethereum-package#115))
([e9e8c41](ethpandaops/ethereum-package@e9e8c41))
* use eth-network-package to spin up participant network
([#90](ethpandaops/ethereum-package#90))
([91029ac](ethpandaops/ethereum-package@91029ac))


### Bug Fixes

* a bug around participants
([#129](ethpandaops/ethereum-package#129))
([9382767](ethpandaops/ethereum-package@9382767))
* delay deneb to 500 epoch
([#102](ethpandaops/ethereum-package#102))
([d07270b](ethpandaops/ethereum-package@d07270b))
* dont spin up extra el/cl client for mock-mev
([#158](ethpandaops/ethereum-package#158))
([46d67fc](ethpandaops/ethereum-package@46d67fc))
* fix an arg parsing bug
([#135](ethpandaops/ethereum-package#135))
([f084e7c](ethpandaops/ethereum-package@f084e7c))
* fix passed argument parsing
([#85](ethpandaops/ethereum-package#85))
([a5d40e9](ethpandaops/ethereum-package@a5d40e9))
* fixed teku validator params for MEV
([#149](ethpandaops/ethereum-package#149))
([b0079cf](ethpandaops/ethereum-package@b0079cf))
* fixing nimbus payload url
([#155](ethpandaops/ethereum-package#155))
([55c1f59](ethpandaops/ethereum-package@55c1f59))
* geth failing after ethash package removal
([#93](ethpandaops/ethereum-package#93))
([41e3d2c](ethpandaops/ethereum-package@41e3d2c)),
closes [#91](ethpandaops/ethereum-package#91)
* make besu a bootnode
([29296cd](ethpandaops/ethereum-package@29296cd))
* make besu a bootnode
([#146](ethpandaops/ethereum-package#146))
([29296cd](ethpandaops/ethereum-package@29296cd))
* make this work with kurtosis 0.65.0
([#73](ethpandaops/ethereum-package#73))
([13c72ec](ethpandaops/ethereum-package@13c72ec))
* mention reth in package readme
([#133](ethpandaops/ethereum-package#133))
([d11a689](ethpandaops/ethereum-package@d11a689))
* move parallel keystore generation to global config
([0789eed](ethpandaops/ethereum-package@0789eed))
* move parallel keystore generation to global config
([#130](ethpandaops/ethereum-package#130))
([0789eed](ethpandaops/ethereum-package@0789eed))
* nightly tests that rely on etherejums get the right image
([#159](ethpandaops/ethereum-package#159))
([97b4d33](ethpandaops/ethereum-package@97b4d33))
* Nimbus can't run when slot time is below 12s
([#100](ethpandaops/ethereum-package#100))
([c38bff9](ethpandaops/ethereum-package@c38bff9))
* pass right mev-boost url to teku
([#147](ethpandaops/ethereum-package#147))
([8bb75d9](ethpandaops/ethereum-package@8bb75d9))
* pin postgres package
([#174](ethpandaops/ethereum-package#174))
([6b8d9d3](ethpandaops/ethereum-package@6b8d9d3))
* Remove nethermind restriction
([#126](ethpandaops/ethereum-package#126))
([373c6c9](ethpandaops/ethereum-package@373c6c9))
* Switch default images to latest
([#99](ethpandaops/ethereum-package#99))
([4a85c9d](ethpandaops/ethereum-package@4a85c9d))
* Update enclave name flag
([#87](ethpandaops/ethereum-package#87))
([6531a7a](ethpandaops/ethereum-package@6531a7a))
* update genesis generator to support netherminds new format
([#68](ethpandaops/ethereum-package#68))
([094352d](ethpandaops/ethereum-package@094352d))
* update nightly runner
([#163](ethpandaops/ethereum-package#163))
([4eba65d](ethpandaops/ethereum-package@4eba65d))
* use eth maintained tx-fuzz
([#110](ethpandaops/ethereum-package#110))
([b0903bd](ethpandaops/ethereum-package@b0903bd))
* use flashbots builder
([#162](ethpandaops/ethereum-package#162))
([7a0c2d0](ethpandaops/ethereum-package@7a0c2d0))
* use mev-boost-relay by flashbots
([#141](ethpandaops/ethereum-package#141))
([fca62fc](ethpandaops/ethereum-package@fca62fc))
* use named artifacts
([#69](ethpandaops/ethereum-package#69))
([968f073](ethpandaops/ethereum-package@968f073)),
closes [#70](ethpandaops/ethereum-package#70)
* Use plan object
([#65](ethpandaops/ethereum-package#65))
([8e5d185](ethpandaops/ethereum-package@8e5d185))
* use v2 endoint to get the head block
([#153](ethpandaops/ethereum-package#153))
([f084711](ethpandaops/ethereum-package@f084711))
* work with latest eth-network-package
([14dc957](ethpandaops/ethereum-package@14dc957))
* work with latest eth-network-package
([#116](ethpandaops/ethereum-package#116))
([14dc957](ethpandaops/ethereum-package@14dc957))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Gyanendra Mishra <anomaly.the@gmail.com>
barnabasbusa added a commit that referenced this pull request Jun 24, 2026
…1432)

## What

Adds support for **multiple dedicated buildoor builder instances**,
configured independently of the participants via
`buildoor_params.instances` and enabled as an `additional_services`
entry.

```yaml
participants:
  - el_type: geth
    cl_type: lighthouse
  - el_type: reth
    cl_type: prysm
additional_services:
  - buildoor          # enables buildoor (like dora/spamoor/etc)
buildoor_params:
  builder_api: true
  epbs_builder: true
  lifecycle: true
  instances:
    - participant: 1  # 1-based participant index
      count: 1
    - participant: 2
      count: 2        # two competing builders wired to participant 2
```

This spins up `buildoor-lighthouse-geth-1`, `buildoor-reth-prysm-2-1`,
and `buildoor-reth-prysm-2-2`, each wired to the named participant's own
CL/EL.

## Why

A block builder is independent of the network — it reads one CL's
`payload_attributes` stream and (under ePBS) gossips bids to everyone.
The previous model only allowed a single shared builder via `mev_type:
buildoor` against participant 0. This lets you run many builders, target
specific participants, and run more than one per participant.

## How

- **buildoor as an additional_service** — buildoor only spins up when
`buildoor` is in `additional_services` (consistent with other optional
services), instead of being implied by config. With `buildoor` enabled
and no `instances` set, it defaults to a single builder on the first
participant. Mutually exclusive with the (deprecated) `mev_type:
buildoor`.
- **`buildoor_params.instances`** — `[{participant, count}]` declares
which participants get builders and how many each. Validated for index
range, duplicates, and count.
- **Cleaner key derivation** — buildoor derives its builder BLS key
itself via `--builder-mnemonic` + `--builder-key-index`, dropping the
per-instance `ethdo` `run_sh` containers.
- **Lifecycle / post-genesis onboarding (default on)** — each builder
onboards itself after genesis via its lifecycle deposit (`--lifecycle`),
so builders no longer need genesis registration and **gloas does not
have to be at genesis** (works at any gloas epoch). Builder keys are
derived at indices after any genesis-registered builders to avoid
collisions.
- **Block attribution** — each instance passes
`--extra-data=<service-name>` so built blocks can be traced back to the
builder that produced them.
- **Service naming** — `buildoor-<cl>-<el>-<participant>` (with a `-<n>`
suffix when count > 1), matching the cl/el naming convention.
- **Deprecation** — `mev_type: buildoor` (single shared builder) is
marked deprecated and will be dropped after the gloas fork; a runtime
warning is printed.
- **Docs + validation + tests** — README updated; sanity checks added
for the new params; nightly tests added (`buildoor-instances.yaml`,
`buildoor-instances-matrix.yaml`).

## Notes / limitations

- The `--extra-data` flag and lifecycle/early-deposit onboarding require
a buildoor build that supports them (in `glamsterdam-devnet-6`; not yet
in `:main`). Bump the default `buildoor_params.image` once buildoor PRs
#115/#110 land on main.
- The CL has a single external-builder endpoint, so it is wired to its
participant's first buildoor instance; additional instances still run
(e.g. competing ePBS builders) but are not the CL's Builder-API
endpoint.
- Each instance uses a distinct prefunded account so concurrent
buildoors don't collide on tx nonces; with a custom single-account
`prefunded_accounts` they would share a wallet.

## Testing

Validated with `kurtosis run . --dry-run`:
- `additional_services: [buildoor]` + instances → all instances spin up.
- `additional_services: [buildoor]`, no instances → one builder on
participant 1.
- instances set without `buildoor` in additional_services → clear
failure.
- gloas at a non-genesis epoch → builders spin up (lifecycle
onboarding).
- combining with `mev_type: buildoor` → conflict failure; deprecated
`mev_type: buildoor` alone still works.
- `black`-formatted.

---------

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants