MIP0c12-SP2: Subproposal for Core Personnel Onboarding (Governance Facilitator)

MIP0c12-SP2: Subproposal for Core Personnel Onboarding (Governance Facilitator)


MIP0c12-SP#: 2
Author: LongForWisdom
Contributors: n/a
Status: Formal Submission
Date Applied: 2020-05-04
Date Ratified: <yyyy-mm-dd>
Core Personnel Role: Governance Facilitator
Proposed applicant: LongForWisdom

Application Form


My first impressions of this when Rich suggested it were ‘your job is horrible, why would I want to do it?’ That said, there are some fairly compelling reasons why I feel like I should do it.

  • It’s a concrete step towards decentralization of the DAO.
  • Rich is overworked, and is often not able to give the role his full attention (though to be fair, he does a great job of balancing it with his other responsibilities.) Having a second facilitator should help to increase coverage.
  • At this stage, there don’t appear to be viable alternative candidates (this is not meant to throw shade on anyone/everyone, if you disagree, please make yourself known.)

The plan has always been to have multiple facilitators sharing the work and representing different geographic groups. My hope is that we can get there as quickly as possible, but ultimately someone has to be first.

So, with all this in mind, I’d be willing to take the role, if you’ll all have me. Once we have other Facilitators in place, I may re-evaluate and either decide to step down or aim to move into a different role.

To mitigate slightly the whole ‘this job is horrible’ thing above: that’s a rather over-exaggerated view. I expect to enjoy the role in the general case (or I wouldn’t be agreeing to it), and I am completely happy to take on the responsibility for the foreseeable future.


Relevant Information


So the plan here is to formally submit this into the first governance cycle. The deadline for that is this Wednesday.

If anyone has any feedback prior to that, I’d love to hear it and potentially make changes before then. Thanks everyone.


Yes. Yes. A thousand times yes.

You’ve done more work for MakerDAO than anyone outside the foundation, you deserve this, and will obviously do a good job.

Also not just the effort and knowledge and experience, but the attitude - your humbleness and receptiveness mean you will be a great Governance Facilitator.


Just moved this to the #MIPs:fs category for inclusion in the first governance cycle.


Definitely in support of this, you’ve done a great job with producing the collateral onboarding document and managing governance initiatives.


Since this in an executive vote, but there’s no actual risk parameters changing in the Maker Protocol on-chain, the Smart Contracts team (@galabasquer really) got creative:

We’re voting for spell 0x9713187b6d7C8D54aC041EfdBaC13d52c2120Fb9 which has the following description under the action that it will take:

2020-05-25 MakerDAO Executive Spell | Officially Ratify the MIP0c12-SP2 Subproposal | 0x3a455a89a6c006b851db62c135e9050b5cef77cf01ee66db98e02c5116f519c8

The full text of the MIP0c12-SP2 Subproposal is found here https://raw.githubusercontent.com/makerdao/community/9b004594c73a5bf3945231c3ba018410dca13a8c/governance/votes/Executive%20vote%20-%20May%2025%2C%202020.md

If you hash this text using the standard keccak256 function that Solidity and the EVM uses, you’ll get 0x3a455a89a6c006b851db62c135e9050b5cef77cf01ee66db98e02c5116f519c8 which is the same hash in the description.

You can try to run the hash yourself either by copying the full text and hashing it on this website https://emn178.github.io/online-tools/keccak_256.html

or if you have seth installed you can do it with this snippet:

seth keccak -- "$(wget https://raw.githubusercontent.com/makerdao/community/9b004594c73a5bf3945231c3ba018410dca13a8c/governance/votes/Executive%20vote%20-%20May%2025%2C%202020.md -q -O - 2>/dev/null)"

After the spell is scheduled, at cast time it will just do a check to determine it the PauseProxy has permissions on MCD.

        // Proving the Pause Proxy has access to the MCD core system at the execution time
        require(VatAbstract(MCD_VAT).wards(address(this)) == 1, "no-access");

Try hashing the text yourself!


Neat! Never knew about that tool, that’s solid!

Worked for me :slight_smile:

Thanks for spelling out things btw, I found it super helpful!

1 Like