11import { InstanceRef , WorkspaceRef } from "@/effect/instance-ref"
22import { AppRuntime } from "@/effect/app-runtime"
33import { InstanceBootstrap } from "@/project/bootstrap"
4- import { InstanceStore , type InstanceContext , type Store } from "@/project/instance"
4+ import { InstanceStore , type InstanceContext } from "@/project/instance"
55import { Filesystem } from "@/util/filesystem"
6- import { Effect , Layer } from "effect"
6+ import { Context , Effect , Layer } from "effect"
77import { HttpRouter , HttpServerResponse } from "effect/unstable/http"
88import { HttpApiMiddleware } from "effect/unstable/httpapi"
99import { WorkspaceRouteContext } from "./workspace-routing"
@@ -23,7 +23,10 @@ function decode(input: string): string {
2323 }
2424}
2525
26- function makeInstanceContext ( store : Store , directory : string ) : Effect . Effect < InstanceContext > {
26+ function makeInstanceContext (
27+ store : Context . Service . Shape < typeof InstanceStore > ,
28+ directory : string ,
29+ ) : Effect . Effect < InstanceContext > {
2730 return store . load ( {
2831 directory : Filesystem . resolve ( decode ( directory ) ) ,
2932 init : ( ) => AppRuntime . runPromise ( InstanceBootstrap ) ,
@@ -32,7 +35,7 @@ function makeInstanceContext(store: Store, directory: string): Effect.Effect<Ins
3235
3336function provideInstanceContext < E > (
3437 effect : Effect . Effect < HttpServerResponse . HttpServerResponse , E > ,
35- store : Store ,
38+ store : Context . Service . Shape < typeof InstanceStore > ,
3639) : Effect . Effect < HttpServerResponse . HttpServerResponse , E , WorkspaceRouteContext > {
3740 return Effect . gen ( function * ( ) {
3841 const route = yield * WorkspaceRouteContext
0 commit comments