github Listenarrs/Listenarr v1.2.2-canary
Canary 1.2.2

pre-release5 hours ago

Summary

Clarifies the responsibility boundary for download client adapters, the application gateway, monitor-owned reconciliation, deferred cleanup, and Listenarr-owned direct downloads.

This PR keeps full queue snapshots available for queue display and reconciliation, uses targeted ID polling for monitor updates, adds guarded orphan cleanup for active client-backed downloads, fixes remote-path import edge cases, and makes trusted direct downloads a first-class internal transfer pipeline that is shown in Activity and handed to the normal import flow.

Fixes #486.
Fixes #520.
Fixes #592.
Fixes #619.
Fixes #640.
Fixes #652.

Supersedes #634.
Supersedes #641.

Refs #414.
Refs #618.
Refs #631.

Direction

  • Queue display still uses full live snapshots.
  • Monitor updates use targeted Listenarr-owned IDs.
  • Client-level monitor failures are treated as failures, not successful empty queues.
  • Orphan cleanup is outside the gateway.
  • Concrete client behavior lives in infrastructure workflows.
  • DDL is an internal Listenarr transfer pipeline, not a fake download-client adapter.
  • Future DDL sources should be additive through source policies.

Notable changes

Download clients

  • Split queue display and monitor polling contracts.
  • Preserved full snapshots for queue display and reconciliation.
  • Kept monitor updates targeted to Listenarr-owned IDs.
  • Moved concrete adapter behavior into focused infrastructure workflows.
  • Added guarded orphan cleanup for trusted missing external IDs.
  • Removed the broken NZBGet drone identity fallback.

Direct downloads

  • Added DDL transfer state through DirectDownloadService and DirectDownloadProcessor.
  • Added local DDL staging with per-artifact .partial writes and atomic final-file replacement before import enqueue.
  • Added persisted multi-artifact DDL plans for single files, archives, or bounded track batches.
  • Added source policies so each DDL source validates initial URLs, redirects, and complete artifact pla...

Automated Canary build

Don't miss a new Listenarr release

NewReleases is sending notifications on new releases.