[Bug]: v1.38.7 渲染层崩溃 Minified React error #185(Maximum update depth exceeded);长会话下流式输出停摆

Author: fluoxetine616Created Sep 12, 2026Updated Sep 17, 2026
Labelsbugrenderingdesktopv2windowscrash

Version line

v2 — Go rewrite (1.x), main-v2 (active development)

Exact version

1.38.7

What happened?

两个问题(第二个可能相关、也可能独立,请官方判定):

1)【渲染层崩溃】窗口捕获 [window.error]: Minified React error #185(= "Maximum update depth exceeded",React hooks setState 无限更新循环;见 react.dev/errors/185)。崩溃栈指向应用自身 bundle(index-QvpapSZM.js:2:589949 → dispatchSetState → enqueueConcurrentHookUpdate)。 发生时机:应用启动约 4 分钟后;崩溃前 tab.hydrate ancillary startup 耗时 27351ms (其中 ancillary context 14600ms、ancillary effort 26496ms),期间窗口有 [view] hidden→visible 切换;最后一条 breadcrumb 为 CheckUpdate done。崩溃所在的 tab 为普通小会话(非大会话)。 重启后一切正常,会话数据无损。

2)【流式输出停摆】长会话中,任务执行正常(后端持续产出、会话事件持续落盘),但界面流式 输出/思维链区域停止刷新;退出重进后内容完整可见(从事件流重放)。2026-09-12 当天因该问题 重启客户端 7 次以上;其中两次关闭时日志出现 desktop/shutdown timed out after 10000 ms。 本机背景:存在 2026-07 创建的超长会话(经 18 次 recovery 重建、events.jsonl 达 24MB、 上下文曾达 1,107,745 tokens 触发 compaction failed)。

期望行为:流式输出持续可见;渲染层不崩溃。

Steps to reproduce

  1. Windows 11 上运行 Reasonix Desktop v1.38.7(stable),数据目录含较大历史 (本机多个长会话,最大 events.jsonl 24MB)
  2. 启动应用(自动恢复工作区 tab,本机 tab id: tab_80132a7482d4baf7876724c427c0da3e)
  3. 等待 hydrate 完成(约 27 秒;ancillary effort 约 26.5 秒),期间窗口发生 hidden→visible
  4. 约 4 分钟后渲染层抛 React #185 崩溃 (另一问题复现:在长会话中持续运行任务较长时间后,界面流式输出停止刷新)

OS / platform

Windows 11

Relevant logs or output

bash
[window.error]

Error: Minified React error #185; visit https://react.dev/errors/185 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
    at getRootForUpdatedFiber (reasonix://app/assets/vendor-react-VXsi9a5p.js:1:52083)
    at enqueueConcurrentHookUpdate (reasonix://app/assets/vendor-react-VXsi9a5p.js:1:51480)
    at dispatchSetStateInternal (reasonix://app/assets/vendor-react-VXsi9a5p.js:1:92545)
    at dispatchSetState (reasonix://app/assets/vendor-react-VXsi9a5p.js:1:92017)
    at reasonix://app/assets/index-QvpapSZM.js:2:589949

--- breadcrumbs ---
-252.9s [app] start
-252.1s [bridge] turn ReplayPendingPrompts
-252.1s [bridge] window IsMainWindowMaximised
-252.0s [bridge] turn ReplayPendingPrompts done ms=147
-251.9s [bridge] window IsMainWindowMaximised done ms=159
-251.8s [tab.hydrate] start startup tab_80132a7482d4baf7876724c427c0da3e
-251.8s [tab.hydrate] transcript snapshot start startup tab_80132a7482d4baf7876724c427c0da3e
-251.8s [bridge] nav RegisterNavigationIntent
-251.8s [bridge] turn ReplayPendingPromptsForTab
-251.8s [bridge] nav RegisterNavigationIntent done ms=34
-251.8s [bridge] turn ReplayPendingPromptsForTab done ms=30
-251.7s [tab.hydrate] transcript snapshot done startup tab_80132a7482d4baf7876724c427c0da3e ms=142
-251.7s [tab.hydrate] done startup tab_80132a7482d4baf7876724c427c0da3e ms=143
-251.2s [tab.hydrate] meta start startup tab_80132a7482d4baf7876724c427c0da3e
-251.0s [tab.hydrate] meta done startup tab_80132a7482d4baf7876724c427c0da3e ms=255
-251.0s [tab.hydrate] ancillary effort start startup tab_80132a7482d4baf7876724c427c0da3e
-251.0s [tab.hydrate] ancillary jobs start startup tab_80132a7482d4baf7876724c427c0da3e
-251.0s [tab.hydrate] ancillary context start startup tab_80132a7482d4baf7876724c427c0da3e
-250.9s [tab.hydrate] ancillary jobs done startup tab_80132a7482d4baf7876724c427c0da3e ms=49
-236.4s [view] hidden
-236.4s [tab.hydrate] ancillary context done startup tab_80132a7482d4baf7876724c427c0da3e ms=14600
-224.5s [tab.hydrate] ancillary effort done startup tab_80132a7482d4baf7876724c427c0da3e ms=26496
-223.7s [bridge] window IsMainWindowMaximised
-223.7s [tab.hydrate] ancillary checkpoints start startup tab_80132a7482d4baf7876724c427c0da3e
-223.7s [bridge] update CheckUpdate
-223.6s [view] visible
-223.6s [tab.hydrate] ancillary checkpoints done startup tab_80132a7482d4baf7876724c427c0da3e ms=44
-223.6s [tab.hydrate] ancillary startup tab_80132a7482d4baf7876724c427c0da3e ms=27351
-223.6s [bridge] window IsMainWindowMaximised done ms=47
-217.4s [bridge] update CheckUpdate done ms=6312

build 036c7c50c5c1

--- desktop-shell/logs/shell.log(摘录,UTC 时间)---
2026-09-12T07:59:57.129Z warn desktop/shutdown failed: desktop/shutdown timed out after 10000 ms
2026-09-12T08:25:35.311Z warn desktop/shutdown failed: desktop/shutdown timed out after 10000 ms

--- desktop-shell/logs/service.log(摘录)---
2026/09/12 11:44:13 WARN agent: compaction failed detail="trigger=pressure mode=summarized summary_input=cache_prefix cache=warm src=1408243 fold=2630160 spans=1 proj=0 in=0 out=0 hit=0 miss=0 write=0 reqs=1 user_kept=0 user_dropped=0 err_type=deepseek · Chat Completions: status 400: {\"error\":{\"message\":\"This model's maximum context length is 1048576 tokens. However, you requested 1107745 tokens (1099553 in the messages, 8192 in the completion). Please reduce the length of the messages or completion.\",\"type\":\"invalid_request_error\",\"param\":null,\"code\":\"invalid_request_error\"}}"

--- metrics-pending.json 摘录(UI 遥测,统计窗口含 98 turns)---
ui_slow_frames ≥5: 56次 | ui_long_tasks ≥3: 36次 | ui_frame_p95 ≥33ms: 23次 | ui_stream_paint_p95 ≥100ms: 1次
turn_ledger: stream_records=100862 | write_bytes=105869139 | compaction 98405408→195127

Source: esengine/DeepSeek-Reasonix