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

solidjs / solid / 39002011402
78%
main: 89%

Build:
Build:
LAST BUILD BRANCH: claude/project-thread-x1ore2-4112
DEFAULT BRANCH: main
Ran 17 Oct 2026 04:26AM UTC
Jobs 1
Files 11
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

17 Oct 2026 04:17AM UTC coverage: 77.554%. Remained the same
39002011402

push

github

web-flow
perf(signals): mapArray stages only the changed window and commits in place (#4114)

* perf(signals): mapArray stages only the changed window and commits in place

A one-row insert or removal on a 500-row keyed list allocated four
list-sized arrays, a key map and a position-sized chain array per edit:
the #2903 strong-abort staging, kept full-length by the July swap-commit
(a7d42f655), with the September small-move path gated to windows over
64 rows in plain mode, so one-item edits, every key-fn or index-signal
list and every sparse removal fell through to it. uibench's one-item tree
ops read 4-6x Octane and js-framework-reorder `removefirst` 2.5x with the
edit itself a few hundred nanoseconds.

`updateKeyedMap`'s general path now stages the changed window only, lands
it into `_nodes` / `_rows` / `_indexes` in place with the unchanged suffix
shifted by a loop (V8's `copyWithin` is a generic per-element builtin,
32x slower than the loop on 1k refs), takes a Map-free two-pointer path
when the pass only removes rows, and rebuilds only `_mappings`, whose
fresh identity is the change signal downstream. The commit lives in its
own function: inlined, the general path measured ~10% slower on
full-window reorders (the small-move note's finding). Strong abort holds
by ordering - verify, create, then mutate - instead of by copying; the
key-chain array is window-sized.

Octane board, same day, same harness, each suite against this
afternoon's clean run: uibench 1.65x -> 1.53x Octane / 1.60x -> 1.48x
Vapor (tree/[500] one-item ops 0.57-0.85 of base, table filters 0.70,
renders / removeAll / moves / activate flat, worst-case reorders +1.5%
isolated on the minified build); js-framework-reorder `removefirst`
0.70, `removeevery10` 0.86; todomvc `toggleAll` 0.55-0.78; js-framework
and dbmon flat, nothing flagged by the runner's rule. Board geomean
0.945x -> 0.926x Octane, 1.044x -> 1.039x Vapor.

Tier-1: `packages/web/test/single-item-ops.bench.tsx` (tail / head /
midd... (continued)

756 of 1050 branches covered (72.0%)

Branch coverage included in aggregate %.

1096 of 1338 relevant lines covered (81.91%)

27.85 hits per line

Jobs
ID Job ID Ran Files Coverage
1 39002011402.1 17 Oct 2026 04:26AM UTC 11
77.55
GitHub Action Run
Source Files on build 39002011402
  • Tree
  • List 11
  • 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 #39002011402
  • f3973eae on github
  • Prev Build on next (#39002005905)
  • Next Build on next (#39004208590)
  • 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