Files
felhom-controller/REPORT.md
T

34 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# REPORT — v0.313.0: media apps on every drive, drive events, a real restart, Plex without the race (2026-10-15)
Baseline `8bc7ec5` (0.312.0). Design: felhom.eu `architecture/15-media-library.md` §2, §3, §7–§10; `09` §3 decisions 245,
247, 248. Evidence: felhom.eu `documentation/audits/media-build-2026-10-15/` (A = Plex gate, G = Tester 1, G7 = demo-hp).
## What changed
- `internal/stacks/media_library.go` — per-drive binds for `media_library:` templates, only present drives; dead-drive
check `system.MountIsShutdown`; R-1031 (no drive question), R-1027/R-1032 (removal never deletes shared/`:ro`; safety
list knows userdata).
- `RestartStack` — a real restart (R-1026).
- `internal/mediawire` — the drive wiring (R-1024, R-1037), the old-install repair (R-1047), safe-removal pause/resume,
the stream count.
- `internal/web/media_events.go` + `media_notice.html` — the notice, restart now/later, safe removal that keeps the drive
(R-1044), the returned drive's file browser recreate (R-1038), the Plex claim (R-1028) and „Kész" refused while
unclaimed (R-1045). `after_start` deploy fields.
## Proven
- Tester 1 (rc.1–rc.3): existing apps moved to the marker binds with every stored path, library item, watch mark and file
identical; Media D added → notice → restart → wired in every app, second run writes nothing; Media B pulled → nothing
lost, the file browser let go and came back at once, one restart cured the apps; Media D safely removed with torrents →
only its torrents paused, every app let go before the unmount, the drive came back by itself, torrents resumed with no
re-check; 13 hardlink pairs intact.
- demo-hp 9201: the marker ignored by 0.312.0; rc.4 wired qBittorrent + Sonarr from the live catalog; a fresh Plex with
no code stays gated and „Kész" is refused while unclaimed.
## Tests (each seen failing once)
`TestRestartStack_R1026_*`, `TestMediaLibrary_*`, `TestMountIsShutdown_K4`, `TestRemoveStack_R1027_*`,
`TestProtectedHDDPaths_R1032_*`, `TestR1031_*`, `TestAfterStartField_*`, `TestRun_SecondRunWritesNothing`,
`TestRepairOldRoot_K7`, `TestMediaEvents_*`, `TestEjectStep_G4`, `TestPlanDriveGates_SkipsSafelyRemovedDrive`,
`TestSetupDoneProbe_AcceptJSON_Plex`, `TestPlexClaimBox_RendersPerBranch`, `TestPlexDonePress_RefusedWhileUnclaimed`.
## Fixed without a row (found on the boxes this session)
qBittorrent 5's 204 login; the gate racing a safe removal; presence read from the agent's `state`.