Hi @gosuto,
We deeply appreciate your time and effort in auditing the payload and offering invaluable insights to the community.
Update on Cow Protocol
Firstly, we’d like to bring to everyone’s attention a recent update to the Cow protocol. This update renders the current version of the CowswapOrderSigner contract incompatible with the Zodiac Roles Modifier setup we employ for non-custodial management of Balancer’s treasury. As a result, we’re revising the payload to exclude all Cow-related elements.
Addressing Your Points
While the removal of Cow from the payload renders some of your concerns moot, we believe it’s important to address the excellent points you’ve raised:
- INRM Token Approval
The inclusion of the INRM token address (0x48e5413b73add2434e47504e2a22d14940dbfe78
) was inadvertent. The intended token was SWISE (0x48C3399719B582dD63eB5AADf12A40B4C3f52FA2
). It’s crucial to note that this was merely an approval action and, as it wasn’t whitelisted for the CowswapOrderSigner.signOrder.sellToken parameter, swaps involving this token would have been impossible. The whitelisting of the SWISE token in the said parameter clearly indicates our original intent.
- CowSwapOrderSigner Deployment
The CowswapOrderSigner contract was a collaborative effort between Gnosis Guild (the creators of Zodiac tools) and Cow developers. The contract, which is part of the Gnosis repository, has undergone rigorous auditing by Gnosis and was deployed by an address owned by karpatkey.
- Non-Scoping of feeAmountBP
Your observation regarding the non-scoping of feeAmountBP was astute. Post internal discussions between our Strategy & Ops and Tech teams, we concur that limiting this parameter would enhance the robustness of the preset. Once a future version of the CowswapOrderSigner contract is available and Cow can be reintegrated into the Zodiac environment, we will certainly consider scoping this parameter.