Skip to content

ci(python): add opt-in native Intel macOS wheel validation - #4140

Open
Cyb3rb1ade wants to merge 2 commits into
lancedb:mainfrom
Cyb3rb1ade:codex/macos-intel-wheel
Open

ci(python): add opt-in native Intel macOS wheel validation#4140
Cyb3rb1ade wants to merge 2 commits into
lancedb:mainfrom
Cyb3rb1ade:codex/macos-intel-wheel

Conversation

@Cyb3rb1ade

@Cyb3rb1ade Cyb3rb1ade commented Sep 6, 2026

Copy link
Copy Markdown

Summary

Add an opt-in native Intel macOS wheel workflow using the explicit macos-15-intel runner. This respects the low-volume/platform-cost rationale in #2836: it does not restore Intel to the default release matrix or publish anything to PyPI.

Downstream users still run local embedded LanceDB on Intel Macs. This provides a source-build path with an installed-wheel smoke test.

Changes

  • Manual dispatch, plus PR validation only when this workflow or its smoke script changes.
  • Existing macOS composite build action, repository release profile, locked dependencies, native x86_64 target and default feature set including fp16 kernels.
  • Fresh venv outside the source tree; installed-version and Mach-O architecture checks.
  • Actual create/insert, additive column migration, filtered vector search, update, reopen and delete smoke tests.
  • Short-lived wheel artifact with source commit, Cargo.lock, Rust version and SHA-256 checksum; documentation states the compatibility/acceptance boundaries.

Validation

  • Native Intel build and installed-wheel smoke passed for this PR's source at fa824b927d2fa40072cba1472e625ce9df746434: run 34060681299.
  • Artifact: lancedb-0.39.0b3-cp310-abi3-macosx_10_15_x86_64.whl; downloaded artifact independently SHA-256 checked: c68028e55927e5cba9703c4c1dbbb176b16d589afc7de6b8633e3cc433f8ebba.
  • Fresh installed environment passed pip check, native x86_64 Mach-O validation, insert/additive schema/filtered ANN/update/reopen/delete checks. No source-tree import was used.
  • The only follow-up source change raises the workflow budget from 120 to 240 minutes to match the successful validation run; build flags and smoke code are unchanged. No LTO/release-profile relaxation.
  • Ruff lint and formatting passed for the smoke script; whitespace check passes.
  • Separate downstream pinned LanceDB 0.34.0 verification also passed in run 34048642479; this is distinct from the 0.39.0b3 evidence above.

A 10.15 deployment tag is not a claim that Catalina or all older Intel CPUs were tested. Downstream ML dependencies need their own validation. No production data, credentials, publish permissions or release changes are involved.

@github-actions github-actions Bot added Python Python SDK ci labels Sep 6, 2026
@Cyb3rb1ade
Cyb3rb1ade marked this pull request as ready for review September 6, 2026 23:37

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Claude Code Review

This pull request is from a fork — automated review is disabled. A repository maintainer can comment @claude review to run a one-time review.

@lancedb-gatekeeper lancedb-gatekeeper Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Gate recommendation: approve with a non-blocking risk.\n\nThis cleanly preserves #2836's release boundary: Intel validation is opt-in, read-only, and non-publishing, while the isolated smoke test exercises an installed native extension through meaningful database operations.\n\nThe residual risk is platform coverage. This review could not independently reproduce the Intel build and runtime, and a macOS 15/Python 3.12 run would not demonstrate Catalina, older Intel CPUs, or every supported ABI3 interpreter. Treat the artifact as source-build evidence rather than restored Intel support, and retain the documented downstream validation requirement.

@lancedb-gatekeeper lancedb-gatekeeper Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Gate recommendation: approve with a non-blocking risk.

This cleanly preserves #2836's release boundary: Intel validation is opt-in, read-only, and non-publishing, while the isolated smoke test exercises an installed native extension through meaningful database operations.

The residual risk is platform coverage. This review could not independently reproduce the Intel build and runtime, and a macOS 15/Python 3.12 run would not demonstrate Catalina, older Intel CPUs, or every supported ABI3 interpreter. Treat the artifact as source-build evidence rather than restored Intel support, and retain the documented downstream validation requirement.

@lancedb-gatekeeper lancedb-gatekeeper Bot added K-approved Latest Gatekeeper recommendation permits acceptance. K-risk Latest Gatekeeper recommendation includes a non-blocking risk. labels Sep 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci K-approved Latest Gatekeeper recommendation permits acceptance. K-risk Latest Gatekeeper recommendation includes a non-blocking risk. Python Python SDK

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant