Restore optional shell handling in launcher tests

This commit is contained in:
2026-11-04 02:34:30 +00:00
parent 7eac3fea65
commit 4d92ee4ee6
2 changed files with 32 additions and 7 deletions

View File

@@ -1,15 +1,15 @@
# Release tooling review findings
Status: R1 complete; R2 open. Review baseline:
Status: R1 and R2 complete; no open findings. Review baseline:
`124a9fa57fb3f815bedbafe2d4819f6aa265ee7d`, covering the implementation commits
after `cb40f1d`. This record requests corrections; no implementation was changed
during review.
after `cb40f1d`. The findings below preserve the review evidence; completion
markers record the subsequent corrections. No implementation was changed during
the original review.
The selected architecture is substantially present: three declarative profiles,
one host-normalized registered-tool helper, separate publication and page-only
delivery, retained credential-directory ignoring, and focused wiring tests.
The following issues should be addressed before considering the refactor fully
complete.
Both issues identified by the review have been addressed.
## R1 — P2: Reject raw helper command names as legacy module selectors
@@ -52,6 +52,16 @@ it adds no new accepted-version restriction.
## R2 — P2: Restore the tests' optional POSIX-shell execution boundary
**Completed.** Launcher execution tests now discover `sh`, invoke it explicitly
with the script path, and skip when it is unavailable. Profile assertions remain
independent of shell availability. A regression case removes the fixture
script's executable permission to verify interpreter invocation; it failed
before the correction and passes afterward. The focused scripts suite and shell
syntax checks passed with Go 1.26.8 on the available POSIX host. Running the
compiled test binary with an empty `PATH` confirmed that every launcher
execution case skips while all three profile assertions pass. Native Windows
execution was not tested and no new platform guarantee is introduced.
**Location:** [scripts/release_test.go](../../scripts/release_test.go), especially
`fixture.run` at line 63 and the launcher test setup.