"""custom-html — RESTORE overlay (Phase 1e HC3): data-integrity, assertion-only + additive. The orchestrator ran `ops.pre_restore` (mutated the marker to "mutated", diverging from the backed-up "original"), then performed the restore ONCE. The generic restore tier already asserted healthy + serving; this overlay ADDS the recipe-specific check: the volume data returned to the pre-mutation (backed-up) "original". Reads via exec_in_app (volume-direct), robust to the post-restore serving race.""" import os import sys sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "..", "runner")) from harness import lifecycle # noqa: E402 MARKER_PATH = "/usr/share/nginx/html/ci-marker.txt" def test_restore_returns_state(live_app): restored = lifecycle.exec_in_app(live_app, ["cat", MARKER_PATH]).strip() assert ( restored == "original" ), f"restore did not return the pre-mutation (backed-up) state: got {restored!r}"