Skip to content

fix: pin native benchmark compatibility adapters - #483

Merged
janicduplessis merged 2 commits into
mainfrom
fix/benchmark-ios-compatibility-469
Sep 7, 2026
Merged

janicduplessis merged 2 commits into
mainfrom
fix/benchmark-ios-compatibility-469

Conversation

@janicduplessis

@janicduplessis janicduplessis commented Sep 7, 2026 •

Copy link
Copy Markdown
Collaborator

Description

The isolated iOS recovery benchmark cannot finish recording when agent-device's process inspection is denied, and ExpoModulesJSI's nested SwiftPM sandbox blocks its build. Refs #469; the real campaign build/recording/cleanup preflight remains outstanding before timed runs.

Solution

Prepare a hash-pinned local copy of agent-device 0.20.10 with the native process helper from the upstream fix, plus an explicit Xcode/JSI sandbox adapter. Both arms use the same copies; the outer benchmark isolation stays enforced. Unknown package bytes or later mutations fail validation.

This is benchmark-only compatibility, not a global install change. It adds a Node process per process query; new campaigns require fresh golden state and exact-toolchain preflight.

Test plan

  • The optional real macOS integration test prepares the published package, proves ps is denied while identity lookup works, and verifies Xcode resolves through the pinned wrapper.
  • Tampering with package contents, permissions, symlinks, fixture patches, or the executable target fails validation.
  • Untimed iOS validation under the existing isolation policy covered build, launch, injected-error capture, Settings recovery, video recording with patched 0.20.10, and cleanup.

@janicduplessis

Copy link
Copy Markdown
Collaborator Author

Fresh code re-review is clear at d5c62f1; all 9 focused live compatibility/isolation tests passed. Campaign use remains gated on fresh golden state and an untimed build, launch-error recovery, recording and cleanup smoke with the exact RC.21 manifest and isolation profile.

@janicduplessis
janicduplessis marked this pull request as ready for review September 7, 2026 21:20
@janicduplessis
janicduplessis merged commit b0ee87c into main Sep 7, 2026
5 checks passed
@janicduplessis
janicduplessis deleted the fix/benchmark-ios-compatibility-469 branch September 7, 2026 21:20
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