[BUG] Mac Desktop: disappearing sessions bug -> React
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Sessions disappear after a Claude Desktop app restart, do not restore after a system reboot.
What Should Happen?
Sessions lists should reappear after a restart.
Error Messages/Logs
robballan@Kiteboard ~> tail -300 ~/Library/Logs/Claude/claude.ai-web.log | grep -iE "(mcp|error|transport|disconnect|session|signal)" (base)
2026-04-04 08:45:18 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Internal server error
2026-04-04 08:45:18 [error] Uncaught (in promise) Error: Internal server error
2026-04-04 09:20:10 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-04 09:20:25 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-04 11:41:11 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-04 11:46:49 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-04 11:51:21 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Artifact not found
2026-04-04 11:51:22 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Artifact not found
2026-04-04 11:51:22 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Artifact not found
2026-04-04 15:57:54 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-05 08:46:39 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-05 08:49:36 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-05 09:35:32 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-05 10:13:42 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-05 10:49:39 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 10:49:39 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 10:49:39 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 12:50:53 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 12:50:53 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 12:50:53 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 16:22:34 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 16:22:34 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 16:22:34 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 16:47:44 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in CCSessionList: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 17:37:34 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-05 19:24:54 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-05 22:49:50 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 22:49:50 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 22:49:50 [error] [REACT_QUERY_CLIENT] QueryClient error: TypeError: Failed to fetch
2026-04-05 22:54:51 [error] [COMPLETION] Request failed Error: No prompt provided
2026-04-05 22:54:51 [error] [COMPLETION] Not retryable error, throwing
2026-04-06 00:27:44 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Refreshing your authentication with GitHub failed
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in CCSessionList: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [error] [LOCAL_SESSION] [RenderLoopDetector] RENDER LOOP in CCSessionList: 40 renders in 1000ms. React will crash with error #185 (Maximum update depth exceeded). Diagnostics: {}
2026-04-06 00:50:14 [error] [LOCAL_SESSION] [RenderLoopDetector] RENDER LOOP in SessionItem: 40 renders in 1000ms. React will crash with error #185 (Maximum update depth exceeded). Diagnostics: {"sessionId":"local_afc0bccf-3c9e-439c-a9f1-5ad82e5f6c16","sessionType":"local","repoInfo":{"owner":"","name":"compassionate-elegant-galileo","branch":""}}
2026-04-06 00:50:14 [error] [LOCAL_SESSION] [RenderLoopDetector] RENDER LOOP in SessionItem: 40 renders in 1000ms. React will crash with error #185 (Maximum update depth exceeded). Diagnostics: {"sessionId":"local_d5f21808-ea06-4ecc-ba1a-3d692ff020a4","sessionType":"local","repoInfo":{"owner":"","name":"stoic-focused-goodall","branch":""}}
2026-04-06 00:50:14 [error] [LOCAL_SESSION] [RenderLoopDetector] RENDER LOOP in SessionItem: 40 renders in 1000ms. React will crash with error #185 (Maximum update depth exceeded). Diagnostics: {"sessionId":"local_60c95311-f1ed-45ab-858b-96af7f65eeea","sessionType":"local","repoInfo":{"owner":"","name":"bold-beautiful-shannon","branch":""}}
2026-04-06 00:50:14 [error] [LOCAL_SESSION] [RenderLoopDetector] RENDER LOOP in SessionItem: 40 renders in 1000ms. React will crash with error #185 (Maximum update depth exceeded). Diagnostics: {"sessionId":"local_83ad912c-96a6-454d-90f5-60cda836f1ba","sessionType":"local","repoInfo":{"owner":"","name":"focused-kind-dijkstra","branch":""}}
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [error] [LOCAL_SESSION] [RenderLoopDetector] RENDER LOOP in SessionItem: 40 renders in 1000ms. React will crash with error #185 (Maximum update depth exceeded). Diagnostics: {"sessionId":"local_ec43a3c1-04fb-4c92-bd2f-364dfa719bc6","sessionType":"local","repoInfo":{"owner":"","name":"options analysis","branch":""}}
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [error] [LOCAL_SESSION] [RenderLoopDetector] RENDER LOOP in SessionItem: 40 renders in 1000ms. React will crash with error #185 (Maximum update depth exceeded). Diagnostics: {"sessionId":"local_841b433b-0c60-4a46-b926-8fe86980ad56","sessionType":"local","repoInfo":{"owner":"","name":"wizardly-gifted-pasteur","branch":""}}
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 00:50:14 [warn] [LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in SessionItem: 20 renders in 1000ms [object Object]
2026-04-06 01:09:43 [error] Note that 'script-src' was not explicitly set, so 'default-src' is used as a fallback.
2026-04-06 01:09:44 [error] Permissions policy violation: xr-spatial-tracking is not allowed in this document.
2026-04-06 01:09:44 [error] Permissions policy violation: xr-spatial-tracking is not allowed in this document.
2026-04-06 01:09:44 [error] %c%d font-size:0;color:transparent NaN
2026-04-06 01:09:44 [error] %c%d font-size:0;color:transparent NaN
2026-04-06 01:09:48 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-06 01:18:46 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-06 07:59:51 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
2026-04-06 08:03:11 [error] [REACT_QUERY_CLIENT] QueryClient error: Error: Not found
robballan@Kiteboard ~> (base)
Steps to Reproduce
- Quit Claude
- Restart Claude
Claude Model
Sonnet (default)
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
Claude 1.569.0 (49894a) 2026-04-02T20:01:42.000Z
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
Claude's interpretation of its log files:
"This is very revealing. Your problem is not MCP at all — it's a React render loop crash in the session list UI.
Look at this from last night at 00:50:14:
RENDER LOOP in CCSessionList: 40 renders in 1000ms.
React will crash with error #185 (Maximum update depth exceeded)
Followed immediately by render loop crashes on specific named sessions — including one tellingly named "options analysis" (a real name you gave it) alongside the auto-generated ones. React is crashing the UI thread, which means the session list never finishes rendering before the app quits. The sessions exist on the server but the local UI state is corrupted.
The TypeError: Failed to fetch errors earlier in the evening are also significant — those are network failures that likely triggered the render loop by putting the session list into a bad state (fetching → error → re-render → fetching → error → infinite loop).
This is entirely a Claude Desktop UI bug, not your MCP servers. The signal handler addition was harmless but irrelevant.
Immediate workarounds:
- When sessions disappear, try scrolling the sidebar or resizing the window — sometimes that breaks the render loop without a restart
- Check your internet connection stability — the
Failed to fetcherrors at 22:49, 16:22, 12:50, 10:49 suggest intermittent connectivity which is triggering the loop - This is worth filing as a bug at github.com/anthropics/claude-code/issues with this log output — the render loop diagnostics are quite specific and actionable for their engineers"
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