Repository navigation
docs: write the operator journey from Console #57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
swarna1101
wants to merge
11
commits into
main
Choose a base branch
from
docs/operator-journey
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
11 commits
Select commit
Hold shift + click to select a range
8fa6482
docs: write the operator journey from Console
swarna1101 fdd7c53
ci: publish a public Cloudflare preview on each pull request
swarna1101 c07215a
ci: drop the Actions preview upload
swarna1101 30e66cd
docs: match Signal, reports, and keys to what Console ships
swarna1101 ddd4b8e
docs: make the landing page an introduction to Optimum
swarna1101 3b6d23c
docs: fit the data-path diagram to the column
swarna1101 9d5d5e5
docs: say the gateway joins the mump2p mesh
swarna1101 1fe3f9f
docs: match the operator journey to Console
swarna1101 3ffa669
docs: add marked Console screenshots to the operator journey
swarna1101 a33cd13
docs: match Accelerate and signup to the live console
swarna1101 ad58e13
fix
swarna1101 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,24 @@ | ||
| --- | ||
| title: Adjust MEV-Boost | ||
| description: Record the cutoff you set, then download the config on file. Console does not push it. | ||
| --- | ||
|
|
||
| # Adjust MEV-Boost | ||
|
|
||
| **Bid cutoff** is `timeout_get_header_ms`: the last moment a getHeader bid is accepted, in milliseconds into the slot. A later cutoff can take a higher bid. Set late enough, the proposal misses the slot. | ||
|
|
||
| The late-in-slot deadline is `late_in_slot_time_ms`. The cutoff cannot sit on or past it. Console keeps the cutoff at least 1 ms earlier. | ||
|
|
||
| From the recommendation, **I am ready to adjust** opens **Record your change**. The line under the heading is **Set them on your own infrastructure, then tell us what you set.** | ||
|
|
||
| Type **Cutoff you have set** and **Late in slot you have set**, then **Confirm change**. That records what you deployed. It does not deploy it. | ||
|
|
||
|  | ||
|
|
||
| **Recap of the params on file** is the values currently recorded, not the recommendation. **Download config** saves that recorded file as `mev-boost-config.yaml`. The note under the recap says `late_in_slot_time_ms` is on file but is not a mev-boost flag, so it is not in the file. `--min-bid` and `--relay-check` are not stored, and they are unchanged. | ||
|
|
||
| Deploy that file on your MEV-Boost the way you already deploy config. Optimum has no write access to it. | ||
|
|
||
| **Review cutoff**, on the banner after a cutoff is recorded, opens the editor instead of the typed form. **I have adjusted my cutoff** records the sliders. **Back to results** leaves the editor. In that editor, **Configuration matches the file you uploaded** means you have not moved the cutoff since the upload. **Unsaved changes to the cutoff** means the editor and the file you uploaded differ. The editor says **Export the new config and deploy it — nothing here reaches your infrastructure.** | ||
|
|
||
| What changed after you deployed is under **MEV outcome** on this screen, not on the upload panel. See [Where results show](/accelerate/where-results-show). | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,33 @@ | ||
| --- | ||
| title: Readiness | ||
| description: The 200-proposal floor Console uses before it will recommend a cutoff. | ||
| --- | ||
|
|
||
| # Readiness | ||
|
|
||
| Before you accept anything, Console states what the current window can support. | ||
|
|
||
| A cutoff recommendation needs **200 proposals that carry a failure measurement**, across all your validators, not per key. The panel is **Not enough proposals yet** until that count reaches 200. You can still start Accelerate and upload a configuration. Measurement runs from the moment that configuration takes effect. The recommendation appears once the window holds enough. | ||
|
|
||
| When the window is large enough and a later bid was actually available, the panel is **What your proposals show**. The number is **ETH per MEV block**, left on the table in this window, measured against bids that arrived after the one your current cutoff took. The line under it is **Already proposed — not a projection.** | ||
|
|
||
| Two other answers, when there is nothing to recommend: | ||
|
|
||
| * Proposals were measured, but none of them took a relay bid, so there is no bid curve to read a cutoff from yet. | ||
| * Proposals were measured, and no better bid arrived after the one your current cutoff took. | ||
|
|
||
| Under **Before you start**, the row **Validator keys registered** has three states. Indices are required to know which slots you propose. The button tells you what is missing rather than failing silently. | ||
|
|
||
|  | ||
|
|
||
| | State | On the screen | What to do | | ||
| | --- | --- | --- | | ||
| | **Needed** | Needed to know which slots you propose. | [Register keys](/signal/register-keys). | | ||
| | **Activating** | Indices on record, none active on chain yet. | Wait for the activation queue. Pending validators are not assigned proposal slots, so nothing is measured until they activate. | | ||
| | **Done** | `N` of `M` registered indices active on chain. | Nothing. Proposals count as they happen. | | ||
|
|
||
| If Console could not read which indices are active, the row stays **Needed** and says **We could not read which of your indices are active on chain, so this is unverified.** Refresh. That is a failed read, not an empty set. | ||
|
|
||
| If indices are on record and the panel says **Not enough proposals yet**, check this row first. **Activating** means you are waiting on activation, not on proposal luck. | ||
|
|
||
| The report’s own charts use the same measurement: accepted ETH on the bid that was taken, unrealised ETH on bids that arrived later, per MEV block. A per-proposal average is a different number and is labelled that way on the report. Do not read the headline ETH-per-MEV-block figure as ETH per proposal. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,36 @@ | ||
| --- | ||
| title: Recommendation | ||
| description: What you accept before a cutoff is shown, and what the number means. | ||
| --- | ||
|
|
||
| # Recommendation | ||
|
|
||
| **Start Accelerate** opens **Acknowledge the disclaimer**. You can close it. Staff cannot accept it for you. | ||
|
|
||
| The notice says the configuration information is a simulation from current network data, for information only. Optimum does not guarantee a performance outcome. Changes you make on your own infrastructure are your decision, and Optimum is not liable for the outcomes of using that information. | ||
|
|
||
| Read the text in the dialog. The copy on this page is a summary so you know what the step is. The dialog is the agreement. | ||
|
|
||
| After you accept, **Bid cutoff** asks you to upload the MEV-Boost configuration you actually run. Console compares it with what your proposals show. It still does not change anything on your side. | ||
|
|
||
| If the configuration is already on file and the terms are not yet acknowledged, the screen says **One thing before your recommendation**. **Read and acknowledge** opens the same dialog. The recommendation stays hidden until you accept. | ||
|
|
||
| If you have no file yet, **Download a starter file**. The download is `mev-boost-config.yaml`, with the known mainnet relays and MEV-Boost’s default cutoff. It is a starting point, not a config Console has applied. | ||
|
|
||
| Until a file is on record, the report has no cutoff to judge proposals by. The screen says **No configuration uploaded yet**. | ||
|
|
||
| The recommendation itself is withheld below 200 measured proposals. The callout is **Not enough proposals yet for a recommendation**. See [Readiness](/accelerate/readiness). | ||
|
|
||
| Once the window can support a number, the panel is **Recommended bid cutoff**, in milliseconds, with **I am ready to adjust**. The line under the number is the move from your current cutoff, and how much time that leaves before local block building. **Replace the config on file** uploads a different file. | ||
|
|
||
|  | ||
|
|
||
| Beside it: | ||
|
|
||
| * **Slots that could have improved** — the share of MEV blocks that had a better bid within a stated offset past the bid you took, over the modelling window. | ||
| * **Slots modelled** — MEV blocks in that window. | ||
| * **Relays on file** — how many relays the uploaded config names. Upload your own file if you want this to be your set. | ||
|
|
||
| The figure is uplift that was available at that offset, on blocks already proposed. It does not price the risk of waiting. **No cutoff change indicated** means the window does not support moving it. | ||
|
|
||
| When a cycle completes, the top of the screen says **Your measurement cycle is complete** and how many proposals were measured since your last change. **Review the recommendation** opens this step. Dismissing hides the notice until the next cycle. **Accelerate** in the sidebar shows **1** until you answer. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,36 @@ | ||
| --- | ||
| title: What Accelerate does | ||
| description: Bid cutoff recommendations from slots you already proposed, for entity accounts. Console does not apply them. | ||
| --- | ||
|
|
||
| # What Accelerate does | ||
|
|
||
| Accelerate recommends a MEV-Boost bid cutoff from slots your validators already proposed. Console never writes to your infrastructure. You upload the MEV-Boost configuration you run, read a recommendation, and download a config to deploy yourself. Nothing on this screen changes validator behaviour until you deploy that file. | ||
|
|
||
| ## Who can use it | ||
|
|
||
| Accelerate is for **entity** accounts. An **individual** account has Signal only. See [Account type](/getting-in/account-type). | ||
|
|
||
| A recommendation needs 200 measured proposals ([Readiness](/accelerate/readiness)). An individual operator rarely proposes that many in a window short enough to act on, so the flow is offered to entities. | ||
|
|
||
| If you registered as an entity and **Accelerate** is not in the sidebar, it is not enabled for your account yet. Ask [support](/help/support). There is no other URL to use. | ||
|
|
||
| ## The steps | ||
|
|
||
| 1. **Start Accelerate** — prerequisites, including the disclaimer. | ||
| 2. **Recommendation** — your config, and the recommended bid cutoff once the window can support one. | ||
| 3. **Adjust** — you record the cutoff you will deploy, then download the config on file. | ||
|
|
||
| Where you land on a return visit follows what is already stored. No acceptance sends you to step 1. Acceptance without a saved config sends you to the recommendation. A saved config sends you to adjust. If the terms change, the previous acceptance no longer counts and you start again. | ||
|
|
||
| When a measurement cycle finishes and you have not answered it, **Accelerate** in the sidebar shows **1**, and the screen leads with **Your measurement cycle is complete**. **Review the recommendation** opens step 2. Dismissing hides that notice until the next cycle completes. | ||
|
|
||
| ## What it measures | ||
|
|
||
| Every figure is measured on slots you already proposed. Console does not forecast an annual gain. The figures sit on this screen, under **MEV outcome**. See [Where results show](/accelerate/where-results-show). | ||
|
|
||
| ## Older names on some screens | ||
|
|
||
| The sidebar entry and the screen heading are **Accelerate**. Results are **MEV outcome** on that screen. There is no **MumBoost** item under **Performance**, and the title **MEV Cutoff Optimisation** is not on this screen. | ||
|
|
||
| A direct link to the older report can still show two MumBoost messages: **Could not check the MumBoost terms**, and **This operator has not accepted the MumBoost terms**. Both mean the same check on Accelerate. See [Where results show](/accelerate/where-results-show). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| --- | ||
| title: Where results show | ||
| description: Proposal figures on the Accelerate screen, under MEV outcome. | ||
| --- | ||
|
|
||
| # Where results show | ||
|
|
||
| Open **Accelerate** in the sidebar. The proposal figures are on that screen. They are not a separate item under **Performance**. | ||
|
|
||
|  | ||
|
|
||
| **Performance** on this screen is **Attestations** and **Network**. **Accelerate** itself sits in the main sidebar group. | ||
|
|
||
| After a cutoff is on file, the screen can show two sections: | ||
|
|
||
| * **Proposal CL results since last adjustment** — proposals since the day after you recorded the cutoff, split into MEV, vanilla, and missed, and the average head-vote accuracy on the proposed blocks. Missed includes orphaned blocks. The data does not separate those two. | ||
| * **MEV outcome** — total accepted ETH, the average accepted bid per proposed slot, and average unrealised MEV still on the table. **Bid value by slot** stacks the accepted bid with the unrealised remainder of the best bid seen. **Selected bid timing** plots when each accepted bid arrived at the relay. | ||
|
|
||
| **MEV outcome** is collapsed until you open it. | ||
|
|
||
| If nothing has been measured since you recorded the cutoff, **MEV outcome** says so and shows the wider window the recommendation was read from. The note names that window, for example the last 90 days. The window starts the day after a change, so a cutoff recorded today has no since-change figures yet. | ||
|
|
||
| **Total accepted** is the sum of the relay bids you took in the window. It is everything captured there, not the part the cutoff change is responsible for. | ||
|
|
||
| **No proposals in this window** means none of your validators was assigned a block proposal in that range. | ||
|
|
||
| A failed read is a different message from an empty window. Refresh. If it persists, use [Support](/help/support). | ||
|
|
||
| Console stores a configuration only after it confirms you accepted the terms. **Could not check the MumBoost terms** means that check failed. Wait and refresh. **This operator has not accepted the MumBoost terms** means you need to accept them on Accelerate first. Both labels use MumBoost, the older name. See [Older names on some screens](/accelerate/what-accelerate-does#older-names-on-some-screens). |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
🔎 Supported by static analysis
🏁 Script executed:
Repository: getoptimum/docs
Length of output: 1580
🏁 Script executed:
Repository: getoptimum/docs
Length of output: 2867
🏁 Script executed:
Repository: getoptimum/docs
Length of output: 2525
🏁 Script executed:
Repository: getoptimum/docs
Length of output: 232
🏁 Script executed:
Repository: getoptimum/docs
Length of output: 2886
🏁 Script executed:
Repository: getoptimum/docs
Length of output: 16820
Document
timeout_get_header_msas a request timeout.timeout_get_header_mslimits the duration of eachgetHeaderrequest.late_in_slot_time_mscontrols the in-slot cutoff. The current text assigns the cutoff behavior to the wrong setting.Suggested fix
📝 Committable suggestion
🤖 Prompt for AI Agents
Source: Path instructions