summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorKit Langton <[email protected]>2026-04-10 23:18:54 -0400
committerGitHub <[email protected]>2026-04-10 23:18:54 -0400
commitf38f415bf0af3fb8baf211b83996d3a58a1fd010 (patch)
treeb805d8e19cf3b50ba528107443ffb8839b7ecba8
parent4341ab838e3494b5d640780b1c59d6305aa59e95 (diff)
downloadopencode-f38f415bf0af3fb8baf211b83996d3a58a1fd010.tar.gz
opencode-f38f415bf0af3fb8baf211b83996d3a58a1fd010.zip
refactor: collapse Format facade (#21980)
-rw-r--r--packages/opencode/src/format/index.ts15
-rw-r--r--packages/opencode/src/project/bootstrap.ts2
-rw-r--r--packages/opencode/src/server/instance.ts3
3 files changed, 3 insertions, 17 deletions
diff --git a/packages/opencode/src/format/index.ts b/packages/opencode/src/format/index.ts
index 36844d351..1aeb2e51a 100644
--- a/packages/opencode/src/format/index.ts
+++ b/packages/opencode/src/format/index.ts
@@ -2,7 +2,6 @@ import { Effect, Layer, Context } from "effect"
import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process"
import * as CrossSpawnSpawner from "@/effect/cross-spawn-spawner"
import { InstanceState } from "@/effect/instance-state"
-import { makeRuntime } from "@/effect/run-service"
import path from "path"
import { mergeDeep } from "remeda"
import z from "zod"
@@ -193,18 +192,4 @@ export namespace Format {
Layer.provide(Config.defaultLayer),
Layer.provide(CrossSpawnSpawner.defaultLayer),
)
-
- const { runPromise } = makeRuntime(Service, defaultLayer)
-
- export async function init() {
- return runPromise((s) => s.init())
- }
-
- export async function status() {
- return runPromise((s) => s.status())
- }
-
- export async function file(filepath: string) {
- return runPromise((s) => s.file(filepath))
- }
}
diff --git a/packages/opencode/src/project/bootstrap.ts b/packages/opencode/src/project/bootstrap.ts
index 9ddcca556..1340a692f 100644
--- a/packages/opencode/src/project/bootstrap.ts
+++ b/packages/opencode/src/project/bootstrap.ts
@@ -17,7 +17,7 @@ export async function InstanceBootstrap() {
Log.Default.info("bootstrapping", { directory: Instance.directory })
await Plugin.init()
void AppRuntime.runPromise(ShareNext.Service.use((svc) => svc.init()))
- Format.init()
+ void AppRuntime.runPromise(Format.Service.use((svc) => svc.init()))
await LSP.init()
File.init()
FileWatcher.init()
diff --git a/packages/opencode/src/server/instance.ts b/packages/opencode/src/server/instance.ts
index 4bd7802e2..015d67bfc 100644
--- a/packages/opencode/src/server/instance.ts
+++ b/packages/opencode/src/server/instance.ts
@@ -30,6 +30,7 @@ import { ProviderRoutes } from "./routes/provider"
import { EventRoutes } from "./routes/event"
import { errorHandler } from "./middleware"
import { getMimeType } from "hono/utils/mime"
+import { AppRuntime } from "@/effect/app-runtime"
const log = Log.create({ service: "server" })
@@ -277,7 +278,7 @@ export const InstanceRoutes = (upgrade: UpgradeWebSocket, app: Hono = new Hono()
},
}),
async (c) => {
- return c.json(await Format.status())
+ return c.json(await AppRuntime.runPromise(Format.Service.use((svc) => svc.status())))
},
)
.all("/*", async (c) => {