feat: ethereum mainnet dLEND collateral rollout (oracles + Safe reserve setup)#42
Conversation
…FrxEthFundamentalOracleWrapperV1_1.sol and deploy scripts, tests
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 36ef5e4b5b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if (!frxConfig || !frxConfig.asset || !frxConfig.etherRouter || !frxConfig.redemptionQueue) { | ||
| console.log(" ⏭️ No frxETH fundamental oracle config found – skipping"); | ||
| return true; |
There was a problem hiding this comment.
Skip deploying frxETH wrapper with zero-address deps
frxEthFundamentalOracle is populated with addressOrZero(...) in the non-mainnet configs, so 0x000...000 values still pass this truthiness check; when MockFraxEtherRouter/MockFraxRedemptionQueueV2 are absent, this deploys a wrapper wired to zero addresses and later routes frxETH to an oracle that always reports stale pricing. This breaks frxETH price availability in local/testnet tag-based deployments instead of cleanly skipping the feature.
Useful? React with 👍 / 👎.
| return true; | ||
| }; | ||
|
|
||
| func.tags = ["deploy-mocks", "frax-oracle-mocks"]; |
There was a problem hiding this comment.
Include frxETH oracle mocks in local-setup fixtures
This mock deployment is tagged only as deploy-mocks/frax-oracle-mocks, but many repo fixtures execute deployments.fixture(["local-setup", ...]); in those runs, the FRAX router/queue mocks are skipped, leaving the new frxETH oracle path without required dependencies. Because frxETH is now added to local/testnet reserve/oracle config, this causes inconsistent or nonfunctional frxETH pricing in standard local setup flows.
Useful? React with 👍 / 👎.
Summary
This PR prepares the Ethereum mainnet collateral rollout for dLEND, including updated risk parameters, oracle wiring, and Safe-based deployment flows.
It also merges the frxETH fundamental oracle work from PR #34 into this rollout branch, per rollout requirements.
Changes
config/dlend/reserves-params.tsfor:WETH,wstETH,rETH,sfrxETH,frxETHsUSDe,sUSDS,syrupUSDC,syrupUSDT,sfrxUSDLBTC,WBTC,cbBTC,PAXGconfig/networks/ethereum_mainnet.ts:dLend.reservesConfigto include rollout assets and updated existing assetsdeploy/99_cleanup/03_setup_ethereum_mainnet_collateral_oracles_safe.tsdeploy/99_cleanup/04_setup_ethereum_mainnet_collateral_reserves_safe.tsdocs/ethereum-mainnet-dlend-collateral-rollout.mdconfig/networks/ethereum_testnet.tsconfig/networks/localhost.tsPlaceholder Feeds Requiring Replacement
The following are intentionally invalid placeholders and must be replaced with final feed addresses before execution:
REPLACE_ME_INVALID_CHAINLINK_USDE_USD_FEEDREPLACE_ME_INVALID_CHAINLINK_RETH_ETH_FEEDREPLACE_ME_INVALID_CHAINLINK_FRXETH_ETH_FEEDREPLACE_ME_INVALID_CHAINLINK_LBTC_BTC_FEEDREPLACE_ME_INVALID_CHAINLINK_WBTC_BTC_FEEDREPLACE_ME_INVALID_CHAINLINK_CBBTC_USD_FEEDREPLACE_ME_INVALID_CHAINLINK_PAXG_USD_FEEDValidation
corepack yarn hardhat compile✅corepack yarn eslint config/dlend/reserves-params.ts config/networks/ethereum_mainnet.ts deploy/99_cleanup/03_setup_ethereum_mainnet_collateral_oracles_safe.ts deploy/99_cleanup/04_setup_ethereum_mainnet_collateral_reserves_safe.ts✅ (warnings only)corepack yarn tsc -p tsconfig.json --noEmitNotes
docs/ethereum-mainnet-dlend-collateral-rollout.md.