atvm: default automation runs to watcher-backed execute mode
Update ATVM run workflow rules to remove the default pre-run approval gate for automation requests while keeping safety checks around live running-state and spec verification. Set watcher-backed execution as the default unless explicitly overridden and require post-execution reporting of the exact template and runner commands used. Record the workflow shift in automation run learnings with a dated entry for future consistency.
This commit is contained in:
@@ -62,9 +62,10 @@ This file defines how to operate and maintain the ATVM workspace in `/home/aw/co
|
||||
- Never run setup without operator-provided `--expected-ip` and `--expected-hostname`.
|
||||
- Keep static IP configuration as the final setup step.
|
||||
- Before any automation run, always check whether automation is already running.
|
||||
- Always show exact planned ATVM commands before execution.
|
||||
- Never execute setup or automation commands that require approval until the operator explicitly approves them.
|
||||
- For ATVM run approvals, treat `approve` as run-with-watcher and `approve without watcher` as run-without-watcher.
|
||||
- Treat every new ATVM run request as requiring a fresh live controller running-state check; never rely on the immediately previous status check when deciding whether a new run may start.
|
||||
- For ATVM automation runs, execute without a pre-run approval gate unless the operator explicitly asks to review commands first.
|
||||
- Default all ATVM automation runs to watcher-backed execution unless the operator explicitly says to run without watcher.
|
||||
- After starting an ATVM automation run, report the exact executed `cmc-templates.py` and `run-sorry-cypress.py` commands.
|
||||
- Treat git/commit requests as a separate approval gate.
|
||||
- Follow `/home/aw/code/cds/atvm/git-guide.md` for ATVM git command drafting and commit-request handling, including the rule that the controller `e2e cypress` repo behavior only applies when the operator explicitly asks for the `e2e cypress` repo or a close variation, the rule to draft plain git commands rather than SSH-wrapped controller login commands unless explicitly requested, the SSH-prefixed push example requirement for that repo, and the rule that phrases such as `create me a git`, `create a git`, `create a git description`, `make me a git`, `make a git`, `make me a git description`, `create me a git description`, and close variations are prepare-only until the operator explicitly approves the displayed commit command.
|
||||
- Never execute `git push` from the assistant for this workspace.
|
||||
@@ -77,8 +78,8 @@ This file defines how to operate and maintain the ATVM workspace in `/home/aw/co
|
||||
- For `cmc-reboot`, treat `--use_specified_plugin both` as a separate confirmation gate, not a normal plugin selection.
|
||||
- When a planned reboot command uses `--use_specified_plugin both`, warn that FC+iSCSI together may have a "chicken before the egg" timing issue where iSCSI disks are not attached before mTDI / CMC services start, and ask the operator to confirm that `both` is really intended.
|
||||
- Unless the operator explicitly reconfirms `both` for `cmc-reboot`, prefer only `fc` or only `iscsi`, not both.
|
||||
- When the watcher is requested, start the watcher before `run-sorry-cypress.py`.
|
||||
- When the watcher is requested, build the watcher-start command so it automatically includes the exact approved `cmc-templates.py` command via `--template-command` and the exact approved `run-sorry-cypress.py` command via `--runner-command`; the operator should not need to restate them separately.
|
||||
- For default watcher-backed runs, start the watcher before `run-sorry-cypress.py`.
|
||||
- For default watcher-backed runs, build the watcher-start command so it automatically includes the exact `cmc-templates.py` command via `--template-command` and the exact `run-sorry-cypress.py` command via `--runner-command`; the operator should not need to restate them separately.
|
||||
- When watcher-backed execution is used, prefer the controller-local `atvm-runner@...` systemd service over detached SSH background launch patterns for `run-sorry-cypress.py`.
|
||||
- Do not start the runner before the watcher, because the watcher helper clears stale `/tmp/<build-name>.log` and can delete the fresh live runner log if the runner starts first.
|
||||
- Prefer the combined `start-atvm-run.sh` wrapper when starting both services so watcher and runner are never launched in parallel against the same `/tmp/<build-name>.log`.
|
||||
|
||||
Reference in New Issue
Block a user