ci: Package CI + Changeset on windows-latest (ubuntu queue escape) - #77
Conversation
ubuntu runners are starving Package CI. Match Release's windows-latest escape without touching Release.yml. The changeset script needs bash on Windows. Skip Unix socket and desktop-shim assertions that cannot pass on win32, and resolve npm global bins from prefix/ there. Co-authored-by: Zack Jackson <ScriptedAlchemy@users.noreply.github.com>
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e094a13627
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| .map((name) => join("test", name)) | ||
| .filter((name) => { | ||
| if (process.platform === "win32" && skipOnWindows.has(name)) { |
There was a problem hiding this comment.
Match Windows paths before applying suite skips
On Windows, join("test", name) produces paths such as test\codex-bridge.test.js, but every skipOnWindows entry uses /, so skipOnWindows.has(name) is always false. Both Package CI and the Windows release workflow will therefore run the Unix-socket-dependent suites that this change intends to exclude, causing npm run check to fail or hang instead of escaping the Ubuntu queue; compare basenames or normalize separators before testing membership.
Useful? React with 👍 / 👎.
Summary
Package CI and Changeset were still queued on starved
ubuntu-*runners after Release moved towindows-latest(eea79bca, #76). This flips only those two workflows toruns-on: windows-latest.Release.ymlis unchanged.set -euo pipefail), so that step now setsshell: bash. The existing pack smoke test already used bash.{prefix}/binon Unix and{prefix}on Windows. The smoke test keeps the Unix path and falls back so--helpstill runs on the Windows runner..changeset/config.jsonchangedFilePatternscovers shipped files only (src/**,package.json, docs, etc.), not.github/,scripts/, ortest/.changeset statusshould pass without a.changeset/*.mdand without theskip-changesetlabel.Windows tests
Codex routes throw
windows-unsupportedbefore connecting, and several suites assume Unix sockets,/tmp, shebang binaries, orprocess.getuid(). Those files are skipped only whenprocess.platform === "win32". Portable suites still run.Desktop-shim shell tests were already skipped on Windows. Two more assertions are gated there:
path.win32.joinrewrites the/tmppath checks, and Windows file modes do not record the executable bit used by the install round-trip.Test plan
windows-latest(not stuck onubuntu-24.04)windows-latestand passes without a new changesetnpm run checkis green, including the pack smoke test