radarr-4k/sonarr-4k surfaced 'download client places downloads in X but it
does not appear to exist' health errors: the SABnzbd (movies-4k/tv-4k) and
Transmission (radarr-uhd/sonarr-uhd) completed-category dirs dont exist until
the first grab lands in each category. On a rebuild those errors recur until
downloads happen. Add an idempotent file: task creating all four at
1000:3000 (abc:media) 0775 to match the /data tree.
Root cause of the original root:0770 drift on movies-4k: a manual
docker exec <client> mkdir runs as ROOT in linuxserver images (umask 007),
not as the app user abc. Live dirs normalized via host chown (NFS honors
no_root_squash); both instances now report 0 download-client-dir errors.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Add SABnzbd+Transmission to radarr-4k/sonarr-4k with distinct categories (sabnzbd
movies-4k/tv-4k, transmission radarr-uhd/sonarr-uhd; Transmission forbids digits) so
they dont cross-import the 1080p instances. Packaged into deploy-arrs-4k.yml via an
idempotent ensure-arrs-4k-dl.py (changed=0). Homepage Radarr 4K/Sonarr 4K tiles
(HOMEPAGE_VAR keys, siteMonitor). 4K path proven: Obsession routed to radarr-4k,
grabbed WEBDL-2160p, 1080p rejected 'not wanted in profile'. Keys via vault, no secrets.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Remux+WEB 2160p (radarr-4k) + WEB-2160p (sonarr-4k) profiles applied and assigned to
the Overseerr 4K servers. DTS family explicitly pinned score 0 (Sonos-Arc), Dolby/Atmos
at guide default. recyclarr:8, sync via systemd timer (daily, docker-run oneshot).
Idempotent (changed=0); keys via ansible-vault, .env not committed.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>