Calendars as entities, uniform widget contract, multi-dashboard tasks

Architecture refinements before module work begins:

- Calendars become first-class entities (mirror of lists). Each
  calendar has its own visibility (private | household) and is
  independently shareable. Updated CLAUDE.md data model and task 10.

- Drop the singleton/parameterized split for dashboard widgets. Every
  widget declares a configSchema + defaultConfig + resolveConfigOptions
  and every placement is an independent instance — same widgetId can
  appear multiple times on one dashboard pointed at different things.
  Updated task 04 contract; tasks 11/12 widget sections aligned.

- Add tasks 25 (multiple dashboards per user) and 26 (customizable
  layout + widget configuration). Replaces the previously-considered
  three-task plan with a cleaner two-task split that the uniform
  contract enables. Phase 3 index updated; STATUS records the rationale.

- Task 20 reframed as a single-dashboard MVP that exercises the new
  contract end-to-end before the customization layer lands.
This commit is contained in:
ginnoir
2026-05-06 01:14:49 -05:00
parent 35a14b81c9
commit 09d6adbf18
10 changed files with 370 additions and 64 deletions
+3 -1
View File
@@ -42,9 +42,11 @@ Every task file has these sections:
### Phase 3 — Dashboard & UX
- [20 — Dashboard composition](20-dashboard.md)
- [20 — Dashboard composition (single-dashboard MVP)](20-dashboard.md)
- [21 — Quick-add registry](21-quick-add.md)
- [22 — Activity log](22-activity-log.md)
- [25 — Multiple dashboards per user](25-multiple-dashboards.md)
- [26 — Customizable layout + widget configuration](26-customizable-layout.md)
### Phase 4 — Sharing