Trim internal fallback details from ATVM notes
This commit is contained in:
@@ -239,6 +239,7 @@ Status-report expectations:
|
||||
- Order the status sections as `SUMMARY:`, `HOSTS:`, `TIMING:`, `COVERAGE:`, `TEST FLOW:`, then `NOTES:`.
|
||||
- Keep `NOTES:` focused on operator-facing value such as the Currents run URL, real anomalies, failure context, or material fallback behavior.
|
||||
- Do not include generic watcher bookkeeping messages in `NOTES:` such as artifact-detection confirmations.
|
||||
- Do not include internal watcher fallback notes in `NOTES:` such as `check-xml-files.ts` validation confirmations or reporter-artifact recovery details.
|
||||
- The `HOSTS:` table includes `Host`, `Kernel`, `Status`, and `Detail` columns in that order.
|
||||
- In `COVERAGE:`, describe the template, datastore/config family, migration style, and plugin/integration path, but do not list target hosts there.
|
||||
- In `TEST FLOW:`, show the template-specific numbered run flow once for the whole test, not per host.
|
||||
|
||||
@@ -274,6 +274,7 @@ This file stores run-specific examples only when a run produced a new learning r
|
||||
- Action for future runs:
|
||||
- Reserve `NOTES:` for meaningful operator-facing content such as the Currents run URL, real anomalies, failure context, and important fallback behavior.
|
||||
- Do not include generic artifact-detection confirmations in the posted `NOTES:` section.
|
||||
- Do not include internal fallback notes such as "`check-xml-files.ts` validation passed" or "host details were derived from reporter artifacts" in the posted `NOTES:` section.
|
||||
|
||||
## Run Learning: 2026-03-27 (Categorized grouped XML may need host recovery from the subrun's per-host artifact)
|
||||
- Observed failure mode:
|
||||
|
||||
@@ -74,6 +74,7 @@ Use this as the default ATVM automation run-status template for:
|
||||
- When available, put the persistent Currents run URL in `NOTES:` so operators can open the exact recorded run directly.
|
||||
- Keep `NOTES:` limited to meaningful operator-facing items such as the Currents link, real anomalies, failure context, or important fallback behavior.
|
||||
- Do not include generic watcher bookkeeping lines in `NOTES:` such as "run artifacts were detected" or "final reporting artifacts were detected."
|
||||
- Do not include internal fallback notes in `NOTES:` such as "`check-xml-files.ts` validation passed" or "host details were derived from reporter artifacts."
|
||||
- `COVERAGE:` should describe what the run was intended to cover without listing target hosts.
|
||||
- `TEST FLOW:` should describe the template-specific numbered run flow once for the whole test, not per host.
|
||||
- The watcher resolves `TEST FLOW:` from the run template name.
|
||||
|
||||
@@ -1031,8 +1031,6 @@ def evaluate_subrun(
|
||||
notes.append("This categorized sub-run ended but no host results were detected.")
|
||||
return "UNKNOWN", host_results, start_ts, end_ts, currents_url, notes
|
||||
notes.append("Categorized sub-run completed and the next grouped run was launched.")
|
||||
if check_end:
|
||||
notes.append("Final `check-xml-files.ts` validation passed.")
|
||||
state = "FAILED" if any(result.failures for result in host_results.values()) else "COMPLETED"
|
||||
return state, host_results, start_ts, end_ts, currents_url, notes
|
||||
|
||||
@@ -1061,11 +1059,6 @@ def evaluate_subrun(
|
||||
|
||||
if host_results:
|
||||
notes.append("Run completed after the parent runner exited.")
|
||||
if check_end:
|
||||
notes.append("Final `check-xml-files.ts` validation passed.")
|
||||
latest_artifact_note = "Host result details were derived from the latest matching host reporter artifact written before final validation."
|
||||
if latest_artifact_note not in notes and all(result.tests == 0 for result in host_results.values()):
|
||||
notes.append(latest_artifact_note)
|
||||
state = "FAILED" if any(result.failures for result in host_results.values()) else "COMPLETED"
|
||||
return state, host_results, start_ts, end_ts, currents_url, notes
|
||||
|
||||
@@ -1168,14 +1161,8 @@ def discover_categorized_subruns(
|
||||
elif check_ts or raw_display_name != current_subrun_build or not parent_active:
|
||||
state = "FAILED" if any(result.failures for result in host_results.values()) else "COMPLETED"
|
||||
notes = [f"Categorized sub-run discovered from reporter file `{xml_path.name}`."]
|
||||
if check_ts:
|
||||
notes.append("Final `check-xml-files.ts` validation passed.")
|
||||
if summary and host_results:
|
||||
notes.append("Host result details were derived from the parent categorized run log summary.")
|
||||
elif host_results and check_ts:
|
||||
notes.append("Host result details were derived from matching per-host reporter artifacts written before grouped finalization.")
|
||||
if inferred_host:
|
||||
notes.append(f"Grouped sub-run host scope was inferred as `{inferred_host}` from the categorized build id.")
|
||||
elif check_ts and not host_results and parent_active:
|
||||
notes.append("Grouped reporter XML arrived before the parent run log exposed the final host summary; waiting to post until host details are available.")
|
||||
if display_name != raw_display_name:
|
||||
|
||||
Reference in New Issue
Block a user