Skip to content

Develop -> Master PR#3959

Merged
mslipper merged 116 commits intomasterfrom
develop
Nov 10, 2022
Merged

Develop -> Master PR#3959
mslipper merged 116 commits intomasterfrom
develop

Conversation

@tynes
Copy link
Copy Markdown
Contributor

@tynes tynes commented Nov 10, 2022

Description

Begin the release process

protolambda and others added 30 commits October 30, 2022 01:01
This is required for tooling to work with the migration,
it expects that network names are consistent across packages.
* op-node,contracts-bedrock: dynamic gas limit via SystemConfig

* specs: fix gas limit type

* specs: test missing gas limit

* op-chain-ops: fix system config initialize call, use default L2 gas limit

* go: update op-geth dependencies for dynamic gas limit change

* op-chain-ops: fix 2nd missing default
This will make debugging the migration much easier by wrapping
errors during the migration.
https://github.com/miguelmota/go-ethereum-hdwallet is no longer
maintained and is using older versions of dependencies. There are
dependencies clashing when trying to update code elsewhere in the
codebase.

https://github.com/tynes/go-ethereum-hdwallet is a fork with updated
deps such that we can more easily update other deps in the codebase
and drop old deps.
There was a typo in the config for building/publishing
the `ethereumoptimism/hardhat-node` docker image.
This fixes that typo so that builds can be properly
published to dockerhub.
Bumped compiler version for contracts-bedrock
contracts-periphery: make the network name match contracts
deps: replace deprecated package with updated package
[op-node] Check that BlockNumber is non-nil in the receipt validation
* op-node: Prefer following seq drift instead of conf depth

We found a log on a testnet where a batch was rejected because it's
timestamp was greater than the origin timestamp + sequencer drift.
I looked into origin selection and determined we produce empty blocks
if the block time is ahead of the origin + seq drift; however if there
is a next origin, it is not enough to produce an empty block, we must
change the origin.

I hypothesize that this occurred because the L1 head that the node was
looking at was lagging. That would cause the node to keep using an
old origin even if the timestamp was past the max drift. I added
a unit test which shows this case & would fail without this fix
being applied.

* op-node: Don't immediately attempt to advance origin

If the current origin is past the sequencer drift, it needs to
ignore the conf depth staying, but does still need to check next
L2 block time against the next origin time.

I've also added a test for this case.
* op-batcher: Rewrite ChannelManager

The channel manager is now responsible for tracking in flight frames
and properly handling different error conditions.

* op-batcher: String() & TerminalString() for txID

* op-batcher: Remove channelPending bool

* op-batcher: Fix wraparound bug in timeout check

* op-batcher: Comments + Logging

* op-batcher: Properly exit loop
* bedrock: update op-geth dependency

* chore: add changeset

Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com>
op-node: catch up L2 sequencing based on time, not L1 origins
Adds comments to SystemConfig functions and variables.
Co-authored-by: protolambda <proto@protolambda.com>
Co-authored-by: protolambda <proto@protolambda.com>
trianglesphere and others added 18 commits November 9, 2022 15:08
ci: Split go-bedrock tests & use circle CI parallelism for op-e2e
The test was flaking on the issue that l2 verifier head + conf depth
was ahead of the sequencer head. I noticed that we were occasionally
having to force advancing the L1 Origin because of the high conf depth
relative to the sequencer depth.
…cer_drift_test

op-e2e: Increase sequencer drift in sequencer conf depth test
…interface

fix: move MintableERC721 interface
…facts

ENG-2990 updates ci to tag docker images with sha, branch, release tags
…-job

fix missing directory in docker-tag job
…cker-tag-job

fixes a few bugs and better error handling for docker-tag job
@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Nov 10, 2022

🦋 Changeset detected

Latest commit: 2710a9f

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 10 packages
Name Type
@eth-optimism/contracts-bedrock Patch
@eth-optimism/hardhat-node Patch
@eth-optimism/drippie-mon Patch
@eth-optimism/fault-detector Patch
@eth-optimism/message-relayer Patch
@eth-optimism/replica-healthcheck Patch
@eth-optimism/endpoint-monitor Patch
@eth-optimism/indexer Patch
@eth-optimism/actor-tests Patch
@eth-optimism/sdk Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@tynes tynes requested review from mslipper and smartcontracts and removed request for mslipper November 10, 2022 16:36
@github-actions github-actions bot added 2-reviewers A-pkg-contracts-bedrock Area: packages/contracts-bedrock A-op-bindings Area: op-bindings A-ops Area: ops labels Nov 10, 2022
@mergify mergify bot added the A-indexer Area: indexer label Nov 10, 2022
@mergify mergify bot requested review from nickbalestra and roninjin10 November 10, 2022 16:36
@mslipper mslipper merged commit d1bad88 into master Nov 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-indexer Area: indexer A-op-bindings Area: op-bindings A-ops Area: ops A-pkg-contracts-bedrock Area: packages/contracts-bedrock

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants