R6.4: acceptance harness, native evidence still open (#245) - #246
Merged
Merged
Conversation
) Add a disposable-guest matrix for fresh install, repair, uninstall, and the R6.4 cases, including the deferred R6.3 preflight. Redacted fields are documented for a later evidence id. R6.1, R6.4, R6.5, and overall R6 stay open. A3 / R4.4 stay deferred. Co-authored-by: PLN <PLN@users.noreply.github.com>
The 180-second limit panicked in internal/manager under -race -parallel 1 on the hosted Windows runner. Keep -parallel 1. The Windows job deadline is 45 minutes so the longer test and the later steps can finish. Co-authored-by: PLN <PLN@users.noreply.github.com>
The unary comma wrapped the whole matrix into a single element. Member enumeration then treated every case as the selected one, so quiet-install under an elevated identity skipped as not_run. Co-authored-by: PLN <PLN@users.noreply.github.com>
Get-PathSegments and Get-LogMarkers returned one wrapped list, so PATH and marker checks never saw the elements. The locked-file case hashed the payload while FileShare.None was still held, so a 1603 became case failed. Co-authored-by: PLN <PLN@users.noreply.github.com>
protectedDirectory used one ordinary-directory error for both a junction and a file. A ProgramData junction now logs "reparse point" and "refusing to follow" inside the existing preflight conflict line. Co-authored-by: PLN <PLN@users.noreply.github.com>
One Windows 10 Enterprise LTSC 2024 Evaluation guest passed the SYSTEM subset at 9961798. R6.1 and R6.4 stay unchecked: GUI is missing where a shell exists, and the claimed SKUs have no recorded run. Co-authored-by: PLN <PLN@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Refs #245. This is the R6.4 acceptance slice, including the R6.1 install/repair/uninstall cases, starting from
97c464cc9241c71a08e3f11f2338e8a39875b7d0.HEAD:
6b434e1e0d7600fe98b05c3f0e5e3f392a282980Evidence id
9961798-r64-acceptrecords the SYSTEM guest at source99617988a3cc0bfa93c26a6c2eed0ac76c68520b. It supersedes draftc040800-r64-accept. Exact-source CI run 35807241580 is green on that source. Equal-tree MSI sha2562f57d8388d3a5af79ac87409d950cc326af7bf74c91b0f1d54ca33f6cbf0dd23.The product package stays
packaging/wix. The harness istests/installer. It runs one disposable-guest case and appends a redacted summary outside the repository. Raw MSI logs stay private. The harness does not assign an evidence id.ConvertTo-Array,Get-PathSegments, andGet-LogMarkersreturn flat lists. Selectingquiet-installyields one case whoserequires.identityis the stringelevated. The locked-file case keepsFileShare.Nonethrough msiexec, then releases that handle before the payload hash comparison. A ProgramData junction refused byprotectedDirectorylogs bothpreflight conflict:andreparse point.The recorded guest is Windows 10 Enterprise LTSC 2024 Evaluation (
EnterpriseSEval) build 26100.9168, installation type Client, identity SYSTEM,interactivefalse. Passed:quiet-install,system-install,repair-fa,repair-reinstall,locked-file,rollback-test-fail-running,rollback-test-fail-stopped,reinstall-retained,uninstall,preflight-reparse, andpreflight-unmanaged-service.not_runon that guest:gui-install,offline-install,non-admin,beta-conflict,downgrade,n1-upgrade, androllback-upgrade.R6.1 and R6.4 stay unchecked. GUI install is still missing on a guest that has an interactive shell. Remaining claimed SKUs with no recorded run: Windows 11 Enterprise x64, Windows 11 Enterprise LTSC x64, Windows Server 2022 x64, Windows Server 2025 x64, and Windows Server Core x64. R6.5 and overall R6 stay open. A3 / R4.4 stay deferred. This PR does not start R6.5 or R7.
b915fbd-r62-servicingstays the R6.2 servicing record. It is not an acceptance evidence id.Hosted Windows CI keeps
-parallel 1and usesgo test -timeout 15m. The Windows job deadline is 45 minutes. Linux CI stays at 180 seconds.Merge bar
Do not merge until all three are true:
docs/R6-EVIDENCE.mdfor the cases and SKUs actually runExact-source CI is green for source
99617988a3cc0bfa93c26a6c2eed0ac76c68520b. R6.1 and R6.4 stay open after9961798-r64-accept.What landed
/faandREINSTALL=ALLrepair; uninstall; reinstall over retainedalice/bobunits; downgrade; N-1 upgrade; locked-file abort;WINUNITD_TEST_FAILrollback; non-admin rejection; beta UpgradeCode refusal; and the R6.3 reparse and unmanaged-service preflight.docs/R6-EVIDENCE.mdrecords9961798-r64-acceptand the cases still missing.0.1.0is the only recorded product package. The harness accepts an older MSI only when that package already has this UpgradeCode and a lower ProductVersion.Native lab fill-in
Further guests still copy these fields from the private
acceptance-summary.jsonl, then assignevidence_id:source_commit,guest_product,guest_edition,guest_build,installation_type,identity,offline,interactive,case_id,status,msi_exit,service_before,service_after,payload_sha256,package_sha256,log_markers,reboot_started,layout_ok,event_source,path_owned,prerequisite_action,data_retained,noteCheck R6.1 only after quiet install, GUI install where the guest has a shell, one repair path, and uninstall have
status=passedwith those layout assertions. Check R6.4 only after every applicable case has passed on every claimed SKU that was actually run. Leave any SKU that was not run listed under R6.4.Remaining claimed SKUs:
downgrade,n1-upgrade, androllback-upgradestay missing evidence until an older recorded package is supplied. A skipped SYSTEM or VM case stays missing evidence. Server Coregui-installisnot_applicableand does not satisfy a desktop GUI run. Exit 3010 is not a pass. The package does not force a reboot.Out of scope
R6.5 / Hermes migration, closing overall R6, A3 / R4.4, signing, UpgradeCode or ProductCode changes, calling
winunitd installoruninstallfrom the MSI, purge, ARM64, and Pro as a first-release target.