diff --git a/packages/opencode/src/session/processor.ts b/packages/opencode/src/session/processor.ts index a544e4b456..b02e7cc81c 100644 --- a/packages/opencode/src/session/processor.ts +++ b/packages/opencode/src/session/processor.ts @@ -6,7 +6,6 @@ import { Config } from "@/config/config" import { Permission } from "@/permission" import { Plugin } from "@/plugin" import { Snapshot } from "@/snapshot" -import { EffectLogger } from "@/effect/logger" import { Session } from "." import { LLM } from "./llm" import { MessageV2 } from "./message-v2" @@ -19,11 +18,12 @@ import { SessionSummary } from "./summary" import type { Provider } from "@/provider/provider" import { Question } from "@/question" import { errorMessage } from "@/util/error" +import { Log } from "@/util/log" import { isRecord } from "@/util/record" export namespace SessionProcessor { const DOOM_LOOP_THRESHOLD = 3 - const log = EffectLogger.create({ service: "session.processor" }) + const log = Log.create({ service: "session.processor" }) export type Result = "compact" | "stop" | "continue" @@ -124,7 +124,7 @@ export namespace SessionProcessor { reasoningMap: {}, } let aborted = false - const slog = log.with({ sessionID: input.sessionID, messageID: input.assistantMessage.id }) + const slog = log.clone().tag("sessionID", input.sessionID).tag("messageID", input.assistantMessage.id) const parse = (e: unknown) => MessageV2.fromError(e, { @@ -454,7 +454,7 @@ export namespace SessionProcessor { return default: - yield* slog.info("unhandled", { event: value.type, value }) + slog.info("unhandled", { event: value.type, value }) return } }) @@ -520,7 +520,7 @@ export namespace SessionProcessor { }) const halt = Effect.fn("SessionProcessor.halt")(function* (e: unknown) { - yield* slog.error("process", { error: errorMessage(e), stack: e instanceof Error ? e.stack : undefined }) + slog.error("process", { error: errorMessage(e), stack: e instanceof Error ? e.stack : undefined }) const error = parse(e) if (MessageV2.ContextOverflowError.isInstance(error)) { ctx.needsCompaction = true @@ -536,7 +536,7 @@ export namespace SessionProcessor { }) const process = Effect.fn("SessionProcessor.process")(function* (streamInput: LLM.StreamInput) { - yield* slog.info("process") + slog.info("process") ctx.needsCompaction = false ctx.shouldBreak = (yield* config.get()).experimental?.continue_loop_on_deny !== true