# D47 red-proof: guardUnitDir returns nil at once (= e1613ae: no guard). 2026-10-25T08:02:42Z
=== RUN   TestD47_TheSweepOrderNeverRewritesTheKeptUnit
    unit_owner_test.go:117: install A's unit must be set aside whole (one folder), found []; primary app.yaml now: "# Captured by felhom-controller recovery unit.\n# This file CARRIES SECRETS (D5) so a Tier-1/2 restore needs the drive and nothing else:\n# data
--- FAIL: TestD47_TheSweepOrderNeverRewritesTheKeptUnit (0.00s)
=== RUN   TestD47_AUnitFromBeforeD47IsSetAsideWhenItsPasswordDiffers
    unit_owner_test.go:152: an unrecorded unit with another install's password must be set aside whole, found []
--- FAIL: TestD47_AUnitFromBeforeD47IsSetAsideWhenItsPasswordDiffers (0.00s)
=== RUN   TestD47_TheSetAsideUnitRestoresWithItsOwnPassword
    unit_owner_test.go:165: one kept copy expected, got []
--- FAIL: TestD47_TheSetAsideUnitRestoresWithItsOwnPassword (0.00s)
=== RUN   TestD47_TheWriterRefusesWhenTheUnitCannotBeSetAside
    unit_owner_test.go:199: the capture must refuse, got <nil>
--- FAIL: TestD47_TheWriterRefusesWhenTheUnitCannotBeSetAside (0.00s)
=== RUN   TestD47_TheNightDatabaseDumpSetsTheEarlierUnitAsideFirst
    unit_owner_test.go:236: install A's unit must be set aside whole before install B's dump is written, found []
--- FAIL: TestD47_TheNightDatabaseDumpSetsTheEarlierUnitAsideFirst (0.00s)
=== RUN   TestD47_ASameInstallBackupStillRefreshesTheUnit
--- PASS: TestD47_ASameInstallBackupStillRefreshesTheUnit (0.00s)
=== RUN   TestD47_NoSetAsideWhileTheAppIsRestored
    unit_owner_test.go:275: a write during the app's restore must refuse, got <nil>
--- FAIL: TestD47_NoSetAsideWhileTheAppIsRestored (0.00s)
=== RUN   TestD47_OwnerVerdict
--- PASS: TestD47_OwnerVerdict (0.00s)
FAIL
FAIL	gitea.dooplex.hu/admin/felhom-controller/internal/backup	0.015s
FAIL
