- 
                Notifications
    You must be signed in to change notification settings 
- Fork 9
Include sections for Safeharbor/BugBounties updates #47
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
base: master
Are you sure you want to change the base?
Changes from 11 commits
2fef81d
              1f5dce0
              f0c79a5
              4060365
              ffbea9f
              0766476
              18f5fab
              10ee338
              11f6ac4
              93cbffa
              5a1528b
              fd2383a
              File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|  | @@ -125,6 +125,15 @@ Repo: https://github.com/makerdao/spells-mainnet | |||||
| * [ ] Changes are tested via `testNewOrUpdatedChainlogValues` | ||||||
| * [ ] Adjust system values, collateral values inside `config.sol` | ||||||
| * [ ] Ensure every spell variable is declared as public/internal | ||||||
| * Bug Bounty Registry Updates | ||||||
| * [ ] Check that output of make safeharbor-generate matches the instructions provided by Governance Facilitators | ||||||
|          | ||||||
| * [ ] Check that output of make safeharbor-generate matches the instructions provided by Governance Facilitators | |
| * [ ] Check that output of `make safeharbor-generate` matches the instructions provided by Governance Facilitators | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's one point about the process which I don't think has been resolved yet - timing. Currently both crafter and reviewer Safe Harbor sections are quite far into the checklists, after the tests, which leaves very little time for reacting to missing instructions (sections would probably be executed after Exec Doc was already merged).
I would therefore strongly recommend coming up with an earlier crafter and/or reviewer check to ensure that SafeHarbor instructions are as expected. As suggested in #47 (comment), this should preferably happen at one of the earliest stages as it's a simple script run + check instructions + notify govfac if needed.
Of course, GovFac would also need to amend their internal checklists, but this is out of scope of this review.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've added a new item on the beginning of both the crafter and reviewer checklist. Please let me know your thoughts.
        
          
              
                Outdated
          
        
      There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This hasn't been addressed yet: #47 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Q: Could you please elaborate on what kind of tests should be written by the crafter? Is vm.expectCall sufficient or would the crafter have to test every new addition or deletion?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I think making sure that there are no reverts.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: I would still recommend adding an example of how to test it. You can omit it, however, if we are going to add a permanent test for it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, I don't think we should include testing examples on this checklist. I think a permanent set of helper functions on the spells-mainnet repo would be enough to make sure a crafter can easily test.
For example a assertAccountIsPresent(address), or general tests that check the number of items on each chain, like there are with chainlog stuff. Either way, I don't think this is the place to add those.
        
          
              
                Outdated
          
        
      There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: "empty diff" can be replaced with "no updates"
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
|  | @@ -272,6 +272,13 @@ | |
| * [ ] Target contract is not upgradable | ||
| * [ ] Target Contract is included in the ChainLog | ||
| * [ ] Test Coverage is comprehensive | ||
| * IF bug bounty registry updates are present | ||
|         
                  SidestreamBurningBanana marked this conversation as resolved.
              Show resolved
            Hide resolved | ||
| * [ ] Run `make safeharbor-generate` | ||
| * [ ] Verify that the generated code exactly matches the code in the spell | ||
| * [ ] Verify that output matches the instructions provided by Governance Facilitators | ||
| * [ ] Ensure that the script does not output any warnings, which are indicated by ⚠️ ❗ | ||
| * [ ] Ensure that agreement address is fetched from the Chainlog | ||
| * [ ] Ensure that the helper function to perform the call is present and is implemented using the established archive pattern | ||
| * IF spell interacts with ChainLog | ||
| * [ ] ChainLog version is incremented based on update type | ||
| * Major -> New Vat (++.0.0) | ||
|  | @@ -383,6 +390,7 @@ _Insert your local test logs here_ | |
| * [ ] All actions are executed in the transaction trace | ||
| * [ ] No reverts are present that block execution | ||
| * [ ] No out-of-gas errors are present | ||
| * [ ] `make safeharbor-generate` against the testnet returns "no updates" | ||
| There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Please also add a check for the warnings, according to this comment #47 (comment) | ||
| * Archive checks | ||
| * [ ] `make diff-archive-spell` for current date or `make diff-archive-spell date="YYYY-MM-DD"` | ||
| * [ ] Ensure date corresponds to target Exec Doc date | ||
|  | ||
Uh oh!
There was an error while loading. Please reload this page.