Repository navigation
fix(ios): prepare snapshot helpers within a shared readiness budget - #4181
andrewfree wants to merge 4 commits into
Conversation
|
Someone is attempting to deploy a commit to the Callstack Team on Vercel. A member of the Team first needs to authorize it. |
|
Thanks for the change. The code at 34236db looks sound, but it is device-facing and has no live run yet, so it is not ready to merge. This change reorders native helper startup (runtime init before bind) and moves helper creation out of the capture into a detached 10 s attempt (lifecycle.ts#L231). The PR body says live qualification on the current head is pending, and unit fakes cannot show the main risk. If the cold AX cost sits in the app's first Not blocking, and fine to take or leave: (a) with The only failing check is Vercel, which needs a team member to authorize the fork deploy. The diff touches no website or docs-site files, so this looks unrelated. No GitHub Actions job ran on this fork head, so there is no unit or gate evidence yet. Before merge, the live cold-Simulator run above is needed, followed by a full |
|
Initial simulator evidence for Commands used Observed phase evidence:
The native cache manifest matches the six current source inputs: source fingerprint The full affected gate passes all 41 runnable checks at this SHA; 25 skipped lanes are not passes. Draft retained: exclusively primary cold acceptance, the earlier separate application-server/foreground failure, and the wider runtime matrix remain unproven. The fallback remains a workaround. No capture deadline or behavioral assertion was weakened. Verification: OpenAI Codex, parent gpt-6-astra; independent source review gpt-6.1-sol. Follow-up at On the preceding head with a prebuilt bridge and a freshly rebooted simulator, one helper PID served all captures. Preparation took 145 ms. Open encountered Nonblocking refactors (shared constants, required readiness deadline, shared cleanup ownership, README placement, and typed native startup-protocol cleanup) are deferred. The suggested adapter-boundary timing test is a coverage gap; current source already passes the same readiness deadline to preparation and manager. The unreachable runtime-unavailable response is a diagnostic cleanup, not a newly observed capture defect. No unrelated refactor was included. Final correction head The current-head cleanup probe observed the real prebuilt helper with no socket yet, then requested A subsequent fresh current-head daemon captured Settings through primary AX (754 ms and a 188 ms stabilization acquisition), navigated by General's fresh ref, then captured General through primary AX in 719 ms. Source and T3 General PNGs were saved and inspected. The 8.235-second click included 6.458 seconds of XCTest runner readiness preflight; it was not a fast-click benchmark. Open still reported the transient foreground-owner refusal before primary recovery. Final source session/daemon cleanup passed, with owned helper/daemon PIDs and socket absent. This closes the pending-startup cleanup evidence gap, while the exact requested cold pending/fallback trajectory and runtime matrix remain unqualified. |
|
I reviewed 312cdcf. The live evidence I asked for at 34236db is now in, so that part is resolved. One defect remains in the new readiness path. With The rule the code must satisfy: every helper startup failure is delivered to exactly one capture, and it retires a generation only when that capture belongs to the generation whose capture started the attempt. A capture of any other generation starts a fresh attempt. Not blocking, take or leave: the new regression at lifecycle.test.ts:83 throws a hand-built There are no conflicts. The only failing check is Vercel, which waits for a team member to authorize the fork deploy. The diff touches only |
Summary
Cold Simulator AX initialization can consume a capture deadline. Prepare the helper under source ownership, sharing the existing two-second readiness allowance with binary preparation. Pending startup returns typed
preparing; its ten-second ceiling never extends a capture deadline.Initialize the native runtime before listener readiness. Close aborts and awaits owned work, including concurrent callers. Failed helper startup is retried instead of replaying a stale failure that disables a new app generation. Target, foreground and capture safeguards remain intact.
Ten files change, including native/lifecycle fixtures. Adjacent #4172 touches the same lifecycle/native files. No public API change or linked issue.
Validation
Head
312cdcfba1574f15db99bbb8cc3e15ca42fb144f, basecf9153e1973bd17ea034423cf092b2f971fb363e.pnpm check:affected --run --head 312cdcfba: PASS, exact commit, 41 runnable checks; 25 skipped lanes are not passes.Codex authored under human direction; independent Codex source reviews. Human review pending. Draft retained for incomplete cold qualification.