10 KiB
Generate a Daily Weather Report from the following weatherreporter JSON data package.
The report may be for today, tomorrow, or a future date. Determine the correct framing from report.currentLocalDate, report.variant, report.validPeriod, briefing.metadata.validPeriod, and briefing.daily.forecastSummaryDate.
Use Markdown.
CORE EDITORIAL GOAL
This is a personal weather-nerd briefing, not a generic public forecast. The report should answer:
- What is the most likely weather outcome for the day?
- What caveat, uncertainty, or alternate outcome matters relative to that most likely outcome?
- If precipitation is likely or meteorologically meaningful, when will it begin, when will it end, how intense will it be, how much is expected, and is severe weather expected?
- What should each daypart generally look and feel like?
- What broader meteorological setup or forecast dependency is worth watching?
SOURCE PRIORITY
Use the package in this order:
- Use
briefing.daily.bottomLinefor the overall daily theme, temperature range, and maximum precipitation probability. - Use
briefing.daily.daypartsfor daypart timing, temperatures, precipitation chances, wind, dominant conditions, and notable conditions. - Use
briefing.daily.narrativePeriodsto confirm and reconcile the official day/night forecast wording. - Use
briefing.daily.discussion.keyMessagesfor broader forecast context. - Use
briefing.daily.discussion.shortTermfor meteorological setup, local/regional nuance, confidence, uncertainty, and forecast dependencies that affect the report’s valid period. - Use
briefing.daily.discussion.longTermonly if it affects the valid day, the overnight period immediately following it, or a brief note about the following day/days. - Use
briefing.metadata.alertsand any alert details if present. - Use
recentChanges.itemsonly if it contains meaningful changes. - Use
sourceWarningsonly to avoid overclaiming. Do not mention missing internal sources unless they materially limit the report. - Use
currentConditionsonly as context at generation time. For tomorrow or future reports, do not describe current conditions as if they are forecast conditions.
LEAD REQUIREMENT
Begin the report with a two-sentence lead before any section headings.
The first sentence must state the most likely weather outcome for the day, including the overall character of the weather and the expected high temperature.
The second sentence must state the most important 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.
Example of the desired style:
- "Tomorrow is expected to be warm, mostly cloudy, and mostly dry, with a high near 72. A slight shower chance lingers at times, with isolated thunder more favored late afternoon into early evening."
Do not open with generic planning advice.
PRECIPITATION RULES
Do not overstate low precipitation probabilities.
Use precipitation wording consistently:
- 0–14%: usually omit unless relevant to a trend or caveat.
- 15–24%: “slight chance,” “isolated,” “spotty,” or “brief passing shower/storm possible.”
- 25–39%: “chance,” “scattered,” or “some showers/storms possible.”
- 40–59%: “good chance” or “showers/storms likely enough to plan around.”
- 60%+: “likely,” “wet,” or “unsettled,” if consistent with the narrative forecast.
Include a separate ## Precipitation Details section only when precipitation is likely, potentially impactful, or meteorologically interesting. In that section, address as many of the following as the data supports:
- likely start time
- likely end time
- 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 the forecast discussion provides a supported qualitative signal. Do not invent QPF.
If precipitation chances are low and no meaningful impacts are expected, do not create a full precipitation section. Mention the caveat in the lead and relevant daypart bullets only.
DAYPART RULES
In ## Daypart Forecast, each daypart bullet should normally follow this pattern:
- **Daypart:** [Sky/general condition] with [temperature trend or approximate temperature]. [Precipitation/storm sentence only if relevant.] [Wind sentence only if meaningful.]
Always include the expected sky or general condition when the data supports it, such as mostly cloudy, partly cloudy, sunny, overcast, rainy, snowy, foggy, or stormy.
Do not describe a daypart temperature maximum as “High of X” unless the daypart covers the main daily high period and that phrasing sounds natural. Prefer:
- “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, or other weather impacts, add a second sentence with timing and caveat details.
Keep sky/general condition separate from precipitation probability. For example, do not write only “slight chance of showers” when the broader condition is “mostly cloudy with a slight chance of showers.”
When precipitation is likely during only part of a daypart, describe the precipitation timing first, then describe the sky/temperature trend after that. Do not use a benign sky condition such as “mostly sunny” as the leading phrase for a daypart if showers, storms, snow, ice, fog, or other impacts are likely during that same daypart.
Avoid unsupported timing precision. Do not say precipitation “develops after,” “moves in around,” “clears after,” or “ends by” unless the hourly data, narrative forecast, or discussion clearly supports that timing. If the signal is broad, use broader wording such as “a slight chance continues,” “possible during the period,” or “most favored late in the period.”
Avoid “throughout the day” unless the same weather risk is meaningfully present across most dayparts. When possible, distinguish lower-impact shower chances from more specific thunder chances.
AFD / METEOROLOGICAL CONTEXT RULES
Use the forecast discussion to explain the “why” behind the local forecast when it is relevant.
Useful AFD-derived content may include:
- synoptic pattern
- surface boundaries
- shortwaves/troughs/ridges
- instability, moisture, shear, or forcing
- regional placement of precipitation chances
- confidence or uncertainty
- conditional outcomes such as “if X occurs, Y becomes more likely”
- relevant notes about the following day or days
If AFD context describes hazards mainly outside the report location, preserve that limitation. Do not imply a direct local threat unless the hourly forecast, narrative forecast, alerts, or discussion clearly support it for the report location.
If briefing.daily.discussion.longTerm contains interesting context about the following day or larger pattern, you may include one short note in ## What to Watch, but do not let the long-term discussion dominate the Daily Report.
OUTPUT FORMAT
Use this structure:
[Today’s/Tomorrow’s/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 ## Precipitation Details only if:
- precipitation probability reaches at least 30% during the valid period;
- thunder is mentioned and the timing/coverage is meteorologically interesting;
- the AFD discusses intensity, rainfall rates, flooding, severe potential, or meaningful uncertainty;
- recent changes materially affect precipitation timing, coverage, or intensity.
Recent Changes
Include this section only if recentChanges.items contains meaningful changes. Summarize the changes in plain English. Do not fabricate changes.
What to Watch
Include meteorological context, uncertainty, and conditional forecast factors. This is the right place to discuss the broader setup behind the forecast.
This section may include a short note about the following day or days if the forecast discussion supports something interesting or relevant.
In most cases, this section should adhere to the following pattern.
- Provide at least 2 sentences summarizing the relevant local/regional meteorological setup. (This could include, for example, the overall synoptic pattern; shortwaves/troughs/ridges passing through the region; and/or regional placement of precipitation chances.)
- Provide 1-2 sentences that describe the main forecast uncertainty or conditional factor, if present.
- Optionally, include 1-2 sentences that mention the next day or broader pattern if the AFD supports it.
Do not simply quote or summarize the AFD at length, and avoid dense meteorological jargon. Keep in mind that your audience is an amateur weather enthusiast, not a professional meteorologist.
Do not introduce mechanisms that are not stated or clearly implied by the forecast discussion. If the AFD does not identify the mechanism, describe the uncertainty more generally.
STYLE RULES
- Plainspoken, precise, and weather-literate.
- No generic public-safety filler.
- No umbrella/rain-jacket/snow-boots advice unless unusually warranted by the forecast.
- No commute or outdoor-plan boilerplate.
- No unsupported precision.
- No raw JSON, internal field names, source hashes, endpoint names, 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.