docs: v0.1.0:103 deployed + verified (reminders require a date, mobile + desktop)

This commit is contained in:
Keysat
2026-06-20 16:53:15 -05:00
parent d6250f74d0
commit 5b564d8042
+3 -3
View File
@@ -108,10 +108,10 @@ Subsystem rules live in `docs/guides/` and lazy-load in Claude Code via `.claude
## Current state
_**Box live at v0.1.0:102 (deployed + verified 2026-06-20); v0.1.0:103 built + committed, install pending.** Clean migration chain (…→102, all no-op/frontend-only), server up on :8080. This session = a **mobile-UX feedback batch from Grant's device testing** (101 #15, 102 #6 bell) + **103 reminders-require-a-date**. **The fundraising grid + email capture is the canonical system of record.** History: git log + `start9/0.4/startos/versions/`._
_**Box live at v0.1.0:103 (deployed + verified 2026-06-20)** — clean migration chain (…→103, all no-op/frontend-only), server up on :8080. This session = a **mobile-UX feedback batch from Grant's device testing** (101 #15, 102 #6 email bell) + **103 reminders-require-a-date** (mobile + desktop). **The fundraising grid + email capture is the canonical system of record.** History: git log + `start9/0.4/startos/versions/`._
- **Mobile UX batch (Grant device feedback) — BUILT + LIVE (v0.1.0:101102, 2026-06-20), on-device pass pending.** Six items (durable detail in the Design bullet → "Post-8 mobile-feedback primitives"): [1] ✕-clear on search/picker fields (`ClearableInput`); [2] tappable Grid contact pills (name→Contacts deep-link, email→mailto); [3] grid search already matched contact names — verified, no change; [4a] full-height Pipeline swipe area with bottom-pinned dots; [4b] editable pipeline `expected_amount` (add-to-pipeline + card detail, `PUT /api/opportunities/{id}`); [5] bottom sheets lift above the keyboard (visualViewport); [6] **`MobileEmailBell`** — admin-only email-approval bell, a third surface over `email_activity_proposals` that auto-syncs with the web panel + Matrix room.
- **Reminders require a due date — BUILT + COMMITTED (v0.1.0:103), install pending.** **Every** create surface (mobile add-investor / standalone Reminders / Grid-detail, **and desktop** Reminders page + grid modal) pre-fills the date to +1 week (editable) and blocks an empty save (`reminderDefaultDue()`); edit paths pre-fill it for legacy date-less reminders too. Detail in the Design bullet.
- **Reminders require a due date — BUILT + LIVE (v0.1.0:103, deployed + verified 2026-06-20).** **Every** create surface (mobile add-investor / standalone Reminders / Grid-detail, **and desktop** Reminders page + grid modal) pre-fills the date to +1 week (editable) and blocks an empty save (`reminderDefaultDue()`); edit paths pre-fill it for legacy date-less reminders too. Detail in the Design bullet.
- **Verification: render-smoke green** (build-gated — JSX transforms + app mounts), reviewer-agent **APPROVE, no blockers** across all batches + a holistic pass (nits applied: ClearableInput conditional padding, bell `busyRef` double-submit guard, disabled-button dimming, reminder edit-path default-fill). All new work is **frontend-only — no schema / migration / dependency change**, so backend is untouched (43/43 backend tests still green from v100). New UI behavior is **live-smoke / on-device only** (jsdom can't drive touch/keyboard/mailto).
- **Next:** (A) **Install v0.1.0:103 to the box** (102 is live; 103 built + committed, not yet installed). (B) On-device gate — Grant: the six v101102 items on the phone (✕ clears; contact name→contact & email→mail app; Pipeline swipe-anywhere + dots-at-bottom; amount round-trips; keyboard-lifted picker; **bell end-to-end** approve→Matrix clears) + the v103 date requirement (mobile + desktop). (C) Carried from v100: #7 real-card spot-checks + the standing mobile light/dark + PWA-install gate.
- **Next (on-device gate — Grant):** (A) the six v101102 items on the phone (✕ clears; contact name→contact & email→mail app; Pipeline swipe-anywhere + dots-at-bottom; amount round-trips; keyboard-lifted picker; **bell end-to-end** approve→Matrix clears) + the v103 date requirement (mobile + desktop). (B) Carried from v100: #7 real-card spot-checks + the standing mobile light/dark + PWA-install gate.
- **Open / risks:** `.pipeline-screen { height:100% }` leans on the `.content` flex chain for a definite height — confirm the swipe area fills + scrolls on Grant's iOS (resolves on iOS 16+; no speculative patch applied). Bell + amount-edit are admin/live-smoke only. Carried: **Claude/Architect path unverified live on the box**; vision OCR can misread a small-in-frame card (`mara.com→marac.com`, temp 0); phone/LinkedIn land on the contact record, not the grid pill; PWA iOS status bar fixed `black` in light theme; doc drift — `crm-overview.md`/`EVALUATION.md` still call `lp_profiles` live.