EspressoSystems / EspressoSystems/espresso-rollup-node-proxy
Support intercepting multiple block tags (e.g. "safe" + "finalized") with Espresso finality
- Dominant language
- Go
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
## Problem
The proxy can intercept a single configurable block tag (`espresso_tag`, default `"espresso"`) and resolve it to the Espresso-finalized L2 block number. Setting the tag to `"finalized"` backs the standard finality tag with Espresso finality, but only **one** tag can be intercepted per proxy instance.
Clients that use the standard `"safe"` tag cannot get Espresso finality at the same time as `"finalized"` users — whichever tag is not configured passes through to the full node with its native semantics.
## Proposal
Allow the interceptor to match a **list** of tags, all resolving to the same Espresso-finalized block number:
- `espresso_tag` JSON config field accepts either a single string (backward compatible) or an array of strings, e.g. `["safe", "finalized"]`.
- `--espresso-tag` CLI flag accepts a comma-separated list or may be repeated.
- Every configured tag is replaced with the same value: the store's Espresso-finalized L2 block number (`max(espresso finalized, eth finalized)`).
Note: with both tags intercepted, `"safe"` and `"finalized"` resolve to the identical block, so the usual `safe >= finalized` gap disappears behind the proxy.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at the proxy interceptor and the parsing paths for the `espresso_tag` JSON field and `--espresso-tag` CLI flag. Trace how the store's Espresso-finalized L2 block number is selected, then verify that each configured tag resolves to the same `max(espresso finalized, eth finalized)` value while a single-string configuration remains compatible.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- backend, blockchain, cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100