(request: Request, program: Effect.Effect<A>)
| 96 | // (via Effect.currentParentSpan) ferry that same trace into the session DO |
| 97 | // instead of letting the DO start a fresh root per request. |
| 98 | const runTraced = <A>(request: Request, program: Effect.Effect<A>): Promise<A> => { |
| 99 | const parsed = parseTraceparent( |
| 100 | request.headers.get("traceparent"), |
| 101 | request.headers.get("tracestate"), |
| 102 | ); |
| 103 | return Effect.runPromise( |
| 104 | (parsed ? OtelTracer.withSpanContext(program, parsed) : program).pipe( |
| 105 | Effect.provide(WorkerTelemetryLive), |
| 106 | ), |
| 107 | ); |
| 108 | }; |
| 109 | |
| 110 | // The MCP resource the request targets. `server.ts` routes both the bare `/mcp` |
| 111 | // and `/mcp/toolkits/<slug>` to this handler (`prepareMcpOrgScope` strips the org |
no test coverage detected