Rituals views: wishes (list row, card, detail, timeline, compose) #180

Open
opened 2026-10-04 20:20:33 +00:00 by peterswimm · 0 comments
Owner

Part of #177. Revised: this was "wish compose wizard". It is now the pilot for the view-per-entity approach.

What it's for: the house-style views for a wish, rendered from the wish entity plus its event history. Every client uses these unless the person has a lens of their own.

Views to design

  • List row: for inbox and queue lists. Title, status, priority, age, and an attention signal (blocked, waiting on you).
  • Card: for boards and feeds.
  • Detail: the 7 SPELWork answers, requirements, dependencies, linked issues and current session.
  • Timeline entry: one per event type. The current events are wish.created, status_changed, context_patched, activated, priority_set, dependency_declared, session_started, session_closed, progress_updated and closed.
  • Compose: creating a wish is the create command form (#181/#178), with the "guessed from your title" preview and a quick-capture variant.

Today

macOS WishWizard.swift has 7 steps and Flutter wish_entry_screen.dart has 14. The macOS inbox can only mark a wish done. ritual wish browse is a terminal list.

Acceptance criteria

  • All four views specified, with the event fields each one binds to.
  • A timeline entry for each event type listed above.
  • Each block marked sealed or fungible (for #189, lens guardrails).
  • Compact layout and CLI rendering.
Part of #177. **Revised:** this was "wish compose wizard". It is now the pilot for the view-per-entity approach. **What it's for:** the house-style views for a wish, rendered from the wish entity plus its event history. Every client uses these unless the person has a lens of their own. ## Views to design - **List row**: for inbox and queue lists. Title, status, priority, age, and an attention signal (blocked, waiting on you). - **Card**: for boards and feeds. - **Detail**: the 7 SPELWork answers, requirements, dependencies, linked issues and current session. - **Timeline entry**: one per event type. The current events are `wish.created`, `status_changed`, `context_patched`, `activated`, `priority_set`, `dependency_declared`, `session_started`, `session_closed`, `progress_updated` and `closed`. - **Compose**: creating a wish is the `create` command form (#181/#178), with the "guessed from your title" preview and a quick-capture variant. ## Today macOS [`WishWizard.swift`](https://git.toilville.dev/toilville/toilville_rituals/src/branch/main/apps/rituals-macos/Views/WishWizard.swift) has 7 steps and Flutter [`wish_entry_screen.dart`](https://git.toilville.dev/toilville/toilville_rituals/src/branch/main/lib/ui/screens/wish_entry_screen.dart) has 14. The macOS inbox can only mark a wish done. `ritual wish browse` is a terminal list. ## Acceptance criteria - [ ] All four views specified, with the event fields each one binds to. - [ ] A timeline entry for each event type listed above. - [ ] Each block marked **sealed** or **fungible** (for #189, lens guardrails). - [ ] Compact layout and CLI rendering.
peterswimm changed title from Rituals pattern: wish compose and hydrate (the 7 questions) to Rituals views: wishes (list row, card, detail, timeline, compose) 2026-10-04 20:34:13 +00:00
Sign in to join this conversation.
No description provided.