From 4a90ffedfb9ccd18ff086c5b1c8c31944120ea28 Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Wed, 1 Jul 2026 18:39:43 -0400 Subject: [PATCH] fix(server): restore provider node deps after dev merge --- packages/core/src/effect/dfdf | 1 - packages/core/src/plugin/runtime.ts | 15 ++++++++++----- packages/server/src/routes.ts | 4 ++-- 3 files changed, 12 insertions(+), 8 deletions(-) delete mode 100644 packages/core/src/effect/dfdf diff --git a/packages/core/src/effect/dfdf b/packages/core/src/effect/dfdf deleted file mode 100644 index 77f2d579689..00000000000 --- a/packages/core/src/effect/dfdf +++ /dev/null @@ -1 +0,0 @@ -File to save in: ~/.local/share/opencode/worktree/012780/location-layer-tiers/packages/core/src/effect/ \ No newline at end of file diff --git a/packages/core/src/plugin/runtime.ts b/packages/core/src/plugin/runtime.ts index b3e1d93742d..c521c9dd30f 100644 --- a/packages/core/src/plugin/runtime.ts +++ b/packages/core/src/plugin/runtime.ts @@ -110,8 +110,13 @@ export const providerLayer = providerLayerWithCell(defaultCell) export const node = makeGlobalNode({ service: Service, layer, deps: [] }) -export const providerNode = makeGlobalNode({ - name: "plugin-runtime-provider", - layer: providerLayer, - deps: [node, SessionV2.node, Job.node, LocationServiceMap.node], -}) +// Raw layer replacements are compiled without dependencies, so cell-scoped +// provider replacements must go through this node to keep their deps wired. +export const providerNodeWithCell = (cell: Cell) => + makeGlobalNode({ + name: "plugin-runtime-provider", + layer: providerLayerWithCell(cell), + deps: [node, SessionV2.node, Job.node, LocationServiceMap.node], + }) + +export const providerNode = providerNodeWithCell(defaultCell) diff --git a/packages/server/src/routes.ts b/packages/server/src/routes.ts index 38ecac06bda..4d5fe537d75 100644 --- a/packages/server/src/routes.ts +++ b/packages/server/src/routes.ts @@ -50,7 +50,7 @@ export function createRoutes(password?: string) { } export function createEmbeddedRoutes(sdkPlugins?: SdkPlugins.Store) { - return makeRoutes(ServerAuth.Config.layer({ username: "opencode", password: Option.none() }), sdkPlugins) + return makeRoutes(ServerAuth.Config.configLayer({ username: "opencode", password: Option.none() }), sdkPlugins) } function makeRoutes( @@ -63,7 +63,7 @@ function makeRoutes( [ [SessionExecution.node, SessionExecutionLocal.node], [PluginRuntime.node, PluginRuntime.layerWithCell(pluginRuntimeCell)], - [PluginRuntime.providerNode, PluginRuntime.providerLayerWithCell(pluginRuntimeCell)], + [PluginRuntime.providerNode, PluginRuntime.providerNodeWithCell(pluginRuntimeCell)], ...(sdkPlugins ? [[SdkPlugins.node, SdkPlugins.layerWithStore(sdkPlugins)] as const] : []), ], )