-
Notifications
You must be signed in to change notification settings - Fork 54
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
Mainnet spell 2025-01-23 #447
Conversation
good to deploy! Mainnet Executive Spell Review ChecklistDevelopment Stage
_Insert your local test logs here_
./scripts/test-dssspell-forge.sh no-match="" match="" block=""
Using DssExecLib at: 0x8De6DDbCd5053d32292AAA0D2105A32d108484a6
[⠊] Compiling...
[⠊] Compiling 6 files with Solc 0.8.16
[⠒] Solc 0.8.16 finished in 3.06s
Compiler run successful!
Ran 2 tests for src/test/starknet.t.sol:StarknetTests
[PASS] testStarknet() (gas: 6984923)
[PASS] testStarknetSpell() (gas: 2302)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 61.10s (56.09s CPU time)
Warning: the following cheatcode(s) are deprecated and will be removed in future versions:
revertTo(uint256): replaced by `revertToState`
snapshot(): replaced by `snapshotState`
Ran 43 tests for src/DssSpell.t.sol:DssSpellTest
[SKIP] testAllocatorIntegration() (gas: 0)
[SKIP] testBytecodeMatches() (gas: 0)
[PASS] testCastCost() (gas: 6817709)
[PASS] testCastOnTime() (gas: 6813459)
[PASS] testChainlogIntegrity() (gas: 12313632)
[PASS] testChainlogValues() (gas: 16751022)
[SKIP] testCollateralIntegrations() (gas: 0)
[PASS] testContractSize() (gas: 15810)
[PASS] testDaoResolutions() (gas: 16326)
[PASS] testDeployCost() (gas: 3058422)
[SKIP] testEsmAuth() (gas: 0)
[PASS] testGeneral() (gas: 37500382)
[SKIP] testIlkClipper() (gas: 0)
[SKIP] testL2ArbitrumSpell() (gas: 0)
[SKIP] testL2OptimismSpell() (gas: 0)
[SKIP] testLerpSurplusBuffer() (gas: 0)
[PASS] testLitePSMs() (gas: 7866552)
[SKIP] testLockstakeIlkIntegration() (gas: 0)
[SKIP] testMedianReaders() (gas: 0)
[PASS] testNewAuthorizations() (gas: 6839861)
[SKIP] testNewCronJobs() (gas: 0)
[PASS] testNewSkyVestConstructor() (gas: 16063)
[PASS] testNewUsdsVestConstructor() (gas: 16127)
[PASS] testNextCastTime() (gas: 458603)
[SKIP] testOffboardings() (gas: 0)
[PASS] testOfficeHours() (gas: 498150)
[SKIP] testOracleList() (gas: 0)
[SKIP] testOsmReaders() (gas: 0)
[PASS] testPSMs() (gas: 8278851)
[PASS] testPayments() (gas: 7180671)
[SKIP] testRemoveChainlogValues() (gas: 0)
[PASS] testRevertIfNotScheduled() (gas: 17618)
[PASS] testSparkSpellIsExecuted() (gas: 6819440)
[PASS] testSplitter() (gas: 7383897)
[PASS] testSystemTokens() (gas: 8163381)
[PASS] testUseEta() (gas: 354764)
[SKIP] testVestDAI() (gas: 0)
[SKIP] testVestMKR() (gas: 0)
[PASS] testVestSKY() (gas: 7078758)
[SKIP] testVestSKYmint() (gas: 0)
[PASS] testVestUSDS() (gas: 7153246)
[SKIP] testYankDAI() (gas: 0)
[SKIP] testYankMKR() (gas: 0)
Suite result: ok. 23 passed; 0 failed; 20 skipped; finished in 373.93s (1028.35s CPU time)
Ran 2 test suites in 374.73s (435.03s CPU time): 25 tests passed, 0 failed, 20 skipped (45 total tests) Pre-Deployment Stage
|
} | ||
|
||
function testVestSKY() public skipped { // add the `skipped` modifier to skip | ||
function testVestSKYmint() public skipped { // add the `skipped` modifier to skip |
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: case
function testVestSKYmint() public skipped { // add the `skipped` modifier to skip | |
function testVestSKYMint() public skipped { // add the `skipped` modifier to skip |
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.
The correct naming here is debatable. We would normally call it testVestSkyMint
, but this option was chosen to keep it consistent with testVestMKR
and others. Anyway, I think I would skip this one to not introduce any new changes and break the reviews, since it's just a test name 🙂
TL;DRFound 1 little nit. If the crafter accepts the suggestion I made inline, there is no need for another approval from myself. Other than that, it's good to deploy Mainnet Executive Spell Review ChecklistDevelopment Stage
./scripts/test-dssspell-forge.sh no-match="" match="" block=""
Using DssExecLib at: 0x8De6DDbCd5053d32292AAA0D2105A32d108484a6
[⠊] Compiling...
[⠊] Compiling 113 files with Solc 0.8.16
[⠒] Solc 0.8.16 finished in 2.86s
Compiler run successful!
Ran 2 tests for src/test/starknet.t.sol:StarknetTests
[PASS] testStarknet() (gas: 7000630)
[PASS] testStarknetSpell() (gas: 2302)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 45.93s (42.60s CPU time)
Warning: the following cheatcode(s) are deprecated and will be removed in future versions:
revertTo(uint256): replaced by `revertToState`
snapshot(): replaced by `snapshotState`
Ran 43 tests for src/DssSpell.t.sol:DssSpellTest
[SKIP] testAllocatorIntegration() (gas: 0)
[SKIP] testBytecodeMatches() (gas: 0)
[PASS] testCastCost() (gas: 6833416)
[PASS] testCastOnTime() (gas: 6829166)
[PASS] testChainlogIntegrity() (gas: 12329339)
[PASS] testChainlogValues() (gas: 16766729)
[SKIP] testCollateralIntegrations() (gas: 0)
[PASS] testContractSize() (gas: 15810)
[PASS] testDaoResolutions() (gas: 16326)
[PASS] testDeployCost() (gas: 3058422)
[SKIP] testEsmAuth() (gas: 0)
[PASS] testGeneral() (gas: 37516089)
[SKIP] testIlkClipper() (gas: 0)
[SKIP] testL2ArbitrumSpell() (gas: 0)
[SKIP] testL2OptimismSpell() (gas: 0)
[SKIP] testLerpSurplusBuffer() (gas: 0)
[PASS] testLitePSMs() (gas: 7882259)
[SKIP] testLockstakeIlkIntegration() (gas: 0)
[SKIP] testMedianReaders() (gas: 0)
[PASS] testNewAuthorizations() (gas: 6855568)
[SKIP] testNewCronJobs() (gas: 0)
[PASS] testNewSkyVestConstructor() (gas: 16063)
[PASS] testNewUsdsVestConstructor() (gas: 16127)
[PASS] testNextCastTime() (gas: 458603)
[SKIP] testOffboardings() (gas: 0)
[PASS] testOfficeHours() (gas: 498043)
[SKIP] testOracleList() (gas: 0)
[SKIP] testOsmReaders() (gas: 0)
[PASS] testPSMs() (gas: 8291416)
[PASS] testPayments() (gas: 7196378)
[SKIP] testRemoveChainlogValues() (gas: 0)
[PASS] testRevertIfNotScheduled() (gas: 17618)
[PASS] testSparkSpellIsExecuted() (gas: 6835147)
[PASS] testSplitter() (gas: 7399604)
[PASS] testSystemTokens() (gas: 8175991)
[PASS] testUseEta() (gas: 354764)
[SKIP] testVestDAI() (gas: 0)
[SKIP] testVestMKR() (gas: 0)
[PASS] testVestSKY() (gas: 7094465)
[SKIP] testVestSKYmint() (gas: 0)
[PASS] testVestUSDS() (gas: 7165812)
[SKIP] testYankDAI() (gas: 0)
[SKIP] testYankMKR() (gas: 0)
Suite result: ok. 23 passed; 0 failed; 20 skipped; finished in 359.97s (1129.15s CPU time)
Ran 2 test suites in 360.55s (405.90s CPU time): 25 tests passed, 0 failed, 20 skipped (45 total tests) Pre-Deployment Stage
|
|
Good to handover! Deployed Stage
_Insert your local test logs here_
./scripts/test-dssspell-forge.sh no-match="" match="" block=""
Using DssExecLib at: 0x8De6DDbCd5053d32292AAA0D2105A32d108484a6
[⠊] Compiling...
[⠒] Compiling 4 files with Solc 0.8.16
[⠘] Solc 0.8.16 finished in 2.65s
Compiler run successful!
Ran 2 tests for src/test/starknet.t.sol:StarknetTests
[PASS] testStarknet() (gas: 6883416)
[PASS] testStarknetSpell() (gas: 2302)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 55.41s (52.27s CPU time)
Warning: the following cheatcode(s) are deprecated and will be removed in future versions:
snapshot(): replaced by `snapshotState`
revertTo(uint256): replaced by `revertToState`
Ran 43 tests for src/DssSpell.t.sol:DssSpellTest
[SKIP] testAllocatorIntegration() (gas: 0)
[PASS] testBytecodeMatches() (gas: 3078970)
[PASS] testCastCost() (gas: 6716202)
[PASS] testCastOnTime() (gas: 6711952)
[PASS] testChainlogIntegrity() (gas: 12212125)
[PASS] testChainlogValues() (gas: 16649515)
[SKIP] testCollateralIntegrations() (gas: 0)
[SKIP] testContractSize() (gas: 0)
[PASS] testDaoResolutions() (gas: 16326)
[SKIP] testDeployCost() (gas: 0)
[SKIP] testEsmAuth() (gas: 0)
[PASS] testGeneral() (gas: 37400972)
[SKIP] testIlkClipper() (gas: 0)
[SKIP] testL2ArbitrumSpell() (gas: 0)
[SKIP] testL2OptimismSpell() (gas: 0)
[SKIP] testLerpSurplusBuffer() (gas: 0)
[PASS] testLitePSMs() (gas: 7765045)
[SKIP] testLockstakeIlkIntegration() (gas: 0)
[SKIP] testMedianReaders() (gas: 0)
[PASS] testNewAuthorizations() (gas: 6738354)
[SKIP] testNewCronJobs() (gas: 0)
[PASS] testNewSkyVestConstructor() (gas: 16063)
[PASS] testNewUsdsVestConstructor() (gas: 16127)
[PASS] testNextCastTime() (gas: 458603)
[SKIP] testOffboardings() (gas: 0)
[PASS] testOfficeHours() (gas: 498043)
[SKIP] testOracleList() (gas: 0)
[SKIP] testOsmReaders() (gas: 0)
[PASS] testPSMs() (gas: 8197645)
[PASS] testPayments() (gas: 7079164)
[SKIP] testRemoveChainlogValues() (gas: 0)
[PASS] testRevertIfNotScheduled() (gas: 17618)
[PASS] testSparkSpellIsExecuted() (gas: 6717933)
[PASS] testSplitter() (gas: 7282390)
[PASS] testSystemTokens() (gas: 8082359)
[PASS] testUseEta() (gas: 354764)
[SKIP] testVestDAI() (gas: 0)
[SKIP] testVestMKR() (gas: 0)
[PASS] testVestSKY() (gas: 6992388)
[SKIP] testVestSKYmint() (gas: 0)
[PASS] testVestUSDS() (gas: 7072040)
[SKIP] testYankDAI() (gas: 0)
[SKIP] testYankMKR() (gas: 0)
Suite result: ok. 22 passed; 0 failed; 21 skipped; finished in 390.82s (954.80s CPU time)
Ran 2 test suites in 391.72s (446.23s CPU time): 24 tests passed, 0 failed, 21 skipped (45 total tests) |
Good to handover 🤝 Deployed Stage
./scripts/test-dssspell-forge.sh no-match="" match="" block=""
Using DssExecLib at: 0x8De6DDbCd5053d32292AAA0D2105A32d108484a6
[⠊] Compiling...
[⠃] Compiling 112 files with Solc 0.8.16
[⠒] Solc 0.8.16 finished in 3.88s
Compiler run successful!
Ran 2 tests for src/test/starknet.t.sol:StarknetTests
[PASS] testStarknet() (gas: 6862440)
[PASS] testStarknetSpell() (gas: 2302)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 43.59s (41.65s CPU time)
Warning: the following cheatcode(s) are deprecated and will be removed in future versions:
snapshot(): replaced by `snapshotState`
revertTo(uint256): replaced by `revertToState`
Ran 43 tests for src/DssSpell.t.sol:DssSpellTest
[SKIP] testAllocatorIntegration() (gas: 0)
[PASS] testBytecodeMatches() (gas: 3078970)
[PASS] testCastCost() (gas: 6695226)
[PASS] testCastOnTime() (gas: 6690976)
[PASS] testChainlogIntegrity() (gas: 12191149)
[PASS] testChainlogValues() (gas: 16628539)
[SKIP] testCollateralIntegrations() (gas: 0)
[SKIP] testContractSize() (gas: 0)
[PASS] testDaoResolutions() (gas: 16326)
[SKIP] testDeployCost() (gas: 0)
[SKIP] testEsmAuth() (gas: 0)
[PASS] testGeneral() (gas: 37379996)
[SKIP] testIlkClipper() (gas: 0)
[SKIP] testL2ArbitrumSpell() (gas: 0)
[SKIP] testL2OptimismSpell() (gas: 0)
[SKIP] testLerpSurplusBuffer() (gas: 0)
[PASS] testLitePSMs() (gas: 7706721)
[SKIP] testLockstakeIlkIntegration() (gas: 0)
[SKIP] testMedianReaders() (gas: 0)
[PASS] testNewAuthorizations() (gas: 6717378)
[SKIP] testNewCronJobs() (gas: 0)
[PASS] testNewSkyVestConstructor() (gas: 16063)
[PASS] testNewUsdsVestConstructor() (gas: 16127)
[PASS] testNextCastTime() (gas: 458603)
[SKIP] testOffboardings() (gas: 0)
[PASS] testOfficeHours() (gas: 498637)
[SKIP] testOracleList() (gas: 0)
[SKIP] testOsmReaders() (gas: 0)
[PASS] testPSMs() (gas: 8180864)
[PASS] testPayments() (gas: 7058188)
[SKIP] testRemoveChainlogValues() (gas: 0)
[PASS] testRevertIfNotScheduled() (gas: 17618)
[PASS] testSparkSpellIsExecuted() (gas: 6696957)
[PASS] testSplitter() (gas: 7261414)
[PASS] testSystemTokens() (gas: 8065296)
[PASS] testUseEta() (gas: 354764)
[SKIP] testVestDAI() (gas: 0)
[SKIP] testVestMKR() (gas: 0)
[PASS] testVestSKY() (gas: 6975608)
[SKIP] testVestSKYmint() (gas: 0)
[PASS] testVestUSDS() (gas: 7055260)
[SKIP] testYankDAI() (gas: 0)
[SKIP] testYankMKR() (gas: 0)
Suite result: ok. 22 passed; 0 failed; 21 skipped; finished in 350.71s (1111.11s CPU time)
Ran 2 test suites in 351.16s (394.30s CPU time): 24 tests passed, 0 failed, 21 skipped (45 total tests) |
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.
Good to merge ✅
Handover and Merge Stage
- Check that the spell address posted by the crafter in
new-spells
is correct - Confirm the address in the
new-spells
channel (via a separate "reply to" message, restating the address to avoid edits)- Wait until responsible governance facilitator confirms handover in
new-spells
- Wait until responsible governance facilitator confirms handover in
- Ensure that no changes were made to the code since the spell was deployed and archived
- Approve spell PR for merge via 'Approve' review option
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.
Handover and Merge Stage
- Check that the spell address posted by the crafter in
new-spells
is correct - Confirm the address in the
new-spells
channel (via a separate "reply to" message, restating the address to avoid edits)- Wait until responsible governance facilitator confirms handover in
new-spells
- Wait until responsible governance facilitator confirms handover in
- Ensure that no changes were made to the code since the spell was deployed and archived
- Approve spell PR for merge via 'Approve' review option
Description
Spell crafted based on the relevant Executive Sheet.
Contribution Checklist
Checklist
officeHours
modifier override30 days
unless otherwise specified)ETH_GAS_LIMIT="XXX" ETH_GAS_PRICE="YYY" make deploy
mainnet
contract on etherscanmake archive-spell
ormake date="YYYY-MM-DD" archive-spell
to make an archive directory and copyDssSpell.sol
,DssSpell.t.sol
,DssSpell.t.base.sol
, andDssSpellCollateralOnboarding.sol
squash and merge
this PR