Skip to content

Conversation

@Himess
Copy link

@Himess Himess commented Dec 3, 2025

Summary

This PR adds an is_resolving flag to BasicPayloadJob and BuildArguments to signal when the payload is being resolved. This allows in-progress build tasks to exit
the transaction loop early and return a partial payload, rather than racing against an empty payload.

Changes

  • Add is_resolving: Arc<AtomicBool> field to BasicPayloadJob
  • Add is_resolving: Arc<AtomicBool> field to BuildArguments with helper method
  • Set flag to true in resolve_kind() method when resolution starts
  • Check flag in ethereum payload builder tx loop - breaks loop when resolving
  • Check flag in optimism payload builder tx loop - returns early when resolving
  • Add is_resolving field and helper method to `OpPayloadBuilderCtx

Closes #15154

…s being resolved

  This adds an `is_resolving` flag to `BasicPayloadJob` and `BuildArguments` that signals
  to in-progress build tasks when the payload is being resolved. When set, builders can
  exit the transaction loop early and return whatever payload has been built so far,
  rather than racing with an empty payload.

  Changes:
  - Add `is_resolving: Arc<AtomicBool>` to `BasicPayloadJob` and `BuildArguments`
  - Set flag to true in `resolve_kind()` method
  - Check flag in ethereum and optimism payload builder tx loops
  - Add `is_resolving` to `OpPayloadBuilderCtx`

  Closes paradigmxyz#15154
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

Let the payloadjob know it is being resolved

1 participant