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

lsm / neokai / 28667520162
82%

Build:
DEFAULT BRANCH: dev
Ran 03 Jul 2026 02:43PM UTC
Jobs 28
Files 623
Run time 4min
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

03 Jul 2026 02:42PM UTC coverage: 82.434% (-0.001%) from 82.435%
28667520162

push

github

web-flow
fix(web): settle-scroll to bottom on refresh/cold-mount in chat + task threads (#2224)

* fix(web): settle-scroll to bottom on refresh/cold-mount in chat + task threads

On refresh/cold-mount, the single-shot mount-scroll in useAutoScroll lost the
race against the browser's scroll-position restoration and late content/layout
growth (markdown/code highlighting, image loads, banners, composer inset),
leaving the user stranded above the latest messages. Add a bounded settle-scroll
that re-pins to the bottom over a short window on first non-empty content,
cancels when the user intentionally scrolls away, and self-terminates so normal
scroll behavior resumes. Also opt out of browser scroll restoration
(history.scrollRestoration = 'manual') as defense-in-depth.

* fix(web): plug settle/observer leaks and cancel settle on load-older

Address review feedback on the settle-scroll change:
- P1: when containerRef.current is null on first run, the retry-timeout path
  installed listeners/ResizeObserver via setupScrollDetection but discarded its
  cleanup, so they leaked (SpaceTaskUnifiedThread hits this during its loading
  placeholder). Capture the cleanup in a local and invoke it from the outer
  effect cleanup for both the timeout and direct paths.
- P2: cancel the in-flight settle when loadingOlder flips true. A fast Load More
  resolving before the last tail re-pin let that timer see loadingOlderRef=false
  and snap to the bottom, clobbering ChatContainer's restored read position.

Add regression tests for both. Note: messageCount stays in the scroll-detection
deps on purpose — it re-triggers setup when the container mounts late
(SpaceTaskUnifiedThread placeholder); the churn is intentional, not a leak.

11537 of 16627 branches covered (69.39%)

Branch coverage included in aggregate %.

50 of 52 new or added lines in 1 file covered. (96.15%)

1 existing line in 1 file now uncovered.

98254 of 116560 relevant lines covered (84.29%)

301.66 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
90.09
-5.67% packages/web/src/hooks/useAutoScroll.ts

Coverage Regressions

Lines Coverage ∆ File
1
90.09
-5.67% packages/web/src/hooks/useAutoScroll.ts
Jobs
ID Job ID Ran Files Coverage
1 daemon-online-coordinator - 28667520162.1 03 Jul 2026 02:43PM UTC 351
7.82
GitHub Action Run
2 daemon-online-mcp - 28667520162.2 03 Jul 2026 02:43PM UTC 362
17.74
GitHub Action Run
3 web - 28667520162.3 03 Jul 2026 02:45PM UTC 252
74.61
GitHub Action Run
4 daemon-online-space-2 - 28667520162.4 03 Jul 2026 02:46PM UTC 362
31.66
GitHub Action Run
5 daemon-online-sdk - 28667520162.5 03 Jul 2026 02:43PM UTC 362
21.63
GitHub Action Run
6 daemon-5-space-runtime-a - 28667520162.6 03 Jul 2026 02:43PM UTC 132
39.69
GitHub Action Run
7 daemon-online-rpc-1 - 28667520162.7 03 Jul 2026 02:45PM UTC 362
18.5
GitHub Action Run
8 daemon-4-space-migrations-b - 28667520162.8 03 Jul 2026 02:43PM UTC 73
37.42
GitHub Action Run
9 daemon-online-space-1 - 28667520162.9 03 Jul 2026 02:45PM UTC 362
31.47
GitHub Action Run
10 daemon-online-components - 28667520162.10 03 Jul 2026 02:43PM UTC 362
17.43
GitHub Action Run
11 daemon-online-features-2 - 28667520162.11 03 Jul 2026 02:44PM UTC 362
21.76
GitHub Action Run
12 daemon-online-websocket - 28667520162.12 03 Jul 2026 02:44PM UTC 362
17.52
GitHub Action Run
13 daemon-4-space-storage - 28667520162.13 03 Jul 2026 02:43PM UTC 161
53.6
GitHub Action Run
14 daemon-online-rewind-2 - 28667520162.14 03 Jul 2026 02:44PM UTC 362
22.19
GitHub Action Run
15 daemon-0-shared-handlers-workflow - 28667520162.15 03 Jul 2026 02:44PM UTC 367
32.3
GitHub Action Run
16 daemon-online-git - 28667520162.16 03 Jul 2026 02:44PM UTC 362
18.25
GitHub Action Run
17 daemon-online-convo - 28667520162.17 03 Jul 2026 02:44PM UTC 362
21.54
GitHub Action Run
18 daemon-5-space-agent-other - 28667520162.18 03 Jul 2026 02:44PM UTC 289
25.58
GitHub Action Run
19 daemon-online-lifecycle - 28667520162.19 03 Jul 2026 02:44PM UTC 362
21.93
GitHub Action Run
20 daemon-5-space-runtime-b - 28667520162.20 03 Jul 2026 02:45PM UTC 187
47.87
GitHub Action Run
21 daemon-online-agent-sdk - 28667520162.21 03 Jul 2026 02:45PM UTC 362
21.62
GitHub Action Run
22 daemon-online-rpc-3 - 28667520162.22 03 Jul 2026 02:45PM UTC 362
18.82
GitHub Action Run
23 daemon-online-rpc-4 - 28667520162.23 03 Jul 2026 02:45PM UTC 362
22.32
GitHub Action Run
24 daemon-4-space-migrations-a - 28667520162.24 03 Jul 2026 02:44PM UTC 50
54.68
GitHub Action Run
25 daemon-1-core - 28667520162.25 03 Jul 2026 02:43PM UTC 367
34.79
GitHub Action Run
26 daemon-online-rpc-2 - 28667520162.26 03 Jul 2026 02:44PM UTC 362
22.65
GitHub Action Run
27 daemon-online-features-1 - 28667520162.27 03 Jul 2026 02:44PM UTC 362
22.31
GitHub Action Run
28 daemon-online-rewind-1 - 28667520162.28 03 Jul 2026 02:45PM UTC 362
21.75
GitHub Action Run
Source Files on build 28667520162
  • Tree
  • List 623
  • Changed 20
  • Source Changed 1
  • Coverage Changed 20
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28667520162
  • 78f295e3 on github
  • Prev Build on dev (#28604318833)
  • Next Build on dev (#28681157294)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc