Skip to content

ci(ios): source-only validation - #861

Draft
pascalandr wants to merge 1 commit into
feat/android-companion-cifrom
feat/ios-source-handoff
Draft

pascalandr wants to merge 1 commit into
feat/android-companion-cifrom
feat/ios-source-handoff

Conversation

@pascalandr

@pascalandr pascalandr commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Stacked source/handoff PR

Depends on Android foundation #860; base is feat/android-companion-ci, not dev, so this PR contains only the iOS preparation delta. Retarget after the foundation is integrated. Both PRs remain drafts: neither certifies mobile delivery.

  • Linux PR/manual SOURCE validation only: locked workspace npm installation with desktop scripts disabled, launcher typecheck/tests/build, immutable vendored ABI verification and pure locked Rust policy tests.
  • Read-only permissions, immutable action pins, no account/signing secrets, Apple downloads, native iOS build, export or stores.
  • Portable IOS_HANDOFF.md for Shantur, linked from README, with stopped attempts, actual achieved state, unresolved gates and next supported Mac/iPhone checklist. No automatic assignment or notification.

Honest state

The stacked head also passed Android source + debug APK CI: run 37446119356, with short-lived artifact 11403981660. This is Android regression/build evidence, never an iOS native build. Existing desktop draft-only jobs are skipped, not validated by these mobile checks.

The foundation's Android source + debug APK CI passed, with a hash-verified short-lived test artifact. This does not qualify Android on device or iOS natively.

GitHub SOURCE CI passed: run 37446119417, head c4ea5895c7678718de3b7d205ef4b5a38aecfea9. This is Linux source/policy validation, not a native iOS build.

Local latest-dev source integration passed 20/20 JS tests without JDK skip, mobile typecheck, launcher build/browser, pure Rust policy 4/4 and ABI verification 142 upstream files / 13 guard inputs. GitHub execution is separate evidence, never proof of an iOS application.

Historical ARM64-device/Intel-simulator Swift component objects are not a linked .app, IPA or executed Rust↔Swift FFI. Array-derived pointer lifetimes, boundary IDs/ownership, exact simulator runtime, native Swift/linker confinement and WKWebView/device behavior remain unqualified. Local native iOS experimentation is stopped, and no further Mac/VM/SSH, exhausted Apple transport, sandbox broadening or diagnostic attempts are authorized here.

Shantur can review sources/CI first, then agree a supported owned Mac/device builder and unsigned non-distribution validation contract with fresh approval. The current ios:build requests app-store-connect export and is explicitly not a default validation command. Signing, accounts, provisioning and store submission require separate operator authorization; App Review 4.2 acceptance is not guaranteed.

Private environment-bound probes, caches/crashes and transport receipts remain preserved outside publication. An involuntary rustup toolchain installation during earlier Windows source preparation is disclosed; no cleanup or native test replay was performed. No mobile/store readiness is claimed.

Layer an explicitly source-only Linux PR/manual workflow over the Android companion foundation. Validate locked launcher dependencies, source contracts, bundle, Tauri ABI provenance and pure Rust authority policy with immutable actions and read-only permissions; do not generate Apple projects, compile native iOS, sign or export.

Document the exact stopped experimentation state for Shantur: component/object compilation is not application linking or executed FFI, Array-derived pointer lifetimes remain unqualified, runtime and confinement gates remain open and the exhausted Apple transport path must not be retried. Require a supported owned Mac/device and separately approved unsigned validation contract before further native work; warn that the current distribution script is not a default validation command.

Keep private environment-bound diagnostics out of the public handoff, preserve native evidence and call out server exposure/dependency and store minimum-functionality limits. Normalize workflow-test CRLF reads and link the handoff from the README. Latest integration passes20/20 source tests without JDK skip, typecheck and ABI142/13 verification; GitHub source results remain separate from native readiness.
@pascalandr pascalandr changed the title ci(ios): source-only validation and Shantur handoff ci(ios): source-only validation Oct 6, 2026
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