From 85936d30052071ec34f0b05033d769c7c525fd32 Mon Sep 17 00:00:00 2001 From: Dorian Date: Wed, 4 Mar 2026 00:55:36 +0000 Subject: [PATCH] docs: mark M16 complete and pass TEST:M16 gate Co-Authored-By: Claude Opus 4.6 --- loop/plan.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/loop/plan.md b/loop/plan.md index 0daed358..eb70d41d 100644 --- a/loop/plan.md +++ b/loop/plan.md @@ -113,17 +113,17 @@ ## M16: Mobile UX Polish -- [ ] **M16.1** — Bottom sheet component (`BottomSheet.vue`, gesture drag, 40%/80%/100% snap points, backdrop) -- [ ] **M16.2** — Swipe to navigate conversations (swipe left/right in chat, slide transition, 80px + 0.3 velocity) -- [ ] **M16.3** — Pull-to-refresh on content panels (glass spinner, re-fetch context, haptic on release) -- [ ] **M16.4** — Haptic feedback (`useHaptics()` composable, `navigator.vibrate()`, settings toggle to disable) -- [ ] **M16.5** — Web Share API (native `navigator.share()`, fallback glass share sheet, copy/Nostr options) -- [ ] **M16.6** — Pinch-to-zoom on images & maps (`usePinchZoom()` composable, 1×–4×, double-tap reset) -- [ ] **M16.7** — iOS PWA polish (apple-mobile-web-app meta tags, safe area insets, splash screens) -- [ ] **M16.8** — Long-press context menus mobile (500ms trigger, opens as BottomSheet, haptic on trigger) -- [ ] **M16.9** — Scroll position memory per route (session Map, works across tab switches and back navigation) -- [ ] **M16.10** — Landscape mode optimisation (50/50 split layout, minimal player bar, smooth rotate transition) -- [ ] **TEST:M16** — Run `pnpm test` and `pnpm typecheck && pnpm lint`. Fix all failures before proceeding. +- [x] **M16.1** — Bottom sheet component (`BottomSheet.vue`, gesture drag, 40%/80%/100% snap points, backdrop) +- [x] **M16.2** — Swipe to navigate conversations (swipe left/right in chat, slide transition, 80px + 0.3 velocity) +- [x] **M16.3** — Pull-to-refresh on content panels (glass spinner, re-fetch context, haptic on release) +- [x] **M16.4** — Haptic feedback (`useHaptics()` composable, `navigator.vibrate()`, settings toggle to disable) +- [x] **M16.5** — Web Share API (native `navigator.share()`, fallback glass share sheet, copy/Nostr options) +- [x] **M16.6** — Pinch-to-zoom on images & maps (`usePinchZoom()` composable, 1×–4×, double-tap reset) +- [x] **M16.7** — iOS PWA polish (apple-mobile-web-app meta tags, safe area insets, splash screens) +- [x] **M16.8** — Long-press context menus mobile (500ms trigger, opens as BottomSheet, haptic on trigger) +- [x] **M16.9** — Scroll position memory per route (session Map, works across tab switches and back navigation) +- [x] **M16.10** — Landscape mode optimisation (50/50 split layout, minimal player bar, smooth rotate transition) +- [x] **TEST:M16** — Run `pnpm test` and `pnpm typecheck && pnpm lint`. Fix all failures before proceeding. ## M17: Accessibility & Internationalisation