test(smoke): retire the Windows Phase 14 missing-executable requirement - #1321
Merged
Conversation
The fixture contract pinned the literal string
STALE_CMD="$UPDATE_HOME/retired-install/codebase-memory-mcp.exe"
so that Windows Phase 14 would carry an MCP entry naming a missing executable.
Two separate things retired that intent, and because the requirement only ever
matched the STRING it kept passing while the property it stood for was gone.
First, the fixture itself now copies a binary to the retired path (added with
the launcher removal), so that path stopped being missing no matter what this
string said.
Second, Windows update is a handoff to install.ps1. Nothing rewrites the entry
in-process the way the launcher-managed update did, so an entry naming a foreign
path just survives to uninstall -- which correctly refuses to remove a config
entry owned by a DIFFERENT installation. Phase 14f was then asserting that
uninstall performs exactly the removal it must never perform, and it failed for
that reason.
The requirement now pins the installed binary, which is what install.ps1 leaves
a real Windows user holding. The missing-executable classification is not
dropped, it is covered by named unit tests rather than by this fixture:
cli_editor_mcp_preserves_unrecorded_posix_absolute_entries_without_probe and
cli_editor_mcp_preserves_unsafe_windows_drive_probe, the latter covering the
Windows missing-drive case specifically.
This contract runs as step zero of every test leg, so the stale requirement
failed all 30 test jobs of release run 30384603265 -- on Windows, macOS and
Linux alike -- from one violation.
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.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.
Release run 30384603265 failed all 30 test jobs -- Windows, macOS and Linux
alike -- from a single stale contract requirement.
test_smoke_fixture_contract.shruns as step zero of every test leg, so one violation reddens the whole matrix.
The contract pinned a literal string so Windows Phase 14 would carry an MCP entry
naming a missing executable. Because it matched only the STRING and never the
property, it kept passing after the property was gone -- twice over:
launcher removal), so that path stopped being missing regardless of the string
in-process the way the launcher-managed update did
An entry naming a foreign path therefore survives to uninstall, which correctly
refuses to remove a config entry owned by a different installation -- making
Phase 14f assert precisely the removal uninstall must never perform.
The requirement now pins the installed binary, which is what
install.ps1leaves a real Windows user holding.
No coverage is dropped. The missing-executable classification moves to named
unit tests rather than this fixture:
cli_editor_mcp_preserves_unrecorded_posix_absolute_entries_without_probeandcli_editor_mcp_preserves_unsafe_windows_drive_probe(the latter covering theWindows missing-drive case specifically).
Verification
All 10 shell contract tests
scripts/test.shruns pass locally:Root cause confirmed identical on a macOS job and a Linux job from the failed
run, not inferred from the Linux one alone.