-
Notifications
You must be signed in to change notification settings - Fork 14
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
Arbitrum/atlas v1.1 #445
base: arbitrum/atlas-v1.0
Are you sure you want to change the base?
Arbitrum/atlas v1.1 #445
Conversation
chore: update Atlas license
Co-authored-by: Ben Sparks <[email protected]>
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.
The changes in the AtlasConstants.sol I assume are intentional?
_LOCK_PHASE_MASK from bytes32 to uint256
Yes. Before we had to convert everything to/from bytes32 to use transient storage. Now with the |
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 - just one minor thing i noticed.
src/contracts/atlas/Escrow.sol
Outdated
@@ -92,12 +102,13 @@ abstract contract Escrow is AtlETH { | |||
{ | |||
bool _success; | |||
bytes memory _data; | |||
uint256 _gasLimit = userOp.gas > gasleft() ? gasleft() : userOp.gas; |
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.
Shouldn't there be an offset to allow graceful returns if we run out of gas? plus the issue about the call forcing 63/64? We may want to do gasleft() * 63 / 64 - gracefulReturnOffset', where
gracefulReturnOffset` is enough to store what we need and return the correct atlas-formatted error. (50k?)
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.
Yeah, good call, will add that
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.
PR here: #446
Will merge that into Atlas v1.1 and then update this Arbitrum version with the changes if PR is accepted.
refactor: contract size cuts
fix: userOp graceful return gas offset
feat: add `bidAmount` to `SolverTxResult` event
feat: add indexed dapp control address in solver tx result event
feat: add surcharge settings to deploy script
Changes:
Atlas contract size is 24,424 bytes (152 bytes below limit) and is thus deployable on Arbitrum.