Skip to content

feat: remove old settlement forwarder#4429

Merged
igorroncevic merged 2 commits into
mainfrom
feat/remove_old_forwarder_contract
May 25, 2026
Merged

feat: remove old settlement forwarder#4429
igorroncevic merged 2 commits into
mainfrom
feat/remove_old_forwarder_contract

Conversation

@igorroncevic
Copy link
Copy Markdown
Contributor

@igorroncevic igorroncevic commented May 22, 2026

Description

This PR removes the old CowSettlementForwarder implementation and its config surface.

The forwarder is being replaced by Solver7702Delegate in the follow-up PR. Removing the old contract, artifact, bindings, and explicit forwarder-contract config first keeps the stack easier to review: this PR is only the cleanup of the old path, while #4430 introduces the new delegate behavior.

Changes

  • Remove CowSettlementForwarder.sol and its artifact.
  • Remove generated cowsettlementforwarder bindings and facade wiring.
  • Remove forwarder_contract / forwarder-contract from driver config loading and solver config.
  • Remove e2e setup fields and test code that deployed or passed a forwarder address.
  • Keep the replacement Solver7702Delegate implementation for the follow-up PR.

How to test

This PR is intended to be validated together with #4430, which adds the replacement implementation.

  1. just generate-contracts
  2. just fmt --check
  3. just clippy
  4. just test-unit

@igorroncevic igorroncevic requested a review from a team as a code owner May 22, 2026 11:21
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request removes the CowSettlementForwarder contract, its ABI, and all associated configuration fields and methods across the driver and end-to-end test suites. Review feedback highlights that these changes may cause compilation errors in the eip7702 module and leave parallel settlement tests in a broken state, necessitating updates to the test logic and dependencies.

Comment thread crates/driver/src/infra/solver/mod.rs
Comment thread crates/e2e/tests/e2e/parallel_settlement.rs
@igorroncevic igorroncevic force-pushed the feat/remove_old_forwarder_contract branch from 4dc8037 to e94152c Compare May 22, 2026 11:32
@igorroncevic igorroncevic force-pushed the feat/remove_old_forwarder_contract branch from 5b07f38 to cb275c3 Compare May 22, 2026 14:07
Comment on lines +44 to +54
// The old implementation still lives in eip7702.rs for the stacked delegate PR,
// but it depends on the removed forwarder binding. This minimal stub allows the
// CI to pass.
pub mod eip7702 {
use {super::Solver, crate::infra::blockchain::Ethereum, tracing::instrument};

#[instrument(name = "setup_eip7702", skip_all)]
pub async fn setup(_solvers: &[Solver], _eth: &Ethereum) -> anyhow::Result<()> {
Ok(())
}
}
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minimal stub added here so any issues with eip7702.rs wouldn't interrupt the CI. It will be removed by the subsequent PR.

mod order_cancellation;
mod order_simulation;
mod parallel_settlement;
// mod parallel_settlement;
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Commented out EIP-7702 related tests until the subsequent PR gets merged.

Copy link
Copy Markdown
Member

@AryanGodara AryanGodara left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm 👌🏼

I also tried to confirm if this'll break config in the infra repo
But no prod or staging driver currently sets forwarder-contract, so we're safe to merge

@igorroncevic igorroncevic added this pull request to the merge queue May 25, 2026
Merged via the queue into main with commit df6a14b May 25, 2026
20 checks passed
@igorroncevic igorroncevic deleted the feat/remove_old_forwarder_contract branch May 25, 2026 14:56
@github-actions github-actions Bot locked and limited conversation to collaborators May 25, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants