# 04b — INDEPENDENT CORROBORATION of scenario A, captured by the COORDINATOR
#
# WHY THIS FILE EXISTS, stated plainly: 25 minutes passed with no evidence written while the box
# already showed the update complete, so the main session took its own read-only capture rather than
# risk losing the measurement (R-320 — evidence off before it can be lost). The measuring agent's own
# file `04-scenarioA-starting-cut.txt` then landed and is FULLER and BETTER than this one: it has the
# timestamp table, the journal read off the stopped guest, and the seeded-data read-back.
#
# THIS FILE IS NOT A SECOND MEASUREMENT. It is the same box, read independently ~90 minutes later by
# a different reader with a different session. Its only value is that it agrees.

READ AT: 2026-09-21, after the scenario completed. Source: live guest 9202, read-only.

AGREES WITH 04-scenarioA-starting-cut.txt ON:
  * the recovery line — interrupted in `verifying`, "the new version may have run; marking it
    Updating and RESUMING the health wait", resumed, `up -d`, healthy after 0s, DONE in 1m26s;
  * all FOUR version observables reading vikunja/vikunja:2.6.0 —
      pinned_images, installed_images, the live compose `image:` line, and `docker inspect`
      (created 2026-09-21T12:28:26Z, state running);
  * end state: state=running, updating=False, update_phase=done, label 'Frissitve',
    no update_error, no hold_reason, health_probe.healthy=True;
  * the update journal ABSENT (cleared), with a positive control that the directory searched is the
    real one — catalog-cache, debug-ring.log, encryption.key, metrics.db*, settings.json* beside it.

WHAT THIS FILE COULD NOT DO, and why — because a gap recorded is worth more than a gap hidden:
  the seeded-data read-back. 02-seeding.txt records the canary task name but not the account it was
  created under, and the coordinator would not guess credentials or read vikunja's database behind
  the app's back. "Through the front door" is the condition the measurement is worth anything under.
  The measuring agent had the credentials and did it: the task read back unchanged.
