Skip to content

docs: stop telling macOS users to strip the quarantine flag - #383

Merged
EtienneLescot merged 1 commit into
mainfrom
claude/docs-macos-install-accurate
Aug 15, 2026
Merged

docs: stop telling macOS users to strip the quarantine flag#383
EtienneLescot merged 1 commit into
mainfrom
claude/docs-macos-install-accurate

Conversation

@EtienneLescot

@EtienneLescot EtienneLescot commented Aug 15, 2026

Copy link
Copy Markdown
Collaborator

Every build since 1.9.0 is signed with a Developer ID certificate, notarized and stapled. I confirmed it in the release job logs rather than from the config: they report source=Notarized Developer ID and a passing spctl -a -vv -t install. Gatekeeper does not block those DMGs, so xattr -rd com.apple.quarantine has been unnecessary for several releases.

Leaving it in was not merely stale. It teaches users to strip quarantine as routine, and an app whose quarantine flag was removed by hand is exactly what leads to App Translocation confusion later — macOS then runs it from a read-only image, where it cannot be updated in place. That gets more relevant, not less, once #358 lands.

The upgrade warning was open-ended

It read as if it applied to every upgrade, forever. It is an artifact of the ad-hoc-signing era: macOS ties Screen Recording and Accessibility grants to an app's signature, so a bundle signed as Electron could not hold them — which is exactly what v1.9.0-rc.1 shipped and why recording was impossible on it.

Now scoped to "older than 1.9.0", with the reason stated. A signed build inherits its predecessor's grants and needs none of this.

Added

A note that macOS 15+ re-asks for screen-recording permission periodically, for every third-party recorder. Users hit that and blame the app or a recent update; saying so up front is cheaper than the support thread — and it will otherwise get misattributed to auto-update once #358 is in.

Scope

  • README.md
  • website/docs/installation.md — had drifted identically, same three changes
  • technical-documentation/engineering/release-and-secrets.md — referenced "the xattr step the README documents". Reworded: the README no longer documents it, and that doc's point is about the ad-hoc fallback case, where users would now have no written way out.

docs:check passes (31 files). No code changes.

Every build since 1.9.0 is signed with a Developer ID certificate,
notarized and stapled — verified in the release job logs, which report
`source=Notarized Developer ID` and a passing `spctl -a -vv -t install`.
Gatekeeper does not block those DMGs, so `xattr -rd com.apple.quarantine`
has been unnecessary for several releases.

Leaving it in was not merely stale. It teaches users to strip quarantine as
a matter of routine, and running an app whose quarantine flag was removed by
hand is exactly what leads to App Translocation confusion later — the app
runs from a read-only image and cannot be updated in place.

The upgrade warning was also open-ended, reading as if it applied to every
upgrade forever. It is an artifact of the ad-hoc-signing era: macOS ties
Screen Recording and Accessibility grants to an app's signature, so a build
signed as "Electron" could not hold them. Scoped to "older than 1.9.0" and
given the reason, since a signed build inherits its predecessor's grants and
needs none of this.

Adds a note that macOS 15+ re-asks for screen-recording permission
periodically for every third-party recorder. Users hit that and blame the
app or the update; saying so up front is cheaper than the support thread.

Same three changes in website/docs/installation.md, which had drifted
identically. release-and-secrets.md referenced "the step the README
documents" — reworded, since the README no longer documents it and an
ad-hoc release would otherwise strand users with no written way out.
@coderabbitai

coderabbitai Bot commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

@EtienneLescot, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 36 minutes

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 945b1ea3-595f-4f38-a06a-376cb67db7b1

📥 Commits

Reviewing files that changed from the base of the PR and between f5f6574 and c18e026.

📒 Files selected for processing (3)
  • README.md
  • technical-documentation/engineering/release-and-secrets.md
  • website/docs/installation.md

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@EtienneLescot
EtienneLescot merged commit c477979 into main Aug 15, 2026
18 checks passed
@EtienneLescot
EtienneLescot deleted the claude/docs-macos-install-accurate branch August 15, 2026 10:19
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