Require watcher startup before ATVM runner launch

- update the ATVM automation guide to make watcher-first launch order explicit whenever the watcher is approved
- update the ATVM AGENTS rules so the runner is never started before the watcher for watcher-backed runs
- add a 2026-03-27 run learning documenting that the watcher helper can delete the live runner log if the runner starts first
This commit is contained in:
2026-03-27 09:25:48 -04:00
parent f890b4a105
commit 2699651f8f
3 changed files with 16 additions and 1 deletions

View File

@@ -211,3 +211,13 @@ This file stores run-specific examples only when a run produced a new learning r
- `9. Trigger cmotion and do I/O test before actual cutover`
- `...`
- `22. Power off`
## Run Learning: 2026-03-27 (Start watcher before runner when watcher is requested)
- Observed failure mode:
- Starting `run-sorry-cypress.py` before the watcher can race with the watcher helper's stale-log cleanup.
- The watcher helper clears stale `/tmp/<build-name>.log` before startup.
- If the runner has already opened the new log, the helper can delete that live log path, leaving the watcher unable to read the run by filename.
- Action for future runs:
- When the watcher is approved, start the watcher before `run-sorry-cypress.py`.
- Keep the order as: template generation, verification, watcher start, runner start.
- Do not launch the runner first when the watcher is part of the approved command set.