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

solidjs / solid / 41746095880
78%
main: 89%

Build:
Build:
LAST BUILD BRANCH: next
DEFAULT BRANCH: main
Ran 04 Nov 2026 12:33AM UTC
Jobs 1
Files 12
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

04 Nov 2026 12:20AM UTC coverage: 78.249%. Remained the same
41746095880

push

github

web-flow
fix(signals): a removed own __proto__ reads undefined, not Object.prototype (#4672) (#4676)

* fix(signals): removed own __proto__/constructor data reads undefined, not the prototype (#4672)

A store whose own `__proto__` (or `constructor`) data was removed told the
key's node the backing's inherited value, so the hot read served
`Object.prototype` wrapped as a store (or `Object`) to tracked and untracked
readers. Core R30: inherited pollution keys are never served. Now the node
is told `undefined`, the same answer a store that never had the key gives:
- notifyWrites (setter delete, a projection's draft delete): an absent
  pollution key's node gets `undefined`. An own key pays nothing, because
  the existing hasOwn result is reused.
- reconcile's removed-key branch (reconcile, and a derive's returned value):
  a pollution key diffs against an empty record.
- the get trap's existing pollution-key branch: a tracked reader subscribes
  like any absent key (R12), and its node is born absent. Own data that
  lands later reaches the reader (F-10).

`__proto__` assignment stays inert (R30).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0117BoWNSSgtemsSYsaX2hXE

* fix(signals): narrow #4672 to __proto__ after #4674

With #4674 on next, a plain read of an inherited `constructor` returns the
source's class, and a removed own `constructor` already reads it, as an
object that never had one does. Ruling: narrow the fix to `__proto__`.

- notifyWrites and reconcile's removed-key branch tell a removed
  `__proto__` node `undefined`. An own key does no extra work in
  notifyWrites (the existing hasOwn result is reused), and the reconcile
  check sits inside the existing removed-key branch.
- Dropped: the get-trap subscription and getNode's `absent` parameter (the
  reverse direction is pinned `it.fails`), and every constructor-specific
  change and test, apart from one pin that a removed own `constructor` rea... (continued)

807 of 1108 branches covered (72.83%)

Branch coverage included in aggregate %.

1132 of 1370 relevant lines covered (82.63%)

30.19 hits per line

Jobs
ID Job ID Ran Files Coverage
1 41746095880.1 04 Nov 2026 12:33AM UTC 12
78.25
GitHub Action Run
Source Files on build 41746095880
  • Tree
  • List 12
  • 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 #41746095880
  • e704cfce on github
  • Prev Build on next (#41740703426)
  • Next Build on next (#41749724334)
  • 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