Skip to content

Commit e2a92c1

Browse files
radroidclaude
andcommitted
fix(t3x): give the crash-recovery test the registries upstream added
Upstream's pingdotgg#5219 (native subagent & workflow observability) and pingdotgg#5677 (stop the reaper killing live background subagents) put two shared registries behind the projection snapshot query: ThreadBackgroundLivenessService and ThreadPlanProgressService. The fork's crash-recovery reconciler test builds its own layer rather than reusing orchestration/runtimeLayer.ts, so it did not pick them up and failed typecheck with an unfilled Layer context. Provided rather than provideMerge'd — nothing in this test reads the registries directly, so they need satisfying, not re-exporting. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 77ab4ec commit e2a92c1

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

apps/server/src/orchestration/Layers/CrashRecoveryReconciler.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ import { OrchestrationProjectionPipelineLive } from "./ProjectionPipeline.ts";
2727
import { OrchestrationProjectionSnapshotQueryLive } from "./ProjectionSnapshotQuery.ts";
2828
import { OrchestrationEngineService } from "../Services/OrchestrationEngine.ts";
2929
import { ProjectionSnapshotQuery } from "../Services/ProjectionSnapshotQuery.ts";
30+
import * as ThreadBackgroundLiveness from "../ThreadBackgroundLiveness.ts";
31+
import * as ThreadPlanProgress from "../ThreadPlanProgress.ts";
3032
import { reconcileInterruptedTurnsOnBoot } from "./CrashRecoveryReconciler.ts";
3133

3234
const MODEL_SELECTION = {
@@ -46,6 +48,12 @@ async function createReconcilerSystem() {
4648
OrchestrationProjectionSnapshotQueryLive,
4749
ProjectionTurnRepositoryLive,
4850
).pipe(
51+
// Shared registries the snapshot query reads, added upstream in #5219 /
52+
// #5677. Mirrors orchestration/runtimeLayer.ts, except with `provide`
53+
// rather than `provideMerge`: nothing in this test reads them directly, so
54+
// they only need satisfying, not re-exporting.
55+
Layer.provide(ThreadBackgroundLiveness.layer),
56+
Layer.provide(ThreadPlanProgress.layer),
4957
Layer.provide(OrchestrationEventStoreLive),
5058
Layer.provide(OrchestrationCommandReceiptRepositoryLive),
5159
Layer.provide(RepositoryIdentityResolver.layer),

0 commit comments

Comments
 (0)