Commit graph

11 commits

Author SHA1 Message Date
6f0da3c8aa feat(ui): wire Settings dialog to persisted OwnerSettings
Adds a getOwnerSettings read query to scheduler_core (previously only
an internal helper existed) and an updateOwnerSettings command on the
Flutter command controller, then builds a shared Settings dialog
surfacing timezone, day window, compact mode, and backlog staleness
thresholds. Both existing no-op entry points (sidebar nav item, top
bar button) now open the same dialog and persist edits through the
existing OwnerSettings/BacklogStalenessSettings backend.

Per the design spec (circuitforge-plans/focus-flow/superpowers/specs/
2026-07-07-settings-screen-design.md), the compact-mode toggle
persists but is disclosed in-UI as not yet affecting Today rendering,
since that wiring is separate scope (#11).

Closes: #16
2026-07-07 14:38:16 -07:00
c357b7d97d feat(ui): wire sidebar Backlog nav and modal Move-to-Backlog/Break-up actions
Some checks failed
CI / test (macos-latest) (push) Has been cancelled
CI / test (ubuntu-latest) (push) Has been cancelled
CI / test (windows-latest) (push) Has been cancelled
CI / package (macos-latest, macos) (push) Has been cancelled
CI / package (ubuntu-latest, linux) (push) Has been cancelled
CI / package (windows-latest, windows) (push) Has been cancelled
CI / test (macos-latest) (pull_request) Has been cancelled
CI / test (ubuntu-latest) (pull_request) Has been cancelled
CI / test (windows-latest) (pull_request) Has been cancelled
CI / package (macos-latest, macos) (pull_request) Has been cancelled
CI / package (ubuntu-latest, linux) (pull_request) Has been cancelled
CI / package (windows-latest, windows) (pull_request) Has been cancelled
Backend was already V1-complete for these paths (moveFlexibleToBacklog,
breakUpTask); this closes the UI-wiring gap identified in the V1
feature-complete audit.

- Add createBacklogController() to SchedulerAppComposition and implement it
  in PersistentSchedulerComposition (only the demo composition had one).
- Sidebar now switches the main content area between Today and Backlog via
  a real SidebarScreen enum instead of hardcoded onTap: () {} stubs.
- Task modal's "Backlog" quick-action reuses the existing onPushToBacklog
  wiring (same backend command as the Push menu's "Push to backlog").
- Add a break-up dialog (row-level title/priority/reward/duration per
  MVP-AC-11) and SchedulerCommandController.breakUpTask(), wired to the
  modal's "Break up" button.
- Fix a latent bug where the active sidebar nav item's key was hardcoded
  to nav-today-active regardless of which item was active.

Closes: Circuit-Forge/focus-flow#9
Closes: Circuit-Forge/focus-flow#12
Closes: Circuit-Forge/focus-flow#13
2026-07-06 01:46:59 -07:00
fd4fdd13d2 feat(scheduler): support timezone-aware commands and task removal 2026-07-04 22:16:02 -07:00
a24b64179a feat: add logging to entire project 2026-07-03 10:21:02 -07:00
4d373ce250 feat: add past task push menu 2026-07-02 12:39:05 -07:00
a47bdc67bb test: cover selected date persistence lifecycle 2026-07-02 08:27:11 -07:00
16c460db0a feat: add selected date read controller 2026-07-02 08:19:16 -07:00
0c1731003f feat: add timeline task context menu 2026-07-01 20:22:06 -07:00
ce8ebe1c1e feat: complete sqlite runtime persistence plan 2026-07-01 19:40:56 -07:00
ec19dd498d docs: expand dartdocs and add compliance hooks 2026-07-01 13:36:12 -07:00
cbefe201d3 refactor: split focused Flutter UI files 2026-07-01 12:17:02 -07:00