From bbc5dbb8d65ae37dc27e37e3f15d32adccc2f165 Mon Sep 17 00:00:00 2001 From: "2569718930@qq.com" <2569718930@qq.com> Date: Tue, 24 Mar 2026 03:35:34 +0800 Subject: [PATCH] Clarify TAF and surface signal interplay in intraday summary --- frontend/lib/dashboard-utils.ts | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/frontend/lib/dashboard-utils.ts b/frontend/lib/dashboard-utils.ts index 22c1d3b4..06d351a8 100644 --- a/frontend/lib/dashboard-utils.ts +++ b/frontend/lib/dashboard-utils.ts @@ -1224,7 +1224,34 @@ export function computeFrontTrendSignal( return parts.join(isEnglish(locale) ? " " : ""); })(); - const combinedSummary = [backendSummary || summary, tafSummary] + const tafContrastSummary = + tafSignal.available && dateStr === detail.local_date + ? (() => { + const tafSuppression = String( + tafSignal.suppression_level || "low", + ).toLowerCase(); + const isCoolingBias = score <= -18; + const isWarmingBias = score >= 18; + + if (tafSuppression === "low" && isCoolingBias) { + return isEnglish(locale) + ? "TAF is not adding a new cloud/rain suppression signal, but the near-surface window is already leaning cooler, so the current cooling bias still comes mainly from surface structure." + : "TAF 没有新增云雨压温利空,但当前峰值窗口里的近地面结构已经偏弱,所以这次偏降温判断仍主要来自近地面信号。"; + } + if (tafSuppression === "low" && isWarmingBias) { + return isEnglish(locale) + ? "TAF is not adding a new cloud/rain cap, and the warmer bias still comes mainly from the surface window." + : "TAF 没有新增云雨压温约束,当前偏升温判断仍主要来自近地面窗口。"; + } + if (tafSuppression === "medium" && isCoolingBias) { + return isEnglish(locale) + ? "TAF is not the only driver here; it only reinforces part of the cooling-side case, while the main tilt still comes from the surface window." + : "这次偏降温不只是 TAF 在起作用;TAF 只是加强了部分冷侧判断,主方向仍来自近地面窗口。"; + } + return ""; + })() + : ""; + const combinedSummary = [backendSummary || summary, tafSummary, tafContrastSummary] .filter(Boolean) .join(isEnglish(locale) ? " " : ""); const cloudNote = (() => {