Skip to content

Batch 6: Silent polling + SignalR Hub download source#372

Merged
JusterZhu merged 1 commit into
masterfrom
batch-6-silent-signalr
May 24, 2026
Merged

Batch 6: Silent polling + SignalR Hub download source#372
JusterZhu merged 1 commit into
masterfrom
batch-6-silent-signalr

Conversation

@JusterZhu
Copy link
Copy Markdown
Collaborator

Summary

Implements silent update polling mode and SignalR Hub download source.

New Files

SilentPollOrchestrator

  • Configurable poll interval via SilentOptions
  • Background download using new download abstractions (no old DownloadManager)
  • Optional auto-install toggle
  • Cancellable via CancellationTokenSource
  • Integrates hooks and reporter
  • Supports Windows/Linux/macOS

HubDownloadSource

  • Implements IDownloadSource via SignalR Hub
  • Listens for push notifications, accumulates DownloadAssets
  • Parses incoming JSON via DownloadPlanBuilder.MapToAsset

Changes

GeneralUpdateBootstrap

  • LaunchSilentAsync: when Silent=true, starts background poll and returns
  • Hooks and reporter are injected into the orchestrator

UpdateOptions

  • Added SilentPollIntervalMinutes (default 60)

SilentUpdateMode

  • Marked [Obsolete] — replaced by SilentPollOrchestrator

Build

  • dotnet build src/c#/GeneralUpdate.slnx — 0 errors

Closes #371

- Create SilentPollOrchestrator: configurable poll interval, background download
  using new download abstractions, optional auto-install, cancellable
- Create HubDownloadSource: SignalR Hub as IDownloadSource, parses incoming
  push messages into DownloadAssets via DownloadPlanBuilder.MapToAsset
- Add LaunchSilentAsync to GeneralUpdateBootstrap:
  When Silent=true, starts background poll loop and returns immediately
- Add SilentPollIntervalMinutes to UpdateOptions
- Add MapToAsset public helper back to DownloadPlanBuilder
- Mark old SilentUpdateMode as [Obsolete]

Closes #371
Copilot AI review requested due to automatic review settings May 24, 2026 10:35
@JusterZhu JusterZhu merged commit e9eb58c into master May 24, 2026
1 check failed
@JusterZhu JusterZhu deleted the batch-6-silent-signalr branch May 24, 2026 10:36
@JusterZhu JusterZhu review requested due to automatic review settings May 24, 2026 10:59
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.

Batch 6: Silent polling + SignalR Hub download source

1 participant