You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(sdk): resolve xERC20Lockbox fee token from on-chain router.token()
The xERC20Lockbox deploy config stores the lockbox address, but the
router's token()/feeToken() returns the underlying wrapped ERC20. Fee
token resolution now reads token() on-chain for the lockbox variant so
the deployed fee contract matches the router's `fee must match token`
check. Added an xERC20Lockbox CLI e2e test alongside the existing xERC20
coverage.
Copy file name to clipboardExpand all lines: .changeset/sdk-xerc20-token-fee.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,4 +2,4 @@
2
2
'@hyperlane-xyz/sdk': patch
3
3
---
4
4
5
-
The SDK fee-token resolution now supports xERC20 and xERC20Lockbox warp routes. Previously `getFeeTokenAddress` threw `Unsupported token type for fee resolution` for these types, which blocked applying a `tokenFee` (including OQLF) to xERC20 routes via `warp deploy`/`warp apply`. It now returns the wrapped/collateral token address, matching the contract's `feeToken()`which returns `token()`when a fee hook is set. Added SDK hardhat tests for the xERC20 fee-setting path and CLI e2e tests asserting xERC20 routes can be deployed with fees and updated.
5
+
The SDK fee-token resolution now supports xERC20 and xERC20Lockbox warp routes. Previously `getFeeTokenAddress` threw `Unsupported token type for fee resolution` for these types, which blocked applying a `tokenFee` (including OQLF) to xERC20 routes via `warp deploy`/`warp apply`. For plain xERC20 the fee token resolves to the configured xERC20 token. For xERC20Lockbox the deploy config stores the lockbox address, but the router's `token()`/`feeToken()` returns the underlying wrapped ERC20; fee-token resolution now reads this on-chain for the lockbox variant so the deployed fee contract's token matches `token()`and passes the router's `fee must match token` check. Added SDK unit and hardhat tests (including an xERC20Lockbox deploy regression) plus CLI e2e tests asserting xERC20 and xERC20Lockbox routes can be deployed with fees and updated.
0 commit comments