Skip to content

iOS lane: SwiftUI shell, Rust xcframework, TestFlight in CI #2876

Open

Description

@QuinnsCode

Part of #2875. The shared iOS groundwork every app below builds on. Plan: notes/STORES.md (branch office/sprocket-083a until its PR merges).

  • apps/<app>/ios/: an Xcode project (or XcodeGen/Tuist spec, checked in as text) for a SwiftUI app, iPhone and iPad.
  • scripts/ios/xcframework.ts: build an app's Rust crate for aarch64-apple-ios and aarch64-apple-ios-sim, generate Swift bindings with UniFFI, pack an .xcframework. Pilot on hippo_sim even though Park Hide & Seek ships first without one.
  • A shared Swift package for the pieces every app needs: an edge client with protocol version handshake and an "Update to keep playing" screen, an offline screen, eqosys sign-in via ASWebAuthenticationSession.
  • CI: an ios-drop job (or a lane in desktop-drop.yml) on a macOS runner in the drops environment. A -beta.N tag uploads to TestFlight; a stable tag submits for review. Uses the App Store Connect API key from the MANUAL RUN issue; agents never see it.
  • Versions: CFBundleShortVersionString from the tag, build number from the run number.

Done when a dry run builds an unsigned .ipa for one app in CI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions