Migration GuidesNon-EVM and Prefills

Breaking Changes for Relayers

Updated events and fill functions for relayers supporting non-EVM chains.

Relayers must update their event subscriptions and fill functions to support the new event formats introduced in the non-EVM migration.

Changes took effect January 23, 2025. Query both old and new event types during the transition.

Event Changes

Three events that relayers depend on are being deprecated and replaced:

Deprecated EventReplacement Event
V3FundsDepositedFundsDeposited
RequestedSpeedUpV3DepositRequestedSpeedUpDeposit
FilledV3RelayFilledRelay

Key Differences

  • Address types: All address fields → bytes32 to support non-EVM chains
  • Gas optimization: FilledRelay contains only the messageHash instead of the full message
  • Deposit ID: uint32uint256

Migration Strategy

Query both old and new event types to ensure a smooth transition. Each SpokePool upgrades at a different time, but the protocol guarantees no single fill or deposit will emit duplicate events.

dual-event-monitoring.ts
// Monitor both old and new deposit events
// Old: V3FundsDeposited (address types, uint32 depositId)
// New: FundsDeposited (bytes32 types, uint256 depositId)

// Process whichever event you receive — they won't overlap

New fillRelay Function

The new fillRelay function replaces fillV3Relay and adds:

  • Repayment address selection — Relayers can designate a repayment address different from the fill-executing address
  • Non-EVM fill capabilities — Supports filling on non-EVM chains

Migrating to fillRelay is recommended but not immediately required. fillV3Relay continues to work during the transition period. However, fillRelay is required for Solana and future non-EVM chain fills.

On this page