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

lsm / HyperNeo / 31283397313
80%

Build:
DEFAULT BRANCH: dev
Ran 08 Aug 2026 11:12PM UTC
Jobs 12
Files 641
Run time 2min
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

08 Aug 2026 11:11PM UTC coverage: 39.702% (-0.09%) from 39.791%
31283397313

push

github

web-flow
fix(web): make reconnect recovery session-scoped [#872] (#2407)

* fix(web): make reconnect recovery session-scoped [#872]

Phase 2 of mobile agent-session recovery, building on #871 (#2395).

Each SessionStore now tracks a per-session `isRecovering` flag (token-guarded
against duplicate/late reconnect events) that is distinct from initial-load
and from a genuine load failure. A shared `performRecovery` rejoins
`session:${id}`, re-establishes the messages LiveQuery (fresh snapshot re-syncs
deltas missed while paused/dropped), and refreshes state with retainOnError —
used by BOTH the transport-reconnect handler and the soft-staleness resume path
(refreshAllSessionStores now drives `recover()`, so Safari background-resume
re-syncs messages too, not just state).

ChatContainer keeps the transcript visible (loading skeleton cannot relapse
during recovery), gates the composer on session-ready — not merely when the
socket reports connected — and shows a non-blocking "Reconnecting…" indicator.

Tests: isRecovering lifecycle, duplicate reconnect events, soft-resume message
re-subscribe + retainOnError, late-error isolation after a session switch,
independent A/B recovery, atomic channel+messages restore, and ChatContainer
source guards. Runtime-verified on a mobile Safari viewport via the repo's WS
close/restore helpers: transcript stays visible, isRecovering flips true on
drop and clears on restore, activeSessionId never drifts, no Retry screen.

* fix(web): address #2407 review — loading skeleton, failed resubscribe, drop zone

Three review fixes for session-scoped reconnect recovery:

1. Keep incomplete initial loads behind the skeleton. A disconnect landing
   after `state.session` loads but before the first messages snapshot flipped
   `isRecovering` and hid the skeleton, rendering "No messages yet" for a
   conversation whose messages were still in flight. Extracted a testable
   `computeChatLoading` and gated the skeleton-bypass on
   `isRecovering && ... (continued)

19893 of 57056 branches covered (34.87%)

Branch coverage included in aggregate %.

110 of 122 new or added lines in 3 files covered. (90.16%)

469 existing lines in 35 files now uncovered.

29580 of 67556 relevant lines covered (43.79%)

208.67 hits per line

Uncovered Changes

Lines Coverage ∆ File
8
4.66
1.45% packages/web/src/islands/ChatContainer.tsx
4
84.2
2.46% packages/web/src/lib/session-store.ts

Coverage Regressions

Lines Coverage ∆ File
78
20.0
-11.15% packages/daemon/src/lib/sdk-session-file-manager.ts
64
0.0
-78.42% packages/daemon/src/lib/file-manager.ts
51
5.03
-21.96% packages/daemon/src/lib/agent/rewind-handler.ts
26
8.16
-81.63% packages/daemon/src/lib/rpc-handlers/file-handlers.ts
25
26.55
-9.79% packages/daemon/src/lib/agent/query-lifecycle-manager.ts
21
18.15
-12.36% packages/daemon/src/lib/github/github-service.ts
21
1.68
-16.76% packages/daemon/src/lib/github/polling-service.ts
21
59.92
-8.44% packages/daemon/src/lib/state-projection-service.ts
17
21.13
-36.62% packages/daemon/src/lib/agent/query-mode-handler.ts
16
48.32
-1.93% packages/daemon/src/storage/repositories/sdk-message-repository.ts
15
46.46
-24.24% packages/daemon/src/routes/setup-websocket.ts
13
3.23
-67.74% packages/daemon/src/lib/job-handlers/github-poll.handler.ts
12
40.46
-10.4% packages/daemon/src/lib/websocket-server-transport.ts
12
47.89
-12.68% packages/daemon/src/storage/repositories/job-queue-repository.ts
11
17.04
-3.14% packages/daemon/src/lib/providers/anthropic-copilot/provider.ts
8
4.43
-0.48% packages/daemon/src/lib/external-events/github/github-event-extension.ts
8
54.55
-23.64% packages/daemon/src/lib/rpc-handlers/rewind-handlers.ts
8
43.55
0.14% packages/daemon/src/lib/rpc-handlers/session-handlers.ts
7
54.13
3.67% packages/daemon/src/lib/agent/sdk-message-handler.ts
5
62.74
0.32% packages/daemon/src/lib/session/session-lifecycle.ts
4
33.5
22.0% packages/daemon/src/lib/agent/api-error-circuit-breaker.ts
3
39.85
0.76% packages/daemon/src/lib/agent/agent-session.ts
3
0.0
-11.9% packages/daemon/src/lib/providers/anthropic-copilot/bun-node-wrapper.ts
3
70.0
-4.44% packages/daemon/src/storage/job-queue-processor.ts
2
73.85
-3.08% packages/daemon/src/lib/agent/interrupt-handler.ts
2
28.26
-3.26% packages/daemon/src/lib/credentials/provider-credential-manager.ts
2
17.4
-0.5% packages/daemon/src/lib/rpc-handlers/live-query-handlers.ts
2
78.26
-4.35% packages/daemon/src/lib/session/session-cache.ts
2
49.33
14.09% packages/daemon/src/lib/session/session-manager.ts
2
56.48
-0.93% packages/daemon/src/storage/index.ts
1
44.72
-2.48% packages/daemon/src/lib/agent/model-switch-handler.ts
1
58.17
-1.31% packages/daemon/src/lib/agent/processing-state-manager.ts
1
53.55
-0.28% packages/daemon/src/lib/agent/query-options-builder.ts
1
3.53
-0.39% packages/daemon/src/lib/external-events/github/github-repository.ts
1
80.08
-0.42% packages/daemon/src/storage/reactive-database.ts
Jobs
ID Job ID Ran Files Coverage
1 daemon-online-git - 31283397313.1 08 Aug 2026 11:12PM UTC 360
9.88
GitHub Action Run
2 daemon-online-mcp - 31283397313.2 08 Aug 2026 11:12PM UTC 360
9.46
GitHub Action Run
3 daemon-online-agent-sdk - 31283397313.3 08 Aug 2026 11:13PM UTC 360
12.15
GitHub Action Run
4 daemon-online-rewind-1 - 31283397313.4 08 Aug 2026 11:13PM UTC 360
12.16
GitHub Action Run
5 daemon-online-space-2 - 31283397313.5 08 Aug 2026 11:15PM UTC 360
19.47
GitHub Action Run
6 web - 31283397313.6 08 Aug 2026 11:13PM UTC 281
75.72
GitHub Action Run
7 daemon-online-space-1 - 31283397313.7 08 Aug 2026 11:13PM UTC 360
19.17
GitHub Action Run
8 daemon-online-convo - 31283397313.8 08 Aug 2026 11:13PM UTC 360
12.09
GitHub Action Run
9 daemon-online-rpc-2 - 31283397313.9 08 Aug 2026 11:13PM UTC 360
13.03
GitHub Action Run
10 daemon-online-rpc-1 - 31283397313.10 08 Aug 2026 11:13PM UTC 360
10.02
GitHub Action Run
11 daemon-online-coordinator - 31283397313.11 08 Aug 2026 11:12PM UTC 350
1.24
GitHub Action Run
12 daemon-online-rpc-3 - 31283397313.12 08 Aug 2026 11:12PM UTC 360
10.06
GitHub Action Run
Source Files on build 31283397313
  • Tree
  • List 641
  • Changed 158
  • Source Changed 4
  • Coverage Changed 158
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #31283397313
  • e7d3a5c2 on github
  • Prev Build on dev (#31282701944)
  • Next Build on dev (#31287099744)
  • 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