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

solidjs / solid / 36465493660
74%
main: 89%

Build:
Build:
LAST BUILD BRANCH: feat/binding-slot-execution
DEFAULT BRANCH: main
Ran 28 Sep 2026 06:35PM UTC
Jobs 1
Files 8
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

28 Sep 2026 06:28PM UTC coverage: 73.817% (+0.05%) from 73.772%
36465493660

push

github

web-flow
fix(signals,solid): STRICT_READ_UNTRACKED fires during hydration and in lazy() bodies (#3675) (#3694)

* fix(signals,solid): STRICT_READ_UNTRACKED fires during hydration and in lazy() bodies (#3675)

read() served a snapshot-scope reader the captured value and returned
before the strict-read check, so a component body's direct read was silent
on a fresh SSR load and only warned after client navigation. The check now
runs ahead of the snapshot serve.

lazy() rendered the loaded component through a bare untrack() rather than
createComponent, so its body had no strict-read label and, in dev/observe,
no labeled owner. It now renders through createComponent — production is
the same untrack it always was.

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

* fix(signals): STRICT_READ_UNTRACKED names the value read; size ledger for lazy() via createComponent (#3675)

`warnStrictReadUntracked` now puts the value's name in the console line
when the name says something — a signal's `name` option or the store key
that was read: `Reactive value "count" read directly in <Child> will not
update.` The constructors' defaults ("signal", "computed") are skipped, so
an unnamed signal keeps the previous text. The diagnostic event's
`nodeName` field already carried the name and is unchanged. Two assertions
cover the named and unnamed lines; the dev-diagnostics doc and the
changeset record the new text.

Size ledger for the branch's `lazy()` change, measured with the Rolldown
harness against `next` @ fe1eb684f. `lazy()` renders the loaded component
through `createComponent(Comp, props)` instead of a bare
`untrack(() => Comp(props))`; in prod that is the call plus `props || {}`
(+38 B minified in every scenario that bundles `lazy()`), and the observe
builds additionally take `observedComponent`'s labeled root (+172/174 B
minified). Brotli: hydrating (no stores) +50 B, hydrating + every store
-46 B, CSR +24 B, CSR observe ... (continued)

625 of 912 branches covered (68.53%)

Branch coverage included in aggregate %.

1 of 1 new or added line in 1 file covered. (100.0%)

920 of 1181 relevant lines covered (77.9%)

27.28 hits per line

Jobs
ID Job ID Ran Files Coverage
1 36465493660.1 28 Sep 2026 06:35PM UTC 8
73.82
GitHub Action Run
Source Files on build 36465493660
  • Tree
  • List 8
  • 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 #36465493660
  • d0e487b6 on github
  • Prev Build on next (#36459365950)
  • Next Build on next (#36466960053)
  • 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