Reset reused watcher state before starting a new ATVM run

- update the watcher start helper to stop any stale watcher instance for the same requested parent build name and remove its old state directory before starting fresh
- document that reused parent build names must not inherit stale cancelled, posted, state.json, or subruns state from older runs
- update the watcher install and design docs so the controller workflow explicitly treats stale reused-build-name state as part of startup cleanup
This commit is contained in:
2026-03-26 11:30:28 -04:00
parent dda0a0b4c0
commit f5849dde0c
4 changed files with 15 additions and 0 deletions

View File

@@ -120,6 +120,7 @@ Recommended permissions:
- if the run uses `--categorize`, also pass `--categorize` to the watcher start helper
- confirm final Mattermost delivery for a completed run
- confirm categorized execution sends one post per completed grouped sub-run
- confirm reused parent build names do not inherit stale `cancelled.marker`, `posted.marker`, or `subruns/` state from older runs
## Recommended Validation Commands
@@ -154,6 +155,7 @@ Once installed, the intended workflow is:
1. Launch the ATVM run as usual.
2. Start the watcher for that build name.
- the start helper must clear any stale watcher state for that same requested build name before starting the new watcher instance
3. Let the watcher run on the controller.
4. The watcher exits on terminal state.