        0/0 |    STARTUP │ (Re)initialized boot script
        0/0 |   DIRECTOR │ Launched worker 0
        0/1 |      PHASE │ run
        0/1 |      START │ runpy ./plan.py
        1/3 |    SUCCESS │ runpy ./plan.py
        1/3 |      START │ runsh grep -i foo data.txt > analyzed.txt
        2/3 |    SUCCESS │ runsh grep -i foo data.txt > analyzed.txt
        2/3 |      START │ runsh cat analyzed.txt
        3/3 |    SUCCESS │ runsh cat analyzed.txt
─────────────────────────────── Standard output ────────────────────────────────
A bunch of foos walk into a bar,
and watch some football.
────────────────────────────────────────────────────────────────────────────────
        3/3 |   DIRECTOR │ Trying to delete 0 outdated output(s)
        3/3 |      PHASE │ watch
        3/3 |    DELETED │ data.txt
        0/3 |      PHASE │ run
        0/1 |      START │ runpy ./plan.py
        1/2 |    SUCCESS │ runpy ./plan.py
        1/2 |       SKIP │ runsh cat analyzed.txt
───────────────────────────── No changes observed ──────────────────────────────
Same step hash       explained, inp_digest f25e1ed7, out_digest 786a02f7
Same inp hash        ./
Same inp hash        analyzed.txt
────────────────────────────────────────────────────────────────────────────────
        2/2 |   DIRECTOR │ Trying to delete 0 outdated output(s)
        2/2 |      PHASE │ watch
        2/2 |   DIRECTOR │ Stopping workers
        2/2 |   DIRECTOR │ See you!
