Launch the weETH/ETH Vault, Deprecate osETH Markets, Clean Up DEX Limits and Auth, and Send the Foundation's $350k September Grant
Result details
Final Votes
Quorum
4.28M of 4M
Majority support
Yes
For
4.28M
Against
0
Abstain
0
Actions
Proposal
Proposal
Summary
This proposal launches the new weETH/ETH T1 vault (id 182) by setting its Liquidity Layer limits at dust size and granting the Team Multisig vault auth so limits can be scaled up once setup is complete. It also reduces the live USDC-ETH DEX (12) max supply and max borrow shares to 500k each (~$554k of supply / ~$1.60M of borrow at current share values), fully deprecates the osETH vaults' borrow side (vaults 153–157), removes the Team Multisig dex auth granted in IGP-138 on the USDat/USDC (49) and USDC/trUSD (50) DEXes, fully deprecates the rsETH, weETHs, and ezETH markets' borrow side (vaults 27, 80, 103–104, and DEXes 13, 14, 21), sets the legacy vault 1–10 base withdrawal limits to the greater of $10k and the vault's live supply with a 10% / 6h expansion, and moves the US equity market hours schedule appointer from the Team Multisig to the 24h FluidTimelockController. Finally, it collects the Liquidity Layer's uncollected USDC, USDT and ETH revenue into the Fluid Reserve and sends the Fluid Foundation's $350k/month September grant tranche (170,000 USDC + 150,000 USDT + 13 ETH, ~$350k) from it.
Code Changes
Action 1: Set Dust Limits for the weETH/ETH T1 Vault (id 182)
- Vault:
0x0b8a681ed46EA8ec6b97D686dF0631fBf84B03d2(T1, weETH collateral / ETH debt) - Collateral: weETH (
0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee) - Debt: ETH (
0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE)
| Vault | Type | Market | Limits |
|---|---|---|---|
| 182 | T1 | weETH / ETH | Withdrawal base $7k, Borrow $7k / $9k (LL) |
- Limits are set at the Liquidity Layer via
setVaultLimitswith the standard dust-limit config: 50% expansion over 6 hours. - Team Multisig is granted vault auth so it can raise limits post-launch without a further proposal. The call goes through the VaultFactoryOwner wrapper (
0xB031913cB7AD81b8A4Ba412B471c2dA69BEA410B), which owns the vault factory and which the timelock is authorized on.
Action 2: Reduce USDC-ETH DEX (12) Max Supply and Borrow Shares to 500k
- DEX:
0x836951EB21F3Df98273517B7249dCEFF270d34bf(USDC-ETH, id 12)
| Parameter | Current | Outstanding | New |
|---|---|---|---|
| Max supply shares | 30M (~$33.2M, IGP-79) | 4.66M shares (~$5.16M: 4.50M USDC + 251.3 ETH) | 500k (~$554k at $1.108/share) |
| Max borrow shares | 20M (~$63.8M, IGP-79) | 1.23M shares (~$3.92M: 433.8k USDC + 1,319.3 ETH) | 500k (~$1.60M at $3.191/share) |
Share values and outstanding amounts are read from the Liquidity Layer and DexResolver on 19 Sep 2026 at ETH = $2,640; the two share types are not worth the same, so the same 500k literal is ~$554k on the supply side and ~$1.60M on the borrow side. This is the live USDC-ETH pool, not the deprecated DEX 5. 500k shares sits below current outstanding on both sides, so new supply and borrows are blocked until shares fall under the ceiling. Existing LPs can still withdraw and debt can still be repaid. Calls: updateMaxSupplyShares(500_000e18) and updateMaxBorrowShares(500_000e18).
Action 3: Fully Deprecate the osETH Vaults' Borrow Side
IGP-138 had already capped the osETH T1 vaults at $100k borrow (base = max). This action deprecates the borrow side entirely — dust debt ceilings with expansion frozen at the minimum (0.01% over max duration). The Liquidity Layer only checks the debt ceiling when borrowing, so existing positions can still repay and withdraw.
| Market | Type | Borrow side | Change |
|---|---|---|---|
| Vault 153 | T1 | USDC (LL) | Deprecated: dust ceilings, frozen expansion |
| Vault 154 | T1 | USDT (LL) | Deprecated: dust ceilings, frozen expansion |
| Vault 155 | T1 | GHO (LL) | Deprecated: dust ceilings, frozen expansion |
| Vault 156 | T3 | USDC-USDT DEX (2) shares | Deprecated: dust ceilings, frozen expansion |
| Vault 157 | T3 | USDC-USDT conc. DEX (34) shares | Deprecated: dust ceilings, frozen expansion |
Action 4: Remove Team Multisig Auth on IGP-138 DEXes
IGP-138 granted the Team Multisig dex auth when launching the USDat/USDC and USDC/trUSD smart-lending pools. With the launches complete, the auth is removed per the standard post-launch cleanup:
| DEX | Pair | Change |
|---|---|---|
| 49 | USDat / USDC | setDexAuth(dex, TEAM_MULTISIG, false) |
| 50 | USDC / trUSD | setDexAuth(dex, TEAM_MULTISIG, false) |
Action 5: Fully Deprecate the rsETH, weETHs, and ezETH Markets' Borrow Side
Same treatment as Action 3, applied to the rsETH, weETHs, and ezETH markets. Vaults 27, 80, 103 and 104 borrow wstETH at the Liquidity Layer. Live ceilings on 19 Sep 2026 (wstETH = $3,285): vault 27 still holds IGP-135's 462.7 / 2,314.9 wstETH ($1.52M base / $1.41M) on vault 104 (221.8 wstETH borrowed). The rsETH vaults 78 and 79 already carry the deprecated borrow config on-chain, so only their DEX is touched here. Existing positions can still repay and withdraw.$7.60M max, 339.1 wstETH borrowed); IGP-138 had already pinned the ezETH vaults at base = max, 42.9 wstETH ($141k) on vault 103 and 428.8 wstETH (
| Market | Type | Borrow side | Change |
|---|---|---|---|
| Vault 27 | T1 | weETHs / wstETH (LL) | Deprecated: dust ceilings, frozen expansion |
| Vault 80 | T2 | weETHs-ETH / wstETH (LL) | Deprecated: dust ceilings, frozen expansion |
| Vault 103 | T1 | ezETH / wstETH (LL) | Deprecated: dust ceilings, frozen expansion |
| Vault 104 | T2 | ezETH-ETH / wstETH (LL) | Deprecated: dust ceilings, frozen expansion |
| DEX 13 | Smart col | rsETH-ETH | Max supply shares → 1 wei (from 3,200; ~1,021 outstanding) |
| DEX 14 | Smart col | weETHs-ETH | Max supply shares → 1 wei (from 1,600; ~153 outstanding) |
| DEX 21 | Smart col | ezETH-ETH | Max supply shares → 1 wei (from 3,862; ~141 outstanding) |
Action 6: Set Legacy Vault 1–10 Base Withdrawal Limits to the Greater of $10k and Live Supply
IGP-132 pinned each legacy vault's base withdrawal limit to its then-current supply, which leaves remaining suppliers exiting against a tight cap. This action sets a $10k base withdrawal limit with a normal 10% / 6h expansion on all ten vaults.
Nine of the ten hold dust (all under $4k) and take the flat $10k floor. Vault 6 still holds 640 weETH ($1.87M at weETH = $2,915), so a $10k limit would sit far below its live supply and activate the withdrawal rate limit — adding exactly the exit friction this action removes. It therefore takes a token-denominated base limit of 700 weETH, set above current supply so the limit stays dormant, as it is today.
Base withdrawal limits only gate withdrawals while supply sits above them; below the limit, the full balance is withdrawable at any time.
| Vault | Market | Supply token | Live supply | New base withdrawal limit |
|---|---|---|---|---|
| 1 | ETH / USDC | ETH | 0.65 ETH | $10k |
| 2 | ETH / USDT | ETH | 0.95 ETH | $10k |
| 3 | wstETH / ETH | wstETH | 0.64 wstETH | $10k |
| 4 | wstETH / USDC | wstETH | 1.04 wstETH | $10k |
| 5 | wstETH / USDT | wstETH | 0.54 wstETH | $10k |
| 6 | weETH / wstETH | weETH | 640.10 weETH | 700 weETH |
| 7 | sUSDe / USDC | sUSDe | 3,141.85 sUSDe | $10k |
| 8 | sUSDe / USDT | sUSDe | 393.96 sUSDe | $10k |
| 9 | weETH / USDC | weETH | 0.23 weETH | $10k |
| 10 | weETH / USDT | weETH | 0.20 weETH | $10k |
Action 7: Move the Market Hours Schedule Appointer Behind the 24h Timelock
- Contract:
0xde51F64b1c94dc60AA1284741F19e2f9f425Fc67(FluidUsEquityMarketHours)
| Address | Class before | Class after | Powers after |
|---|---|---|---|
0x4d6CE4F4498d59Eed397bCbC687805a07f9b2346 (FluidTimelockController, 24h) | 0 | 3 | Appoint / revoke class-1 schedule writers, plus everything class 2 can do |
0x4F6F977aCDD1177DCD81aB83074855EcB9C2D49e (Team Multisig) | 3 | 2 | Write the weekly schedule, including sessions pinned inside the next 5 hours |
The market hours contract gates the US equity session schedule that the CLX stock oracles read. Auth class 1 writes future sessions, class 2 may additionally rewrite the pinned window (sessions starting within 5 hours), and class 3 appoints class-1 writers. Class 3 exists so that rotating the weekly schedule bot does not need a governance proposal each time.
This action keeps that fast path but places it behind the 24-hour timelock rather than an instant multisig action, while leaving the Team Multisig at class 2 so a same-day session correction is still immediate. The Team Multisig is a proposer on the FluidTimelockController, so appointing a writer becomes propose → 24h → execute. The two calls are ordered grant-then-demote, so the contract is never left without an appointer.
Existing class-1 schedule writers are unaffected. Only Liquidity governance can restore the Team Multisig to class 3.
Action 8: Collect Liquidity Layer Revenue and Send the Foundation's September Grant Tranche
- Source: Fluid Liquidity Layer revenue (
collectRevenue([USDC, USDT, ETH])) → Fluid Reserve (0x264786EF916af64a1DB19F513F24a3681734ce92) - Method:
withdrawFunds([USDC, USDT, ETH], [170000000000, 150000000000, 13000000000000000000], FLUID_FOUNDATION, "FOUNDATION GRANT") - Amount:
170,000 USDC+150,000 USDT+13 ETH— ~$350k total, with the ETH leg sized at the 7-day average ETH price of $2,487.26 (CoinGecko hourly, 12–19 Sep 2026). Amounts are fixed in token terms, so the USD value of the ETH leg moves with the ETH price until execution - Funding: uncollected Liquidity Layer revenue on 19 Sep 2026 is ~174.1k USDC, ~153.9k USDT and ~37.0 ETH (growing ~2.1k USDC and ~2.5k USDT per day); the Reserve itself holds ~255 USDC, ~0 USDT and ~24.4 ETH, so the grant is funded by the collection in the same transaction and the excess stays in the Reserve
- Recipient: Fluid Foundation (
0xde0377eF25aD02dBcFbc87D632E46bf1972A0Dc3) - Precedent: IGP-139 Action 1 (grant transfer, memo
FOUNDATION GRANT) and IGP-136 Action 1 (collectRevenueinto the Reserve beforewithdrawFunds)
Description
weETH/ETH is a correlated-pair leverage market: users supply weETH and borrow ETH to loop into ether.fi staking yield. Fluid already runs weETH markets against stablecoins and wstETH, plus a weETH-ETH DEX (id 9), so both legs are established collateral at the Liquidity Layer.
New markets launch at dust limits by convention. The $7k / $9k ceilings cap total exposure while the vault's oracle and liquidation behaviour are observed under real usage, and the Team Multisig auth lets limits be raised incrementally once it is behaving as expected rather than requiring a governance cycle per step.
This action was originally Action 2 of IGP-139, the Foundation grant payload. It targeted the vault factory directly for the vault-auth call, which reverts because the factory's setVaultAuth is owner-gated and the factory is owned by the wrapper contract rather than the timelock. That reverted IGP-139 in full during simulation. Splitting the vault launch into its own payload unblocks the grant, which has no dependency on this market, and corrects the auth routing.
Conclusion
IGP-140 launches the weETH/ETH T1 vault (id 182) with $7k base withdrawal, $7k base borrow, and $9k max borrow limits at the Liquidity Layer and grants the Team Multisig vault auth for post-launch scaling. It also reduces the live USDC-ETH DEX (12) max supply and max borrow shares to 500k each (~$554k supply / $1.60M borrow at current share values), fully deprecates the osETH vaults' borrow side (vaults 153–157), removes the Team Multisig dex auth granted in IGP-138 on DEXes 49 and 50, fully deprecates the rsETH, weETHs, and ezETH markets' borrow side (vaults 27, 80 and 103–104, plus 1-wei supply-share caps on DEXes 13, 14, and 21), sets the legacy vault 1–10 base withdrawal limits to the greater of $10k and the vault's live supply (only vault 6 is above the floor, at 700 weETH) with a 10% / 6h expansion, and moves the US equity market hours schedule appointer from the Team Multisig to the 24h FluidTimelockController, leaving the multisig at class 2. Finally, it collects Liquidity Layer USDC, USDT and ETH revenue into the Reserve and sends the Foundation's $350k/month September grant tranche of 170,000 USDC + 150,000 USDT + 13 ETH ($350k).
Final Votes
Quorum
4.28M of 4M
Majority support
Yes
For
4.28M
Against
0
Abstain
0
Final Votes
Status
Sun Sep 20, 02:44 pm
Voting period started
Tue Sep 22, 03:04 pm
Voting period ended