Currently Gauntlet manages dynamic fees for any two token pool which has delegated fee control to them on mainnet. With the advent of MetaStable and Stable pools and the increased complexity in managing not only the swap fee but the amplification parameter, Gauntlet wasn't able to accept management of these pool types immediately. They have signaled they are ready now, so we are proceeding with this vote quickly so these pools can start working better for our LP's and for the protocol.
This proposal would only cover mainnet MetaStable and Stable Pools and only allow Gauntlet to manage the swap fee and amplification parameter.
The Balancer governance multisig would submit FOUR transactions to the Authorizer in order to grant the ability to set swap fees on StablePools and MetaStablePools to the GAUNTLET_FEE_SETTER and the ability to set amplification factor on StablePools and MetaStablePools to the GAUNTLET_SAFE.
**[1]**The Gnosis Safe at 0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f would send a transaction to the Vault Authorizer at 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6 with the following data to authorize the GAUNTLET_FEE_SETTER at 0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B to set swap fees on StablePools:
authorizer.grantRole(
0x7b09f4b61ccfe85436161b0223489b187d9f9158c542b5e6105df147afc78aca,
0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B
);
For transparency's sake, a developer could reproduce the bytes specifying the role above using this pseudo-code:
pool.getActionId(pool.interface.getSighash('setSwapFeePercentage')); // 0x7b09f4b61ccfe85436161b0223489b187d9f9158c542b5e6105df147afc78aca
**[2]**The Gnosis Safe at 0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f would send a transaction to the Vault Authorizer at 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6 with the following data to authorize the GAUNTLET_FEE_SETTER at 0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B to set swap fees on MetaStablePools:
authorizer.grantRole(
0x15d3918ca8f9895d8906a780f5f402d32707bada7b1b5e7b21b7351257103a35,
0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B
);
For transparency's sake, a developer could reproduce the bytes specifying the role above using this pseudo-code:
pool.getActionId(pool.interface.getSighash('setSwapFeePercentage')); // 0x15d3918ca8f9895d8906a780f5f402d32707bada7b1b5e7b21b7351257103a35
**[3]**The Gnosis Safe at 0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f would send a transaction to the Vault Authorizer at 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6 with the following data to authorize the GAUNTLET_SAFE at 0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6 to set the amplification factor on StablePools:
authorizer.grantRoles(
[
0x8c9b4c1f53b968f62f656d48126bd856c38b0d879974dff5b5d6055c0d2917d4,
0xc787be37f98a254065bf8678258de57ce53a2d6814c519063f3003dd9f92dfc3,
],
0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6
);
For transparency's sake, a developer could reproduce the bytes specifying the role above using this pseudo-code:
pool.getActionId(pool.interface.getSighash('startAmplificationParameterUpdate')); // 0x8c9b4c1f53b968f62f656d48126bd856c38b0d879974dff5b5d6055c0d2917d4
pool.getActionId(pool.interface.getSighash('stopAmplificationParameterUpdate')); // 0xc787be37f98a254065bf8678258de57ce53a2d6814c519063f3003dd9f92dfc3
**[4]**The Gnosis Safe at 0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f would send a transaction to the Vault Authorizer at 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6 with the following data to authorize the GAUNTLET_SAFE at 0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6 to set the amplification factor on MetaStablePools:
authorizer.grantRoles(
[
0xc108e87eca9f3a0e9a9db0b708e6b15a70c3d0859b02723a7cc4b5ca1fb9fc28,
0x2f17310a7a479b437515eb1917c45a5f8d1fc7035462cfc7c7c43825dec621b5,
],
0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6
);
For transparency's sake, a developer could reproduce the bytes specifying the role above using this pseudo-code:
pool.getActionId(pool.interface.getSighash('startAmplificationParameterUpdate')); // 0xc108e87eca9f3a0e9a9db0b708e6b15a70c3d0859b02723a7cc4b5ca1fb9fc28
pool.getActionId(pool.interface.getSighash('stopAmplificationParameterUpdate')); // 0x2f17310a7a479b437515eb1917c45a5f8d1fc7035462cfc7c7c43825dec621b5