caterium-app/docs/releases/2026-09-18-SYNC-DEMO-IMAGES.md

1.9 KiB

Login, synchronization and trial image loading

Release cache: v94-20260918-sync-demo-images-2.

The previous transport aborted every request, including saves, after seven seconds. A slow response could therefore surface as AbortError: signal is aborted without reason. Reads had only four seconds on the fallback route.

  • Reads and password login now allow 12 seconds through the proxy and 15 seconds through the same Supabase project's direct route. A successful fallback is preferred for 60 seconds, avoiding another wait on the failing route.
  • Writes have a separate 35-second limit, longer than the proxy's 30-second upstream limit. A write is never replayed by the transport. The outer cloud operation deadline is 45 seconds so it cannot overtake a normal save.
  • A transient sync failure retries after 2, 5 and 15 seconds, at most three times. Each retry fetches the server revision and merges again, including when a save committed but its response was lost. After exhaustion the UI shows a readable connection error and keeps local changes.
  • A late sync/pull response is ignored after account/workspace changes or local sign-out. Caller cancellation is preserved and does not start a fallback.
  • Ten trial photos now use 1024px WebP assets: 1,343,650 bytes instead of 22,930,358 bytes (17.1 times smaller). The original images remain available for rollback. Existing catalog/offer PNG references resolve to the optimized files; customer photos and database records are not rewritten.
  • The service worker caches same-origin app assets only, excluding API routes.

Validation covers delayed reads/saves, route fallback, cancellation, an uncertain commit without a duplicate save, stale account responses, the actual SDK login, all ten image dimensions and the 1.5 MB combined budget. Full application checks also cover trial TTK/stock/procurement and all 21 proposal designs.