docs(06): capture phase context
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
# Phase 6: UX Polish - Discussion Log
|
||||
|
||||
> **Audit trail only.** Do not use as input to planning, research, or execution agents.
|
||||
> Decisions are captured in CONTEXT.md — this log preserves the alternatives considered.
|
||||
|
||||
**Date:** 2026-06-10
|
||||
**Phase:** 06-ux-polish
|
||||
**Areas discussed:** Backlog scope (999.4/999.5), All-day visual, Event-form behavior (999.7/999.8), Recurring-series edit (999.9)
|
||||
|
||||
---
|
||||
|
||||
## Backlog scope — pull in 999.4 / 999.5?
|
||||
|
||||
| Option | Description | Selected |
|
||||
|--------|-------------|----------|
|
||||
| Neither — keep 6-item polish scope | Phase 6 stays 999.2/3/6/7/8/9; 999.4/999.5 stay backlog | ✓ |
|
||||
| Pull in 999.4 (reminders) | Add VALARM selector | |
|
||||
| Pull in 999.5 (provider setup) | Add first-login app-password onboarding | |
|
||||
|
||||
**User's choice:** Keep Phase 6 as polish; move 999.4 and 999.5 to a new milestone 1.1 and start it via the proper GSD milestone flow.
|
||||
**Notes:** User wants the deferred items parked under milestone 1.1 explicitly, kicked off with `/gsd-new-milestone`. Sequencing (start 1.1 before vs after v1.0 ships) raised as a follow-up.
|
||||
|
||||
---
|
||||
|
||||
## All-day visual treatment (999.6)
|
||||
|
||||
| Option | Description | Selected |
|
||||
|--------|-------------|----------|
|
||||
| Full-width pill/bar | Google/Apple-style all-day row bar | |
|
||||
| Background band / tint | Subtle full-day band | |
|
||||
| Distinct shape/border | Border/icon marker only | |
|
||||
| Let UI-phase decide | Capture intent, defer treatment to /gsd-ui-phase | ✓ |
|
||||
|
||||
**User's choice:** Let UI-phase decide.
|
||||
**Notes:** Intent locked (must be distinguishable at a glance); concrete treatment delegated to /gsd-ui-phase.
|
||||
|
||||
---
|
||||
|
||||
## Event-form behavior (999.7 end-tracking + 999.8 recurrence bound)
|
||||
|
||||
| Option | Description | Selected |
|
||||
|--------|-------------|----------|
|
||||
| Preserve duration on start change | End auto-advances to keep duration | ✓ |
|
||||
| Bound by "repeat until <date>" | RRULE UNTIL | ✓ (primary) |
|
||||
| Bound by "for N occurrences" | RRULE COUNT | (acceptable alongside/alt) |
|
||||
|
||||
**User's choice:** Preserve duration; recurrence bound in scope (UNTIL primary, COUNT acceptable).
|
||||
**Notes:** IMPORTANT correction — end-not-tracking-start is NOT recurrence-specific; it affects every event (one-time, single-day, timed). Floor requirement: end must at least snap to the same day as the new start; user extends forward for multi-day. Off-by-one portion of 999.7 already fixed (commit f645644).
|
||||
|
||||
---
|
||||
|
||||
## Recurring-series edit (999.9)
|
||||
|
||||
| Option | Description | Selected |
|
||||
|--------|-------------|----------|
|
||||
| Whole series, with confirm | Edit master VEVENT after a confirmation | |
|
||||
| Whole series, no extra confirm | Edit series with helper note only | |
|
||||
| Let UI-phase decide the prompt UX | Lock whole-series behavior, defer prompt UX | ✓ |
|
||||
|
||||
**User's choice:** Let UI-phase decide the prompt UX.
|
||||
**Notes:** Behavior locked (whole-series edit of master VEVENT). Per-occurrence / "this and following" stay deferred to v1.x. Confirmation/prompt wording delegated to /gsd-ui-phase.
|
||||
|
||||
---
|
||||
|
||||
## Visual feel & sync feedback (user-added, post-questions)
|
||||
|
||||
**User's input (verbatim intent):** "For the UI polish, I want the whole thing to feel more distinct and modern. You can invoke the claude frontend-design skill for this to make it feel better. I want the sync indicators to actually spin too."
|
||||
|
||||
- Modern/distinct visual refresh → /gsd-ui-phase to invoke the `frontend-design` skill (D-12). Flagged as widening "polish" toward a light refresh; kept to elevating existing surfaces, not a ground-up redesign.
|
||||
- Sync indicators must actually spin (D-13) — likely root cause: `@keyframes spin` defined locally in `PushPermissionPrompt.tsx`, not global, so `SyncStateToast` / `LiveSyncIndicator` don't animate.
|
||||
|
||||
## Claude's Discretion
|
||||
|
||||
- All-day visual treatment (999.6) — delegated to /gsd-ui-phase
|
||||
- Series-edit confirmation/prompt UX (999.9) — delegated to /gsd-ui-phase
|
||||
- Splash/interstitial copy (999.2/999.3) — open; starting points provided
|
||||
- Recurrence bound exact control set (UNTIL only vs +COUNT) — planning/UI call
|
||||
- In-flight-write preservation on session expiry (999.3) — nice-to-have, planner decides effort
|
||||
|
||||
## Deferred Ideas
|
||||
|
||||
- 999.4 (reminders/VALARM) → milestone 1.1
|
||||
- 999.5 (first-login provider setup) → milestone 1.1
|
||||
- 999.1 (provider abstraction) → backlog / 1.1 candidate
|
||||
- Per-occurrence & "this and following" recurring edits → v1.x
|
||||
Reference in New Issue
Block a user