• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

valkyrjaio / valkyrja-ts / 30220867212
100%

Build:
DEFAULT BRANCH: 26.x
Ran 26 Jul 2026 09:21PM UTC
Jobs 1
Files 302
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

26 Jul 2026 09:20PM UTC coverage: 100.0%. Remained the same
30220867212

push

github

web-flow
[Application] Make WorkerHttp a concrete worker entry and Http a CGI entry (#84)

# Description

Aligns the TypeScript HTTP entry points with the reference PHP/Java
ports so a developer can pick a mode by choosing an entry class, and it
works out of the box.

Two HTTP entries now express the two deployment philosophies clearly:

- **`Http` — single-request / CGI mode.** The application is
bootstrapped fresh on every request, so no state survives between
requests. Suits CGI and serverless/lambda deployments. Previously `Http`
bootstrapped once and shared a single container across every request —
neither CGI nor worker — which leaked request-scoped state in a
long-running process.
- **`WorkerHttp` — persistent worker mode.** Bootstraps once, then
isolates each request in a `ChildContainer` so state never bleeds
between requests. It was previously an abstract base with no runnable
entry point, so worker mode could not actually be used out of the box;
it is now concrete with a `run()` method.

Because Node exposes a single canonical HTTP server (`node:http`),
TypeScript does not need the per-runtime entry family the JVM
(Netty/Jetty/Tomcat) and PHP (FrankenPHP/RoadRunner/OpenSwoole) ports
carry — so `WorkerHttp` is intentionally concrete here rather than an
abstract base. The overridable `getRequest`/`handle`/`run` methods
remain the extension seam if a native Bun/Deno/uWebSockets entry is ever
added.

Note: apps extending `Http` now re-bootstrap per request instead of
sharing one bootstrap. This is the corrected CGI behavior; apps that
want a persistent process should extend `WorkerHttp`.

## Types of changes

- [ ] Improvement _(non-breaking change which improves code)_
- [x] Bug fix _(non-breaking change which fixes an issue)_
- [ ] New feature _(non-breaking change which adds functionality)_
- [ ] Deprecation _(breaking change which removes functionality)_
- [ ] Breaking change _(fix or feature that would cause existing
functionality to change)_
- [ ]... (continued)

1581 of 1581 branches covered (100.0%)

Branch coverage included in aggregate %.

9 of 9 new or added lines in 2 files covered. (100.0%)

3462 of 3462 relevant lines covered (100.0%)

21.1 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30220867212.1 26 Jul 2026 09:21PM UTC 302
100.0
GitHub Action Run
Source Files on build 30220867212
  • Tree
  • List 302
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #30220867212
  • 61dff716 on github
  • Prev Build on 26.x (#30186576817)
  • Next Build on 26.x (#30232768801)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc