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

solidjs / solid / 36285537802
74%
main: 89%

Build:
Build:
LAST BUILD BRANCH: feat/binding-slot-execution
DEFAULT BRANCH: main
Ran 27 Sep 2026 01:33AM 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

27 Sep 2026 01:26AM UTC coverage: 73.772%. Remained the same
36285537802

push

github

web-flow
fix(signals): keep a chained optimistic write back to the base's previous value (#3674)

* fix(signals): chained optimistic write to base value is kept (#3672)

A chained optimistic store (`createOptimisticStore(base)` over a
`createStore`) serves the base's live value; its own nodes are links whose
`_value` is never served and never updated when the base commits. The
engine's no-op check in optimisticWrite compared the draft's write against
that stale `_value`, so once a first action had been confirmed in the base,
a second action writing the key back to its earlier value (position 1 then
0), re-adding a key the base had deleted, or popping a row the base had
appended emitted no override while the action's other writes showed.

notifyOptimisticWrites now syncs a chained node that carries no active
override to the visible committed value right before the engine write, on
the value, presence and length emits alike. Non-chained families are
untouched; the optimistic module is tree-shakeable, and every size scenario
stays under its cap.

* fix: address review findings

The optimistic add and delete branches sync a chained node's `_value` to
the unwrapped raw of the inner store's child, not its proxy, so the
settle-time revert compare against the override's raw no longer notifies
readers of a row that was deleted and re-added in one action.

The add and delete branches read `old[key]` once per key instead of
running a chained backing's get trap twice.

The rules index lists optimistic.ts among §7b's citations, which the
`emit` comment's citation had left stale.

* fix(signals): chained optimistic revert compares against the base's live value (#3672)

The write side (previous commits) handed optimisticWrite's no-op check the
visible committed value. The revert consulted the same link `_value`:
resolveOptimisticNodes decides whether to notify by comparing the override
against `_value`, and a chained node's `_value` is never served, so it only
ever held the ... (continued)

625 of 914 branches covered (68.38%)

Branch coverage included in aggregate %.

922 of 1183 relevant lines covered (77.94%)

27.19 hits per line

Jobs
ID Job ID Ran Files Coverage
1 36285537802.1 27 Sep 2026 01:33AM UTC 8
73.77
GitHub Action Run
Source Files on build 36285537802
  • Tree
  • List 8
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #36285537802
  • 658eecdb on github
  • Prev Build on next (#36254144173)
  • Next Build on next (#36286271124)
  • 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