# \[BIP-XYZ\] Onchain Wind-down of Protocol: Specs

**URL:** <https://forum.balancer.fi/t/bip-xyz-onchain-wind-down-of-protocol-specs/7144>\
**Category:** General Proposal\
**Created:** [October 20, 2026, 7:38pm UTC](https://forum.balancer.fi/t/bip-xyz-onchain-wind-down-of-protocol-specs/7144 "2026-10-20T19:38:19Z")\
**Posts on this page:** 1\
**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:** [October 20, 2026, 7:38pm UTC](https://forum.balancer.fi/t/bip-xyz-onchain-wind-down-of-protocol-specs/7144/1 "2026-10-20T19:38:19Z")

</div>

The following specifications are for Ethereum, since that is the only chain that requires governance approval for these actions. On all other chains, the core team will perform the analogous actions from their multisig.

# Pause Pools

## V2

- asap (DAO multisig): atomically grant itself the permissions, and then disable all official Balancer v2 pool factories that support disabling:

| Deployment | Contract | Address |
| --- | --- | --- |
| 20220609-stable-pool-v2 | StablePoolFactory | 0x8df6EfEc5547e31B0eb7d1291B511FF8a2bf987c |
| 20221207-aave-rebalanced-linear-pool-v3 | AaveLinearPoolFactory | 0x7d833FEF5BB92ddb578DA85fc0c35cD5Cc00Fb3e |
| 20230315-silo-linear-pool | SiloLinearPoolFactory | 0xfd1c0e6f02f71842b6ffF7CdC7A017eE1Fd3CdAC |
| 20230320-composable-stable-pool-v4 | ComposableStablePoolFactory | 0xfADa0f4547AB2de89D1304A668C39B3E09Aa7c76 |

- asap (DAO multisig): grant `pause` via the `AuthorizerAdaptorEntrypoint` with `where=0x0` for all official Balancer pools to EOA deployer `0x4BC8121278056BFCaC2BD14D455659224d6dDf48`
- 2026-10-30 (DAO multisig): atomically grant itself the permissions, and set the v2 protocol fee defaults to zero:
  - `ProtocolFeePercentagesProvider.setFeeTypePercentage(0,0)` (swap fee)
  - `ProtocolFeePercentagesProvider.setFeeTypePercentage(2,0)` (yield fee)

- 2026-10-30 (permissionless): call `updateProtocolFeePercentageCache()` or `updateCachedProtocolSwapFeePercentage()` on all pools still active that accept fee logic from the fee provider: [[BIP-XYZ] Onchain Wind-down of Protocol: Specs - Google Sheets](https://docs.google.com/spreadsheets/d/1xhTPdaDClz0KP9XgrVo1z7QlIucXwoX9_LszxhQf3nc/edit?gid=287767991#gid=287767991)
- 2026-10-30 (EOA deployer): once official Balancer factories are disabled, we can create an exhaustive list of all official Balancer factory pools and pause those which are still in the pausable window

## V3

- asap (DAO multisig): atomically grant itself the permissions and disable all official Balancer v3 pool factories that support disabling:

| Deployment | Contract | Address |
| --- | --- | --- |
| 20241205-v3-stable-pool | StablePoolFactory | 0xB9d01CA61b9C181dA1051bFDd28e1097e920AB14 |
| 20241205-v3-weighted-pool | WeightedPoolFactory | 0x201efd508c8DfE9DE1a13c2452863A78CB2a86Cc |
| 20250120-v3-gyro-2clp | Gyro2CLPPoolFactory | 0xb96524227c4B5Ab908FC3d42005FE3B07abA40E9 |
| 20250121-v3-stable-surge | StableSurgePoolFactory | 0xD53F5d8d926fb2a0f7Be614B16e649B8aC102D83 |
| 20250124-v3-gyro-eclp | GyroECLPPoolFactory | 0xE9B0a3bc48178D7FE2F5453C8bc1415d73F966d0 |
| 20250324-v3-stable-pool-v2 | StablePoolFactory | 0xe42C2E153BB0A8899b59C73F5Ff941f9742F1197 |
| 20250404-v3-stable-surge-pool-factory-v2 | StableSurgePoolFactory | 0x355bD33F0033066BB3DE396a6d069be57353AD95 |
| 20251205-v3-fixed-price-lbp | FixedPriceLBPoolFactory | 0xeb1AA94421aEcFB1dc17dDB1068E4609c4bE8758 |
| 20260115-v3-weighted-pool-v2 | WeightedPoolFactory | 0x332694Ef46D880DF6Ea9593e04CB8ABEE5F81D99 |
| 20260116-v3-stable-pool-v3 | StablePoolFactory | 0x4eFcd8bcE8AC9b94bd76648e2c85bEf6c40F3228 |
| 20260117-v3-stable-surge-pool-factory-v3 | StableSurgePoolFactory | 0x187a05fb9e4234Dd310ae74215743560D1BAA6Ac |
| 20260123-v3-gyro-2clp-v2 | Gyro2CLPPoolFactory | 0x8902F9C211f91c84Da2076f633873F8266dCECC6 |
| 20260126-v3-gyro-eclp-v2 | GyroECLPPoolFactory | 0x04d584195a96DFfc7F8B695aA3C9D3c1606b69d1 |
| 20260428-v3-reclamm-pool-v3 | ReClammPoolFactory | 0x3ccD78683efFffdDc1A16f5553C896ac6D3ab7FF |
| 20260501-v3-liquidity-bootstrapping-pool-v4 | LBPoolFactory | 0x6642863979e66d995717A2B836A121700595069A |
| 20250409-v3-reclamm-pool | ReClammPoolFactory | 0x312600bc7645E47a4926dc658827398AF070D431 |
| 20250409-v3-reclamm-pool | ReClammPoolFactory | 0x7fA49Df302a98223d98D115fc4FCD275576f6faA |
| 20250204-v3-akron-weighted-pool | AkronWeightedPoolFactory | 0x83Fa05e5a37f9C10F4B729EC80F7D38290313596 |
| 20250404-v3-stable-surge-pool-factory-v2 | StableSurgePoolFactory | 0x92bad7860B85811E422eCaEAF38a672F8925fcfb |
| 20250409-v3-reclamm-pool | ReClammPoolFactory | 0xCF7608f0136DB42FDEC021f755BD66406F29158c |
| 20250419-v3-quantamm | QuantAMMWeightedPoolFactory | 0xD5c43063563f9448cE822789651662cA7DcD5773 |

- asap (DAO multisig): grant `pausePool` permissions on the `Vault` with `where=0x0` to EOA deployer `0x4BC8121278056BFCaC2BD14D455659224d6dDf48`
- 2026-10-30 (EOA deployer): if still within the pausable window, pause all pools belonging to the factories mentioned above and enable recovery mode, except for partners that asked for an extension (Parallel, Treehouse, Royco, Avant, Inverse, Rocket Pool, Blueberry, StakeWise, Neverland)
- 2026-11-30 (EOA deployer): pause partner pools mentioned above and enable their recovery mode
- 2026-11-30 (DAO multisig): atomically grant itself the permissions and pause the v3 vault:
  - `Vault.pauseVault()` and `Vault.pauseVaultBuffers()`

- 2026-11-30 (DAO multisig): atomically grant itself the permissions and set global fees to zero:
  - `ProtocolFeeController.setGlobalProtocolSwapFeePercentage(0)` and `ProtocolFeeController.setGlobalProtocolYieldFeePercentage(0)`

- 2026-11-30 (permissionless): call `ProtocolFeeController.updateProtocolSwapFeePercentage(address pool)` and `ProtocolFeeController.updateProtocolYieldFeePercentage(address pool)`

Note that the vault will _unpause_ by itself 2029-05-12. All pools will unpause later that year, except for the ones that were created by the newest factories with the ~75 year pause window. This is unavoidable.

# Revoke (Redundant) Permissions

- 2026-12-01 (DAO multisig): revoke all permissions from the authorizer except for `DEFAULT_ADMIN_ROLE`
- 2027-05-31: redemption round one starts
- 2027-06-01 (DAO multisig): revoke admin role; DAO governance ends
