
== P1 show ../x with no config file (mutwt carries D01 when run by this script)
  base: exit 4
    err| mosaic-task: invalid run id: "../x" (expected r-<id>)
  cand: exit 4
    err| mosaic-task: invalid run id: "../x" (expected r-<id>)
  mutwt: exit 3
    err| mosaic-task: configuration problem (exit 3); run scripts/bootstrap.sh or fix config.json

== P2 show of a run directory with mode 000
  base: exit 1
    out| run:       r-20260101T000000Z-aaaaaa
    out| result.json: (missing or unreadable)
    err| node:fs:1954
  cand: exit 4
    err| mosaic-task: cannot read /home/jwoltje/darkwing-scratch/r56a/probes/p2/data/runs/r-20260101T000000Z-aaaaaa: EACCES
  mutwt: exit 4
    err| mosaic-task: cannot read /home/jwoltje/darkwing-scratch/r56a/probes/p2/data/runs/r-20260101T000000Z-aaaaaa: EACCES

== P3 list with r- names that aren't valid run ids
  base: exit 0
    out| r-  unknown    task=-                  ws=-          session=-
    out| r-.bad  succeeded  task=t                  ws=-          session=-
  cand: exit 0
    out| r-  unknown    task=-                  ws=-          session=-
    out| r-.bad  succeeded  task=t                  ws=-          session=-
  mutwt: exit 0
    out| r-  unknown    task=-                  ws=-          session=-
    out| r-.bad  succeeded  task=t                  ws=-          session=-

== P4 runs/ is a link inside the data root
  base: exit 0
    out| r-20260101T000000Z-aaaaaa  succeeded  task=t                  ws=-          session=-
    out| r-self  unknown    task=-                  ws=-          session=-
  cand: exit 0
    out| r-20260101T000000Z-aaaaaa  succeeded  task=t                  ws=-          session=-
    out| r-self  unknown    task=-                  ws=-          session=-
  mutwt: exit 0
    out| r-20260101T000000Z-aaaaaa  succeeded  task=t                  ws=-          session=-
    out| r-self  unknown    task=-                  ws=-          session=-

== P5 state/ linked out of the data root, no active.json or log there
  readActivePointer: null
  readActivationLog: {"entries":[],"malformed":0}

== P5b same, with active.json outside
  readActivePointer: RunsError 4 <D>/state/active.json resolves outside the data root (/home/jwoltje/darkwing-scratch/r56a/probes/p5/data)

== P6 log lines release.sh rollback would still use (an extra key, a non-string imageTag)
  {"entries":[],"malformed":2}

DONE

== P3 list under D17
    | mosaic-task: invalid run id: "r-" (expected r-<id>)
  exit 4

== P3 list under D20
  exit 0
