Use actual ATVM runtime flow steps in watcher output

This commit is contained in:
2026-04-14 19:05:37 -04:00
parent 893fe35524
commit a5e30b6acf
3 changed files with 17 additions and 5 deletions

View File

@@ -295,7 +295,7 @@ Status-report expectations:
- In `TEST FLOW:`, show the template-specific numbered run flow once for the whole test, not per host.
- For `TEST FLOW:`, treat the generated host spec from the actual run as the source of truth whenever it exists.
- Extract the numbered flow steps from the generated `.ts` spec referenced by that run's `specPattern`.
- When the generated spec contains runtime-gated plugin branches such as `if(useFCPlugin)` and `if(useIscsiPlugin)`, only include the steps for the plugin path actually selected for that run.
- When the generated spec contains runtime-gated plugin branches such as `if(useFCPlugin)`, `if(useIscsiPlugin)`, `if(usePureFCPlugin)`, or `if(usePureIscsiPlugin)`, only include the steps for the plugin path actually selected for that run.
- Do not prefer a static template flow list over a generated spec from the actual run.
- Use template-level or static fallback flow only when the generated spec cannot be found or parsed.
- If fallback is required, resolve it from the run template name before using any generic default flow.

View File

@@ -535,3 +535,12 @@ This file stores run-specific examples only when a run produced a new learning r
- Plan `cmc-systemOS` template commands without plugin-selection or integration-type arguments.
- When watcher-backed execution is used for `cmc-systemOS`, omit watcher integration/plugin metadata too.
- Keep plugin defaults scoped to templates that actually use plugin selection.
## Run Learning: 2026-04-14 (Plugin-gated `TEST FLOW` filtering must match reboot and other template gate names too)
- Observed failure mode:
- A Pure FC `cmc-reboot` run still posted the combined FC+iSCSI step count even after the earlier `cmc-e2e` fix.
- The watcher only recognized `if(useFCPlugin)` / `if(useIscsiPlugin)` gates, while the reboot templates use names such as `if(usePureFCPlugin)` / `if(usePureIscsiPlugin)`.
- Action for future runs:
- 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.