"""custom-html — UPGRADE overlay (Phase 1e HC3): data-continuity, assertion-only + additive.

The orchestrator deployed the base version, ran `ops.pre_upgrade` (seeded a marker into the served
volume), then performed the upgrade ONCE. The generic upgrade tier already asserted reconverge +
serving + moved; this overlay runs ALONGSIDE it and ADDS the recipe-specific check: the data written
before the upgrade survived it. No op, no deploy/teardown here."""

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_upgrade_preserves_data(live_app):
    # the marker seeded by ops.pre_upgrade (before the harness upgraded) is still served
    assert lifecycle.http_fetch(live_app, "/ci-marker.txt")[1].strip() == "upgrade-survives", (
        "data did not survive the upgrade"
    )
