2026-11-02T20:46:53.653Z T1 focused test receipt {"syntheticDataOnly":true,"noLiveExpo":true} 2026-11-02T20:46:53.655Z base regression replay: raw receipt follows "The head test source was replayed against base production modules with only relative imports rewritten. Skipped tests below are name-filtered by -t, not quarantined." 2026-11-02T20:46:01.698Z environment {"node":"v26.12.1","OS":"Linux 6.1.102 x64","checkout":"/home/ubuntu/wt/pr-29490-base","SHA":"8657eecb28bc8c767510cc6b9d852b628047c604"} 2026-11-02T20:46:01.705Z replay provenance {"source":"/home/ubuntu/wt/pr-29490/apps/server/src/device/EasDeviceHost.test.ts","sourceSHA":"f6557992585aa5e711cc5b6eb9b4d14e0610619a","replayPath":"/tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts","transformation":"Only relative import paths changed to absolute paths targeting the base checkout. Test bodies and fake HTTP are byte-for-byte head source."} 2026-11-02T20:46:01.705Z command {"cwd":"/home/ubuntu/wt/pr-29490-base/apps/server","command":["vp","test","run","--config","/tmp/lead-29490-r1/evidence-capture/20261102T204800Z/replay.vite.config.ts","/tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts","-t","leaves admission to Expo's create although the account's gate is off"]} RUN v5.0.5 /home/ubuntu/wt/pr-29490-base/apps/server stdout | ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > leaves admission to Expo's create although the account's gate is off [20:46:06.143] ERROR (#1): Error [DeviceHostUnavailableError]: EAS Simulator is unavailable: EAS Simulator is not enabled for the pingdotgg Expo account. at unavailable (/home/ubuntu/wt/pr-29490-base/apps/server/src/device/EasDeviceHost.ts:194:5) at /home/ubuntu/wt/pr-29490-base/apps/server/src/device/EasDeviceHost.ts:490:27 at EasDeviceHost.startSession (/home/ubuntu/wt/pr-29490-base/apps/server/src/device/EasDeviceHost.ts:711:14) at EasDeviceHost.startSession (definition) (/home/ubuntu/wt/pr-29490-base/apps/server/src/device/EasDeviceHost.ts:461:31) { _tag: 'DeviceHostUnavailableError', hostId: 'eas', hostLabel: 'EAS Simulator', reason: 'EAS Simulator is not enabled for the pingdotgg Expo account.', [cause]: undefined } ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > starts a bounded session and routes its stream and agent to that session ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > runs an Android session through serve-emu beside an iOS one ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > refuses to start past its session limit ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > tells concurrent sessions apart although EAS gives each the same UDID ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > keeps a refused create's record for the reaper without counting it after a restart ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > does not sweep a replacement's session from a listing in flight when its scope closes × ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > leaves admission to Expo's create although the account's gate is off 43ms → EAS Simulator is unavailable: EAS Simulator is not enabled for the pingdotgg Expo account. ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > stops the session a refused create made anyway ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > records a session before creating it and refuses to start without the record ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > keeps a session it could not stop counted, listed, and retried ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > lets go of a stopping session Expo has ended although its stop keeps failing ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > asks for an EAS project before starting anything when none can be found ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > reports iOS unavailable on a server with no Expo credential ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > stops a session that is still starting when the host stops ↓ ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > releases each thread's agent session on close and keeps the session running Test Files 1 failed (1) Tests 1 failed | 14 skipped (15) Start at 20:46:02 Duration 3.88s (transform 68%, import 28%, setup 3%, tests 1%) note: You are running `vp test` as a Vite+ built-in command. If you meant to run the test npm script, use `vpr test` instead. ⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯ FAIL ../../../../../../tmp/lead-29490-r1/evidence-capture/20261102T204800Z/EasDeviceHost.replay.test.ts > EAS Simulator host > leaves admission to Expo's create although the account's gate is off DeviceHostUnavailableError: EAS Simulator is unavailable: EAS Simulator is not enabled for the pingdotgg Expo account. ❯ unavailable src/device/EasDeviceHost.ts:194:5 192| 193| const unavailable = (reason: string, cause?: unknown) => 194| new DeviceHostUnavailableError({ | ^ 195| hostId, 196| hostLabel: config.label, ❯ src/device/EasDeviceHost.ts:490:27 ❯ ~effect/Effect/successCont ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1422:28 ❯ FiberImpl.succeedWith ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:711:30 ❯ ContImpl.mapCont [as ~effect/Effect/successCont] ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1527:16 ❯ ~effect/Effect/evaluate ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/core.ts:585:30 ❯ FiberImpl.runLoop ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:654:41 ❯ FiberImpl.evaluate ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:595:23 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { _tag: 'DeviceHostUnavailableError', hostId: 'eas', hostLabel: 'EAS Simulator', reason: 'EAS Simulator is not enabled for the pingdotgg Expo account.' } ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ 2026-11-02T20:46:06.296Z test command exit status 1 2026-11-02T20:46:53.664Z head environment {"node":"v26.12.1","OS":"Linux 6.1.102 x64","checkout":"/home/ubuntu/wt/pr-29490","SHA":"f6557992585aa5e711cc5b6eb9b4d14e0610619a"} 2026-11-02T20:46:53.664Z head command {"cwd":"/home/ubuntu/wt/pr-29490","command":["vp","test","run","apps/server/src/device/EasDeviceHost.test.ts","apps/server/src/device/ExpoApi.test.ts","--reporter=verbose"]} RUN v5.0.5 /home/ubuntu/wt/pr-29490 ✓ |t3| src/device/ExpoApi.test.ts > Expo credentials > prefer the saved token, then EXPO_TOKEN, then the eas login session 26ms ✓ |t3| src/device/ExpoApi.test.ts > Expo credentials > refuses the redacted placeholder without echoing it 2ms ✓ |t3| src/device/ExpoApi.test.ts > Expo credentials > refuses a pasted newline without echoing it 2ms ✓ |t3| src/device/ExpoApi.test.ts > Expo credentials > refuses a malformed EXPO_TOKEN without echoing it 2ms ✓ |t3| src/device/ExpoApi.test.ts > Expo API > sends the credential and reads session endpoints once the simulator is ready 15ms ✓ |t3| src/device/ExpoApi.test.ts > Expo API > keeps the credential out of errors when Expo is unreachable 4ms ✓ |t3| src/device/ExpoApi.test.ts > Expo API > reports GraphQL errors and rejected credentials as Expo failures 20ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > starts a bounded session and routes its stream and agent to that session 49ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > runs an Android session through serve-emu beside an iOS one 16ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > refuses to start past its session limit 10ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > tells concurrent sessions apart although EAS gives each the same UDID 16ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > keeps a refused create's record for the reaper without counting it after a restart 22ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > does not sweep a replacement's session from a listing in flight when its scope closes 17ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > leaves admission to Expo's create although the account's gate is off 8ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > stops the session a refused create made anyway 9ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > records a session before creating it and refuses to start without the record 6ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > keeps a session it could not stop counted, listed, and retried 41ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > lets go of a stopping session Expo has ended although its stop keeps failing 22ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > asks for an EAS project before starting anything when none can be found 5ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > reports iOS unavailable on a server with no Expo credential 4ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > stops a session that is still starting when the host stops 11ms ✓ |t3| src/device/EasDeviceHost.test.ts > EAS Simulator host > releases each thread's agent session on close and keeps the session running 25ms Test Files 2 passed (2) Tests 22 passed (22) Start at 20:46:57 Duration 11.60s (transform 61%, setup 21%, import 14%, tests 3%) note: You are running `vp test` as a Vite+ built-in command. If you meant to run the test npm script, use `vpr test` instead. 2026-11-02T20:47:09.237Z head test command exit status 0 2026-11-02T20:47:09.237Z previous head run {"command":"vp test run apps/server/src/device/EasDeviceHost.test.ts apps/server/src/device/ExpoApi.test.ts","log":"/tmp/lead-29490-r1/evidence-capture/20261102T202201Z/head-focused-tests.log","exitStatus":0,"result":"2 files, 22 tests passed; repeated with verbose reporting for named evidence"}