Fix ATVM watcher truncation after Cloud Run Finished

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.
This commit is contained in:
2026-04-15 21:11:38 -04:00
parent 6334fecffa
commit 70542a13a0
2 changed files with 24 additions and 13 deletions

View File

@@ -544,3 +544,12 @@ This file stores run-specific examples only when a run produced a new learning r
- Match plugin-gated generated-spec branches generically by plugin-bearing gate variable name instead of hardcoding only one template's variable names.
- Apply the same plugin-branch filtering logic across ATVM templates so new templates do not need one-off watcher fixes.
- Validate generated-spec `TEST FLOW` against the selected runtime plugin path for reboot and other templates before assuming the generic fix is complete.
## Run Learning: 2026-04-15 (Parent `Cloud Run Finished` parsing must tolerate late host rows after Recorded Run detection)
- Observed failure mode:
- A non-categorized watcher run tested three VMs, but the Mattermost status only showed two hosts.
- In the launch log, the parent `Cloud Run Finished` summary printed one host row, then logged `Detected 'Recorded Run' after 'Cloud Run Finished' - results uploaded successfully.`, then printed the remaining host rows.
- The watcher treated that detection log line as the end of the summary block, so the merged parent-run summary dropped the later host row.
- Action for future runs:
- Do not stop parent summary parsing at the Recorded Run detection log line.
- Bound each `Cloud Run Finished` block by the next run boundary such as the next `Extracted specPattern:` or the next `Cloud Run Finished`, then parse all host rows inside that block.