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

solidjs / solid / 34738784487
72%
main: 89%

Build:
Build:
LAST BUILD BRANCH: fix/loading-reset-collects-forwarded-3459
DEFAULT BRANCH: main
Ran 13 Sep 2026 04:53AM UTC
Jobs 1
Files 6
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

13 Sep 2026 04:49AM UTC coverage: 71.842%. Remained the same
34738784487

push

github

web-flow
feat(web): OBSERVE.server and the server-function invocation channel (#3398)

The server runtime's observe surface. `OBSERVE` gains a `server` slot — an
empty, augmentable `ServerObserve` interface declared in @solidjs/signals
and re-exported by solid-js — that @solidjs/web's server entries populate at
load: the object through `installServerObserve()`, the type through
`declare module "solid-js"`. Signals and solid-js never learn the server
runtime's shapes; an observer subscribes on the one `OBSERVE` it already
knows from the client.

First channel: `OBSERVE.server.invocations.subscribe("invocation", (event,
live) => …)`. One settled record per server-function execution from both
legs — HTTP dispatch and direct SSR calls — `{ id, direct, at, durationMs,
outcome, deferred? }`, with the request event, request, args and the result
or the error AS THROWN beside it (production sanitization is the wire's
view, not the observer's). The measured execution is the wrapInvocation-
wrapped run; a stream/generator body is `deferred`, timed to handoff.
Observers, not policy: any number of listeners, none able to alter the call,
a throwing one reported and contained. `wrapInvocation` stays the single
last-writer-wins policy hook and is untouched.

Plumbing: web now builds observe-tier server artifacts (dist/server.observe.js,
server-functions/dist/server.observe.js, frames/dist/server.observe.js) under
the `observe` condition, nested under worker/deno/node like `development`.
The surface and every emit site fold out of prod behind "_SOLID_OBSERVE_".
State hangs off the shared OBSERVE object under a registered symbol because
each server bundle carries its own copy of the runtime module.

Size: observe CSR 15371 → 15387 B (+16, the `server: {}` literal), under the
15.40 KB cap. Prod unchanged.

Resolves server-dev-build-plan P3 as (b). Groundwork for the trace-context
provider (C1) and a single @sentry/solid server entry.

Co-authored-by: Cursor <cursoragent@cursor.com>

519 of 790 branches covered (65.7%)

Branch coverage included in aggregate %.

772 of 1007 relevant lines covered (76.66%)

15.01 hits per line

Jobs
ID Job ID Ran Files Coverage
1 34738784487.1 13 Sep 2026 04:53AM UTC 6
71.84
GitHub Action Run
Source Files on build 34738784487
  • Tree
  • List 6
  • 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 #34738784487
  • af94f674 on github
  • Prev Build on next (#34730686986)
  • Next Build on next (#34740395008)
  • Delete
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