Skip to content

feat(native): add Intel macOS qualification-only build lane (S5) - #508

Merged
qnbs merged 2 commits into
mainfrom
s5-intel-qualification-lane
Aug 26, 2026
Merged

feat(native): add Intel macOS qualification-only build lane (S5)#508
qnbs merged 2 commits into
mainfrom
s5-intel-qualification-lane

Conversation

@qnbs

@qnbsqnbs commented Aug 26, 2026

Copy link
Copy Markdown
Owner

User description

Summary

Adds a qualification-only Intel macOS (x86_64) build lane, closing S5 from the post-#477 reconstruction reconciliation program's residual-cluster ledger.

Background

macos-13 (the last GitHub-hosted Intel runner) was removed from tauri-build.yml's production matrix on 2026-07-28 after 3 consecutive tagged-release runs each had the job sit in GitHub's queue indefinitely — see docs/TAURI-CI.md for the full incident. No issue tracked the "re-opened follow-up" the workflow's own comment referenced.

What changed

  • Empirically re-tested (2026-08-26, throwaway workflow_dispatch probe, deleted after use): GitHub's replacement runner label macos-15-intel (available since 2025-09-18, through August 2027) schedules and completes successfully on this org's plan.
  • New workflow: .github/workflows/tauri-intel-qualification.ymlworkflow_dispatch only, permissions: contents: read, no signing secrets, no Release/latest.json mutation of any kind. Runs a real pnpm exec tauri build on macos-15-intel (updater-artifact creation disabled), uploading the bundle as a plain build artifact.
  • Structurally verified non-publishing: scripts/workflow-policy-check.mjs's publishing-boundary check (from feat(ci): add structural workflow-policy YAML authority (S4) #505/S4) passes against this new file — the job is correctly absent from PUBLISHING_ALLOWLIST and never declares contents: write.
  • Docs: docs/TAURI-CI.md's stale "currently unavailable" framing updated to reflect the empirical re-test (without claiming Intel is back in the release matrix — it explicitly isn't yet); new docs/native/INTEL-MACOS-QUALIFICATION.md records status and what's still open before promotion; added to README's Documentation Hub index.
  • Tracking issue: native: promote macos-15-intel qualification lane into the release matrix #507 records the remaining promotion criteria (soak testing, artifact parity with the ARM build, an ongoing-cost decision, the explicit promotion PR) — deliberately not attempted in this PR.

Non-goals (explicitly out of scope)

  • Adding macos-15-intel to the production release matrix or latest.json.
  • Any code-signing/notarization work.
  • Deciding whether Intel Mac support should ship — this PR only re-establishes that it's technically possible to build there again.

Test plan

  • pnpm run workflow-policy:check — passes, including against the new workflow file
  • pnpm run lint — clean
  • pnpm run docs:check — clean
  • pnpm run ci:prepush — full local admission green
  • git diff --check — clean
  • Commit SSH-signed
  • Real empirical validation: macos-15-intel throwaway probe completed successfully (evidence in commit message / PR description above, probe branch deleted after use)

Summary by Sourcery

Re-establish Intel macOS build verification through a safe, manual qualification lane without adding Intel builds to production releases.

New Features:

  • Add a manually triggered Intel macOS qualification workflow that builds the Tauri application on macos-15-intel and uploads the resulting bundle as temporary evidence.

Enhancements:

  • Keep Intel qualification builds isolated from production releases, updater metadata, signing, and release mutations.
  • Document Intel macOS runner availability, qualification status, remaining promotion criteria, and tracking information.

CI:

  • Add a non-publishing Intel macOS build lane with read-only repository permissions and policy validation.

Documentation:

  • Update the Tauri CI documentation and documentation hub with the current Intel macOS qualification status and future promotion requirements.

CodeAnt-AI Description

Add a manual Intel macOS build qualification lane without affecting releases

What Changed

  • Adds a manually triggered workflow that builds the app on GitHub’s macos-15-intel runner and stores the bundle as a temporary artifact.
  • Keeps the qualification build separate from production releases: it does not publish releases, update latest.json, create updater artifacts, or use signing secrets.
  • Documents the runner’s availability, the remaining checks before release inclusion, and the tracking issue for future promotion.

Impact

✅ Intel macOS build availability can be verified on demand
✅ No qualification run can change published releases
✅ Clearer path to supporting Intel Mac releases

💡 Usage Guide

Checking Your Pull Request

Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.

Talking to CodeAnt AI

Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:

@codeant-ai ask: Your question here

This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.

Example

@codeant-ai ask: Can you suggest a safer alternative to storing this secret?

Preserve Org Learnings with CodeAnt

You can record team preferences so CodeAnt AI applies them in future reviews. Reply directly to the specific CodeAnt AI suggestion (in the same thread) and replace "Your feedback here" with your input:

@codeant-ai: Your feedback here

This helps CodeAnt AI learn and adapt to your team's coding style and standards.

Example

@codeant-ai: Do not flag unused imports.

Retrigger review

Ask CodeAnt AI to review the PR again, by typing:

@codeant-ai: review

Check Your Repository Health

To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.

Empirically confirmed (2026-08-26, throwaway workflow_dispatch probe)
that GitHub's macos-15-intel runner label — the replacement for the
retired macos-13 that was removed from tauri-build.yml's production
matrix on 2026-07-28 — schedules and runs successfully on this org's
plan.
Adds .github/workflows/tauri-intel-qualification.yml: workflow_dispatch
only, permissions: contents: read, no signing secrets, no Release/
latest.json mutation of any kind — structurally verified by
scripts/workflow-policy-check.mjs's publishing-boundary check, since
this job is not on PUBLISHING_ALLOWLIST. Runs a real
pnpm exec tauri build on macos-15-intel with updater-artifact
creation disabled, uploading the bundle as a build artifact only.
Deliberately not wired into tauri-build.yml's production matrix or
latest.json — a single successful qualification build proves the
runner label works, not that it's ready for regular release
inclusion (soak testing, artifact parity with the ARM build, and an
ongoing-cost decision remain open, tracked in #507 and
docs/native/INTEL-MACOS-QUALIFICATION.md).
Updates docs/TAURI-CI.md's stale "currently unavailable" framing to
reflect the empirical re-test, adds a Follow-ups entry, and adds the
new doc to README's Documentation Hub index.
@qodo-code-review

Copy link
Copy Markdown

ⓘ Qodo reviews are paused because your trial has ended. Ask your workspace admin to add credits to resume reviews. Manage billing

@codeant-ai

codeant-aiBot commented Aug 26, 2026

Copy link
Copy Markdown

🤖 CodeAnt AI — Review Status

StatusCommitStarted (UTC)Finished (UTC)
✅ Reviewed your PRee75cfcAug 26, 2026 · 09:3709:37

@sourcery-aisourcery-aiBot 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.

Sorry @qnbs, you've used your own review budget of 250,000 diff characters for the last 7 days.

You can request another review in 6 days by commenting @sourcery-ai review. Upgrade to get a review now.

@codeant-ai

Copy link
Copy Markdown

Thanks for using CodeAnt! 🎉

We're free for open-source projects. if you're enjoying it, help us grow by sharing.

Share on X ·
Reddit ·
LinkedIn

@vercel

vercelBot commented Aug 26, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
worldscript-studioReadyReadyPreviewAug 26, 2026 9:44am

@coderabbitai

coderabbitaiBot commented Aug 26, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 19 minutes.

View limit details

Limit details: You’ve used the included review currently available. Your 107 included PR review attempts over the past 7 days set your current allowance at 1 review per hour.

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 4dcbafd2-9960-4da9-a3b0-349273b069e7

📥 Commits

Reviewing files that changed from the base of the PR and between a98ceca and 88faa65.

📒 Files selected for processing (4)
  • .github/workflows/tauri-intel-qualification.yml
  • README.md
  • docs/TAURI-CI.md
  • docs/native/INTEL-MACOS-QUALIFICATION.md

Warning

Your free Security trial is over. An organization admin can activate billing to continue.


Comment @coderabbitai help to get the list of available commands.

@sourcery-ai

Copy link
Copy Markdown

Reviewer's Guide

