# Task briefs Each file here is a self-contained brief for a sub-session (typically Sonnet) to execute one chunk of work. Briefs assume the executor has read [`/CLAUDE.md`](../../CLAUDE.md) — do not restate the stack or architecture there. ## How to use a brief 1. Read `/CLAUDE.md` first. 2. Read the task file end-to-end. 3. Stop when **all** acceptance criteria pass. Do not bolt on extra scope. 4. If a brief turns out to be wrong, update the brief in the same commit as the code. ## Brief format Every task file has these sections: - **Goal** — one sentence. - **Why** — what this unlocks; how it fits the larger plan. - **Depends on** — task numbers that must be done first. - **Scope** — bullet list of what to build. - **Out of scope** — explicit non-goals to prevent drift. - **Acceptance criteria** — checkable list. Done = all checked. - **Notes** — gotchas, recommended libs, sketches. ## Phase index ### Phase 1 — Scaffold - [01 — Repo init & tooling](01-repo-init.md) - [02 — Next.js app skeleton](02-nextjs-skeleton.md) - [03 — Drizzle + Postgres setup](03-drizzle-postgres.md) - [04 — Module loader & registry](04-module-loader.md) - [05 — Compose stack & Caddy](05-compose-caddy.md) - [06 — Authentik install + OIDC integration](06-authentik-oidc.md) - [07 — Household seeding & session](07-household-seed.md) - [08 — Theming infrastructure (multi-theme + dark mode)](08-theming.md) - [09 — Pre-deploy checklist (recurring)](09-pre-deploy-checklist.md) ### Phase 2 — Core modules - [10 — Calendar module](10-calendar-module.md) - [11 — Lists module (shopping + task)](11-lists-module.md) - [12 — Notes module](12-notes-module.md) ### Phase 3 — Dashboard & UX - [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 - [30 — Share-link service](30-share-links.md) - [31 — Public share viewer (`/s/`)](31-share-viewer.md) ### Phase 5 — Notifications & reminders - [40 — Web Push (VAPID)](40-web-push.md) - [41 — Reminders engine](41-reminders.md) - [42 — Notification bus + ntfy adapter](42-notification-bus.md) ### Phase 6 — PWA polish - [50 — Manifest, icons, install prompt](50-pwa-shell.md) - [51 — Offline shell + service worker caching](51-offline.md) ### Phase 7 — Hardening - [60 — Postgres backups (pg_dump cron)](60-backups.md) - [61 — Rate limiting on share links](61-rate-limit.md) - [62 — Structured logging](62-logging.md) ### Phase 8 — Garden module - [70 — Garden infrastructure (MinIO + upload route + schema)](70-garden-infrastructure.md) - [71 — Garden containers](71-garden-containers.md) - [72 — Garden plants](72-garden-plants.md) - [73 — Garden care tracking](73-garden-care-tracking.md) - [74 — Garden integrations](74-garden-integrations.md) - [75 — Garden dashboard](75-garden-dashboard.md) ### Phase 9 — Post-v0.1 Batch order (bugs → API → editor/notes → journal → agent). Design: [`docs/superpowers/specs/2026-07-03-backlog-triage-design.md`](../superpowers/specs/2026-07-03-backlog-triage-design.md). Issue map: [`docs/issues-map.md`](../issues-map.md). - [80 — Quick-add create UI](80-quick-add-create-ui.md) - [81 — Dashboard edit live widgets](81-dashboard-edit-live-widgets.md) - [82 — Garden plant count](82-garden-plant-count.md) - [83 — Bang edit/delete](83-bang-edit-delete.md) - [84 — Back navigation](84-back-navigation.md) - [85 — Rich-text notes overhaul](85-rich-text-notes.md) - [86 — Journal module](86-journal-module.md) - [87 — API surface](87-api-surface.md) - [88 — LLM agent chat](88-llm-agent-chat.md)