Skip to content

Integrate the native Gate desktop app with stabilized Hellas and macOS CI - #584

Merged
georgewhewell merged 6 commits into
masterfrom
codex/gate-desktop-integration
Sep 16, 2026
Merged

georgewhewell merged 6 commits into
masterfrom
codex/gate-desktop-integration

Conversation

@georgewhewell

@georgewhewell georgewhewell commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Gate hosts the Hellas SDK in a native Tauri desktop app, replacing the obsolete daemon/web/WASM workspace. The app includes local provider/gateway controls, execution history, a same-user control socket, and the separately provisioned Apple App Attest bridge.

Build and CI

  • Pin the sibling Hellas workspace to published master b4cdcd450d555f73fc8b3dd9d1af371917ff3a7c and align Rust to 1.96.1. This includes the executor filesystem lock/deadlock fixes and the Iroh graceful request-close fix; the existing lockfile and SDK interfaces remain compatible.
  • Generate TypeScript bindings at the actual frontend boundary, including matching enum field casing, import extensions, and numeric IPC values.
  • Require Linux formatting, Clippy, tests, binding drift checks, frontend typechecking/build, and an ARM64 macOS application build through the aggregate CI check. PR builds use no Apple secrets and publish no artifacts.
  • Add version-tag releases that Developer ID sign, notarize, staple, and verify ARM64 DMG and permission-preserving app ZIP assets before publishing. Ordinary builds retain the entitlement-free App Attest behavior.

Validation

  • Local locked resolution against the exact pinned Hellas checkout; formatting; warnings-as-errors Clippy; all 17 Rust tests; 12 generated binding exports with no drift; TypeScript typechecking and production bundle: passed for the updated pin.
  • Workflow actionlint, script shellcheck, shell syntax, and matching/mismatching release-tag checks: passed during desktop integration.
  • GitHub Actions CI passed on af10a8d: Linux checks, native ARM64 macOS app build and bundle/signature validation, and the aggregate required CI check.
  • The active protecc ruleset requires the GitHub Actions CI check; existing PR restrictions and admin bypass remain intact. Apple Developer ID and notarization credentials are validated when the first version tag is released.

Snapshot of uncommitted work that had been sitting in the working tree since
2026-09-02. Committed as-is on 2026-09-08 to get it into git rather than to
present a finished change -- rewrite or split it freely.

Three things are tangled together here because that is how they were found:

  - src-tauri/: a Tauri desktop app (15 files) including the Apple App Attest
    implementation, src-tauri/src/apple_app_attest.m and apple.rs. This is the
    receiving end of the split; the hellas repo still carries the matching
    deletion of crates/attestation/src/apple_app_attest.m and apple_macos.rs
    as its own uncommitted change, so that side is not yet committed either.
  - ui/ and macos/: the app's frontend and platform scaffolding.
  - A large restructure: 386 deletions, mostly crates/chat-ui and the GitHub
    workflow definitions. Intent not recorded anywhere; preserved verbatim.

Why this was committed now: the work existed only as untracked files on a
filesystem exported read-write to the whole LAN, in the directory adjacent to
/mnt/Home/src/hellas, which was emptied on 2026-09-05 by something still
unidentified. Untracked files have no git objects to recover from. Copies also
exist on the MacBook Air and at
/mnt/Home/Backups/gate-tauri-rescue/gate-untracked-20260908-1834.tgz.
@georgewhewell
georgewhewell enabled auto-merge (squash) September 16, 2026 19:35
@georgewhewell
georgewhewell merged commit d9264f0 into master Sep 16, 2026
3 checks passed
@georgewhewell
georgewhewell deleted the codex/gate-desktop-integration branch September 16, 2026 19:39
georgewhewell added a commit to hellas-ai/hellas that referenced this pull request Sep 16, 2026
The old `macos/package.sh` still packages `hellas-cli` as an attested
`Hellas.app`, even though native App Attest enrollment and proof
production moved to Gate in e32d23a.

Remove that unused packaging script and its `Info.plist`. Point the
attestation operating guide to Gate's existing signing instructions with
a commit permalink, since the desktop integration is still under review
in hellas-ai/gate#584. Hellas retains its
portable Apple verifier and requester support; Gate owns the signed app
and DeviceCheck producer.

Validation: `git diff --check`; confirmed no remaining tracked
references to the deleted packaging paths, legacy app output, or legacy
bundle identifier; verified the linked Gate signing guide exists. No
runtime code changes.
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