Refactor workspace service boundaries (#25152)

This commit is contained in:
Kit Langton 2026-04-30 15:34:37 -04:00 committed by GitHub
commit 0e9d9282c6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
14 changed files with 421 additions and 405 deletions

View file

@ -94,14 +94,16 @@ const localAdaptor = (directory: string): WorkspaceAdaptor => ({
})
const createLocalWorkspace = (input: { projectID: Project.Info["id"]; type: string; directory: string }) =>
Effect.promise(async () => {
Effect.gen(function* () {
registerAdaptor(input.projectID, input.type, localAdaptor(input.directory))
return Workspace.create({
type: input.type,
branch: null,
extra: null,
projectID: input.projectID,
})
return yield* Workspace.Service.use((svc) =>
svc.create({
type: input.type,
branch: null,
extra: null,
projectID: input.projectID,
}),
).pipe(Effect.provide(Workspace.defaultLayer))
})
function request(path: string, init?: RequestInit) {