Skip to content

crash-class: probe NSView firstBaselineOffsetFromTop into the selector table - #24417

Merged
teamleaderleo merged 1 commit into
feat-cmux-nextfrom
land-and-ci/objc-first-baseline
Oct 22, 2026
Merged

teamleaderleo merged 1 commit into
feat-cmux-nextfrom
land-and-ci/objc-first-baseline

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

Base red: cmux-next crash-class rules fails on every PR (e.g. #24025, #24327) with "probe needed" for super.firstBaselineOffsetFromTop in HoverCardIconSlot.swift:27 and HoverCardRow.swift:278 (added by 1231b9d). The fix is the checker's own repair: check-objc-selectors.py --probe --write on a Mac, then commit the table. NSView answers the selector on macOS 27.0.1; that is the one entry added.

Changelog

none

Observed / Not run

  • Ran python3 -I scripts/cmux-next/check-objc-selectors.py at base 8fa7236: 2 failures, the ones above. With this table: 0 failures.
  • Probe ran on cosmic-gray (macOS 27.0.1) in a scratch copy. It uses ctypes against libobjc only, with no build.
  • Not run: probes on other macOS versions. The checker holds a key probed on one version to that version only.

Agent session: huge-blue

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.


Summary by cubic

Fixes the cmux-next crash-class check failing on every PR because the selector table had no entry for super.firstBaselineOffsetFromTop, used by HoverCardIconSlot and HoverCardRow. The checker now passes with 0 failures.

  • Adds the probed NSView get:firstBaselineOffsetFromTop/0 entry for macOS 27.0.1 only; the checker keys probes to the version they were run on.
  • The probe was run with ctypes against libobjc on macOS 27.0.1 with no build; other macOS versions were not probed.

Written for commit 94347be. Summary will update on new commits.

View guided diff Turn on auto-fix

…r table

HoverCardIconSlot and HoverCardRow (1231b9d) call
super.firstBaselineOffsetFromTop on an NSView, a key the table did not
know, so check-objc-selectors failed "probe needed" on every PR.
Probed with --probe --write on macOS 27.0.1 (cosmic-gray, ctypes only,
no build): NSView answers it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15c6d-a1d2-7fc2-9458-92c6bdcb7b4d&host=huge-blue
@teamleaderleo teamleaderleo added the risk:low Risk tier (docs/ci/risk-tiers.md) label Oct 22, 2026
@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

cmux status (one comment, edited in place; each line is updated by the job that owns it)

Review 94347be: HQ feed card · gallery before/after runs · checks

App of this head (app.zip, kept 1 day)

gh workflow run reload-build.yml -R manaflow-ai/cmux --ref feat-cmux-next -f tag=pr24417 -f ref=land-and-ci/objc-first-baseline -f platform=macos -f backend_mode=local

red: cmux-next checks (god files, concurrency, crash safety, l10n); no finished base run on e0ae6fa to compare; do not merge until green; see lane-rules

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Owned by land-and-ci on huge-blue · session

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Review (independent review subagent): SHIP at 94347be

Agent session: huge-blue

@teamleaderleo
teamleaderleo merged commit 2d1a456 into feat-cmux-next Oct 22, 2026
120 of 137 checks passed
@teamleaderleo
teamleaderleo deleted the land-and-ci/objc-first-baseline branch October 22, 2026 23:55
@github-actions github-actions Bot added risk:normal Risk tier (docs/ci/risk-tiers.md) and removed risk:low Risk tier (docs/ci/risk-tiers.md) labels Oct 22, 2026
@blacksmith-sh

blacksmith-sh Bot commented Oct 22, 2026

Copy link
Copy Markdown

Found 10 test failures on Blacksmith runners:

Failures

Test View Logs
/tmp/tmpoqsfacd5/summary-missing.json (live):/summary-missing.json (live): View Logs
/tmp/tmpzmc24qm3/summary-fail.json (live):/summary-fail.json (live): View Logs
[new_workspaces] debug.new_workspace timed 0 of 50 new workspace rows/
[new_workspaces] debug.new_workspace timed 0 of 50 new workspace rows
View Logs
[new_workspaces] the window draws no frames/[new_workspaces] the window draws no frames View Logs
[tabs] debug.tab_switch timed 0 of 40 switches/
[tabs] debug.tab_switch timed 0 of 40 switches
View Logs
[tabs] the window draws no frames/[tabs] the window draws no frames View Logs
convention violations found (ERROR lines above)./
convention violations found (ERROR lines above).
View Logs
test_every_submodule_free_checkout_on_an_owned_runner_resets_submodules (main.Reuse
dWorkspaceSubmodules.test_every_submodule_free_checkout_on_an_owned_runner_resets_submo
dules)/
test_every_submodule_free_checkout_on_an_owned_runner_resets_submodules (main.Reuse
dWorkspaceSubmodules.test_every_submodule_free_checkout_on_an_owned_runner_resets_submo
dules)
View Logs
test_every_submodule_free_checkout_on_an_owned_runner_resets_submodules (main.Reuse
dWorkspaceSubmodules.test_every_submodule_free_checkout_on_an_owned_runner_resets_submo
dules) (job='web-bundles')/
test_every_submodule_free_checkout_on_an_owned_runner_resets_submodules (main.Reuse
dWorkspaceSubmodules.test_every_submodule_free_checkout_on_an_owned_runner_resets_submo
dules) (job='web-bundles')
View Logs
test_targets_outside_the_app_go_to_the_mac_canary (main.SwiftCanaryFleetCoverage.te
st_targets_outside_the_app_go_to_the_mac_canary)/
test_targets_outside_the_app_go_to_the_mac_canary (main.SwiftCanaryFleetCoverage.te
st_targets_outside_the_app_go_to_the_mac_canary)
View Logs

Fix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk:normal Risk tier (docs/ci/risk-tiers.md)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant