deno.ts16 lines · main
| 1 | import { getPool } from '../runtime-bootstrap.js'; |
| 2 | import type { Bundle, InvokeRequest, InvokeResult } from '../types.js'; |
| 3 | |
| 4 | /** |
| 5 | * Deno isolate executor — implements CLAUDE.md §7.3 verbatim. |
| 6 | * Per-project subprocess pool, single-flight, JSON-RPC over stdin/stdout. |
| 7 | * See docs/superpowers/specs/2026-04-27-deno-isolate-runtime-design.md. |
| 8 | * |
| 9 | * The pool itself is a module-level singleton constructed lazily on the |
| 10 | * first invoke; idle sweeper, process supervision, and crash-loop breaker |
| 11 | * all live inside `IsolatePoolImpl`. This file is intentionally tiny — |
| 12 | * everything load-bearing is in `runtime-bootstrap.ts` and `pool-manager.ts`. |
| 13 | */ |
| 14 | export async function invokeDeno(bundle: Bundle, request: InvokeRequest): Promise<InvokeResult> { |
| 15 | return getPool().invoke(bundle, request); |
| 16 | } |