(executor: LocalExecutor)
| 51 | * execution model. |
| 52 | */ |
| 53 | const localFixedExecutionLayer = (executor: LocalExecutor): Layer.Layer<FixedExecutionProvider> => |
| 54 | Layer.succeed(FixedExecutionProvider)({ |
| 55 | executor, |
| 56 | engine: createExecutionEngine({ |
| 57 | executor, |
| 58 | codeExecutor: makeQuickJsExecutor(), |
| 59 | }), |
| 60 | // The executor IS its own plugin-extension map (`executor[pluginId]`); the |
| 61 | // fixed middleware reads `executor[id]` to satisfy each plugin's |
| 62 | // `*ExtensionService` Tag per request — identical binding to the prior |
| 63 | // `composePluginHandlers(plugins, executor)` boot-bind. |
| 64 | extensions: executor, |
| 65 | }); |
| 66 | |
| 67 | export interface LocalApiHandler { |
| 68 | /** The unified web handler: serves the typed API (at root — the Bun shell strips `/api`) + /docs. */ |
no test coverage detected