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
b942a736
Commit
b942a736
authored
Mar 30, 2023
by
Andreas Bigger
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lift common proposer specs
parent
7092a505
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
9 deletions
+5
-9
proposals.md
specs/proposals.md
+5
-9
No files found.
specs/proposals.md
View file @
b942a736
...
...
@@ -38,7 +38,10 @@ are part of later specification milestones.
## Proposing L2 Output Commitments
The proposer's role is to construct and submit output roots, which are commitments to the L2's state,
to the
`L2OutputOracle`
contract on L1 (the settlement layer).
to the
`L2OutputOracle`
contract on L1 (the settlement layer). To do this, the proposer periodically
queries the
[
rollup node
](
./rollup-node.md
)
for the latest output root derived from the latest
[
finalized
](
rollup-node.md#finalization-guarantees
)
L1 block. It then takes the output root and
submits it to the
`L2OutputOracle`
contract on the settlement layer (L1).
### L2OutputOracle v1.0.0
...
...
@@ -85,14 +88,7 @@ proposer implementations may submit valid outputs at any time. A more ideal impl
will use heuristics such as time of last submission or number of pending withdrawals that have
yet to be included in an output proposal.
In order to post outputs to the
`L2OutputOracle`
, the proposer needs to periodically query the
[
rollup node
](
./rollup-node.md
)
's
[
`optimism_outputAtBlock` rpc method
](
./rollup-node.md#l2-output-rpc-method
)
for the latest output root derived from the latest
[
finalized
](
rollup-node.md#finalization-guarantees
)
L1 block.
It then takes the output root and submits it to the
`L2OutputOracle`
contract on the settlement layer (L1).
A single iteration of the proposer (posting one output root to L1) is depicted below:
A single iteration of this proposer (posting one output root to L1) is depicted below:
```
mermaid
sequenceDiagram
...
...
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