build: skip Ghostty app bundle during setup#2848
build: skip Ghostty app bundle during setup#2848gaelic-ghost wants to merge 2 commits intomanaflow-ai:mainfrom
Conversation
Why: - setup only needs GhosttyKit.xcframework, but Ghostty implicitly built the macOS app too - the extra app build can trigger Dock tile plugin side effects and wastes setup time Verification: - timed ./scripts/setup.sh in a fresh worktree after moving the matching GhosttyKit cache aside - observed setup complete in 126.54s versus the prior 159.41s baseline - confirmed ghostty/macos/build/ReleaseLocal/Ghostty.app was not produced by the patched setup path
|
@gaelic-ghost is attempting to deploy a commit to the Manaflow Team on Vercel. A member of the Team first needs to authorize it. |
|
To use Codex here, create an environment for this repo. |
📝 WalkthroughWalkthroughThe GhosttyKit xcframework build invocation now adds Changes
Sequence Diagram(s)(omitted — change is a small build-flag addition; no multi-component control flow to illustrate) Estimated Code Review Effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly Related PRs
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
Greptile SummaryThis PR adds Confidence Score: 5/5Safe to merge — single-flag addition that aligns setup with existing CI and release scripts. No P0/P1 findings. The change is a one-line flag addition consistent with No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[setup.sh] --> B[ensure-ghosttykit.sh]
B --> C{Cache hit?}
C -- Yes --> G[Symlink GhosttyKit.xcframework]
C -- No --> D{Local xcframework\nmatches build key?}
D -- Yes --> F[Seed cache from local]
D -- No --> E["zig build\n-Demit-xcframework=true\n-Demit-macos-app=false\n-Dxcframework-target=universal\n-Doptimize=ReleaseFast"]
E --> F
F --> G
G --> H[Xcode build / cmux DEV app]
Reviews (2): Last reviewed commit: "build: skip ghostty app in setup" | Re-trigger Greptile |
|
@codex review |
@gaelic-ghost I have started the AI code review. It will take a few minutes to complete. |
|
Codex Review: Didn't find any major issues. Chef's kiss. ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: Length of output: 5132 🏁 Script executed: Length of output: 0 🏁 Script executed: Length of output: 2383 🌐 Web query: 💡 Result: In Ghostty, the
When
Practically, on macOS this results in a
Sources: Ghostty build config option definition [1],
The A few observations:
No issues found. The change is minimal, scoped correctly, and achieves the stated goal. I'll also update the long-term memory to reflect the new canonical build command. 🐇 ~( 📋 noted — build command updated in memory ) ✏️ Learnings added
⛔ Learnings removed🧠 Learnings used |
There was a problem hiding this comment.
1 issue found across 1 file
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="scripts/ensure-ghosttykit.sh">
<violation number="1" location="scripts/ensure-ghosttykit.sh:125">
P2: Cache key omits build configuration, so changing zig build flags can still reuse stale GhosttyKit artifacts for the same commit.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
| @@ -120,7 +120,9 @@ else | |||
| echo "==> Building GhosttyKit.xcframework (this may take a few minutes)..." | |||
There was a problem hiding this comment.
P2: Cache key omits build configuration, so changing zig build flags can still reuse stale GhosttyKit artifacts for the same commit.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At scripts/ensure-ghosttykit.sh, line 125:
<comment>Cache key omits build configuration, so changing zig build flags can still reuse stale GhosttyKit artifacts for the same commit.</comment>
<file context>
@@ -120,7 +120,9 @@ else
- zig build -Demit-xcframework=true -Dxcframework-target=universal -Doptimize=ReleaseFast
+ # Ghostty's xcframework build implicitly enables the macOS app bundle
+ # unless we turn it off explicitly, which causes avoidable app-side effects.
+ zig build -Demit-xcframework=true -Demit-macos-app=false -Dxcframework-target=universal -Doptimize=ReleaseFast
)
echo "$GHOSTTY_KEY" > "$LOCAL_KEY_STAMP"
</file context>
There was a problem hiding this comment.
cubic identified a real follow-up, but it’s outside the scope of this volunteer PR. I fixed the docs drift that directly matched this change and I’m leaving cache-key redesign for a separate paid pass.
Summary
scripts/ensure-ghosttykit.shnow passes-Demit-macos-app=falsewhen building GhosttyKit during setup../scripts/setup.shwas buildingGhostty.appas a side effect even though cmux setup only needsGhosttyKit.xcframework.159.41sto126.54sin local runs, about32.87sfaster (20.6%).Testing
./scripts/setup.shin a fresh sibling worktree after temporarily moving the matching~/.cache/cmux/ghosttykit/<sha>entry aside to force a rebuild../scripts/reload.sh --tag setup-no-ghostty-appafterward to verify the cmux Debug app still builds cleanly.GhosttyKit.xcframework.ghostty/macos/build/ReleaseLocal/Ghostty.appwas not produced by setup in the worktree.Demo Video
For UI or behavior changes, include a short demo video (GitHub upload, Loom, or other direct link).
Review Trigger (Copy/Paste as PR comment)
Checklist
Summary by cubic
Skip building the Ghostty macOS app during setup by passing
-Demit-macos-app=falsewhen producingGhosttyKit.xcframework, avoiding Dock tile plugin side effects and cutting cold setup from 159.41s to 126.54s (~20.6%). Also synced rebuild instructions inCLAUDE.mdandCONTRIBUTING.mdto use the same flags (disable app; universal xcframework).Written for commit 5dd2d42. Summary will update on new commits.
Summary by CodeRabbit