5.0 KiB
Patch-wave options and reports - WebGUI 2.1.0rc9 / Core 3.3.0rc8
This guide describes add-on presentation of the Core-provided patch contract. It does not grant approval to install updates, reboot targets or perform repeated runs.
Prepare and review
New run uses the public catalog for optional inputs. The Windows-only Continue patching after reboot control advertises the live catalog hint (false in this Core release). It starts as Inherit, not an explicit true override. Blank inputs stay omitted; inventory/role defaults are authoritative. To explicitly forbid continuation in a particular run, choose false and review the normalized override.
Reboot when required, Reboot delay (minutes) and Reboot message are separate catalog controls. Enabling reboot must not implicitly enable continuation. Delay and message apply only to an AIM-initiated reboot; the message is not part of the report. The review highlights explicit vs inherited reboot, delay and continuation values. Core still revalidates scope/options/schema revision before execution.
On Windows, each Core patch wave delegates the reviewed update categories to one native
ansible.windows.win_updates install invocation with module reboot disabled. Windows
Update and the collection own ordering inside that wave; AIM evaluates its reviewed reboot
policy only after the native wave returns. With post-reboot continuation disabled, the run
stops after an approved AIM reboot and another discovery requires a new reviewed run.
Enabling continuation explicitly permits Core to rediscover and start another native wave
after reboot within the same run, up to its 12-wave safety limit. There is no WebGUI
follow-up scheduler or automatic replay.
Linux keeps Core's native package-manager behavior and shared reboot-message/delay
semantics; Windows cycle fields are not fabricated on Linux reports.
Reading a report
| Field or condition | Meaning in the UI |
|---|---|
| Core succeeded + continuation_required true | Successful wave, but further patching needs review. The job is not relabeled failed. |
| remaining_updates_known false | Remaining updates are not established. Do not show an empty pending list as zero remaining updates or reuse a pre-reboot queue. |
| remaining_updates_known true | Pending is the final read-only discovery for the selected scope and recorded time, not current compliance or an expanded install queue. |
| No remaining_updates_known field | Historical shape. Missing wave fields stay unestablished; no inferred post-reboot queue. |
| reboot_deferred true | A reboot remains required with automatic reboot disabled. Installation success and reboot status remain separate. |
| reboot_reasons_before | Bounded native reboot sources reported by ansible.windows.win_reboot_info before patching. These are observations from that run, not a live probe. |
| blocked_reason preexisting_reboot_required | Core's independent preflight observed a prerequisite reboot; new patch work did not start on that path. |
| blocked_reason cycle_limit_reached | Core stopped bounded continuation; a new decision is needed, never an automatic replay. |
| failed_updates | Per-update title/ID, unsigned and hex HRESULT, fixed reason and safe message supplied by Core. |
| install_not_allowed / 0x80240016 | May indicate an active installer or mandatory reboot; not proof of a pre-existing reboot by itself. |
| Check mode | Observations/predictions, never proof of installation or an actual reboot. |
The normal report summary keeps the pre/post reboot observations, performed/deferred flags, reviewed delay, cycle count and continuation policy visible when supplied. Pending-list display suppression is a presentation decision when Core says the list is not authoritative. It does not modify stored data: the retained structured JSON still provides the exact approved report body for inspection.
Report-slot complete is availability, while payload data.complete describes update
evidence. Neither independently proves the host is fully patched. Native target
outcomes, Core result-validation failures and per-host reports remain separate.
Historical data and permissions
Old reports retain their reviewed schema. No migration rewrites old patch outcomes or adds missing fields. Only retained WebGUI jobs contribute to host history; no terminal run tracking, inventory writes, raw logs or new credential storage are introduced. Report reads remain owner-or-admin and job deletion removes linked evidence. The Checkmk configuration-content retention opt-in is unchanged.
Controller acceptance
Use Core's current SANITY.md under the actual executor context on a disposable,
approved target. Confirm native win_updates wave behavior, the default stop after an AIM-performed
reboot, explicit post-reboot continuation behavior, read-only final discovery,
reboot-disabled/pre-existing-reboot cases and a bounded failure record. Compare actual
effects and reported fields, not old task counts. Do not deliberately patch or reboot
production systems merely to exercise a user-interface feature.