Skip to content

Scroll review #10

@frisitano

Description

@frisitano

Feedback from scroll colleague:

overall it looks great, very clean. here's some initial feedback:

  • seems like extcodesize is the same as revm's original, why override it then? if the thinking is we can later add a version optimized for zkVM setup (loading code size from state instead of calling code.len()), then we can add that later.
  • for L1BlockInfo some of the terminology is not what we normally use. I guess you just followed the Optimism example here.
  • for fees I'm not sure we should use saturating_mul, etc. In the unlikely scenario where these overflow we should error instead of failing silently.
  • just want to confirm, is Context re-created for each transaction? asking because l1_block_info might change in the middle of a block.
  • precompile_not_implemented seems a bit different from how we disabled these in l2geth. not sure if this would break compatibility though.
  • fees: currently scroll uses a hardcoded "beneficiary", we either need to make sure to pass this in block.coinbase or need to consider this in the code. also our 1559 fee deduction is a bit different, as not ETH is burnt.
  • I see the Optimism version overrides some other things (validate_env, validate_tx_against_state, etc.), we don't need these changes?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions