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

forst-lang / forst / 24748538374
76%
main: 76%

Build:
Build:
LAST BUILD BRANCH: feat/full-request-sidecar
DEFAULT BRANCH: main
Ran 21 Apr 2026 10:00PM UTC
Jobs 1
Files 231
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

21 Apr 2026 09:55PM UTC coverage: 76.33% (+0.04%) from 76.292%
24748538374

Pull #96

github

haveyaseen
feat(sidecar)!: stream invoke/raw bodies and add route-to-Forst middleware

Add createRouteToForstMiddleware with route-request-stream JSON (prefix + streamed
base64 body + suffix), invokeFunctionRawWithReadableBody, and split ForstSidecar
into forst-sidecar; document and test the flow.

BREAKING CHANGE: pipeInvokeRawStream(packageName, functionName, body, destination) now
takes body: ReadableStream<Uint8Array> instead of args: unknown[]. Build the stream
from JSON.stringify([args]) or from createInvokeRawJsonBodyReadable for Express.

Example:

```typescript
    import { Readable } from "node:stream";
    const body = Readable.toWeb(nodeReadable) as ReadableStream<Uint8Array>;
    await client.pipeInvokeRawStream("main", "StreamFn", body, res);
```

docs: rewrite root README for sidecar-first positioning

Reframe intro, comparisons, migration walkthrough, and package pointers around Node +
sidecar adoption.

refactor(devserver): extract dev HTTP server into internal/devserver

Move the dev server out of forst/cmd/forst into forst/internal/devserver: dedicated
handlers (health, version, functions, invoke, invoke/raw), shared response helpers,
invoke execution, and tests. Drop the old dev_server_http* surface from cmd in favor
of the internal package and slimmer runtime wiring.
Pull Request #96: feat(sidecar)!: stream request bodies and add route middleware

286 of 289 new or added lines in 11 files covered. (98.96%)

288 existing lines in 9 files now uncovered.

21387 of 28019 relevant lines covered (76.33%)

89.17 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
90.63
forst/internal/devserver/handler_invoke_raw.go

Coverage Regressions

Lines Coverage ∆ File
65
55.17
0.0% forst/internal/typechecker/infer_assertion.go
53
65.56
0.0% forst/internal/transformer/ts/type_mapping.go
37
69.39
0.0% forst/internal/executor/go_module_manager.go
34
67.81
0.0% forst/internal/typechecker/go_interop.go
33
58.33
0.0% forst/internal/transformer/go/type.go
31
71.2
0.0% forst/internal/transformer/go/function.go
26
82.71
0.0% forst/internal/executor/executor.go
8
57.86
0.0% forst/internal/typechecker/type_alias_display.go
1
69.23
0.0% forst/internal/transformer/ts/forst_file.go
Subprojects
ID Flag name Job ID Ran Files Coverage
1 /jobs/180635349 24748538374.1 21 Apr 2026 10:00PM UTC 231
76.33
GitHub Action Run
Source Files on build 24748538374
  • Tree
  • List 231
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #96
  • PR Base - main (#24740209692)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc