Skip to content

feat(ethstats): add ethstats CLI subcommand with per-node credential forwarding#719

Open
Savid wants to merge 8 commits intomasterfrom
feat/ethstats-per-node-credential-forwarding
Open

feat(ethstats): add ethstats CLI subcommand with per-node credential forwarding#719
Savid wants to merge 8 commits intomasterfrom
feat/ethstats-per-node-credential-forwarding

Conversation

@Savid
Copy link
Member

@Savid Savid commented Dec 18, 2025

Add a new ethstats mode that acts as an ethstats server, receiving data from
execution clients and forwarding it to configured output sinks.

Key features:

  • WebSocket server compatible with standard ethstats protocol
  • Per-node credential forwarding: nodes connect with nodename:base64(user:pass)
    allowing multiple nodes to share credentials with unique display names
  • GeoIP enrichment support
  • Authorization system with user/group filtering
  • Protobuf event types for blocks, stats, pending, latency, and new payloads

Also refactors auth and geoip packages to be shared across server components.

@Savid Savid force-pushed the feat/ethstats-per-node-credential-forwarding branch 2 times, most recently from 66e4e46 to 7b860c6 Compare December 19, 2025 03:00
…forwarding

Add a new ethstats mode that acts as an ethstats server, receiving data from
execution clients and forwarding it to configured output sinks.

Key features:
- WebSocket server compatible with standard ethstats protocol
- Per-node credential forwarding: nodes connect with nodename:base64(user:pass)
  allowing multiple nodes to share credentials with unique display names
- GeoIP enrichment support
- Authorization system with user/group filtering
- Protobuf event types for blocks, stats, pending, latency, and new payloads

Also refactors auth and geoip packages to be shared across server components.
@Savid Savid force-pushed the feat/ethstats-per-node-credential-forwarding branch from 7b860c6 to b113047 Compare December 19, 2025 03:06
Savid and others added 7 commits December 19, 2025 13:09
- Resolved proto conflicts by merging both ExecutionEngine and Ethstats events
- Renumbered Ethstats event enum values to avoid conflicts (84-90)
- Added RPC_SNOOPER=10, ETHSTATS=11 to module enum
- Regenerated proto files

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Resolved conflicts in event_ingester.proto
- Integrated BEACON_API_ETH_V1_BEACON_BLOB (84) from master
- Renumbered ETHSTATS_* event types to 85-91
- Renumbered ethstats data fields to 207-213 (sequential after 206)
- Regenerated proto files

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Restores 088_transactions_structlog_call_to migration that was
accidentally deleted in a previous merge.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants