refactor(core): remove session layer exports (#34623)

This commit is contained in:
James Long
2026-06-30 11:44:08 -04:00
committed by GitHub
parent 5691f36e98
commit 6387f955cf
8 changed files with 11 additions and 35 deletions
@@ -66,7 +66,7 @@ export interface Interface {
export class Service extends Context.Service<Service, Interface>()("@opencode/ControlPlaneMoveSession") {} export class Service extends Context.Service<Service, Interface>()("@opencode/ControlPlaneMoveSession") {}
export const layer = Layer.effect( const layer = Layer.effect(
Service, Service,
Effect.gen(function* () { Effect.gen(function* () {
const git = yield* Git.Service const git = yield* Git.Service
@@ -141,13 +141,6 @@ export const layer = Layer.effect(
}), }),
) )
export const defaultLayer = layer.pipe(
Layer.provide(Git.defaultLayer),
Layer.provide(EventV2.defaultLayer),
Layer.provide(ProjectV2.defaultLayer),
Layer.provide(SessionStore.defaultLayer),
)
export const node = makeGlobalNode({ export const node = makeGlobalNode({
service: Service, service: Service,
layer, layer,
+1 -10
View File
@@ -181,7 +181,7 @@ export interface Interface {
export class Service extends Context.Service<Service, Interface>()("@opencode/v2/Session") {} export class Service extends Context.Service<Service, Interface>()("@opencode/v2/Session") {}
export const layer = Layer.effect( const layer = Layer.effect(
Service, Service,
Effect.gen(function* () { Effect.gen(function* () {
const database = yield* Database.Service const database = yield* Database.Service
@@ -457,15 +457,6 @@ export const layer = Layer.effect(
}), }),
) )
export const defaultLayer = layer.pipe(
Layer.provide(SessionStore.defaultLayer),
Layer.provide(SessionProjector.defaultLayer),
Layer.provide(EventV2.defaultLayer),
Layer.provide(Database.defaultLayer),
Layer.provide(ProjectV2.defaultLayer),
Layer.orDie,
)
const resolvePrompt = (input: PromptInput.Prompt) => const resolvePrompt = (input: PromptInput.Prompt) =>
Prompt.make({ Prompt.make({
text: input.text, text: input.text,
+1 -3
View File
@@ -8,7 +8,7 @@ import { SessionStore } from "../store"
import { SessionExecution } from "../execution" import { SessionExecution } from "../execution"
/** Current-process routing for implicit-local Locations. Future remote placement belongs here. */ /** Current-process routing for implicit-local Locations. Future remote placement belongs here. */
export const layer = Layer.effect( const layer = Layer.effect(
SessionExecution.Service, SessionExecution.Service,
Effect.gen(function* () { Effect.gen(function* () {
const store = yield* SessionStore.Service const store = yield* SessionStore.Service
@@ -37,8 +37,6 @@ export const layer = Layer.effect(
}), }),
) )
export const defaultLayer = layer.pipe(Layer.provide(SessionStore.defaultLayer))
export const node = makeGlobalNode({ export const node = makeGlobalNode({
service: SessionExecution.Service, service: SessionExecution.Service,
layer, layer,
+1 -2
View File
@@ -208,7 +208,7 @@ function insertMessage(db: DatabaseService, event: SessionEvent.Event, message:
.pipe(Effect.orDie) .pipe(Effect.orDie)
} }
export const layer = Layer.effectDiscard( const layer = Layer.effectDiscard(
Effect.gen(function* () { Effect.gen(function* () {
const events = yield* EventV2.Service const events = yield* EventV2.Service
const { db } = yield* Database.Service const { db } = yield* Database.Service
@@ -455,5 +455,4 @@ export const layer = Layer.effectDiscard(
}), }),
) )
export const defaultLayer = layer.pipe(Layer.provide(EventV2.defaultLayer), Layer.provide(Database.defaultLayer))
export const node = makeGlobalNode({ name: "session-projector", layer, deps: [EventV2.node, Database.node] }) export const node = makeGlobalNode({ name: "session-projector", layer, deps: [EventV2.node, Database.node] })
+1 -3
View File
@@ -89,7 +89,7 @@ import { llmClient } from "../../effect/app-node-platform"
* explicit loop starts the next provider turn after local settlement. Configured agent step limits bound the loop. * explicit loop starts the next provider turn after local settlement. Configured agent step limits bound the loop.
*/ */
export const layer = Layer.effect( const layer = Layer.effect(
Service, Service,
Effect.gen(function* () { Effect.gen(function* () {
const events = yield* EventV2.Service const events = yield* EventV2.Service
@@ -406,8 +406,6 @@ export const layer = Layer.effect(
}), }),
) )
export const defaultLayer = layer
export const node = makeLocationNode({ export const node = makeLocationNode({
service: Service, service: Service,
layer, layer,
+1 -3
View File
@@ -25,7 +25,7 @@ export interface Interface {
export class Service extends Context.Service<Service, Interface>()("@opencode/v2/SessionStore") {} export class Service extends Context.Service<Service, Interface>()("@opencode/v2/SessionStore") {}
export const layer = Layer.effect( const layer = Layer.effect(
Service, Service,
Effect.gen(function* () { Effect.gen(function* () {
const { db } = yield* Database.Service const { db } = yield* Database.Service
@@ -60,6 +60,4 @@ export const layer = Layer.effect(
}), }),
) )
export const defaultLayer = layer.pipe(Layer.provide(Database.defaultLayer))
export const node = makeGlobalNode({ service: Service, layer, deps: [Database.node] }) export const node = makeGlobalNode({ service: Service, layer, deps: [Database.node] })
+1 -3
View File
@@ -23,7 +23,7 @@ export interface Interface {
export class Service extends Context.Service<Service, Interface>()("@opencode/v2/SessionTodo") {} export class Service extends Context.Service<Service, Interface>()("@opencode/v2/SessionTodo") {}
export const layer = Layer.effect( const layer = Layer.effect(
Service, Service,
Effect.gen(function* () { Effect.gen(function* () {
const { db } = yield* Database.Service const { db } = yield* Database.Service
@@ -75,6 +75,4 @@ export const layer = Layer.effect(
}), }),
) )
export const defaultLayer = layer.pipe(Layer.provide(EventV2.defaultLayer), Layer.provide(Database.defaultLayer))
export const node = makeLocationNode({ service: Service, layer, deps: [EventV2.node, Database.node] }) export const node = makeLocationNode({ service: Service, layer, deps: [EventV2.node, Database.node] })
@@ -52,6 +52,7 @@ import { Worktree } from "@/worktree"
import { RuntimeFlags } from "@/effect/runtime-flags" import { RuntimeFlags } from "@/effect/runtime-flags"
import { MoveSession } from "@opencode-ai/core/control-plane/move-session" import { MoveSession } from "@opencode-ai/core/control-plane/move-session"
import { Database } from "@opencode-ai/core/database/database" import { Database } from "@opencode-ai/core/database/database"
import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder"
import { LayerNode } from "@opencode-ai/core/effect/layer-node" import { LayerNode } from "@opencode-ai/core/effect/layer-node"
import { httpClient } from "@opencode-ai/core/effect/app-node-platform" import { httpClient } from "@opencode-ai/core/effect/app-node-platform"
import { EventV2 } from "@opencode-ai/core/event" import { EventV2 } from "@opencode-ai/core/event"
@@ -64,6 +65,7 @@ import { PtyTicket } from "@opencode-ai/core/pty/ticket"
import { Ripgrep } from "@opencode-ai/core/ripgrep" import { Ripgrep } from "@opencode-ai/core/ripgrep"
import { SessionProjector } from "@opencode-ai/core/session/projector" import { SessionProjector } from "@opencode-ai/core/session/projector"
import { SessionV2 } from "@opencode-ai/core/session" import { SessionV2 } from "@opencode-ai/core/session"
import { SessionExecution } from "@opencode-ai/core/session/execution"
import * as SessionExecutionLocal from "@opencode-ai/core/session/execution/local" import * as SessionExecutionLocal from "@opencode-ai/core/session/execution/local"
import { lazy } from "@/util/lazy" import { lazy } from "@/util/lazy"
import { CorsConfig, isAllowedCorsOrigin, type CorsOptions } from "@opencode-ai/server/cors" import { CorsConfig, isAllowedCorsOrigin, type CorsOptions } from "@opencode-ai/server/cors"
@@ -285,7 +287,7 @@ export function createRoutes(
corsVaryFix, corsVaryFix,
fenceLayer, fenceLayer,
cors(corsOptions), cors(corsOptions),
MoveSession.defaultLayer, AppNodeBuilder.build(MoveSession.node),
HttpServer.layerServices, HttpServer.layerServices,
]), ]),
Layer.provide(Layer.succeed(CorsConfig)(corsOptions)), Layer.provide(Layer.succeed(CorsConfig)(corsOptions)),
@@ -295,8 +297,7 @@ export function createRoutes(
Layer.provide(locationLayer), Layer.provide(locationLayer),
Layer.provide(PtyEnvironment.layer), Layer.provide(PtyEnvironment.layer),
Layer.provide( Layer.provide(
SessionV2.defaultLayer.pipe( AppNodeBuilder.build(SessionV2.node, [[SessionExecution.node, SessionExecutionLocal.node]]).pipe(
Layer.provide(SessionExecutionLocal.defaultLayer),
Layer.provide(locationServiceMapLayer), Layer.provide(locationServiceMapLayer),
), ),
), ),