Skip to content

Cloud sync: health monitoring, probe interval, UI polish#35

Merged
jaxernst merged 3 commits intomainfrom
cloud-sync-2026-02-23
Feb 24, 2026
Merged

Cloud sync: health monitoring, probe interval, UI polish#35
jaxernst merged 3 commits intomainfrom
cloud-sync-2026-02-23

Conversation

@jaxernst
Copy link
Copy Markdown
Owner

Summary

Synced from lasso-cloud commits b72a0c7..bec376d.

Core improvements:

  • HttpStrategy health write semantics — writes http_status separately from top-level status to prevent oscillation
  • BlockSync worker WS-aware polling — reduces HTTP probe frequency when WebSocket is active (RU burn reduction)
  • ProbeCoordinator 10s minimum probe interval floor
  • Provider name stored on catalog refs for efficient lookup
  • Profile not found returns 404 (was incorrectly 503)

Dashboard/UI:

  • Distribution card shows provider names instead of raw instance IDs
  • Optimistic lag smooths block height display (prevents visual sawtooth between polls)
  • Effective lag prefers optimistic lag when available, uses negative block_lag convention
  • Flash component redesigned as compact bottom-right toast
  • Region selector uses formatted region names
  • Network legend layout polish

Fixes:

  • Delete dead round_robin.ex (referenced deleted ProviderPool, caused compile failure)
  • Fix round-robin strategy mapping to :load_balanced in RPC socket

Skipped (diverged)

  • dashboard.ex — 55 proprietary markers, fundamentally different event handling architecture
  • All auth/billing/entitlements files — expected proprietary divergence

Verification

  • Compiles with --warnings-as-errors
  • No proprietary code leaked (grep check passed)
  • mix format clean

🤖 Generated with Claude Code

… provider name resolution

Core:
- HttpStrategy health write semantics (http_status vs top-level status)
- BlockSync worker WS-aware polling to reduce monitoring RU burn
- Minimum 10s probe interval floor in ProbeCoordinator
- Provider name stored on catalog refs for efficient lookup
- Profile not found returns 404 (was incorrectly 503)

Dashboard:
- Distribution card shows provider names instead of raw IDs
- Optimistic lag smooths block height display (prevents visual sawtooth)
- Effective lag uses optimistic lag when available
- Flash component redesigned as compact bottom-right toast
- Region selector uses formatted region names
- Network legend layout polish

Fixes:
- Delete dead round_robin.ex (referenced deleted ProviderPool)
- Fix round-robin strategy mapping to :load_balanced in RPC socket

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@jaxernst jaxernst closed this Feb 24, 2026
@jaxernst jaxernst reopened this Feb 24, 2026
jaxernst and others added 2 commits February 24, 2026 12:13
- Remove account_id from RequestOptions, RequestPipeline, Observability, and RoutingDecision
- Remove round_robin alias from strategy registry and validation
- Fixes all 34 integration test failures (KeyError: account_id not in RequestContext)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@jaxernst jaxernst merged commit f99aec1 into main Feb 24, 2026
3 of 4 checks passed
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.

1 participant