Repository navigation
refactor(signals): remove the dead latest-opened hold arm - #4754
Conversation
… no caller) Co-authored-by: tembo[bot] <208362400+tembo-io[bot]@users.noreply.github.com>
🦋 Changeset detectedLatest commit: 41bbb7c The changes in this PR will be included in the next version bump. This PR includes changesets to release 15 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Co-authored-by: tembo[bot] <208362400+tembo-io[bot]@users.noreply.github.com>
Size (brotli, eager entry chunk)
|
Coverage Report for CI Build 42894431943Coverage remained the same at 78.945%Details
Uncovered ChangesNo uncovered changes found. Coverage RegressionsNo coverage regressions found. Coverage Stats
💛 - Coveralls |
Merging this PR will improve performance by 6.99%1 warning
Performance Changes
Tip Curious why performance improved? Comment Comparing Footnotes
|
What
Removes
latestOpened/openedByLatest(scheduler.ts), thestagedScreenarm that testedflushTransaction === latestOpened(core.ts), and the seat table's copy of that test (seat.ts,__TEST__only). The mechanism carried D-22's "a transaction only alatest()read opened" case;latest()has opened no transaction since #4393 (81a12d8), which deleted the only call ofopenedByLatest, so the flag has beennullever since and the arm could never run inside a flush.Found by the unreached-arm inventory (reader-seat-rebuild.md §9.5 on
tembo/size-seat-measure): V8 statement coverage merged across the signals suite, web default / hydrate / server, solid, and the async generator at 50,000 cases × seeds 3289 / 7 / 91501, all resolving@solidjs/signalsto the same source lines. This is the one Tier-1 arm that is dead by construction rather than merely unreached; the other three (bornHeldOpen+attachWaits' tail,heldBy's true path,under+linkLanes' group merge) are listed there for a ruling.No rule or comment in the docs describes the removed case; the two source comments that did are rewritten.
Gates
next.node scripts/rules-index.mjs --checkclean; RULES-INDEX.md regenerated.Size (local, base
next@ 78eaf88)No cap changes (every scenario stays under its cap).