thermograph/static
Emi Griffith dba45a1942 Push: surface delivery failures (no longer a silent success) (#157)
A failed web push (e.g. VAPID key mismatch -> 401/403) was swallowed: /push/test still
returned 202 and the UI showed 'Sent', while the only trace was a journald WARNING.
Now: push.send logs failures to the errors JSONL (phase=push) so they show up like other
errors; /push/test returns a 'failed' count; and the 'Send test' button reports 'No
device' / 'Sent' / 'Failed' from the real result. Document the VAPID env vars (missing
from thermograph.env.example) and how to pin/diagnose them.
2026-07-17 00:12:14 +00:00
..
account.js Give climate/city/record pages full header parity + working °F/°C (#124) 2026-07-16 17:48:30 +00:00
app.js Account system with weather-notification subscriptions (#89) 2026-07-15 18:46:46 +00:00
cache.js Warm neighbor cells server-side (/cell?neighbors=1) (#51) 2026-07-11 20:47:31 +00:00
calendar.html Add an Alerts page to the nav with a "what are alerts" explainer (#153) 2026-07-16 16:41:24 -07:00
calendar.js Account system with weather-notification subscriptions (#89) 2026-07-15 18:46:46 +00:00
chart.js Extract the chart library and the chunked streaming fetch (#49) 2026-07-11 20:33:06 +00:00
climate.js Give climate/city/record pages full header parity + working °F/°C (#124) 2026-07-16 17:48:30 +00:00
compare.html Add an Alerts page to the nav with a "what are alerts" explainer (#153) 2026-07-16 16:41:24 -07:00
compare.js Account system with weather-notification subscriptions (#89) 2026-07-15 18:46:46 +00:00
day.html Add an Alerts page to the nav with a "what are alerts" explainer (#153) 2026-07-16 16:41:24 -07:00
day.js Account system with weather-notification subscriptions (#89) 2026-07-15 18:46:46 +00:00
filtersheet.js Compare basis inline; synced inline + sheet metric selector (both pages) (#82) 2026-07-12 07:45:12 +00:00
google03ab95daa090e8d9.html Add Google Search Console site-verification file (#128) 2026-07-16 18:56:42 +00:00
index.html Add an Alerts page to the nav with a "what are alerts" explainer (#153) 2026-07-16 16:41:24 -07:00
legend.html Add an Alerts page to the nav with a "what are alerts" explainer (#153) 2026-07-16 16:41:24 -07:00
logo-192.png Add PWA + Web Push delivery for weather alerts (#95) 2026-07-15 23:21:06 +00:00
logo-maskable-512.png Add PWA + Web Push delivery for weather alerts (#95) 2026-07-15 23:21:06 +00:00
logo.png Link previews: Open Graph tags + logo for shared URLs (#35) 2026-07-11 15:59:14 +00:00
logo.svg Link previews: Open Graph tags + logo for shared URLs (#35) 2026-07-11 15:59:14 +00:00
manifest.webmanifest Add PWA + Web Push delivery for weather alerts (#95) 2026-07-15 23:21:06 +00:00
mappicker.js Convert the frontend to ES modules; split nav.js by concern (#48) 2026-07-11 20:28:33 +00:00
nav.js Add PWA + Web Push delivery for weather alerts (#95) 2026-07-15 23:21:06 +00:00
package.json Convert the frontend to ES modules; split nav.js by concern (#48) 2026-07-11 20:28:33 +00:00
push-client.js Add PWA + Web Push delivery for weather alerts (#95) 2026-07-15 23:21:06 +00:00
shared.js Distribution bars: split the in-bar range into Max/Min rows (#84) 2026-07-12 18:32:38 +00:00
style.css Collapse the header to the hamburger on tablets; drop tagline earlier (#155) 2026-07-16 23:51:55 +00:00
subscriptions.html Add an Alerts page to the nav with a "what are alerts" explainer (#153) 2026-07-16 16:41:24 -07:00
subscriptions.js Push: surface delivery failures (no longer a silent success) (#157) 2026-07-17 00:12:14 +00:00
sw.js Add PWA + Web Push delivery for weather alerts (#95) 2026-07-15 23:21:06 +00:00
units.js Give climate/city/record pages full header parity + working °F/°C (#124) 2026-07-16 17:48:30 +00:00