Commit graph

34 commits

Author SHA1 Message Date
Lawrence Chen
d08f28d770
Merge pull request #83 from manaflow-ai/perf/portal-hosting-selected-mount
Reduce terminal input latency via portal hosting + selected-only workspace mounting
2026-02-18 22:31:45 -08:00
Lawrence Chen
699db2a9ed
Fix menubar lag on M1 Macs by using universal xcframework target (#93)
Remove -Dxcframework-target=native from CI and release workflows,
defaulting to universal (matching upstream ghostty). The native target
produces a macos-arm64 xcframework slice that causes Xcode to link the
final binary differently (~70KB more __text), resulting in menubar and
right-click lag on M1 Max. The arm64 static libraries are byte-for-byte
identical between native and universal builds - the difference is purely
in how Xcode resolves the xcframework slice.
2026-02-18 22:09:13 -08:00
Lawrence Chen
442eb1f01d Rename test targets to cmuxTests and cmuxUITests 2026-02-18 21:19:56 -08:00
Lawrence Chen
915e34bd38
Revert xcframework-target removal that broke CI (#86) (#90)
The -Dxcframework-target flag controls platform slices (native=macOS
only, universal=macOS+iOS), not CPU microarchitecture. Removing it
caused CI to attempt iOS builds which fail due to missing Metal
iOS toolchain on the runner.
2026-02-18 20:37:59 -08:00
Austin Wang
65ac29d827
Fix zsh git branch refresh race after cwd change (#71)
* Fix zsh git branch refresh race after cwd change

* Clarify intentional duplicate cwd check in git refresh path

* Add Metal Toolchain download step to CI and release workflows

Fixes build failure when compiling Metal shaders for iOS xcframework
targets — the self-hosted runner needs `xcodebuild -downloadComponent
MetalToolchain` installed before `xcrun metal` can run.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 20:36:27 -08:00
Lawrence Chen
d24030db58
Use universal xcframework target instead of native (#86)
The self-hosted runner (M4 Mac Mini) was building GhosttyKit with
-Dxcframework-target=native, producing M4-tuned binaries. This caused
menubar and right-click lag on M1 machines. Dropping the flag defaults
to universal, which works well across all Apple Silicon chips.
2026-02-18 20:21:34 -08:00
Lawrence Chen
299a5eb3d8 ci: run ui tests directly on self-hosted macmini 2026-02-14 03:00:26 -08:00
Lawrence Chen
0dd3252980 CI: add cmux-macmini as UI test VM fallback 2026-02-11 18:09:45 -08:00
Lawrence Chen
2013be43ef CI: allow cmux-vm host/user via GitHub secrets 2026-02-10 17:29:38 -08:00
Lawrence Chen
de1b2e1c37 CI: require reachable cmux-vm; fail fast instead of slow scan 2026-02-10 17:28:01 -08:00
Lawrence Chen
7022517b47 CI: use dhcp lease IPs as vm candidates 2026-02-10 17:16:50 -08:00
Lawrence Chen
023abc48e0 CI: fix yaml; parse dhcp leases with awk 2026-02-10 17:06:02 -08:00
Lawrence Chen
110715b09c CI: derive vm IP from /var/db/dhcpd_leases 2026-02-10 17:04:39 -08:00
Lawrence Chen
bc9f1ff663 CI: bound vm discovery time; faster ssh probes 2026-02-10 16:54:26 -08:00
Lawrence Chen
6612b389c6 CI: fix vm discovery scan under set -u 2026-02-10 16:45:32 -08:00
Lawrence Chen
d7475a2356 CI: make vm subnet scan compatible with pipefail 2026-02-10 16:44:34 -08:00
Lawrence Chen
4bca80affe CI: discover vm via subnet scan when host alias missing 2026-02-10 16:38:06 -08:00
Lawrence Chen
7e1653a3ca CI: fix vm host detection quoting 2026-02-10 16:36:26 -08:00
Lawrence Chen
a5a29962e5 CI: find cmux-vm host via ssh config; fail if unreachable 2026-02-10 16:33:51 -08:00
Lawrence Chen
e72916a77d CI: require UI tests via vm; robust ssh opts 2026-02-10 16:32:10 -08:00
Lawrence Chen
0d950cb891 CI: run mac UI tests only in cmux-vm 2026-02-10 16:27:29 -08:00
Lawrence Chen
aa4c7ceede CI: gate mac UI tests on real GUI session 2026-02-10 16:25:44 -08:00
Lawrence Chen
635f8fe223 Fix CI: handle app activation failure in UI test runner
Add "Failed to activate application" to the retry/skip patterns so
the self-hosted runner gracefully skips UI tests when the app can't
come to foreground (Running Background state).
2026-02-10 16:15:24 -08:00
Lawrence Chen
5febb66873 Update landing page: switch to Bun, add view transitions and UI polish
- CI: replace Node/npm with Bun
- Add view-transition animations for theme toggle
- Set html background for flash-free theme switches
- UI refinements to download button, brew command, and layout
- Replace package-lock.json with bun.lock
2026-02-09 22:01:53 -08:00
Lawrence Chen
d25f14a79f Add landing page (web/) with Next.js + Tailwind
- Minimal centered layout with Geist sans font
- Typing animation cycling through agent names
- Light/dark mode toggle via next-themes
- Download for Mac button linking to latest DMG
- Feature list, GitHub + Docs footer links
- Meta tags and Open Graph for SEO
- CI: add web typecheck job (tsc --noEmit)
2026-02-09 20:51:27 -08:00
Lawrence Chen
20c62b3b9a
Fix CI race condition on self-hosted runner (#19)
* Fix zsh ZDOTDIR wrapper + log parsing with -- messages

* Fix CI race condition: serialize self-hosted builds with concurrency group

Two workflows racing on the same self-hosted runner caused DerivedData
corruption (release's rm -rf nuked DerivedData while CI was building).
Add shared concurrency group and scope DerivedData cleanup to project.
2026-02-06 22:32:14 -08:00
Lawrence Chen
7c8ac4c887 Fix CI build cache error by cleaning DerivedData
Add a step to remove stale GhosttyTabs DerivedData before building
to prevent the "cannot open constant extraction protocol list input
file" error that occurs with incremental builds on self-hosted runners.
2026-01-29 17:55:02 -08:00
Lawrence Chen
66a87dc25e Handle UI test retry without exiting early 2026-01-28 15:28:42 -08:00
Lawrence Chen
f070a72260 Fix CI UI test log handling 2026-01-28 15:20:22 -08:00
Lawrence Chen
e1cf5cd33d Skip UI tests when automation unavailable 2026-01-28 15:17:38 -08:00
Lawrence Chen
4b01de1ba9 Avoid sudo in CI UI tests 2026-01-28 15:09:30 -08:00
Lawrence Chen
6067aa1dbd Prepare 1.3.0 and harden CI UI tests 2026-01-28 15:04:41 -08:00
Lawrence Chen
d76ccaa531 Build GhosttyKit.xcframework in CI 2026-01-28 04:51:44 -08:00
Lawrence Chen
03ee628fb6 Add mock update feed UI tests 2026-01-28 03:22:37 -08:00