← back to Robet Site
loop ledger: round2 item (4) done + deployed
967b466056724ea171439e75662c6c4636cfb384 · 2026-06-29 23:59:41 -0700 · Steve
Files touched
Diff
commit 967b466056724ea171439e75662c6c4636cfb384
Author: Steve <steve@designerwallcoverings.com>
Date: Mon Jun 29 23:59:41 2026 -0700
loop ledger: round2 item (4) done + deployed
---
OVERNIGHT-LOOP.md | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/OVERNIGHT-LOOP.md b/OVERNIGHT-LOOP.md
index 441f91e..79b16bb 100644
--- a/OVERNIGHT-LOOP.md
+++ b/OVERNIGHT-LOOP.md
@@ -41,7 +41,7 @@ _Note: app + nginx both set X-Frame-Options/X-Content-Type (harmless duplicate);
12. [x] (5) Contact form ARIA live-region (announce success/error to screen readers)
13. [x] (3) Static-asset cache-control + ETag (perf)
14. [x] (2) JSON-LD structured data (Person/booking action) for SEO
-15. [ ] (4) PWA-lite — web manifest + apple-touch-icon PNG fallback
+15. [x] (4) PWA-lite — web manifest + apple-touch-icon PNG fallback
16. [ ] (6) Booking-embed loading skeleton + better fallback timing
17. [ ] (8) Trim duplicate nginx/app headers (prod nginx edit)
| 10 | (7) server robustness | try/catch on writes (graceful 500), global JSON error handler, process guards; 8/8 tests + smoke PASS | 4b3c114 | ✅ |
@@ -49,3 +49,4 @@ _Note: app + nginx both set X-Frame-Options/X-Content-Type (harmless duplicate);
| 12 | (5) contact ARIA live | formMsg+admin msg role=status aria-live=polite; submit announces; 0 JS errs; 8/8 + smoke PASS | b3a76e0 | ✅ |
| 13 | (3) cache + ETag | images max-age=86400, html/css/js no-cache; ETag→304 verified local+prod; 8/8 + smoke PASS | 65be242 | ✅ |
| 14 | (2) JSON-LD | Person + ScheduleAction→booking URL, valid JSON, 0 CSP errors, +validity test (9/9) + smoke PASS | 19f4d34 | ✅ |
+| 15 | (4) PWA-lite | manifest (200 application/manifest+json) + 180/192/512 icons + apple-touch-icon, links present, 0 CSP errs; 9/9 + smoke PASS | ab5c2bb | ✅ |
← ab5c2bb round2 item (4): PWA-lite — site.webmanifest (standalone, br
·
back to Robet Site
·
auto-save: 2026-06-30T00:26:45 (2 files) — public/app.js pub 6e8cd06 →