Skip to content

feat(basectl): show confirmed activation-registry admin activity in upgrades view#3786

Open
Pulsator01 wants to merge 4 commits into
mainfrom
atharv/admin-address-scan
Open

feat(basectl): show confirmed activation-registry admin activity in upgrades view#3786
Pulsator01 wants to merge 4 commits into
mainfrom
atharv/admin-address-scan

Conversation

@Pulsator01

@Pulsator01 Pulsator01 commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Adds a confirmed-only “Admin Activity” panel to the basectl upgrades view that watches safe L2 blocks and surfaces activation-registry FeatureActivated, FeatureDeactivated, and AdminChanged transactions as they land.
  • Show the current safe-head activation-registry admin as Live, and seed Expected from the next scheduled upgrade when the chain config defines one.

Screenshot

image

@cb-heimdall

Copy link
Copy Markdown
Collaborator

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/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

Comment thread crates/infra/basectl/src/app/views/upgrades.rs Outdated
Comment thread crates/infra/basectl/src/app/views/upgrades.rs Outdated
Comment thread crates/infra/basectl/src/app/views/upgrades.rs Outdated
Comment thread crates/infra/basectl/src/app/views/upgrades.rs
Comment thread crates/infra/basectl/src/app/views/upgrades.rs Outdated
@Pulsator01 Pulsator01 force-pushed the atharv/admin-address-scan branch from 0a11987 to a18b9cd Compare June 26, 2026 16:41
@Pulsator01 Pulsator01 marked this pull request as ready for review June 26, 2026 16:46
@github-actions

Copy link
Copy Markdown
Contributor

Review Summary

Reviewed the addition of the confirmed-only Admin Activity panel to the basectl upgrades view. The PR adds ~937 lines of new functionality including an AdminActivityWatcher that polls safe L2 blocks for activation-registry events and surfaces them in a TUI panel.

Assessment

The code is well-structured. The previous review's findings have been addressed:

  • set_timestamp now gracefully warns and returns early instead of panicking (was flagged as panic risk)
  • ProcessedBlock messages are now only sent when !block_entries.is_empty() (was flagged as channel flooding)
  • live_admin_client now uses Result<HttpClient, String> instead of the (Option, Option) tuple (was flagged for readability)

Architecture observations

  • The watcher correctly uses MissedTickBehavior::Skip to avoid backlog on slow RPCs
  • Safe-head backward regression is handled gracefully with cache reset and live-admin re-fetch
  • fetch_admin_activity_for_range issues a single get_logs RPC call per range (not per-block), with local grouping by block number
  • Channel capacity of 64 is reasonable given messages are now only sent for blocks with actual activity
  • The AdminActivityWatcher lifecycle (start/stop/needs_restart) is clean and idempotent

No new issues found. The code is ready to merge.

@github-actions

Copy link
Copy Markdown
Contributor

✅ base-std fork tests: all 616 passed

base/base is fully in sync with the base-std spec.

Dependency Ref Commit
base-std main 4658f1b7
base-anvil 0092692587d8d064dd2c6923ce26a682c58f3694 00926925

@Pulsator01 Pulsator01 requested review from haardikk21 and wlawt June 26, 2026 23:07
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