No description
- location /tablet-checkin/api/devices/ (trailing slash, proxy_pass) made nginx auto-redirect the bare /api/devices list endpoint, and since this inner nginx sits behind NPM's TLS termination it built that redirect as http:// even over an https:// request — browsers block that as mixed content, surfacing as a bare 'Failed to fetch' on the Devices admin page with no other clue. Dropped the trailing slash on both the location pattern and proxy_pass target; still correctly prefix-matches every /devices/:id/... sub-route, no more auto-redirect at all. - pushNavigate/send() now only reports delivered:true if a write demonstrably succeeded, not just because a stream entry exists for the device — a stale-but-not-formally-closed connection can silently accept a write that never reaches the far end. - pushBookingToDevice can now self-heal a device stuck 'busy' with no live session behind it (session already expired unused) rather than requiring an admin to manually click Reset first. Real failure mode hit testing on a physical tablet 2026-09-01: two pushes worked end-to-end, a third's navigate event never reached the tablet (SSE connection silently died during an idle gap), leaving the device stuck with no way to recover except a manual admin reset. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
|---|---|---|
| backend | ||
| frontend | ||
| .gitignore | ||
| docker-compose.yml | ||
| seed-app.js | ||