Run the Elysia e2e suite on Node, Bun, Deno and Cloudflare from one app, following #24598 (react-router-8-framework). Node stays the required job. Bun, Deno and Cloudflare start as optional variants and become required once green.
Depends on #24598 (runtime matrix key, runtimeEntryPlugin, README convention) and #24612 (Bun diagnostics channels, missing http.server span).
Apps
- Base:
elysia-node
- Fold in, then delete:
elysia-bun, elysia-bun-static
- New variants:
deno, cloudflare
elysia-bun-static covers the static trace lifecycle; keep it as a variant of the merged app.
Cover on every runtime
The existing suite runs unchanged and branches on RUNTIME only where runtimes are expected to differ. Add assertions where the suite has none today:
Findings to confirm (runtime audit, September 2026, develop 6f2da7483d; database spans were measured with mysql or mysql2):
Setups the audit ran: Bun, Deno, Cloudflare
Done when
Run the Elysia e2e suite on Node, Bun, Deno and Cloudflare from one app, following #24598 (
react-router-8-framework). Node stays the required job. Bun, Deno and Cloudflare start as optional variants and become required once green.Depends on #24598 (runtime matrix key,
runtimeEntryPlugin, README convention) and #24612 (Bun diagnostics channels, missinghttp.serverspan).Apps
elysia-nodeelysia-bun,elysia-bun-staticdeno,cloudflareelysia-bun-staticcovers the static trace lifecycle; keep it as a variant of the merged app.Cover on every runtime
The existing suite runs unchanged and branches on
RUNTIMEonly where runtimes are expected to differ. Add assertions where the suite has none today:fetchwithsentry-traceandbaggageFindings to confirm (runtime audit, September 2026, develop
6f2da7483d; database spans were measured with mysql or mysql2):fetchgets no span and no trace propagation #23891 has added outgoingfetchspans to@sentry/denosince.Setups the audit ran: Bun, Deno, Cloudflare
Done when
elysia-noderuns its suite on Node, Bun, Deno and Cloudflareelysia-bunandelysia-bun-staticare deleted