Skip to content

PR: Sub Issue 4b - Download orchestrator + status reporting#319

Merged
JusterZhu merged 1 commit into
masterfrom
feature/download-orchestrator
May 24, 2026
Merged

PR: Sub Issue 4b - Download orchestrator + status reporting#319
JusterZhu merged 1 commit into
masterfrom
feature/download-orchestrator

Conversation

@JusterZhu
Copy link
Copy Markdown
Collaborator

Summary

Closes #318

Changes

  • IDownloadOrchestrator + DefaultDownloadOrchestrator: Batch download with concurrency limit (SemaphoreSlim)
  • DownloadReport: Batch result model (success/failed counts, total bytes, duration)
  • IUpdateReporter: Lifecycle event reporting interface
  • HttpUpdateReporter: HTTP POST with optional HMAC signing. Silent failure — never breaks update flow.
  • NoOpUpdateReporter: Default when ReportUrl is not configured
  • UpdateEvent enum: Started/DownloadCompleted/Applied/Failed/AppStarted

Build

✅ 0 errors

…support

- IDownloadOrchestrator + DefaultDownloadOrchestrator with concurrency control
- DownloadReport model for batch results
- IUpdateReporter interface for lifecycle event reporting
- HttpUpdateReporter with HMAC signing (silent failure)
- NoOpUpdateReporter default when ReportUrl not configured
- UpdateEvent: Started/DownloadCompleted/Applied/Failed/AppStarted

Closes #318
Copilot AI review requested due to automatic review settings May 24, 2026 00:02
@JusterZhu JusterZhu merged commit 706580b into master May 24, 2026
1 check failed
@JusterZhu JusterZhu deleted the feature/download-orchestrator branch May 24, 2026 00:03
@JusterZhu JusterZhu review requested due to automatic review settings May 24, 2026 00:25
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.

Sub Issue 4b: Download orchestrator + status reporting + DownloadTask integration

1 participant