Files
scriptorium-library/prompts/weather/daily_report/daily_report.user.md

14 KiB
Raw Blame History

Generate a Daily Weather Report from the following weatherreporter YAML data package.

The report may be for today, tomorrow, or a future date. Determine the correct framing from report, briefing.metadata, the report valid period, and the derived daily date when present.

Use Markdown.

CORE EDITORIAL GOAL

This is a personal weather-nerd briefing, not a generic public forecast. The report should answer:

  1. What is the most likely local weather outcome for the day?
  2. What active hazard, caveat, uncertainty, or alternate outcome matters relative to that most likely outcome?
  3. If precipitation is likely, impactful, or meteorologically meaningful, when is it favored, how significant is it, and is severe weather possible?
  4. What should each daypart generally look and feel like?
  5. What broader meteorological setup or forecast dependency is worth watching?

SOURCE ROLES AND WEIGHTING

Use report and briefing.metadata for framing: location, timezone, units, valid period, generation time, and today/tomorrow/future wording. Do not treat metadata as forecast evidence except where it identifies source relevance, such as alert counts or location matching.

For weather interpretation, think in four source layers, in this order:

1. Active hazard and risk products

Give substantial weight to official hazard or risk products that the package identifies as relevant to the forecast location and valid period. This includes current or future package sections for alerts, watches, warnings, advisories, SPC outlook polygon hits, WPC excessive rainfall outlook polygon hits, mesoscale discussions, precipitation discussions, or similar location-matched products.

These products have already been filtered or matched to the forecast location. Treat them as locally relevant, but distinguish product strength:

  • 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 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.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.

For the current schema:

  • 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 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_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 an applicable hazard/risk product, local forecast data, or the narrative itself clearly supports that local implication.

4. Raw underlying data

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.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.

CONFLICT RESOLUTION

When sources differ, ask:

  1. Which source is most local to the forecast point?
  2. Which source is valid for the report period or near-term window?
  3. Which source is most authoritative for the type of claim being made?
  4. Is the source describing the most likely outcome, or a conditional/low-probability hazard?

Do not turn regional severe-weather discussion into a deterministic local severe-weather forecast unless point-specific data supports that conclusion. Conversely, do not bury a location-specific warning, watch, advisory, outlook polygon hit, or valid mesoscale discussion merely because the baseline derived summary is otherwise quiet.

LEAD REQUIREMENT

Begin the report with a two-sentence lead before any section headings.

If an active warning is relevant during the report period, lead with the hazard. Otherwise, the first sentence should state the most likely local weather outcome for the day, including the overall character of the weather and expected high temperature.

The second sentence should state the most important active hazard, caveat, uncertainty, or alternate outcome, if one exists. If there is no meaningful caveat, the second sentence may briefly say that no major complications are apparent.

In the lead, distinguish the main weather outcome from the caveat. If showers and thunderstorms have different timing, state that difference rather than combining them as a single all-day risk. If the main caveat is a regional severe-weather or precipitation risk displaced from the report location, state that limitation clearly.

Example style:

  • “Tomorrow is expected to be warm, mostly cloudy, and mostly dry, with a high near 72. There is a slight chance of isolated showers and thunderstorms from late afternoon into early evening.”

Do not open with generic planning advice.

HAZARD AND SEVERE-WEATHER RULES

Mention a hazard only to the extent supported by location-specific products, local structured forecast data, or clearly applicable narrative text.

Preserve product strength and uncertainty. An SPC Slight Risk, WPC Excessive Rainfall Outlook, or similar polygon hit is a locally relevant risk signal, not a warning and not a guarantee of local impact.

Preserve geography. If the package says the main severe risk is north of the metro, north of I-70, along a front, or over a specific part of the CWA, carry that limitation into the report.

Preserve timing. Do not say storms “arrive,” “clear,” “develop,” or “move in” at a specific time unless the hourly data, narrative forecast, Weather Story, AFD, or hazard product supports that timing.

PRECIPITATION RULES

Do not overstate low precipitation probabilities.

Use precipitation wording consistently:

  • 014%: usually omit unless relevant to a trend, caveat, hazard product, regional risk, or timing uncertainty.
  • 1524%: “slight chance,” “isolated,” “spotty,” or “brief passing shower/storm possible.”
  • 2539%: “chance,” “scattered,” or “some showers/storms possible.”
  • 4059%: “good chance” or “showers/storms likely enough to plan around.”
  • 60%+: “likely,” “wet,” or “unsettled,” if consistent with the narrative forecast.

Include ## Precipitation Details only when precipitation is likely, potentially impactful, or meteorologically interesting. In that section, address as many of the following as the data supports:

  • likely or favored start/end timing
  • most likely precipitation window
  • expected intensity
  • expected rainfall amount
  • thunderstorm potential
  • severe-weather potential
  • uncertainty in timing, coverage, or placement

