diff --git a/prompts/weather/daily_report/daily_report.user.md b/prompts/weather/daily_report/daily_report.user.md index 4ab7bda..2587547 100644 --- a/prompts/weather/daily_report/daily_report.user.md +++ b/prompts/weather/daily_report/daily_report.user.md @@ -28,41 +28,42 @@ These products have already been filtered or matched to the forecast location. T - Active warnings are urgent and should dominate the lead and relevant sections. - Watches and advisories should be mentioned prominently when they affect the report period. -- Outlook/risk polygon hits are important local risk signals, but they are not equivalent to warnings. They should elevate the caveat, uncertainty, and ## What to Watch discussion without implying that severe weather is certain at the exact point. +- Outlook/risk polygon hits are important local risk signals, but they can vary significantly with respect to both impact and certainty. They should elevate the caveat, uncertainty, and ## What to Watch discussion without implying that severe weather is certain at the exact point. - Mesoscale discussions and precipitation discussions are strong short-term situational-awareness signals when they cover the location and valid period. -For the current schema, use briefing.alert_digest and briefing.metadata.alerts to determine whether relevant local alerts exist. If relevant_count is zero, do not imply that the report location is under an active alert merely because active_count is nonzero. +For the current schema, use `briefing.applicable_risk_products.alert_digest` and `briefing.metadata.alerts` to determine whether relevant local alerts exist. If `relevant_count` is zero, do not imply that the report location is under an active alert merely because `active_count` is nonzero. ## 2. Derived summaries Use derived summaries as the baseline interpretation of the local forecast when no active hazard product requires stronger framing. -Use briefing.derived_daily_summary for the overall daily theme, high/low temperature, dominant conditions, daily precipitation probability, most likely precipitation hour, and thunder flag. +For the current schema: -Use briefing.derived_daypart_summaries for daypart timing, dominant conditions, temperature ranges, maximum precipitation chances, and notable conditions. - -Use briefing.precip_timing as the deterministic summary of maximum precipitation probability and whether thunder is mentioned in the structured local forecast. - -Use briefing.outdoor_windows only if it adds meaningful signal to the daypart discussion. Do not turn the report into outdoor-planning advice. +- Use briefing.derived_daily_summary for the overall daily theme, high/low temperature, dominant conditions, daily precipitation probability, most likely precipitation hour, and thunder flag. +- Use briefing.derived_daypart_summaries for daypart timing, dominant conditions, temperature ranges, maximum precipitation chances, and notable conditions. +- Use briefing.precip_timing as the deterministic summary of maximum precipitation probability and whether thunder is mentioned in the structured local forecast. +- Use briefing.outdoor_windows only if it adds meaningful signal to the daypart discussion. Do not turn the report into outdoor-planning advice. ## 3. Narrative products -Use narrative products for meteorological context, prose framing, uncertainty, and conditional outcomes. This includes the AFD, Weather Story, NWS narrative forecast text, SPC narrative text, WPC discussions, CPC discussions, and similar products. +Use `briefing.narrative_products` for meteorological context, prose framing, uncertainty, and conditional outcomes. This includes the AFD, Weather Story, NWS narrative forecast text, SPC narrative text, WPC discussions, CPC discussions, and similar products. For the current schema: -- Use briefing.narrative_forecast.periods to confirm and reconcile official day/night wording, high/low temperatures, winds, and broad precipitation wording. -- Use briefing.weather_story for hazard type, broad geographic placement, and timing. Preserve spatial limits such as “north of I-70.” Do not mention URLs, image-download details, or internal fields. -- Use briefing.area_forecast_discussion.key_messages and briefing.area_forecast_discussion.short_term for setup, local/regional nuance, confidence, uncertainty, and forecast dependencies affecting the report period. -- Use briefing.area_forecast_discussion.long_term only if it affects the valid day, the overnight period immediately following it, or a brief note about the following day/days. +- Use `briefing.narrative_products.narrative_forecast.periods` to confirm and reconcile official day/night wording, high/low temperatures, winds, and broad precipitation wording. +- Use `briefing.narrative_products.weather_story` for hazard type, broad geographic placement, and timing. Preserve spatial limits such as “north of I-70.” Do not mention URLs, image-download details, or internal fields. +- Use `briefing.narrative_products.area_forecast_discussion.key_messages` and `briefing.narrative_products.area_forecast_discussion.short_term` for setup, local/regional nuance, confidence, uncertainty, and forecast dependencies affecting the report period. +- Use `briefing.narrative_products.area_forecast_discussion.long_term` only if it affects the valid day, the overnight period immediately following it, or a brief note about the following day/days. -Do not let broad regional narrative language override point-specific local forecast data unless a location-specific hazard/risk product, local forecast data, or the narrative itself clearly supports that local implication. +Do not let broad regional narrative language override point-specific local forecast data unless an applicable hazard/risk product, local forecast data, or the narrative itself clearly supports that local implication. ## 4. Raw underlying data -Use raw data as the source of truth for exact timing, temperatures, precipitation probabilities, wind, humidity/dew point, and condition changes when more detail is needed. +Use `briefing.raw_data` as the source of truth for exact timing, temperatures, precipitation probabilities, wind, humidity/dew point, and condition changes when more detail is needed. -For the current schema, briefing.hourly_forecast.periods is the most granular local forecast source. Use it to verify daypart summaries, refine timing, identify trends, and resolve ambiguity. Use briefing.current_conditions only as generation-time context; for tomorrow or future reports, do not describe current conditions as if they are forecast conditions. +For the current schema, `briefing.raw_data.hourly_forecast.periods` is the most granular local forecast source. Use it to verify daypart summaries, refine timing, identify trends, and resolve ambiguity. + +Use `briefing.raw_data.current_conditions` only as generation-time context. For tomorrow or future reports, do not describe current conditions as if they are forecast conditions. If raw data and derived summaries appear to disagree, prefer the raw data for exact values and timing, but treat the disagreement as a reason to be cautious rather than as permission to invent an explanation.