Add an AGENTS.md rule for vCenter VM snapshot requests so snapshot names default to the format using the local America/New_York timezone unless the operator requests a different name.
Update the ATVM git guide so push examples do not hardcode origin/main.
Prefer the operator-specified remote and branch when provided, and otherwise draft a generic SSH-prefixed git push command or use the remote/branch already established in context.
Prefer failing and terminal host results when merging supplemental
subrun artifacts so a later partial artifact cannot overwrite a more
authoritative outcome.
Also point ATVM agent guidance at the ATVM-specific git guide and add
that guide to document draft-only commit handling and the default SSH
command pattern.
require categorized PASS results to be confirmed from the child run log or Cloud Run Finished summary
forbid treating watcher host_results, grouped XML, or check-xml-files.ts alone as proof of PASS
record the 2026-04-24 false-PASS incident as a run learning
Handle Currents "Cloud Run Finished" table rows where the trailing
"s" in long duration values wraps onto its own continuation line.
Instead of appending that standalone continuation to the end of the
host row, drop the wrapped row and rely on the existing duration
parser to accept values without the trailing "s". This preserves all
host rows in parent summary parsing for completed non-categorized runs.
Also record the failure mode and recovery guidance in the ATVM run
learnings doc.
Teach generated-spec TEST FLOW parsing to honor test-install-only runtime gates, including single-quoted Cypress.env checks, and suppress plugin branches when install-only mode disables them.
Document the 2026-04-16 install-only flow mismatch so future watcher updates keep Mattermost TEST FLOW aligned with the actual generated spec path.
Tighten `Cloud Run Finished` parsing so categorized watcher recovery only starts on real summary headers, stops at the grouped run's `Recorded Run` URL, and parses only actual summary-table host rows.
Also merge grouped per-host reporter artifacts into categorized recovery so completed grouped batches keep the correct host membership and Mattermost posts remain stable for both categorized and non-categorized runs.
Add the working vCenter placement-check pattern to the ATVM automation guide so explicit VM-list planning uses the correct lowercase govc JSON keys, resolves datastore refs to names, and ignores helper datastores such as install ISO attachments when deciding between gold and gold-2.
Adjust parent-run summary parsing so the watcher does not stop at the "Recorded Run" detection log line and miss later host rows in Mattermost status output.
Document the 2026-04-15 failure mode in ATVM run learnings so future watcher/reporting work preserves the broader Cloud Run Finished block parsing rule.
- skip report artifacts that disappear during watcher post-processing
- use safe mtime handling for XML and mochawesome discovery
- prevent watcher crashes from transient FileNotFoundError races
- map AutomatedTest-VMBootImg-Gold to gold and Gold-2 to gold-2
- require live vCenter placement checks for explicit VM lists
- stop mixed gold/gold-2 requests before planning ATVM runs
- return hostname-only datastore inventories by default
- tell the operator about the vCenter placement check before showing run commands
- clarify that repo inventory files are not the source of truth for current datastore membership