证据面板新增 AI 预测最高温 vs DEB 双锚对比卡片

在 AI 机场报文解读面板顶部加入双卡片布局:左侧展示 AI 预测最高温
(含置信区间和置信度),右侧展示 DEB 融合值,形成可对比的"双锚"
视图。同时更新加载态文案为"AI 正在基于最新报文预测今日最高温"。
This commit is contained in:
2569718930@qq.com
2026-05-06 15:48:27 +08:00
parent c296bbb789
commit f9d0ea31bc
5 changed files with 172 additions and 4 deletions
@@ -358,6 +358,9 @@ export function AiPinnedCityCard({
? `Model support is unavailable, so this city must rely on DEB path and ${observationSourceEn}.`
: `暂无可用多模型支撑,需要主要参考 DEB 路径和${observationSourceZh}`;
const aiPredictedMax = toFiniteDecisionNumber(aiCityForecast?.predicted_max);
const aiRangeLow = toFiniteDecisionNumber(aiCityForecast?.range_low);
const aiRangeHigh = toFiniteDecisionNumber(aiCityForecast?.range_high);
const aiConfidence = String(aiCityForecast?.confidence || "").trim() || null;
const decisionExpectedHighNumber = resolveExpectedHighCandidate({
aiPredictedMax,
currentTemp: currentTempNumber,
@@ -549,13 +552,18 @@ export function AiPinnedCityCard({
<MobileDecisionCard
aiBullets={aiBullets}
aiCityForecast={aiCityForecast}
aiConfidence={aiConfidence}
aiForecast={aiForecast}
aiPredictedMax={aiPredictedMax}
aiRangeHigh={aiRangeHigh}
aiRangeLow={aiRangeLow}
aiReadCompleteText={aiReadCompleteText}
aiReadInProgressText={aiReadInProgressText}
aiRuleEvidenceMode={aiRuleEvidenceMode}
aiRuleEvidenceText={aiRuleEvidenceText}
currentTempText={currentTempText}
dataFreshnessRows={dataFreshnessRows}
debPrediction={debNumber}
decisionState={decisionState}
detail={detail}
displayName={displayName}
@@ -574,6 +582,7 @@ export function AiPinnedCityCard({
peakWindow={peakWindow}
rawObservationText={rawObservationText}
removing={removing}
tempSymbol={tempSymbol}
/>
) : (
<>
@@ -620,11 +629,16 @@ export function AiPinnedCityCard({
<AiEvidencePanel
aiBullets={aiBullets}
aiCityForecast={aiCityForecast}
aiConfidence={aiConfidence}
aiForecast={aiForecast}
aiPredictedMax={aiPredictedMax}
aiRangeHigh={aiRangeHigh}
aiRangeLow={aiRangeLow}
aiReadCompleteText={aiReadCompleteText}
aiReadInProgressText={aiReadInProgressText}
aiRuleEvidenceMode={aiRuleEvidenceMode}
aiRuleEvidenceText={aiRuleEvidenceText}
debPrediction={debNumber}
fallbackAiReason={fallbackAiReason}
isCompactCard={isCompactCard}
isEn={isEn}
@@ -632,6 +646,7 @@ export function AiPinnedCityCard({
localModelSupportNote={localModelSupportNote}
localizedFinalJudgment={localizedFinalJudgment}
rawObservationText={rawObservationText}
tempSymbol={tempSymbol}
/>
</div>