Joshua Shay Kricheli NeuroSymbolic AI
v2 v1

Release · v2.28.1

Apply adversarial-review findings

fix(weather): apply adversarial-review findings

fix v2.28.1 July 1, 2026 Claude 611a387

Details

Seven confirmed findings from a multi-lens review of the location-aware
weather feature, each covered by a Playwright regression probe:
- seasonal-background: repaint the static frame when live weather data
  lands while the loop is idle (prefers-reduced-motion previously kept
  the stale fallback-season frame forever), and after a resize (which
  blanks the canvas bitmap) when the loop is not running.
- snow-gl: re-issue the snow state after a resize reseed so the
  reduced-motion static frame is redrawn instead of staying blank.
- weather-service: publish a synchronous placeholder for the new city in
  wxSetLocation so consumers never see the previous city's reading
  attributed to the new location during the fetch gap.
- location picker: invalidate in-flight geocode requests when the search
  box is cleared or the panel closes (stale responses could resurrect
  the dropdown), and return focus to the trigger button on selection so
  keyboard focus doesn't drop to <body> when the panel hides.
- seasonal-background: sampleField now writes to a reused output slot
  instead of allocating an array per particle per frame.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Mn7fa3Z4bpbSAj4edBnjXA

Files changed (4)

frontend/client/ts/components/weather-location-picker.ts +8 −1
frontend/client/ts/effects/seasonal-background.ts +18 −9
frontend/client/ts/effects/snow-gl.ts +7 −1
frontend/client/ts/effects/weather-service.ts +4 −0