Repository navigation
docs: install Homebrew casks by fully qualified name - #2409
Merged
Merged
Conversation
`brew tap entireio/tap` fails outright under Homebrew 6's tap trust: tapping runs a readall audit over every cask in the tap, each load hits the trust check, and the tap is left empty behind `Cannot tap entireio/tap: invalid syntax in tap!`. The README told users to run it first, so the documented install died on step one (#2394). A fully qualified `<tap>/<token>` is exempt from that check, and `brew install` auto-taps without the audit (`Tap#install` defaults to `verify: false`; only `cmd/tap.rb` passes `verify: true`), then persists scoped trust for the one cask it installed. So the whole flow collapses to a single command, with `brew upgrade` still working by short name afterwards. This is what #1427 proposed. It was held back because `conflicts_with` then forced you to trust both casks before either would install; Homebrew fixed that in 6.0.10 (Homebrew/brew#23027) by rescuing UntrustedTapError in `check_conflicts`. The other two mechanisms predate tap trust entirely, so 6.0.10 is the floor. Also add a stable-install job to the nightly smoke workflow. The macOS leg only ever installed the nightly cask, and the old sequence there ran `brew trust` before `brew tap` — the working order — so CI stayed green while the README was broken. A runner starts with no tap and no trust entries, which is the state that reproduces it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Entire-Checkpoint: 01M2FQ0T9HKP0D66WSXARC39PC
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
Make the Slack alert heading channel-neutral or identify the failing installation job.
Get a fresh assessment by requesting another Copilot review.
Pull request overview
Updates Homebrew installation documentation and CI smoke coverage for Homebrew 6 tap trust.
Changes:
- Uses fully qualified stable and nightly cask names.
- Adds stable installation smoke testing.
- Expands Slack failure notifications to both install jobs.
File summaries
| File | Description | Review finding |
|---|---|---|
README.md |
Documents fully qualified Homebrew cask installs. | No findings. |
.github/workflows/nightly-e2e.yml |
Updates nightly installation and adds stable validation. | Alert heading should identify stable-only failures accurately. |
Review details
- Files reviewed: 2/2 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
The heading was unambiguous while the workflow tested one channel: the schedule, the workflow and the release channel were all "nightly". Covering stable split those, so a stable-only failure alerted "Nightly install smoke failed" while the nightly job had passed. The body already reads "a published CLI ... at least one channel/OS", so the heading was the only part asserting a channel. Naming the failing job instead would need three nested ternaries inside the JSON payload to cover both-failed; the run link already carries it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Entire-Checkpoint: 01M2FRRTCT6J0EPT4EHBF7MTKV
gtrrz-victor
approved these changes
Sep 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
https://entire.io/gh/entireio/cli/trails/1323
brew tap entireio/tapfails under Homebrew 6's tap trust, so the documented install died on step one. A fully qualified cask name auto-taps without that audit and grants itself scoped trust, collapsing the flow to one command.Also adds a
stable-installjob to the nightly smoke workflow. Its macOS leg only covered nightly, and the old sequence there ranbrew trustbeforebrew tap— the working order — so CI stayed green while the README was broken.Verified end to end on a clean machine. Needs Homebrew 6.0.10+, which is where Homebrew/brew#23027 fixed the
conflicts_withblocker that held up #1427.Closes #2394. Supersedes #1427, which proposed the same fix first.
🤖 Generated with Claude Code
Note
Low Risk
Documentation and CI-only changes to install commands; no runtime CLI or auth/data-path changes.
Overview
Homebrew installs are documented and exercised as a single fully-qualified cask (
entireio/tap/entire/entire@nightly) instead of separatebrew tap,brew trust, and short cask names. The README explains that Homebrew 6’s tap-trust rules make the old flow fail on step one, and that qualified names auto-tap with scoped trust (Homebrew 6.0.10+).Nightly install smoke aligns macOS nightly setup with that one-liner. A new
stable-installjob onmacos-latestruns the documented stable install only (no checkout/E2E): it asserts the tap appeared without an explicitbrew tap, bothentireandgit-remote-entireare on PATH, andentire versionis not a nightly build. Scheduled Slack alerts now fire if either smoke or stable-install fails, with copy that covers install failures on any channel/OS.Reviewed by Cursor Bugbot for commit 62ca8a5. Configure here.