delvtech / hyperdrive

An automated market maker for fixed and variable yield with on-demand terms.
Apache License 2.0
26 stars 3 forks source link

contract deployment + verification tooling #963

Closed mcclurejt closed 3 months ago

mcclurejt commented 4 months ago

Description

Contracts deployed via create2 don't automatically get verified in foundry, and they can be pretty difficult to get right manually. This automatically handles the verification process for a hyperdrive contract and its targets.

Explored a couple routes on how to best do this, and I liked the path of parsing TOML files and looping through for multi-chain deployments.

At present, the bulk of it is implemented but there's still some cleanup and artifact producing work to go. Wanted to get this up and see how y'all feel about it.

Review Checklists

Please check each item before approving the pull request. While going through the checklist, it is recommended to leave comments on items that are referenced in the checklist to make sure that they are reviewed. If there are multiple reviewers, copy the checklists into sections titled ## [Reviewer Name]. If the PR doesn't touch Solidity and/or Rust, the corresponding checklist can be removed.

[[Reviewer Name]]

Tooling

coveralls commented 4 months ago

Pull Request Test Coverage Report for Build 9001345568

Details


Totals Coverage Status
Change from base Build 8969663764: 0.0%
Covered Lines: 1833
Relevant Lines: 1966

💛 - Coveralls
github-actions[bot] commented 4 months ago

Hyperdrive Gas Benchmark

Benchmark suite Current: f9965825f07c505df5564cd9ee33a20058c498d4 Previous: fee327731672c92ce71cc350a996016a30c5a617 Deviation Status
addLiquidity: min 33827 gas 33827 gas 0% 🟰
addLiquidity: avg 156354 gas 156220 gas 0.0858% 🚨
addLiquidity: max 428417 gas 428439 gas -0.0051% ✅
checkpoint: min 40292 gas 40270 gas 0.0546% 🚨
checkpoint: avg 142297 gas 142275 gas 0.0155% 🚨
checkpoint: max 253424 gas 253402 gas 0.0087% 🚨
closeLong: min 31361 gas 31361 gas 0% 🟰
closeLong: avg 135423 gas 135375 gas 0.0355% 🚨
closeLong: max 2625796 gas 2625774 gas 0.0008% 🚨
closeShort: min 31349 gas 31349 gas 0% 🟰
closeShort: avg 131728 gas 131559 gas 0.1285% 🚨
closeShort: max 402104 gas 401793 gas 0.0774% 🚨
initialize: min 31371 gas 31371 gas 0% 🟰
initialize: avg 330360 gas 330281 gas 0.0239% 🚨
initialize: max 396259 gas 396281 gas -0.0056% ✅
openLong: min 33370 gas 33370 gas 0% 🟰
openLong: avg 173347 gas 173566 gas -0.1262% ✅
openLong: max 306657 gas 306679 gas -0.0072% ✅
openShort: min 33936 gas 33936 gas 0% 🟰
openShort: avg 168055 gas 167896 gas 0.0947% 🚨
openShort: max 415379 gas 414945 gas 0.1046% 🚨
redeemWithdrawalShares: min 31251 gas 31251 gas 0% 🟰
redeemWithdrawalShares: avg 74772 gas 74650 gas 0.1634% 🚨
redeemWithdrawalShares: max 209828 gas 209762 gas 0.0315% 🚨
removeLiquidity: min 31301 gas 31301 gas 0% 🟰
removeLiquidity: avg 208894 gas 208656 gas 0.1141% 🚨
removeLiquidity: max 403640 gas 403574 gas 0.0164% 🚨

This comment was automatically generated by workflow using github-action-benchmark.