Skip to content

Cloud sync: shared provider architecture, capabilities engine, streaming & dashboard#34

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

Cloud sync: shared provider architecture, capabilities engine, streaming & dashboard#34
jaxernst merged 3 commits intomainfrom
cloud-sync-2026-02-21

Conversation

@jaxernst
Copy link
Copy Markdown
Owner

Summary

Major sync from lasso-cloud (2826269..b72a0c7, Feb 10-21, ~50 commits).

Shared provider architecture — providers are now shared across profiles via a catalog with instance-based dedup. Replaces per-profile ProviderPool with Catalog, InstanceSupervisor, ProbeCoordinator, CandidateListing, InstanceState, and InstanceId.

Capabilities engine — replaces 7 per-provider adapters (Alchemy, Cloudflare, dRPC, etc.) with a single generic adapter + declarative YAML capabilities. Adapter classification now driven by capabilities.ex + adapter_filter.ex.

Streaming refactoringInstanceSubscriptionManager / InstanceSubscriptionRegistry replace UpstreamSubscriptionManager / UpstreamSubscriptionRegistry for instance-scoped WebSocket subscription management.

BlockSync — new Initializer module, instance-scoped workers, improved HTTP/WS strategies.

Dashboard — performance improvements (input change detection, metrics-only LiveView updates), new diagnostics panel and activity feed, network topology status via push_event, metrics store overhaul.

Otherround_robinload_balanced strategy rename, Finch pool tuning, Cowboy drainer, circuit breaker improvements, WebSocket connection fixes.

Files changed

  • 144 files: +11,423 / -13,961 lines
  • 26 files created, 26 files deleted, 92 files modified

Skipped (diverged)

  • lib/lasso_web/dashboard/dashboard.ex — 52 proprietary markers (auth, billing, entitlements woven throughout)

Verification

  • Compiles (mix compile)
  • No proprietary code leaked (grep for LassoCloud, WorkOS, Stripe, etc.)
  • mix format clean

🤖 Generated with Claude Code

jaxernst and others added 3 commits February 21, 2026 14:24
…ing & dashboard improvements

Major sync from lasso-cloud (2826269..b72a0c7, Feb 10-21).

Core changes:
- Shared provider architecture: catalog, instance_id, instance_state,
  instance_supervisor, probe_coordinator, candidate_listing
- Capabilities engine replaces per-provider adapters (7 adapters removed,
  generic adapter + YAML capabilities)
- BlockSync refactoring: instance-scoped workers with new initializer
- Streaming: instance_subscription_manager/registry replacing
  upstream_subscription_manager/registry
- Circuit breaker and request pipeline improvements
- Selection, transport, and WebSocket connection fixes

Dashboard:
- Performance improvements (input change detection, metrics-only updates)
- New diagnostics panel and activity feed
- Network topology status via push_event (reduces LiveView diffs)
- Provider details: refactored block height resolution and sync data
- Metrics store overhaul

Other:
- rpc_controller: round_robin → load_balanced, dynamic WS URL
- Finch pool tuning (longer idle times, TLS session reuse)
- Cowboy drainer for graceful shutdown
- Documentation updates

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
# Conflicts:
#	config/profiles/default.yml
#	lib/lasso/core/health_probe/batch_coordinator.ex
#	lib/lasso/core/providers/adapter_helpers.ex
#	lib/lasso/core/providers/adapters/1rpc.ex
#	lib/lasso/core/providers/adapters/alchemy.ex
#	lib/lasso/core/providers/adapters/drpc.ex
#	lib/lasso/core/providers/adapters/generic.ex
#	lib/lasso/core/providers/adapters/llamarpc.ex
#	lib/lasso/core/providers/adapters/merkle.ex
#	lib/lasso/core/providers/provider_pool.ex
#	lib/lasso/core/request/request_pipeline/failover_strategy.ex
#	lib/lasso/core/request/request_pipeline/observability.ex
#	lib/lasso/core/selection/strategies/load_balanced.ex
#	lib/lasso/core/support/circuit_breaker.ex
#	lib/lasso/core/support/error_classification.ex
#	lib/lasso_web/dashboard/components/chain_details_panel.ex
#	lib/lasso_web/dashboard/components/metrics_tab.ex
#	lib/lasso_web/dashboard/components/provider_details_panel.ex
#	lib/lasso_web/dashboard/endpoint_helpers.ex
#	lib/lasso_web/dashboard/formatting.ex
#	lib/lasso_web/dashboard/status_helpers.ex
#	test/integration/health_probe_integration_test.exs
#	test/integration/http_inclusion_with_ws_disconnect_integration_test.exs
#	test/integration/request_pipeline_integration_test.exs
#	test/integration/transport_failure_reporting_integration_test.exs
#	test/lasso/core/health_probe/probe_classification_test.exs
#	test/lasso/core/request/request_pipeline/failover_strategy_test.exs
- Update NetworkTopology.nodes_display call to pass pre-computed topology_data
  instead of removed connections/selected_profile/cluster_circuit_states attrs
- Fix undefined variable chain in provider_details_panel.ex
- Remove ProviderPool-dependent tests for deleted module
- Update capabilities integration tests to iterate over actual profile files
  and skip providers without capabilities blocks

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@jaxernst jaxernst merged commit 5a4d8c3 into main Feb 23, 2026
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