# \[BIP-914\] Disable Outdated Oracle LP Pool Factories (v1 and v2)

**URL:** <https://forum.balancer.fi/t/bip-914-disable-outdated-oracle-lp-pool-factories-v1-and-v2/6986>\
**Category:** General Proposal\
**Created:** [March 9, 2026, 8:04am UTC](https://forum.balancer.fi/t/bip-914-disable-outdated-oracle-lp-pool-factories-v1-and-v2/6986 "2026-03-09T08:04:16Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![maxyz.xyz](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.balancer.fi/maxyz.xyz/32/3806_2.png) [@maxyz.xyz](https://forum.balancer.fi/u/maxyz.xyz)\
**Post date:** [March 9, 2026, 8:04am UTC](https://forum.balancer.fi/t/bip-914-disable-outdated-oracle-lp-pool-factories-v1-and-v2/6986/1 "2026-03-09T08:04:16Z")

</div>

## PR with Payloads

> <https://github.com/BalancerMaxis/multisig-ops/pull/2714>
>
> Intent:
> \- disable WeightedLPOracleFactory v1 and StableLPOracleFactory v1 facto…ries on all networks
> \- disable OLD WeightedLPOracleFactory v2 and StableLPOracleFactory v2 (have been OVERWRITTEN)
> 
> Forum post tbd

## Summary

This proposal requests the DAO multisig (and the Omnisig on newer chains) to disable outdated Oracle LP Pool Factories across all networks where they are deployed. This includes both the v1 (deprecated) and the original v2 (overwritten) versions of the `WeightedLPOracleFactory` and `StableLPOracleFactory` contracts.

## Motivation

As requested by BLabs, all outdated Oracle Pool Factories for v1 need to be disabled. The original v2 factories were never fully rolled out and have since been overwritten with updated deployments following Certora audit suggestions. While the old v2 contracts are no longer listed in the deployments repo, they still exist on-chain and should be disabled for completeness.

All factory addresses referenced in this BIP correspond to [commit `9a29caf`](https://github.com/balancer/balancer-deployments/blob/9a29caf63cc6bfad564a84e33e8f912c180054b9/addresses/mainnet.json) of `balancer-deployments`, which is the last commit before the v2 overwrite.

On Mainnet, Arbitrum, Optimism, Gnosis, Avalanche, and Base, these payloads must go through the DAO multisig because the `disable()` permissions for these factories were never granted to any operator or the Omnisig. On HyperEVM, Plasma, Monad, and XLayer, the Omnisig (`0x9ff471F9f98F42E5151C7855fD1b5aa906b1AF7e`) can grant roles to itself, disable, and revoke.

## Factories to Disable

### V1 Factories (Deprecated)

| Deployment Task | Contract |
| --- | --- |
| [`20250814-v3-weighted-pool-oracle`](https://github.com/balancer/balancer-deployments/blob/master/tasks/20250814-v3-weighted-pool-oracle) | `WeightedLPOracleFactory` |
| [`20250815-v3-stable-pool-oracle`](https://github.com/balancer/balancer-deployments/blob/master/tasks/20250815-v3-stable-pool-oracle) | `StableLPOracleFactory` |

### V2 Factories (Overwritten, no longer in deployments repo)

| Deployment Task | Contract |
| --- | --- |
| [`20260202-v3-weighted-pool-oracle-v2`](https://github.com/balancer/balancer-deployments/blob/9a29caf63cc6bfad564a84e33e8f912c180054b9/addresses/mainnet.json#L2064) | `WeightedLPOracleFactory` |
| [`20260203-v3-stable-pool-oracle-v2`](https://github.com/balancer/balancer-deployments/blob/9a29caf63cc6bfad564a84e33e8f912c180054b9/addresses/mainnet.json#L2078) | `StableLPOracleFactory` |

## Affected Networks and Factory Addresses

### Mainnet (Chain ID: 1)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0x05503B3aDE04aCA81c8D6F88eCB73Ba156982D2B` |
| StableLPOracleFactory v1 | `0x83bf399FA3DC49Af8fb5c34031a50c7C93F56129` |
| WeightedLPOracleFactory v2 | `0xDd10aDF05379D7C0Ee4bC9c72ecc5C01c40E25b8` |
| StableLPOracleFactory v2 | `0x99f2D91EBA577e4Bf7175E72B3Ef2B6dDb1FaBe3` |

### Arbitrum (Chain ID: 42161)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0x7f4C133e44381D05129F9B81bAD8Fa9F3345D29B` |
| StableLPOracleFactory v1 | `0x816e90DC85bF016455017a76Bc09CC0451Eeb308` |
| WeightedLPOracleFactory v2 | `0xA9AEeB57Efe61338C0d07f3e5Bb82519C4Ad1103` |
| StableLPOracleFactory v2 | `0xa59F164d6cf6ee5d63580C0bcEA5CCB2e50b908c` |

### Optimism (Chain ID: 10)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0x6eE18fbb1BBcC5CF700cD75ea1aef2bb21e3cB3F` |
| StableLPOracleFactory v1 | `0xb96524227c4B5Ab908FC3d42005FE3B07abA40E9` |
| WeightedLPOracleFactory v2 | `0xEB2BB012869255f8C622563Dc4C3AFA8619fe804` |
| StableLPOracleFactory v2 | `0xC4c4940DC7c57DF46d3A217647dB1649721Cf468` |

### Gnosis (Chain ID: 100)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0x8A8B9f35765899B3a0291700141470D79EA2eA88` |
| StableLPOracleFactory v1 | `0xbF94192c652183c0f50056417f4D04810329f12c` |
| WeightedLPOracleFactory v2 | `0x332694Ef46D880DF6Ea9593e04CB8ABEE5F81D99` |
| StableLPOracleFactory v2 | `0x4eFcd8bcE8AC9b94bd76648e2c85bEf6c40F3228` |

### Avalanche (Chain ID: 43114)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0x0E800D8d2E8b4694610AEdc385Aa6D763492B106` |
| StableLPOracleFactory v1 | `0x4eff2d77D9fFbAeFB4b141A3e494c085b3FF4Cb5` |
| WeightedLPOracleFactory v2 | `0x9958317b80ee5f10457017d54c2484D722059157` |
| StableLPOracleFactory v2 | `0x5939ab16fDf1991B0EF603c639B6b501A7841fAB` |

### Base (Chain ID: 8453)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0x774cB66e2B2dB59A9daF175e9b2B7A142E17EB94` |
| StableLPOracleFactory v1 | `0xb21A277466e7dB6934556a1Ce12eb3F032815c8A` |
| WeightedLPOracleFactory v2 | `0x9958317b80ee5f10457017d54c2484D722059157` |
| StableLPOracleFactory v2 | `0x5939ab16fDf1991B0EF603c639B6b501A7841fAB` |

### HyperEVM (Chain ID: 999)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0xf4743D026f3D07aF3747bb7d05BeD06D177241d7` |
| StableLPOracleFactory v1 | `0x0b11209B8c5E821b18dED147583b8978c3E63911` |
| WeightedLPOracleFactory v2 | `0xBcA68cb9B794A4fb84855e003e4cF591F80A3Dc9` |
| StableLPOracleFactory v2 | `0x45fB5aF0a1aD80Ea16C803146eb81844D9972373` |

### Plasma (Chain ID: 9745)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0xD961E30156C2E0D0d925A0De45f931CB7815e970` |
| StableLPOracleFactory v1 | `0x86e67E115f96DF37239E0479441303De0de7bc2b` |
| WeightedLPOracleFactory v2 | `0x891EC9B34829276a9a8ef2F8A9cEAF2486017e0d` |
| StableLPOracleFactory v2 | `0x774cB66e2B2dB59A9daF175e9b2B7A142E17EB94` |

### Monad (Chain ID: 143)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0x1311Fbc9F60359639174c1e7cC2032DbDb5Cc4d1` |
| StableLPOracleFactory v1 | `0xaD89051bEd8d96f045E8912aE1672c6C0bF8a85E` |
| WeightedLPOracleFactory v2 | `0x4BB42f71CAB7Bd13e9f958dA4351B9fa2d3A42FF` |
| StableLPOracleFactory v2 | `0xbC169a08cBdCDb218d91Cd945D29B59F78c96B77` |

### XLayer (Chain ID: 196)

| Factory | Address |
| --- | --- |
| WeightedLPOracleFactory v1 | `0x1311Fbc9F60359639174c1e7cC2032DbDb5Cc4d1` |
| StableLPOracleFactory v1 | `0xEB1eeaBF0126d813589C3D2CfeFFE410D9aE3863` |
| WeightedLPOracleFactory v2 | `0x86705Ee19c0509Ff68F1118C55ee2ebdE383D122` |
| StableLPOracleFactory v2 | `0xEAedc32a51c510d35ebC11088fD5fF2b47aACF2E` |

## Technical Specification

For each factory on each network, the executing multisig (DAO multisig or Omnisig) performs a 3-step transaction pattern via the Authorizer:

1. **`grantRole(actionId, account)`** on the Authorizer – grants the multisig the `disable()` role for the target factory
2. **`disable()`** on the factory – permanently disables the factory, preventing new pool creation
3. **`revokeRole(actionId, account)`** on the Authorizer – revokes the role so the multisig does not retain unnecessary permissions

Each network payload contains 12 transactions (4 factories x 3 steps).

### Executing Multisigs

| Network | Multisig | Address |
| --- | --- | --- |
| Mainnet | DAO Multisig | `0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f` |
| Arbitrum | DAO Multisig | `0xaF23DC5983230E9eEAf93280e312e57539D098D0` |
| Optimism | DAO Multisig | `0x043f9687842771b3dF8852c1E9801DCAeED3f6bc` |
| Gnosis | DAO Multisig | `0x2a5AEcE0bb9EfFD7608213AE1745873385515c18` |
| Avalanche | DAO Multisig | `0x17b11FF13e2d7bAb2648182dFD1f1cfa0E4C7cf3` |
| Base | DAO Multisig | `0xC40DCFB13651e64C8551007aa57F9260827B6462` |
| HyperEVM, Plasma, Monad, XLayer | Omnisig | `0x9ff471F9f98F42E5151C7855fD1b5aa906b1AF7e` |

### Authorizer Addresses

| Network | Authorizer |
| --- | --- |
| Mainnet, Arbitrum, Optimism, Gnosis, Avalanche | `0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6` |
| Base | `0x809B79b53F18E9bc08A961ED4678B901aC93213a` |
| HyperEVM | `0x85a80afee867aDf27B50BdB7b76DA70f1E853062` |
| Plasma, Monad, XLayer | `0xE39B5e3B6D74016b2F6A9673D7d7493B6DF549d5` |

### V2 Action IDs (disable())

V1 action IDs can be looked up from the [balancer-deployments action-ids](https://github.com/balancer/balancer-deployments/tree/master/action-ids). The overwritten v2 factory action IDs are no longer in the repo and were queried on-chain via `getActionId(bytes4)`:

| Network | WeightedLPOracleFactory v2 | StableLPOracleFactory v2 |
| --- | --- | --- |
| Mainnet | `0xaad0e51c18069fb241bf8179dc6c7d583e506dd672ef9a85ef122dd000deba76` | `0xb3c9c0ec52436494a8f6527a835a3442d43fb2d4268c638d9e8f670a5546afe8` |
| Arbitrum | `0x32cfd519f4e04a2d3b88e1e667811368433ec3da01605dbc26d85a8d54dc834b` | `0x249bc3c0021e108ccf28b9f7934b423928be80b8c823bab8254edba17b359ea4` |
| Optimism | `0x92b93830f0497ce935614ceb53508d12d772244a34a0bbbeab832a4c824f0b90` | `0xfc212a18b66df1a184af12c3a698e2f1b55a002fa96e4ad2e37ddd708f99723a` |
| Gnosis | `0x5a2389555953f58e8746cb8c3171904d268fce2d55fa1aac3f20343ccd04cb0b` | `0x315b841cfaf795ea83cbe267847195f6fdba4a7a9f5ed870c28d9e4d4b145e28` |
| Avalanche | `0x0f19a8e265e66504de04b28811bb8fba950087dc6ab21a23e5d757937d4c38c8` | `0xd6ef2cdea6236fe8b350fe1371523aade37cb3ec44de40e46a13ac44ab467e9e` |
| Base | `0x0f19a8e265e66504de04b28811bb8fba950087dc6ab21a23e5d757937d4c38c8` | `0xd6ef2cdea6236fe8b350fe1371523aade37cb3ec44de40e46a13ac44ab467e9e` |
| HyperEVM | `0x6ccb8983444db720b828ab14455ffd0d3d219cfd63180ee7e384e218810ef779` | `0xd9ad8a66a0dd971dc6fe438297bcae5d731b41bacd8c65809e765141d1986bdb` |
| Plasma | `0x7576f83c39a4f75ece8e6da99676712301067f196442916c688500f9320af5fb` | `0x416d92d817cb23a3d644810c79c3e5d9cd991b729c260819b570abd632e3a90a` |
| Monad | `0x2cb59d35a7a1b89d4ca6e466034d4d7bba7efe0e0dbb3bbe125e78def0cbdac1` | `0xe52f27de16ccc09f36da9a1dc8bbb043041a422d6430226a1e148560fa23c165` |
| XLayer | `0xaa602686217d84795dac828d7e9c133b7507febe7d68d7f642b1e3b506ce3309` | `0x34f66ef5706b2abf916d3f719040884c962d3a419b90ec8af8fb2c1f6ea4e313` |

---

<div class="post-metadata">

**Author:** ![maxyz.xyz](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.balancer.fi/maxyz.xyz/32/3806_2.png) [@maxyz.xyz](https://forum.balancer.fi/u/maxyz.xyz)\
**Post date:** [March 12, 2026, 6:48am UTC](https://forum.balancer.fi/t/bip-914-disable-outdated-oracle-lp-pool-factories-v1-and-v2/6986/2 "2026-03-12T06:48:04Z")

</div>

[https://snapshot.org/#/s:balancer.eth/proposal/0xd2b4fc9b1a046323ea4051add6fa61d1bdf1c9851b9fae5aa317e465ba4a15fd](https://snapshot.org/#/s:balancer.eth/proposal/0xd2b4fc9b1a046323ea4051add6fa61d1bdf1c9851b9fae5aa317e465ba4a15fd)
