Governance Paymaster
This repository includes explorations of various Paymasters that can be used to pay for Governance/DAO actions on chain.
Delgate your vote
PaymasterDelegateUni.sol
: This proof of concept Paymaster pays for UNI delegations on-chain. You can see a deployed version at: PaymasterDelegateUni on Sepolia.
A sample transaction here that shows the DelegateChanged
event from Uniswap Token contract.
The demo transactions were created via a separate frontend repo: AA-Wallet-Demo
Cast votes
PaymasterCastVoteUni.sol
: This pays for casting a vote on-chain. As there is no GovernorBravo
on Sepolia for Uniswap DAO, this one is tricky to test live. Working on it.
Build
To build: forge build
To deploy (example): `forge script script/PaymasterDelegateUni.s.sol --rpc-url $SEPOLIA_RPC_URL --broadcast --etherscan-api-key $ETHERSCAN_API_KEY --verify -vvvv
Next Steps/Explorations
- Generalize Paymaster for any
GovernorBravo
like Compound DAO without requiring contract change. - Figure out how to test casting votes on Sepolia
- Combine both actions in a single Paymaster (see wip in
PaymasterUniGovernance.sol
) - Approach a DAO to build an end to end flow where their holders can delegate to their own AA wallet and DAO pays for the next vote.