-
Notifications
You must be signed in to change notification settings - Fork 42
Description
Currently, in Governor.sol the _castVote function takes in the following:
function _castVote(
bytes32 _proposalId,
address _voter,
uint256 _support,
string memory _reason
) internal returns (uint256)
This covers:
1.) A user who doesn't have a token (reverts)
2.) A user who has a token
3.) A user who is delegated tokens
however: what if a delegated voter (ex. an autonomous agent) wanted to make a vote only for a specific token holder? This doesn't cover that case.
It would be good IMO to add another param that is used to get the votes originally belonging to someone. So say Tom delegated 5 votes to an AI agent, and Sally also gave 5 votes, the ai can vote separately for each person. There would also have to be a check to make sure that the given address has delegated to the voter (ai agent)
In the case the param is 0x000... do the same logic that we have now.
Let me know if there are any questions, or if there are better approaches to this. Really excited about everything Nouns and would love to do this!