-
Notifications
You must be signed in to change notification settings - Fork 6
Added vaultSharesToken to IHyperdrive.PoolConfig
#892
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
Conversation
Hyperdrive Gas Benchmark
This comment was automatically generated by workflow using github-action-benchmark. |
sentilesdal
left a 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.
Went through the checklist, looks mostly mechanincal though. I double-checked that the integration tokens don't have safeTranfserFrom and left comments. We might want to add a comment to those tokens to make future reviews easier.
After this lands I'll go through the codegen again and update to these changes.
mcclurejt
left a 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.
LGTM, make sure to address FIXME if needed
c040347 to
c7b3941
Compare
28cf6d5 to
28a2499
Compare
contracts/src/deployers/erc4626/ERC4626HyperdriveDeployerCoordinator.sol
Outdated
Show resolved
Hide resolved
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.

Description
This PR adds a new field to
IHyperdrive.PoolConfigcalledvaultSharesToken. This unifies the interface for getting the vault shares token (something that was previously fragmented across different getters per instance) and also unifies the immutables used by different instances to reduce the complexity of instance implementations.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]]
Solidity
approvecalls useforceApprove?transfercalls usesafeTransfer?transferFromcalls usemsg.senderas thefromaddress?token spend?
call,delegatecall,staticcall,transfer,send)successboolean checked to handle failed calls?delegatecall, are there strict access controls on theaddresses that can be called? It shouldn't be possible to
delegatecallarbitrary addresses, so the list of possible targets should either be
immutable or tightly controlled by an admin.
nonReentrant?not a concern or how it's mitigated?
memory variables?
issues?
payablefunctions restricted to avoid stuck ether?catch underflows?
Safefunctions are altered, are potential underflows andoverflows caught so that a failure flag can be thrown?
covering the full input space?
Rust
covering the full input space?
ensure that Rust matches Solidity?
[[Matt Brown]]
Solidity
approvecalls useforceApprove?transfercalls usesafeTransfer?transferFromcalls usemsg.senderas thefromaddress?token spend?
call,delegatecall,staticcall,transfer,send)successboolean checked to handle failed calls?delegatecall, are there strict access controls on theaddresses that can be called? It shouldn't be possible to
delegatecallarbitrary addresses, so the list of possible targets should either be
immutable or tightly controlled by an admin.
nonReentrant?not a concern or how it's mitigated?
memory variables?
issues?
payablefunctions restricted to avoid stuck ether?catch underflows?
Safefunctions are altered, are potential underflows andoverflows caught so that a failure flag can be thrown?
covering the full input space?
Rust
covering the full input space?
ensure that Rust matches Solidity?
@mcclurejt
Solidity
approvecalls useforceApprove?transfercalls usesafeTransfer?transferFromcalls usemsg.senderas thefromaddress?token spend?
call,delegatecall,staticcall,transfer,send)successboolean checked to handle failed calls?delegatecall, are there strict access controls on theaddresses that can be called? It shouldn't be possible to
delegatecallarbitrary addresses, so the list of possible targets should either be
immutable or tightly controlled by an admin.
nonReentrant?not a concern or how it's mitigated?
memory variables?
issues?
payablefunctions restricted to avoid stuck ether?catch underflows?
Safefunctions are altered, are potential underflows andoverflows caught so that a failure flag can be thrown?
covering the full input space?
Rust
covering the full input space?
ensure that Rust matches Solidity?
Cash
Solidity
approvecalls useforceApprove?transfercalls usesafeTransfer?transferFromcalls usemsg.senderas thefromaddress?token spend?
call,delegatecall,staticcall,transfer,send)successboolean checked to handle failed calls?delegatecall, are there strict access controls on theaddresses that can be called? It shouldn't be possible to
delegatecallarbitrary addresses, so the list of possible targets should either be
immutable or tightly controlled by an admin.
nonReentrant?not a concern or how it's mitigated?
memory variables?
issues?
payablefunctions restricted to avoid stuck ether?catch underflows?
Safefunctions are altered, are potential underflows andoverflows caught so that a failure flag can be thrown?
covering the full input space?