Major Changes
-
b05e242: Mixed-mode rebalancing was added to enable simultaneous movable collateral (EVM) and inventory (multi-VM) execution within a single rebalancer configuration, enabling cross-protocol rebalancing across EVM and Sealevel chains.
BREAKING CHANGES:
inventorySignerconfig field was replaced withinventorySigners, a per-protocol map (Partial<Record<ProtocolType, { address: string; key?: string } | string>>). Existing configs usinginventorySignermust migrate to the new schema.IExternalBridge.execute()signature changed from(quote, privateKey: string)to(quote, privateKeys: Partial<Record<ProtocolType, string>>). AllIExternalBridgeimplementations must update theirexecutemethod to accept the new multi-protocol key map.
New features:
- Per-protocol signer architecture supporting EVM + Sealevel keys simultaneously.
transferRemoteexecution refactored to useWarpCore.getTransferRemoteTxs()for multi-VM compatibility, with protocol-aware receipt parsing andSealevelCoreAdapter.parseMessageDispatchLogsfor Sealevel message ID extraction.- LiFi bridge extended with Sealevel support via
KeypairWalletAdapter, Hyperlane domain ID to LiFi chain ID translation, and mutex around configure+execute to prevent race conditions. - Startup validation for signer coverage against all inventory route protocols, per-protocol address format validation, and Solana pubkey cross-check.
parseSolanaPrivateKey()utility with strict 64-byte validation and base58 normalization.- Zod schemas hardened for strategy configs, external bridges, and inventory signers with per-protocol address validation.
- Private key redaction in log statements and EVM-only filtering for Explorer signer addresses.
Patch Changes
- 354668e: SnapshotHelper was extracted for shared e2e snapshot reset with timeout/retry logic. blockTag was changed to use raw eth_blockNumber RPC to bypass stale provider cache. TestHelpers race condition in getFirstMonitorEvent() was fixed with a settled flag.
- Updated dependencies [f2620a1]
- Updated dependencies [f7ebf6c]
- Updated dependencies [8a6f742]
- Updated dependencies [b05e242]
- Updated dependencies [aee625c]
- @hyperlane-xyz/sdk@27.0.0
- @hyperlane-xyz/core@11.0.2
- @hyperlane-xyz/metrics@0.2.1
- @hyperlane-xyz/utils@27.0.0
- @hyperlane-xyz/provider-sdk@3.0.1