This PR re-establishes Intel macOS build feasibility through a manually triggered, read-only qualification lane on macos-15-intel, producing non-release artifacts and explicitly preserving the production release matrix; accompanying documentation captures the empirical runner validation and criteria for any future promotion.

Sequence diagram for the Intel macOS qualification build

sequenceDiagram
participant Maintainer
participant GitHubActions
participant IntelRunner as macos-15-intel
participant TauriBuild as pnpm exec tauri build
participant ArtifactStore as Build artifact storage
Maintainer->>GitHubActions: workflow_dispatch
GitHubActions->>IntelRunner: Run qualification job
IntelRunner->>IntelRunner: Checkout and setup toolchains
IntelRunner->>TauriBuild: Build with updater artifacts disabled
TauriBuild-->>IntelRunner: Bundle directory
IntelRunner->>ArtifactStore: upload-artifact
ArtifactStore-->>Maintainer: Non-release qualification artifact
Loading

File-Level Changes

ChangeDetailsFiles
Adds a manually triggered, non-publishing Intel macOS qualification workflow.
  • Runs the real Tauri build on the macos-15-intel x86_64 runner with pinned actions, Rust caching, and required Homebrew dependencies.
  • Disables updater artifact generation and uploads the resulting bundle only as a short-lived build artifact.
  • Restricts workflow permissions to contents: read and prevents concurrent runs per ref.
.github/workflows/tauri-intel-qualification.yml
Documents Intel runner availability and separates technical qualification from production support.docs/TAURI-CI.md
docs/native/INTEL-MACOS-QUALIFICATION.md
README.md

Possibly linked issues


Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@codeant-aicodeant-aiBot added the size:L This PR changes 100-499 lines, ignoring generated files label Aug 26, 2026
@codeant-ai

codeant-aiBot commented Aug 26, 2026

Copy link
Copy Markdown

🏁 CodeAnt Quality Gate Results

Commit:88faa656
Scan Time: 2026-08-26 09:43:43 UTC

✅ Overall Status: PASSED

Quality Gate Details

Quality GateStatusDetails
Secrets✅ PASSED0 secrets found
Duplicate Code✅ PASSED0.0% duplicated
SAST✅ PASSEDNo security issues
Bugs✅ PASSEDRating S: No bugs
IAC✅ PASSEDRating S: No issues

View Full Results

@amazon-q-developeramazon-q-developerBot 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.

Summary

This PR successfully establishes an Intel macOS qualification build lane without impacting the production release process. The implementation is well-structured and appropriately scoped.

Key Strengths

Security posture: The new workflow correctly uses permissions: contents: read, excludes all signing secrets, and has been verified by the existing workflow-policy-check.mjs to ensure it cannot accidentally publish releases.

Clear boundaries: The workflow, documentation, and tracking issue (#507) all clearly communicate that this is qualification-only — macos-15-intel is explicitly not part of the release matrix or latest.json generation.

Documentation completeness: The PR updates TAURI-CI.md with the empirical re-verification results, adds the new INTEL-MACOS-QUALIFICATION.md status document, and indexes it in the README's Documentation Hub.

Assessment

No blocking defects found. The workflow follows standard CI patterns, includes proper error checking (jq availability), and the non-publishing constraints are enforced both structurally (permissions, no secrets) and procedurally (policy check verification). The temporary tauri.conf.json modification during build is safe since each workflow run operates in a fresh workspace.

The stated non-goals (not adding to production matrix, no signing, no release mutation) are correctly implemented and well-documented.


You can now have the agent implement changes and create commits directly on your pull request's source branch. Simply comment with /q followed by your request in natural language to ask the agent to make changes.

if-no-files-found: warn let the workflow report success even if
pnpm exec tauri build produced no bundle — silently invalidating the
qualification claim the run exists to make. error is the correct
semantics: a missing bundle means the qualification failed.
@codecov

codecovBot commented Aug 26, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@qnbs
qnbs merged commit a091964 into mainAug 26, 2026
34 checks passed
@qnbs
qnbs deleted the s5-intel-qualification-lane branch August 26, 2026 10:06
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:LThis PR changes 100-499 lines, ignoring generated files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@qnbs