If the package does not provide rainfall amounts, say nothing about totals unless a narrative product provides a supported qualitative signal. Do not invent QPF.

If local precipitation chances are low and no meaningful local impacts are expected, do not create a full precipitation section solely because regional precipitation or severe weather appears in a narrative product. Mention the regional caveat in the lead or ## What to Watch instead, preserving geographic limits.

DAYPART RULES

Use dayparts from briefing.derived_daypart_summaries. If a daypart is present but incomplete, use raw hourly data and narrative forecast periods to fill in only what is supported. Only include dayparts present in the package.

In ## Daypart Forecast, each bullet should usually follow this pattern:

  • Daypart: [Sky/general condition] with [temperature trend or approximate temperature]. [Precipitation/storm/hazard sentence only if relevant.] [Wind sentence only if meaningful.]

Always include the expected sky or general condition when supported, such as mostly cloudy, partly cloudy, sunny, overcast, rainy, snowy, foggy, or stormy.

Prefer natural temperature phrasing:

  • “temperatures around 82”
  • “temperatures rising from the upper 60s into the low 70s”
  • “temperatures near 80”
  • “cooling from the low 80s into the low 70s”
  • “holding in the upper 60s”
  • “peaking near 83 late in the day”

For quiet or mostly dry dayparts, keep the bullet to one sentence. For dayparts with meaningful precipitation, thunder, snow, ice, fog, high wind, heat, or other weather impacts, add a second sentence with timing and caveat details.

Keep sky/general condition separate from precipitation probability. Do not write only “slight chance of showers” when the broader condition is “mostly cloudy with a slight chance of showers.”

When precipitation or hazards are likely during only part of a daypart, describe that timing first, then describe the sky/temperature trend. Do not lead with a benign sky condition if showers, storms, snow, ice, fog, or other impacts are likely during that same daypart.

Avoid “throughout the day” unless the same weather risk is meaningfully present across most dayparts.

METEOROLOGICAL CONTEXT RULES

Use narrative products to explain the “why” behind the local forecast when useful.

Useful context may include:

  • synoptic pattern
  • fronts or boundaries
  • shortwaves, troughs, or ridges
  • instability, moisture, shear, forcing, or capping
  • regional placement of precipitation or severe-weather chances
  • hazard types and timing windows
  • confidence or uncertainty
  • conditional outcomes
  • relevant notes about the following day or days

Do not simply quote or summarize narrative products at length. Translate them into concise, plainspoken, weather-literate context.

OUTPUT FORMAT

Use this structure:

[Todays/Tomorrows/DOW's] Weather — [Location Name]

[Valid date]

[Two-sentence lead.]

Daypart Forecast

  • Morning: ...
  • Midday: ...
  • Afternoon: ...
  • Evening: ...
  • Overnight: ...

Only include dayparts present in the package. Use natural language timing where helpful.

Precipitation Details

Include this section only if:

  • local precipitation probability reaches at least 30% during the valid period;
  • thunder is mentioned in the structured local forecast and the timing/coverage is meteorologically interesting;
  • a relevant hazard/risk product discusses flooding, severe weather, winter weather, high wind, or another meaningful precipitation-related hazard;
  • narrative products discuss intensity, rainfall rates, flooding, severe potential, or meaningful uncertainty that plausibly affects the report location or is important regional context;
  • recent changes materially affect precipitation timing, coverage, or intensity.

Recent Changes

Include this section only if recent_changes.items contains meaningful changes. Summarize changes in plain English. Do not fabricate changes.

What to Watch

Include meteorological context, uncertainty, conditional forecast factors, and any relevant non-warning hazard/risk signals.

In most cases:

  • Provide 23 sentences summarizing the relevant local/regional setup.
  • Provide 12 sentences describing the main forecast uncertainty or conditional factor, if present.
  • Optionally include 12 sentences about the next day or broader pattern if supported.

STYLE RULES

  • Plainspoken, precise, and weather-literate.
  • Compact, but not shallow.
  • No generic public-safety filler.
  • No umbrella/rain-jacket/snow-boots advice unless unusually warranted by a specific hazard.
  • No commute or outdoor-plan boilerplate.
  • No unsupported precision.
  • No raw YAML, raw JSON, internal field names, source hashes, endpoint names, URLs, implementation details, or debugging notes.
  • No apologies for missing data.
  • Avoid phrases like “developing,” “moving in,” “clearing,” “threatening,” or “impacting” unless the timing and trend are clearly supported by the package.
  • Prefer “most likely,” “possible,” “favored,” “conditional,” “limited coverage,” and “worth watching” when those phrases accurately reflect the data.