checkout: /tmp/issue22577-redproof at 0df2b9c89d9195a78c669c29351c85de4e33e58a (base Orchestrator.ts) with runtimeLayer.test.ts copied from the new head commit command: ./node_modules/.bin/vp test run src/orchestration-v2/runtimeLayer.test.ts -t "delegated completion" --- 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. RUN v5.0.5 /tmp/issue22577-redproof/apps/server stdout | src/orchestration-v2/runtimeLayer.test.ts > OrchestrationV2LayerLive lifecycle > starts a queued delegated completion on the model chosen while it waited [23:30:32.733] ERROR (#3036): Error [AssertionError]: expected { instanceId: 'codex', …(1) } to deeply equal { instanceId: 'codex', …(1) } at /tmp/issue22577-redproof/apps/server/src/orchestration-v2/runtimeLayer.test.ts:4437:16 { actual: { instanceId: 'codex', model: 'gpt-5.4' }, expected: { instanceId: 'codex', model: 'gpt-5.5' }, showDiff: true, operator: 'deepStrictEqual', [cause]: undefined } stdout | src/orchestration-v2/runtimeLayer.test.ts > OrchestrationV2LayerLive lifecycle > starts a queued delegated completion on the instance chosen while it waited [23:30:32.931] ERROR (#3097): Error [AssertionError]: expected { instanceId: 'codex', …(1) } to deeply equal { instanceId: 'codex_alternate', …(1) } at /tmp/issue22577-redproof/apps/server/src/orchestration-v2/runtimeLayer.test.ts:4437:16 { actual: { instanceId: 'codex', model: 'gpt-5.4' }, expected: { instanceId: 'codex_alternate', model: 'gpt-5.5' }, showDiff: true, operator: 'deepStrictEqual', [cause]: undefined } stdout | src/orchestration-v2/runtimeLayer.test.ts > OrchestrationV2LayerLive lifecycle > holds a queued delegated completion only while its current provider is limited [23:30:33.187] ERROR (#3109): Error [OrchestratorDispatchError]: Failed to dispatch orchestration command queue.resume (runtime-layer-queue-delegated-completion-limit:resume). at /tmp/issue22577-redproof/apps/server/src/orchestration-v2/Orchestrator.ts:11488:25 at orchestrationV2.dispatch.withReceipt (/tmp/issue22577-redproof/apps/server/src/orchestration-v2/Orchestrator.ts:11785:7) at orchestrationV2.dispatch.withReceipt (definition) (/tmp/issue22577-redproof/apps/server/src/orchestration-v2/Orchestrator.ts:11572:44) { _tag: 'OrchestratorDispatchError', commandId: 'runtime-layer-queue-delegated-completion-limit:resume', commandType: 'queue.resume', [cause]: [Error: Continue the limited thread before resuming its queue.] } stdout | src/orchestration-v2/runtimeLayer.test.ts > queue.resume on a project-disabled instance > holds a queued delegated completion when its current instance is turned off [23:30:33.663] ERROR (#8926): Error [AssertionError]: expected 'starting' to equal 'queued' at /tmp/issue22577-redproof/apps/server/src/orchestration-v2/runtimeLayer.test.ts:6579:16 { actual: 'starting', expected: 'queued', showDiff: true, operator: 'strictEqual', [cause]: undefined } ❯ src/orchestration-v2/runtimeLayer.test.ts (87 tests | 4 failed | 83 skipped) 1757ms ❯ OrchestrationV2LayerLive lifecycle (48) × starts a queued delegated completion on the model chosen while it waited 277ms × starts a queued delegated completion on the instance chosen while it waited 174ms × holds a queued delegated completion only while its current provider is limited 280ms ❯ queue.resume on a project-disabled instance (2) × holds a queued delegated completion when its current instance is turned off 133ms ⎯⎯⎯⎯⎯⎯⎯ Failed Tests 4 ⎯⎯⎯⎯⎯⎯⎯ FAIL src/orchestration-v2/runtimeLayer.test.ts > OrchestrationV2LayerLive lifecycle > starts a queued delegated completion on the model chosen while it waited AssertionError: expected { instanceId: 'codex', …(1) } to deeply equal { instanceId: 'codex', …(1) } - Expected + Received { "instanceId": "codex", - "model": "gpt-5.5", + "model": "gpt-5.4", } ❯ src/orchestration-v2/runtimeLayer.test.ts:4437:16 4435| const started = after.runs.find((run) => run.id === queued.id)… 4436| assert.equal(started.status, "starting"); 4437| assert.deepEqual(after.thread.modelSelection, currentSelection… | ^ 4438| assert.deepEqual(started.modelSelection, currentSelection); 4439| assert.equal(started.providerInstanceId, currentSelection.inst… ❯ ~effect/Effect/successCont ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1422:28 ❯ ~effect/Effect/evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/core.ts:585:30 ❯ FiberImpl.runLoop ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:654:41 ❯ FiberImpl.evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:595:23 ❯ FiberImpl.evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:589:27 ❯ Array. ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1025:13 ❯ MixedSchedulerDispatcher.runTasks ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/Scheduler.ts:254:17 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/4]⎯ FAIL src/orchestration-v2/runtimeLayer.test.ts > OrchestrationV2LayerLive lifecycle > starts a queued delegated completion on the instance chosen while it waited AssertionError: expected { instanceId: 'codex', …(1) } to deeply equal { instanceId: 'codex_alternate', …(1) } - Expected + Received { - "instanceId": "codex_alternate", - "model": "gpt-5.5", + "instanceId": "codex", + "model": "gpt-5.4", } ❯ src/orchestration-v2/runtimeLayer.test.ts:4437:16 4435| const started = after.runs.find((run) => run.id === queued.id)… 4436| assert.equal(started.status, "starting"); 4437| assert.deepEqual(after.thread.modelSelection, currentSelection… | ^ 4438| assert.deepEqual(started.modelSelection, currentSelection); 4439| assert.equal(started.providerInstanceId, currentSelection.inst… ❯ ~effect/Effect/successCont ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1422:28 ❯ ~effect/Effect/evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/core.ts:585:30 ❯ FiberImpl.runLoop ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:654:41 ❯ FiberImpl.evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:595:23 ❯ FiberImpl.evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:589:27 ❯ Array. ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1025:13 ❯ MixedSchedulerDispatcher.runTasks ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/Scheduler.ts:254:17 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[2/4]⎯ FAIL src/orchestration-v2/runtimeLayer.test.ts > OrchestrationV2LayerLive lifecycle > holds a queued delegated completion only while its current provider is limited OrchestratorDispatchError: Failed to dispatch orchestration command queue.resume (runtime-layer-queue-delegated-completion-limit:resume). ❯ src/orchestration-v2/Orchestrator.ts:11488:25 11486| ) 11487| ) { 11488| return yield* new OrchestratorDispatchError({ | ^ 11489| commandId: command.commandId, 11490| commandType: command.type, ❯ ~effect/Effect/successCont ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1422:28 ❯ FiberImpl.succeedWith ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:711:30 ❯ ContImpl.mapCont [as ~effect/Effect/successCont] ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1527:16 ❯ ~effect/Effect/evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/core.ts:585:30 ❯ FiberImpl.runLoop ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:654:41 ❯ FiberImpl.evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:595:23 ❯ FiberImpl.evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:589:27 Caused by: Continue the limited thread before resuming its queue. ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[3/4]⎯ FAIL src/orchestration-v2/runtimeLayer.test.ts > queue.resume on a project-disabled instance > holds a queued delegated completion when its current instance is turned off AssertionError: expected 'starting' to equal 'queued' Expected: "queued" Received: "starting" ❯ src/orchestration-v2/runtimeLayer.test.ts:6579:16 6577| (run) => run.id === queued.id, 6578| ); 6579| assert.equal(held?.status, "queued"); | ^ 6580| assert.isTrue(held?.queueHeld); 6581| }), ❯ ~effect/Effect/successCont ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1422:28 ❯ ~effect/Effect/evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/core.ts:585:30 ❯ FiberImpl.runLoop ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:654:41 ❯ FiberImpl.evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:595:23 ❯ FiberImpl.evaluate ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:589:27 ❯ Array. ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/internal/effect.ts:1025:13 ❯ MixedSchedulerDispatcher.runTasks ../../../../home/ubuntu/wt/issue-22577/node_modules/.pnpm/effect@4.0.5/node_modules/effect/src/Scheduler.ts:254:17 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[4/4]⎯ Test Files 1 failed (1) Tests 4 failed | 83 skipped (87) Start at 23:30:23 Duration 10.16s (import 53%, transform 28%, tests 18%, setup 1%) exit: 1