cocottetech/@platform/codebase/@features/ai-copilot/docs/settings-root.screen.md
natalie 1b719e1fd7 chore(bootstrap): initial V4 commit
Clean successor to V3 (forge: lilith/atlilith). Seeded from local Mac
working tree at ~/Code/@projects/@cocottetech/. node_modules and build
artifacts excluded via .gitignore.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 08:11:41 -07:00

6.2 KiB
Raw Blame History

settings-root.screen

The settings overlay landing — 8 categories grid + search + quick toggles + recently-changed audit. Implements brief S. Reached from chat-home top-bar overflow → "Settings" or voice ("settings"). Voice register: working throughout (settings are deliberate operations).

Layout (full-screen overlay)

┌─────────────────────────────────────────────────┐
│ ◄ Chat                                  Done    │ 56pt — top bar
├─────────────────────────────────────────────────┤
│                                                 │
│ 🔍  Search settings                              │   global-search scoped to settings
│                                                 │
│ ─── Quick ───                                   │   1-tap from anywhere
│ [ Pause all auto-actions ]  [ Vacation mode ]   │
│ [ Quiet hours: 2208 ▼ ]    [ 🛡 Kill switch ]  │   K kill-switch entry
│                                                 │
│ ─── Categories ───                              │
│ ┌──────────────┬──────────────┐                 │
│ │ S1 Account   │ S2 Voice & in│                 │
│ │  4 settings  │  6 settings  │                 │
│ ├──────────────┼──────────────┤                 │
│ │ S3 Notifs    │ S4 Specialis │                 │
│ │  11 settings │  12 settings │                 │
│ ├──────────────┼──────────────┤                 │
│ │ S5 Surfaces  │ S6 Safety    │                 │
│ │  24 settings │  9 settings  │                 │
│ ├──────────────┼──────────────┤                 │
│ │ S7 Tours     │ S8 Privacy   │                 │
│ │  7 settings  │  8 settings  │                 │
│ └──────────────┴──────────────┘                 │
│                                                 │
│ ─── Recently changed ───                        │
│ • Quiet hours → 2208 (you, 2d ago)             │
│ • content-x posture → draft (Cocotte, 1w)       │
│ • Tryst cadence → 4h (you, 2w)                  │
│ [ See all in audit → ]                          │
│                                                 │
│ ─── Advanced ───                                │   gate
│ [ Show advanced toggles ]                       │
│                                                 │
└─────────────────────────────────────────────────┘

Components

Component Notes
Top bar Back + Done.
Search bar Reuses global-search component scoped to settings type. Operators work.
Quick toggles 4 one-tap actions. Kill switch is the rightmost; styled per brief K §K5.
Categories grid 8 cards (S1S8). Each shows category name + setting count. Tap → category drawer.
Recently changed Last 3 audit-shadow entries showing setting + new value + who/when. Builds trust (per brief I append-only).
Advanced gate Hides power-user toggles by default. Tap reveals (per S-Q2 open question).

States

  1. Default — full layout.
  2. Quick toggle in progress (e.g. tap "Pause all") — toggle button shows in-flight spinner; chat-home banner reflects pause once committed.
  3. Vacation mode on — Quick button shows "Resume" instead of "Vacation mode"; banner across top: "Vacation through {date}."
  4. Kill switch armed — Quick button red; tap routes to kill-switch.flow.md.
  5. Advanced shown — extra cards appear below the 8 base categories (e.g. "Developer," "Diagnostics").
  6. Search active — categories collapse; search results stream below input.
  7. Recently-changed empty — section omitted.
  8. Offline — Quick toggles disabled with banner: "Some settings need a connection. Try again when you're back online."
  9. Conflict warning (e.g. user enables "auto-bumps everywhere" while vacation mode is on) — inline warning chip on the conflicting card.
  10. VoiceOver — category grid read row-by-row; recently-changed read as list; quick toggles read as button group.

Interactions

  • Tap a category card → settings-{category}.screen.md (per-category drawer; not all yet specced).
  • Tap a recently-changed row → audit-row-detail.screen.md.
  • Tap "Pause all auto-actions" → confirms (medium-stakes), commits, records audit row.
  • Tap "Vacation mode" → vacation-mode setup sheet (asks "through when?").
  • Tap "Quiet hours" picker → time-range editor.
  • Tap kill switch → kill-switch.flow.md.
  • Swipe-down → dismiss.

Edge cases

  • All settings at defaults (first day) — Recently-changed shows "No changes yet — Cocotte's running on defaults."
  • Audit-shadow lookup fails — section shows "Couldn't load recent changes" but rest of settings remains functional.
  • Setting referenced from a brief that doesn't exist yet (forward-looking placeholder) — category card shows count but the missing setting is hidden in the drawer.
  • Reduced motion — grid stack vertically.
  • Dynamic Type XXL — 2-column grid becomes 1-column.

Out of scope

  • Per-category drawer interiors (one screen per category, written as needed).
  • Setting export / import (P3+).
  • Multi-account settings (single-user-Quinn at P0).