refactor: destroy Todo facade (#21962)

This commit is contained in:
Kit Langton
2026-04-10 21:47:28 -04:00
committed by GitHub
parent face879100
commit a4c686025c
3 changed files with 9 additions and 17 deletions
+7 -10
View File
@@ -31,14 +31,11 @@ export namespace Observability {
export const layer = !base export const layer = !base
? EffectLogger.layer ? EffectLogger.layer
: Layer.mergeAll( : Otlp.layerJson({
EffectLogger.layer, baseUrl: base,
Otlp.layerJson({ loggerExportInterval: Duration.seconds(1),
baseUrl: base, loggerMergeWithExisting: true,
loggerExportInterval: Duration.seconds(1), resource,
loggerMergeWithExisting: true, headers,
resource, }).pipe(Layer.provide(EffectLogger.layer), Layer.provide(FetchHttpClient.layer))
headers,
}),
).pipe(Layer.provide(FetchHttpClient.layer))
} }
@@ -13,6 +13,7 @@ import { SessionShare } from "@/share/session"
import { SessionStatus } from "@/session/status" import { SessionStatus } from "@/session/status"
import { SessionSummary } from "@/session/summary" import { SessionSummary } from "@/session/summary"
import { Todo } from "../../session/todo" import { Todo } from "../../session/todo"
import { AppRuntime } from "../../effect/app-runtime"
import { Agent } from "../../agent/agent" import { Agent } from "../../agent/agent"
import { Snapshot } from "@/snapshot" import { Snapshot } from "@/snapshot"
import { Command } from "../../command" import { Command } from "../../command"
@@ -185,7 +186,7 @@ export const SessionRoutes = lazy(() =>
), ),
async (c) => { async (c) => {
const sessionID = c.req.valid("param").sessionID const sessionID = c.req.valid("param").sessionID
const todos = await Todo.get(sessionID) const todos = await AppRuntime.runPromise(Todo.Service.use((svc) => svc.get(sessionID)))
return c.json(todos) return c.json(todos)
}, },
) )
-6
View File
@@ -1,6 +1,5 @@
import { BusEvent } from "@/bus/bus-event" import { BusEvent } from "@/bus/bus-event"
import { Bus } from "@/bus" import { Bus } from "@/bus"
import { makeRuntime } from "@/effect/run-service"
import { SessionID } from "./schema" import { SessionID } from "./schema"
import { Effect, Layer, ServiceMap } from "effect" import { Effect, Layer, ServiceMap } from "effect"
import z from "zod" import z from "zod"
@@ -83,9 +82,4 @@ export namespace Todo {
) )
export const defaultLayer = layer.pipe(Layer.provide(Bus.layer)) export const defaultLayer = layer.pipe(Layer.provide(Bus.layer))
const { runPromise } = makeRuntime(Service, defaultLayer)
export async function get(sessionID: SessionID) {
return runPromise((svc) => svc.get(sessionID))
}
} }