Skip to content

diag(shell): 转储补 closed / closer_joined (#97) - #285

Merged
JavaZeroo merged 1 commit into
mainfrom
diag/lifecycle-flags
Oct 31, 2026
Merged

JavaZeroo merged 1 commit into
mainfrom
diag/lifecycle-flags

Conversation

@JavaZeroo

Copy link
Copy Markdown
Owner

内容

按 #97 的下一步观测(closing/closed/drained),把每标签页转储补全:

... stage=<N> closed=<bool> closer_joined=<bool> closing=<bool> child_signaled=<bool> exit_code=<N>

为什么

frame.bmp 只在 closing_ && closed_ && drained 后写出(shell.cpp:917-923)。此前转储只有 closing,看不到收尾走到了哪一步;补上 closed 与 closer_joined 后,配合 #283 的 frame_at_timeout,可以判断卡在:

观测组合 含义
closing=false 根本没开始收尾
closing=true, closed=false 收尾进行中,窗口未销毁
closing=true, closed=true, frame_at_timeout=false 窗口已销毁但排空未完成
frame_at_timeout=true 且进程未返回 收尾全部完成,卡在进程退出

验证

termforge_shell 构建通过。

边界

  • 只加两个只读字段;
  • 不改任何收尾逻辑。

Refs #97

The frame is only written once closing, closed and drained hold, so the dump now shows the two flags it lacked.
@JavaZeroo
JavaZeroo merged commit 5e6c87a into main Oct 31, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant