DVR recording preservation (#146)
Recordings made on a matchups game channel no longer vanish when the plugin reaps that channel after the game. Recording.channel is on_delete=CASCADE, so deleting a past game's virtual channel used to CASCADE-delete any DVR recording on it (the .mkv orphaned on disk, gone from the DVR tab).
Apply now:
- never reaps a channel mid-recording (recording in progress or ending in the future) — it reconciles next cycle once the recording finishes,
- re-homes completed recordings onto a persistent archive channel before reaping the game channel,
- creates that archive group lazily and removes it once empty (exists only while it holds recordings),
- new Recordings group name setting (
recordings_group_name, defaultMatchups Recordings); if it collides with the live group, preservation is disabled and channels with recordings are kept rather than destroyed.
Verified live against a running container (re-home preserves the recording through a channel delete; archive removed only when empty). Also backfills the previously-missing 1.9.0 changelog entry.