refactor(core): replace legacy logger with Effect logging (#31310)
This commit is contained in:
@@ -6,7 +6,6 @@ import { Database } from "@opencode-ai/core/database/database"
|
||||
import { eq } from "drizzle-orm"
|
||||
import { ProjectTable } from "@opencode-ai/core/project/sql"
|
||||
import type { ProjectV2 } from "@opencode-ai/core/project"
|
||||
import * as Log from "@opencode-ai/core/util/log"
|
||||
import { Slug } from "@opencode-ai/core/util/slug"
|
||||
import { errorMessage } from "../util/error"
|
||||
import { EventV2 } from "@opencode-ai/core/event"
|
||||
@@ -19,8 +18,6 @@ import { FSUtil } from "@opencode-ai/core/fs-util"
|
||||
import { AppProcess } from "@opencode-ai/core/process"
|
||||
import { InstanceState } from "@/effect/instance-state"
|
||||
|
||||
const log = Log.create({ service: "worktree" })
|
||||
|
||||
export const Event = {
|
||||
Ready: EventV2.define({
|
||||
type: "worktree.ready",
|
||||
@@ -254,7 +251,7 @@ export const layer: Layer.Layer<
|
||||
const populated = yield* git(["reset", "--hard"], { cwd: info.directory })
|
||||
if (populated.code !== 0) {
|
||||
const message = populated.stderr || populated.text || "Failed to populate worktree"
|
||||
log.error("worktree checkout failed", { directory: info.directory, message })
|
||||
yield* Effect.logError("worktree checkout failed", { directory: info.directory, message })
|
||||
GlobalBus.emit("event", {
|
||||
directory: info.directory,
|
||||
project: ctx.project.id,
|
||||
@@ -267,9 +264,9 @@ export const layer: Layer.Layer<
|
||||
const booted = yield* store.load({ directory: info.directory }).pipe(
|
||||
Effect.as(true),
|
||||
Effect.catch((error) =>
|
||||
Effect.sync(() => {
|
||||
Effect.gen(function* () {
|
||||
const message = errorMessage(error)
|
||||
log.error("worktree bootstrap failed", { directory: info.directory, message })
|
||||
yield* Effect.logError("worktree bootstrap failed", { directory: info.directory, message })
|
||||
GlobalBus.emit("event", {
|
||||
directory: info.directory,
|
||||
project: ctx.project.id,
|
||||
@@ -298,7 +295,7 @@ export const layer: Layer.Layer<
|
||||
const createFromInfo = Effect.fn("Worktree.createFromInfo")(function* (info: Info, startCommand?: string) {
|
||||
yield* setup(info)
|
||||
yield* boot(info, startCommand).pipe(
|
||||
Effect.catchCause((cause) => Effect.sync(() => log.error("worktree bootstrap failed", { cause }))),
|
||||
Effect.catchCause((cause) => Effect.logError("worktree bootstrap failed", { cause })),
|
||||
Effect.forkIn(scope),
|
||||
)
|
||||
})
|
||||
@@ -491,7 +488,7 @@ export const layer: Layer.Layer<
|
||||
if (!text) return true
|
||||
const result = yield* runStartCommand(directory, text)
|
||||
if (result.code === 0) return true
|
||||
log.error("worktree start command failed", { kind, directory, message: result.stderr })
|
||||
yield* Effect.logError("worktree start command failed", { kind, directory, message: result.stderr })
|
||||
return false
|
||||
})
|
||||
|
||||
@@ -620,7 +617,7 @@ export const layer: Layer.Layer<
|
||||
}
|
||||
|
||||
yield* runStartScripts(worktreePath, { projectID: ctx.project.id }).pipe(
|
||||
Effect.catchCause((cause) => Effect.sync(() => log.error("worktree start task failed", { cause }))),
|
||||
Effect.catchCause((cause) => Effect.logError("worktree start task failed", { cause })),
|
||||
Effect.forkIn(scope),
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user