Document outlook v2 behavior

This commit is contained in:
2026-06-12 13:07:17 +00:00
parent beeaeeaecb
commit c7760742e6
9 changed files with 131 additions and 360 deletions

View File

@@ -144,6 +144,11 @@ application service:
The package variable `outlookNow` exists so endpoint tests can make active and
location filtering deterministic.
The application service returns filtered outlook copies and trims run-level
discussions to days represented by retained outlooks.
`/outlooks/convective/location` is retained for compatibility and active
local-outlook behavior under the weatherfeeder outlook v2 contract.
## Failure Behavior
Binder failures become feedapi invalid-parameter responses. Handler service

View File

@@ -90,7 +90,7 @@ successful responses with `data: null`.
`weather_stories`.
- `LatestWeatherStory`: latest individual row from `weather_stories`.
- `LatestConvectiveOutlookRun`: latest row from `outlook_runs`, then child
`outlooks`.
`outlooks` and `outlook_discussions`.
Latest parent rows are selected by descending weather timestamp and
`event_emitted_at` where that tie-breaker is available in the query.
@@ -105,7 +105,8 @@ Child queries preserve stored order:
- forecast periods by `period_index`;
- discussion key messages by `message_index`;
- weather stories by `story_index`;
- outlooks by `outlook_index`.
- outlooks by `outlook_index`;
- outlook discussions by `discussion_index`.
Alert references are attached after both alert and reference rows are loaded.
References are grouped by alert index and attached to their corresponding alert.

View File

@@ -118,9 +118,11 @@ response envelope so renderers can produce `data: null`.
- Discussions: full or focused payload shapes, section copy, key-message copy,
timezone conversion.
- Weather stories: run/story copy and timezone conversion.
- Convective outlooks: canonical model copy, pointer and geometry copy, and
timezone conversion. `units` is accepted by routes but ignored by the
presenter because outlook fields are not unit-bearing.
- Convective outlooks: canonical model copy, pointer and geometry copy,
run-level discussion copy, and timezone conversion for run, outlook, and
discussion timestamps. Outlook polygon prose is not handled by the presenter;
prose is carried by run-level discussions. `units` is accepted by routes but
ignored by the presenter because outlook fields are not unit-bearing.
## Templates