Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
N
nebula
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
exchain
nebula
Commits
1afd173e
Unverified
Commit
1afd173e
authored
Apr 10, 2023
by
Joshua Gutow
Committed by
GitHub
Apr 10, 2023
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #5401 from ethereum-optimism/qbzzt/230310-spec-withdrawal
fix(specs): Rename l1Fee<x> to <x>
parents
cbb0bb5d
0f8a7e8d
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
9 deletions
+12
-9
deposits.md
specs/deposits.md
+7
-5
system_config.md
specs/system_config.md
+5
-4
No files found.
specs/deposits.md
View file @
1afd173e
...
@@ -118,8 +118,9 @@ Although we define only one new transaction type, we can distinguish between two
...
@@ -118,8 +118,9 @@ Although we define only one new transaction type, we can distinguish between two
transactions, based on their positioning in the L2 block:
transactions, based on their positioning in the L2 block:
1.
The first transaction MUST be a
[
L1 attributes deposited transaction
][
l1-attr-deposit
]
, followed by
1.
The first transaction MUST be a
[
L1 attributes deposited transaction
][
l1-attr-deposit
]
, followed by
2.
an array of zero-or-more
[
user-deposited transactions
][
user-deposited
]
submitted to the deposit
2.
an array of zero-or-more
[
user-deposited transactions
][
user-deposited
]
feed contract on L1 (called
`OptimismPortal`
). User-deposited transactions are only present in the first block of a L2 epoch.
submitted to the deposit feed contract on L1 (called
`OptimismPortal`
).
User-deposited transactions are only present in the first block of a L2 epoch.
We only define a single new transaction type in order to minimize modifications to L1 client
We only define a single new transaction type in order to minimize modifications to L1 client
software, and complexity in general.
software, and complexity in general.
...
@@ -288,8 +289,8 @@ The predeploy stores the following values:
...
@@ -288,8 +289,8 @@ The predeploy stores the following values:
and reset to 0 at the start of a new epoch.
and reset to 0 at the start of a new epoch.
-
System configurables tied to the L1 block, see
[
System configuration specification
](
./system_config.md
)
:
-
System configurables tied to the L1 block, see
[
System configuration specification
](
./system_config.md
)
:
-
`batcherHash`
(
`bytes32`
): A versioned commitment to the batch-submitter(s) currently operating.
-
`batcherHash`
(
`bytes32`
): A versioned commitment to the batch-submitter(s) currently operating.
-
`
l1FeeO
verhead`
(
`uint256`
): The L1 fee overhead to apply to L1 cost computation of transactions in this L2 block.
-
`
o
verhead`
(
`uint256`
): The L1 fee overhead to apply to L1 cost computation of transactions in this L2 block.
-
`
l1FeeS
calar`
(
`uint256`
): The L1 fee scalar to apply to L1 cost computation of transactions in this L2 block.
-
`
s
calar`
(
`uint256`
): The L1 fee scalar to apply to L1 cost computation of transactions in this L2 block.
The contract implements an authorization scheme, such that it only accepts state-changing calls from
The contract implements an authorization scheme, such that it only accepts state-changing calls from
the
[
depositor account
][
depositor-account
]
.
the
[
depositor account
][
depositor-account
]
.
...
@@ -320,7 +321,8 @@ generated by the [L2 Chain Derivation][g-derivation] process. The content of eac
...
@@ -320,7 +321,8 @@ generated by the [L2 Chain Derivation][g-derivation] process. The content of eac
transaction are determined by the corresponding
`TransactionDeposited`
event emitted by the
transaction are determined by the corresponding
`TransactionDeposited`
event emitted by the
[
deposit contract
][
deposit-contract
]
on L1.
[
deposit contract
][
deposit-contract
]
on L1.
1.
`from`
is unchanged from the emitted value (though it may have been transformed to an alias in
`OptimismPortal`
, the deposit feed contract).
1.
`from`
is unchanged from the emitted value (though it may
have been transformed to an alias in
`OptimismPortal`
, the deposit feed contract).
2.
`to`
is any 20-byte address (including the zero address)
2.
`to`
is any 20-byte address (including the zero address)
-
In case of a contract creation (cf.
`isCreation`
), this address is set to
`null`
.
-
In case of a contract creation (cf.
`isCreation`
), this address is set to
`null`
.
3.
`mint`
is set to the emitted value.
3.
`mint`
is set to the emitted value.
...
...
specs/system_config.md
View file @
1afd173e
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
-
[
System config contents (version 0)
](
#system-config-contents-version-0
)
-
[
System config contents (version 0)
](
#system-config-contents-version-0
)
-
[
`batcherHash` (`bytes32`)
](
#batcherhash-bytes32
)
-
[
`batcherHash` (`bytes32`)
](
#batcherhash-bytes32
)
-
[
`
l1FeeOverhead` and `l1FeeScalar` (`uint256,uint256`)
](
#l1feeoverhead-and-l1fee
scalar-uint256uint256
)
-
[
`
overhead` and `scalar` (`uint256,uint256`)
](
#overhead-and-
scalar-uint256uint256
)
-
[
`gasLimit` (`uint64`)
](
#gaslimit-uint64
)
-
[
`gasLimit` (`uint64`)
](
#gaslimit-uint64
)
-
[
`unsafeBlockSigner` (`address`)
](
#unsafeblocksigner-address
)
-
[
`unsafeBlockSigner` (`address`)
](
#unsafeblocksigner-address
)
-
[
Writing the system config
](
#writing-the-system-config
)
-
[
Writing the system config
](
#writing-the-system-config
)
...
@@ -31,7 +31,7 @@ Version `0` embeds the current batch submitter ethereum address (`bytes20`) in t
...
@@ -31,7 +31,7 @@ Version `0` embeds the current batch submitter ethereum address (`bytes20`) in t
In the future this versioned hash may become a commitment to a more extensive configuration,
In the future this versioned hash may become a commitment to a more extensive configuration,
to enable more extensive redundancy and/or rotation configurations.
to enable more extensive redundancy and/or rotation configurations.
### `
l1FeeOverhead` and `l1FeeS
calar` (`uint256,uint256`)
### `
overhead` and `s
calar` (`uint256,uint256`)
The L1 fee parameters, also known as Gas Price Oracle (GPO) parameters,
The L1 fee parameters, also known as Gas Price Oracle (GPO) parameters,
are updated in conjunction and apply new L1 costs to the L2 transactions.
are updated in conjunction and apply new L1 costs to the L2 transactions.
...
@@ -70,7 +70,7 @@ A rollup node initializes its derivation process by finding a starting point bas
...
@@ -70,7 +70,7 @@ A rollup node initializes its derivation process by finding a starting point bas
-
When started from L2 genesis, the initial system configuration is retrieved from the rollup chain configuration.
-
When started from L2 genesis, the initial system configuration is retrieved from the rollup chain configuration.
-
When started from an existing L2 chain, a previously included L1 block is determined as derivation starting point,
-
When started from an existing L2 chain, a previously included L1 block is determined as derivation starting point,
and the system config can thus be retrieved from the last L2 block that referenced the L1 block as L1 origin:
and the system config can thus be retrieved from the last L2 block that referenced the L1 block as L1 origin:
-
`batcherHash`
,
`
l1FeeOverhead`
and
`l1FeeS
calar`
are retrieved from the L1 block info transaction.
-
`batcherHash`
,
`
overhead`
and
`s
calar`
are retrieved from the L1 block info transaction.
-
`gasLimit`
is retrieved from the L2 block header.
-
`gasLimit`
is retrieved from the L2 block header.
-
other future variables may also be retrieved from other contents of the L2 block, such as the header.
-
other future variables may also be retrieved from other contents of the L2 block, such as the header.
...
@@ -86,8 +86,9 @@ The contained log events are filtered and processed as follows:
...
@@ -86,8 +86,9 @@ The contained log events are filtered and processed as follows:
-
the remaining event data is opaque, encoded as ABI bytes (i.e. includes offset and length data),
-
the remaining event data is opaque, encoded as ABI bytes (i.e. includes offset and length data),
and encodes the configuration update. In version
`0`
the following types are supported:
and encodes the configuration update. In version
`0`
the following types are supported:
-
type
`0`
:
`batcherHash`
overwrite, as
`bytes32`
payload.
-
type
`0`
:
`batcherHash`
overwrite, as
`bytes32`
payload.
-
type
`1`
:
`
l1FeeOverhead`
and
`l1FeeS
calar`
overwrite, as two packed
`uint256`
entries.
-
type
`1`
:
`
overhead`
and
`s
calar`
overwrite, as two packed
`uint256`
entries.
-
type
`2`
:
`gasLimit`
overwrite, as
`uint64`
payload.
-
type
`2`
:
`gasLimit`
overwrite, as
`uint64`
payload.
-
type
`3`
:
`unsafeBlockSigner`
overwrite, as
`address`
payload.
Note that individual derivation stages may be processing different L1 blocks,
Note that individual derivation stages may be processing different L1 blocks,
and should thus maintain individual system configuration copies,
and should thus maintain individual system configuration copies,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment