Skip to content

L1 To L2 Transaction Queue#137

Merged
K-Ho merged 4 commits intomasterfrom
YAS-371/RollupChain/L1ToL2TransactionQueue
May 14, 2020
Merged

L1 To L2 Transaction Queue#137
K-Ho merged 4 commits intomasterfrom
YAS-371/RollupChain/L1ToL2TransactionQueue

Conversation

@K-Ho
Copy link
Copy Markdown
Contributor

@K-Ho K-Ho commented May 14, 2020

Description

Implementation of L1ToL2 Transaction Queue. I will eventually separate the RollupList into RollupQueue and RollupStack contracts to clean up this code, but will do so once I implement the rest of the queues/stacks and know what the best way to do that separation is.

Questions

  • Should we move the L1ToL2TransactionPasser into the rollup-contracts package?

Fixes

  • Fixes #YAS371

Contributing Agreement

Copy link
Copy Markdown
Collaborator

@ben-chain ben-chain left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Woot woot!!! Looks good to me 😁

Comment on lines +140 to +148
try {
// delete the single appended block
await l1ToL2TxQueue.dequeueBeforeInclusive(blockIndex)
} catch (err) {
// Success we threw an error!
return
}
throw new Error(
'Allowed non-canonicalTransactionChain account to dequeue block'
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same test util comment

Comment on lines +83 to +88
try {
await l1ToL2TxQueue.enqueueBlock(block)
} catch (err) {
// Success we threw an error!
return
}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note we do have a TestUtils.assertThrowsAsync which replicates this functionality :)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would also check the error that is thrown to make sure it is doing the right thing vs failing for some other reason when doing the wrong thing.

Copy link
Copy Markdown

@willmeister willmeister left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Comment on lines +83 to +88
try {
await l1ToL2TxQueue.enqueueBlock(block)
} catch (err) {
// Success we threw an error!
return
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would also check the error that is thrown to make sure it is doing the right thing vs failing for some other reason when doing the wrong thing.

import { DefaultRollupBlock } from './RLhelper'

/* Logging */
const log = getLogger('l1-to-l2-tx-queue')
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
const log = getLogger('l1-to-l2-tx-queue')
const log = getLogger('l1-to-l2-tx-queue', true)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh yes good point, come to think of it I think there is an assertRevertsAsync which accepts an EVM revert message to check!

@K-Ho K-Ho merged commit 6e1b97c into master May 14, 2020
@K-Ho K-Ho mentioned this pull request May 14, 2020
1 task
@K-Ho K-Ho deleted the YAS-371/RollupChain/L1ToL2TransactionQueue branch September 1, 2020 20:32
snario pushed a commit that referenced this pull request Apr 14, 2021
* fix rlp encoding bug in contract dump

* lint
bap2pecs pushed a commit to babylonlabs-io/optimism that referenced this pull request Jul 31, 2024
blockchaindevsh pushed a commit to blockchaindevsh/optimism that referenced this pull request Jan 25, 2025
theochap pushed a commit that referenced this pull request Dec 10, 2025
## Overview

Fixes the release plz job by using the same versions of `alloy-*` crates
in `kona-mpt` as in `kona-derive`
theochap pushed a commit that referenced this pull request Jan 15, 2026
## Overview

Removes the `Holocene` variant of the L1 info transaction. The
specification of the dynamic EIP-1559 parameters has changed to put this
feature in the `PayloadAttributes` instead.

ethereum-optimism/specs#404
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants