Skip to content

fix(ci): pass the macOS 14 job (whisper probe root, hidden AI tab) - #3

Merged
bharathvbcr merged 1 commit into
mainfrom
fix/macos14-ci
Oct 20, 2026
Merged

bharathvbcr merged 1 commit into
mainfrom
fix/macos14-ci

Conversation

@bharathvbcr

Copy link
Copy Markdown
Owner

Hosted CI's macOS 14 job has failed on main since 2026-10-08. This fixes both causes.

Whisper readiness probe (real bug on macOS 14). readinessProbeURL used URL.deletingLastPathComponent(). On macOS 14 that turns / into /../, so the probe for a spawned whisper-server at http://127.0.0.1:<port>/ checked /../. The parent path is now computed directly, so every OS gives the same answer.

  • The new test testReadinessProbeIsAnExplicitRootForEveryPathShape fails on the old code locally (empty-path case), and passes with the fix.

Preferences reload test (test assumption). Before macOS 26 the AI tab is hidden, so show(tab: .ai) presents General and the AI pane is never built. The test now checks the tab actually presented, and on older systems also checks that the hidden AI pane is not built.

Local ./Scripts/test.sh results:

  • ExpanderEngineTests: 3666, 0 failures.
  • DevTypeSafetyOrderFrontTests: 3, 0 failures.
  • DevTypeAppTests: 570, with 1 failure in the known load-flaky AIPreviewRefusalPartialTests, which passed 10/10 alone.

The macOS 14 result can only be confirmed by this PR's CI run.

🤖 Generated with Claude Code

Hosted CI's macOS 14 job has failed on main since 2026-10-08, with two
causes.

WhisperServerSetup.readinessProbeURL used URL.deletingLastPathComponent().
On macOS 14 Foundation that turns a root path "/" into "/../", so the
readiness probe for a spawned whisper-server (http://127.0.0.1:<port>/)
left the root it is bound to. That is a real bug, not only a test failure.
The parent path is now computed from the percent-encoded path, so every
OS gives the same answer. A new test covers the empty, root, double-slash,
trailing-slash, percent-encoded and IPv6 shapes. The empty-path case
fails on the old code on current macOS too ("http://127.0.0.1:8080" was
returned with no path).

testOpeningPreferencesFirstTimeReloadsAllExactlyOnce opened Preferences
on .ai and counted the AI pane's reloads. Before macOS 26 the AI tab is
hidden (PreferencesTab.visibleCases) and select(.ai) presents General, so
the AI count was nil. The product behaviour is right and the test assumed
the tab was visible. It now checks the tab actually presented, and on
older systems also checks that the hidden AI pane is never built.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-20T03:40:38.968273Z 52c4d9a PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@bharathvbcr
bharathvbcr merged commit 37b3ddb into main Oct 20, 2026
10 checks passed
@bharathvbcr
bharathvbcr deleted the fix/macos14-ci branch October 20, 2026 03:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant