Skip to content

BIP-216: Add permissions for Batch Relayer V5 (second attempt) #113

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 11 commits into from
Mar 28, 2023
91 changes: 91 additions & 0 deletions BIPs/BIP-216/BIP-216.md

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions BIPs/BIP-216/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[See Here](BIP-216.md) for the governance contents.
33 changes: 33 additions & 0 deletions BIPs/BIP-216/arbitrum.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"version": "1.0",
"chainId": 42161,
"createdAt": 1675891944772,
"meta": {
"name": "Transactions Batch",
"description": "",
"txBuilderVersion": "1.13.2",
"createdFromSafeAddress": "",
"createdFromOwnerAddress": "",
"checksum": "",
"createFromSafeAddress": "0xaF23DC5983230E9eEAf93280e312e57539D098D0"
},
"transactions": [
{
"to": "0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6",
"value": "0",
"data": null,
"contractMethod": {
"inputs": [
{ "internalType": "bytes32[]", "name": "roles", "type": "bytes32[]" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "grantRoles",
"payable": false
},
"contractInputsValues": {
"roles": "[0x1282ab709b2b70070f829c46bc36f76b32ad4989fecb2fcb09a1b3ce00bbfc30, 0xc149e88b59429ded7f601ab52ecd62331cac006ae07c16543439ed138dcb8d34, 0x78ad1b68d148c070372f8643c4648efbb63c6a8a338f3c24714868e791367653, 0xeba777d811cd36c06d540d7ff2ed18ed042fd67bbf7c9afcf88c818c7ee6b498, 0x0014a06d322ff07fcc02b12f93eb77bb76e28cdee4fc0670b9dec98d24bbfec8, 0x7b8a1d293670124924a0f532213753b89db10bde737249d4540e9a03657d1aff]",
"account": "0x598ce0f1ab64B27256759ef99d883EE51138b9bd"
}
}
]
}
8 changes: 8 additions & 0 deletions BIPs/BIP-216/function_descriptions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
| function | description |
|:------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| batchSwap(uint8,(bytes32,uint256,uint256,uint256,bytes)[],address[],(address,bool,address,bool),int256[],uint256) | Allow a relayer to make a multihop trade or source liquidity from multiple pools on a users behalf. [Relayer permissions notes](https://github.com/BalancerMaxis/multisig-ops/blob/staging/docs/Authorizer/vault_permissions.md) |
| exitPool(bytes32,address,address,(address[],uint256[],bytes,bool)) | Allow a relayer to remove liquidity from a pool on the user's behalf. [Relayer permissions notes](https://github.com/BalancerMaxis/multisig-ops/blob/staging/docs/Authorizer/vault_permissions.md) |
| joinPool(bytes32,address,address,(address[],uint256[],bytes,bool)) | Allow a relayer to add liquidity to a pool on the user's behalf. [Relayer permissions notes](https://github.com/BalancerMaxis/multisig-ops/blob/staging/docs/Authorizer/vault_permissions.md) |
| manageUserBalance((uint8,address,uint256,address,address)[]) | Utilize existing Vault allowances and internal balances so that a user does not have to re-approve the new relayer for each token. [Relayer permissions notes](https://github.com/BalancerMaxis/multisig-ops/blob/staging/docs/Authorizer/vault_permissions.md) |
| setRelayerApproval(address,address,bool) | Approve the relayer on the user's behalf (user must still provide a signed message). [Relayer permissions notes](https://github.com/BalancerMaxis/multisig-ops/blob/staging/docs/Authorizer/vault_permissions.md) |
| swap((bytes32,uint8,address,address,uint256,bytes),(address,bool,address,bool),uint256,uint256) | Allow a relayer to trade within a single pool on the user's behalf. [Relayer permissions notes](https://github.com/BalancerMaxis/multisig-ops/blob/staging/docs/Authorizer/vault_permissions.md) |
33 changes: 33 additions & 0 deletions BIPs/BIP-216/gnosis.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"version": "1.0",
"chainId": 100,
"createdAt": 1675891944772,
"meta": {
"name": "Transactions Batch",
"description": "",
"txBuilderVersion": "1.13.2",
"createdFromSafeAddress": "",
"createdFromOwnerAddress": "",
"checksum": "",
"createFromSafeAddress": "0x2a5AEcE0bb9EfFD7608213AE1745873385515c18"
},
"transactions": [
{
"to": "0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6",
"value": "0",
"data": null,
"contractMethod": {
"inputs": [
{ "internalType": "bytes32[]", "name": "roles", "type": "bytes32[]" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "grantRoles",
"payable": false
},
"contractInputsValues": {
"roles": "[0x1282ab709b2b70070f829c46bc36f76b32ad4989fecb2fcb09a1b3ce00bbfc30, 0xc149e88b59429ded7f601ab52ecd62331cac006ae07c16543439ed138dcb8d34, 0x78ad1b68d148c070372f8643c4648efbb63c6a8a338f3c24714868e791367653, 0xeba777d811cd36c06d540d7ff2ed18ed042fd67bbf7c9afcf88c818c7ee6b498, 0x0014a06d322ff07fcc02b12f93eb77bb76e28cdee4fc0670b9dec98d24bbfec8, 0x7b8a1d293670124924a0f532213753b89db10bde737249d4540e9a03657d1aff]",
"account": "0x3536fD480CA495Ac91E698A703248A8915c137a3"
}
}
]
}
20 changes: 20 additions & 0 deletions BIPs/BIP-216/inputs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
[
{
"deployments": ["20210418-vault"],
"chain_map": {
"mainnet": 1,
"polygon": 137,
"arbitrum": 42161,
"optimism": 10,
"gnosis": 100
},
"function_caller_map": {
"exitPool(bytes32,address,address,(address[],uint256[],bytes,bool))": "20230314-batch-relayer-v5/BalancerRelayer",
"joinPool(bytes32,address,address,(address[],uint256[],bytes,bool))": "20230314-batch-relayer-v5/BalancerRelayer",
"batchSwap(uint8,(bytes32,uint256,uint256,uint256,bytes)[],address[],(address,bool,address,bool),int256[],uint256)": "20230314-batch-relayer-v5/BalancerRelayer",
"manageUserBalance((uint8,address,uint256,address,address)[])": "20230314-batch-relayer-v5/BalancerRelayer",
"setRelayerApproval(address,address,bool)": "20230314-batch-relayer-v5/BalancerRelayer",
"swap((bytes32,uint8,address,address,uint256,bytes),(address,bool,address,bool),uint256,uint256)": "20230314-batch-relayer-v5/BalancerRelayer"
}
}
]
33 changes: 33 additions & 0 deletions BIPs/BIP-216/mainnet.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"version": "1.0",
"chainId": 1,
"createdAt": 1675891944772,
"meta": {
"name": "Transactions Batch",
"description": "",
"txBuilderVersion": "1.13.2",
"createdFromSafeAddress": "",
"createdFromOwnerAddress": "",
"checksum": "",
"createFromSafeAddress": "0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f"
},
"transactions": [
{
"to": "0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6",
"value": "0",
"data": null,
"contractMethod": {
"inputs": [
{ "internalType": "bytes32[]", "name": "roles", "type": "bytes32[]" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "grantRoles",
"payable": false
},
"contractInputsValues": {
"roles": "[0x1282ab709b2b70070f829c46bc36f76b32ad4989fecb2fcb09a1b3ce00bbfc30, 0xc149e88b59429ded7f601ab52ecd62331cac006ae07c16543439ed138dcb8d34, 0x78ad1b68d148c070372f8643c4648efbb63c6a8a338f3c24714868e791367653, 0xeba777d811cd36c06d540d7ff2ed18ed042fd67bbf7c9afcf88c818c7ee6b498, 0x0014a06d322ff07fcc02b12f93eb77bb76e28cdee4fc0670b9dec98d24bbfec8, 0x7b8a1d293670124924a0f532213753b89db10bde737249d4540e9a03657d1aff]",
"account": "0xfeA793Aa415061C483D2390414275AD314B3F621"
}
}
]
}
33 changes: 33 additions & 0 deletions BIPs/BIP-216/optimism.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"version": "1.0",
"chainId": 10,
"createdAt": 1675891944772,
"meta": {
"name": "Transactions Batch",
"description": "",
"txBuilderVersion": "1.13.2",
"createdFromSafeAddress": "",
"createdFromOwnerAddress": "",
"checksum": "",
"createFromSafeAddress": "0x043f9687842771b3dF8852c1E9801DCAeED3f6bc"
},
"transactions": [
{
"to": "0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6",
"value": "0",
"data": null,
"contractMethod": {
"inputs": [
{ "internalType": "bytes32[]", "name": "roles", "type": "bytes32[]" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "grantRoles",
"payable": false
},
"contractInputsValues": {
"roles": "[0x1282ab709b2b70070f829c46bc36f76b32ad4989fecb2fcb09a1b3ce00bbfc30, 0xc149e88b59429ded7f601ab52ecd62331cac006ae07c16543439ed138dcb8d34, 0x78ad1b68d148c070372f8643c4648efbb63c6a8a338f3c24714868e791367653, 0xeba777d811cd36c06d540d7ff2ed18ed042fd67bbf7c9afcf88c818c7ee6b498, 0x0014a06d322ff07fcc02b12f93eb77bb76e28cdee4fc0670b9dec98d24bbfec8, 0x7b8a1d293670124924a0f532213753b89db10bde737249d4540e9a03657d1aff]",
"account": "0x03F1ab8b19bcE21EB06C364aEc9e40322572a1e9"
}
}
]
}
33 changes: 33 additions & 0 deletions BIPs/BIP-216/polygon.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"version": "1.0",
"chainId": 137,
"createdAt": 1675891944772,
"meta": {
"name": "Transactions Batch",
"description": "",
"txBuilderVersion": "1.13.2",
"createdFromSafeAddress": "",
"createdFromOwnerAddress": "",
"checksum": "",
"createFromSafeAddress": "0xeE071f4B516F69a1603dA393CdE8e76C40E5Be85"
},
"transactions": [
{
"to": "0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6",
"value": "0",
"data": null,
"contractMethod": {
"inputs": [
{ "internalType": "bytes32[]", "name": "roles", "type": "bytes32[]" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "grantRoles",
"payable": false
},
"contractInputsValues": {
"roles": "[0x1282ab709b2b70070f829c46bc36f76b32ad4989fecb2fcb09a1b3ce00bbfc30, 0xc149e88b59429ded7f601ab52ecd62331cac006ae07c16543439ed138dcb8d34, 0x78ad1b68d148c070372f8643c4648efbb63c6a8a338f3c24714868e791367653, 0xeba777d811cd36c06d540d7ff2ed18ed042fd67bbf7c9afcf88c818c7ee6b498, 0x0014a06d322ff07fcc02b12f93eb77bb76e28cdee4fc0670b9dec98d24bbfec8, 0x7b8a1d293670124924a0f532213753b89db10bde737249d4540e9a03657d1aff]",
"account": "0xd18d5D377eb23362e54Fa496597d7E962d56C554"
}
}
]
}
Loading