On some dev installs the watchface starts on No data :( and stays there until I open settings and force a weather refetch.
The mismatch seems to be:
- the watch UI decides whether weather exists from persisted C-side state (
forecast_start)
- PKJS decides whether to auto-fetch only from phone-side
localStorage (lastFetchSuccess)
So the phone can think weather is still fresh while the watch has no valid forecast data, and startup/tick fetches get skipped.
Smallest fix idea:
- have the watch send a startup ping saying whether it has valid forecast data
- if not, PKJS should force a fetch immediately
- keep the current 30-minute freshness gate when the watch already has data
Relevant code:
src/c/layers/loading_layer.c:36-42
src/pkjs/index.js:558-586
src/c/appendix/app_message.c:127-135
On some dev installs the watchface starts on No data :( and stays there until I open settings and force a weather refetch.
The mismatch seems to be:
forecast_start)localStorage(lastFetchSuccess)So the phone can think weather is still fresh while the watch has no valid forecast data, and startup/tick fetches get skipped.
Smallest fix idea:
Relevant code:
src/c/layers/loading_layer.c:36-42src/pkjs/index.js:558-586src/c/appendix/app_message.c:127-135