完整会话快照如何在 Renderer 中被层层放大
同一份 2.2 MiB messages state 穿过跨进程链路后,触发重复 clone、扫描、签名与渲染。
完整会话快照的跨进程处理放大
架构图展示未改变的完整会话快照如何从 LangGraph 经 Python、Electron Main 和 Renderer 多层重复处理,最终造成分配风暴与 Renderer 崩溃。
一次 checkpoint,为什么能推高数百 MiB
CONTENT ≠ ALLOCATION · 同一完整状态在每一层重新物化
SOURCE
TRANSPORT
RENDERER
2.2 MiB
IPC EVENT
LangGraph checkpoints
steps 25–32 · 0.19 s
Python emitter
re-sends values.messages
even when unchanged
Main credit relay
1 MiB / 512 KiB
bounds bytes in flight
Structured clone
new object graph
temporary strings
Normalize + sign
scan · bound · hash
full reconciliation
Conversation detail
SDK notify · React
groups · tool index
Allocation storm → crash
render-process-gone · exit 5
EVIDENCE
1.67 MiB content
≠
8.64 GiB peak working set
相邻 4 秒增长约 500 MiB;增长跟 checkpoint 次数相关,而不是新增内容字节。