Debugger `paused` event is sometimes not delivered to inspector client on macOS CI
まだ誰も着手していません。
- 主要言語
- JavaScript
- スター
- 122k
- フォーク
- 37.3k
- 平均マージ
- 4日 2時間
- マージ済み PR(30日)
- 283
説明
We have multiple macOS CI debugger flakes where the debuggee appears to pause, but the
inspector client process never observes the expected Debugger.paused event.
This has affected interactive debugger tests and probe mode. In probe mode, handlePaused()
should either record hits or resume unknown pauses. When the report has no hits and eventually
times out, the most likely signal is that the paused event never reached the inspector client
process.
The AI-assisted PRs have mostly tried to address nearby symptoms or test races, but they have
not resolved the underlying observation:
- #63608 deferred probe pause handling until startup completed.
- #63632 changed exception-pause behavior.
- #63944 adjusted a probe fixture to avoid missed startup breakpoints.
- #63968 changed tests to wait for paused state instead of pause-banner output.
Refs: https://github.com/nodejs/node/pull/63632#issuecomment-4583515968
The question we need to answer is
Why is
Debugger.pausedsometimes never delivered to the inspector client process on macOS CI?
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず macOS CI のデバッガーの flaky を再現し、debuggee、Inspector クライアントプロセス、probe モードの handlePaused() の間での配信を追跡します。#63608、#63632、#63944、#63968 のこれまでの試み、特に参照されている #63632 の議論を読んでください。Debugger.paused イベントが欠落する原因を特定し、影響を受けるインタラクティブデバッガーと probe モードのケースがタイムアウトしなくなれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript, nodejs
- 領域
- devtools, testing-qa
- issue の種類
- バグ
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 静か
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 35/100