Skip to content
This repository was archived by the owner on Feb 12, 2026. It is now read-only.

feat(basectl): overhaul L1/L2 monitoring and error handling#43

Merged
refcell merged 3 commits intomainfrom
brianbland/basectl-fixes
Feb 11, 2026
Merged

feat(basectl): overhaul L1/L2 monitoring and error handling#43
refcell merged 3 commits intomainfrom
brianbland/basectl-fixes

Conversation

@BrianBland
Copy link
Contributor

@BrianBland BrianBland commented Feb 10, 2026

  • Remove op-node dependency; poll safe head directly from L2 EL RPC
  • Replace L1 batcher watcher with blob watcher (WS-first, polling fallback)
  • Track all L1 blobs with Base attribution, not just batcher txs
  • Add L1 block filtering (All/Blobs/Base), connection mode indicator
  • Deduplicate flashblock WS logic via generic run_flashblock_ws_inner
  • Add toast warnings to all polling/WS loops on connection failures
  • Make toast_tx non-optional since all callers provide one
  • Fix duplicate L1 block ingestion causing double L2 attribution
  • Use Optimism network type for correct OP Stack tx encoding
  • Report per-block data during backlog fetch for incremental display
  • Add blob rate metrics (target usage, Base share) to stats panels
  • Responsive block number column widths, unix timestamp-based ages
  • Count and report missed flashblocks in the websocket stream
image

- Remove op-node dependency; poll safe head directly from L2 EL RPC
- Replace L1 batcher watcher with blob watcher (WS-first, polling fallback)
- Track all L1 blobs with Base attribution, not just batcher txs
- Add L1 block filtering (All/Blobs/Base), connection mode indicator
- Deduplicate flashblock WS logic via generic run_flashblock_ws_inner
- Add toast warnings to all polling/WS loops on connection failures
- Make toast_tx non-optional since all callers provide one
- Fix duplicate L1 block ingestion causing double L2 attribution
- Use Optimism network type for correct OP Stack tx encoding
- Report per-block data during backlog fetch for incremental display
- Add blob rate metrics (target usage, Base share) to stats panels
- Responsive block number column widths, unix timestamp-based ages
@cb-heimdall
Copy link
Collaborator

cb-heimdall commented Feb 10, 2026

✅ Heimdall Review Status

Requirement Status More Info
Reviews 1/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

- Add missed flashblock counter to FlashState, detecting index gaps
  within a block and missing leading indices on new blocks
- Display missed count in command center stats (red/green) and
  flashblocks view title
- Fix backlog loading bar staying frozen by streaming progress updates
  during fetch instead of after collecting all blocks
@refcell refcell added this pull request to the merge queue Feb 11, 2026
Merged via the queue into main with commit 0ec4719 Feb 11, 2026
15 checks passed
@BrianBland BrianBland deleted the brianbland/basectl-fixes branch February 11, 2026 00:11
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants