# Requirements Archive: v1.2 Polish & Task Management

**Archived:** 2026-04-03
**Status:** SHIPPED

For current requirements, see `.planning/REQUIREMENTS.md`.

---

# Requirements: HouseHoldKeaper

**Defined:** 2026-03-18
**Core Value:** Users can see what needs doing today, mark it done, and trust the app to schedule the next occurrence — without thinking about it.

## v1.2 Requirements

Requirements for milestone v1.2 Polish & Task Management. Each maps to roadmap phases.

### Task Delete

- [x] **DEL-01**: User can delete a task from the task edit form via a clearly visible delete action
- [x] **DEL-02**: Deleting a task that has never been completed removes it from the database entirely (hard delete)
- [x] **DEL-03**: Deleting a task that has been completed at least once deactivates it instead (soft delete) — task is hidden from all active views but preserved in the database for future statistics
- [x] **DEL-04**: User sees a confirmation before deleting/deactivating a task

### Task Creation UX

- [x] **TCX-01**: Frequency picker presents an intuitive "Every [N] [unit]" interface instead of a flat grid of preset chips
- [x] **TCX-02**: Common frequencies (daily, weekly, biweekly, monthly) are available as quick-select shortcuts without scrolling through all options
- [x] **TCX-03**: User can set any arbitrary interval (e.g., every 5 days, every 3 weeks, every 2 months) without needing to select "Custom" first
- [x] **TCX-04**: The frequency picker preserves all existing interval types and scheduling behavior (calendar-anchored monthly/quarterly/yearly with anchor memory)

### Cleanup

- [x] **CLN-01**: Dead code from v1.0 daily plan (daily_plan_providers.dart, daily_plan_task_row.dart, progress_card.dart) is removed without breaking notification service (DailyPlanDao must be preserved)

### Tasks Management (Phase 11)

- [x] **TM-01**: User can check off (complete) a task on any calendar day — checkboxes are never disabled for future dates
- [x] **TM-02**: When completing a task on a non-due day, nextDueDate is recalculated from today (not from the original due date)
- [x] **TM-03**: Recurring tasks are pre-populated on all applicable days within their current interval window (e.g., a weekly task shows every day in the 7-day window leading up to its due date)
- [x] **TM-04**: Pre-populated tasks that have already been completed in the current interval period are hidden from the calendar view
- [x] **TM-05**: Pre-populated tasks not yet due have a muted visual distinction (reduced opacity) compared to due-today and overdue tasks

## Future Requirements

Deferred to future release. Tracked but not in current roadmap.

### Data

- **DATA-01**: User can export all data as JSON
- **DATA-02**: User can import data from JSON backup

### Localization

- **LOC-01**: User can switch UI language to English

### v2.0

- **ONB-01**: Onboarding wizard for first-time users
- **ACC-01**: User can pick a custom accent color for the app theme
- **STAT-01**: Statistics & insights dashboard showing task completion trends

## Out of Scope

Explicitly excluded. Documented to prevent scope creep.

| Feature | Reason |
|---------|--------|
| Room cover photos from camera or gallery | Dropped — clean design system preferred |
| User accounts & cloud sync | Local-only by design |
| Leaderboards & points ranking | Not a gamification app |
| Subscription model / in-app purchases | Free forever |
| Family profile sharing across devices | Single-device app |
| Server-side infrastructure | Zero backend |
| AI-powered task suggestions | Overkill for curated templates |
| Per-task push notifications | Daily summary is more effective |
| Firebase or any Google cloud services | Contradicts local-first design |
| Real-time cross-device sync | Potential future self-hosted feature |
| Tablet-optimized layout | Future enhancement |
| Weekly/monthly calendar views | Date strip is sufficient for task app |
| Drag tasks between days | Tasks auto-schedule based on frequency |
| Calendar sync (Google/Apple) | Contradicts local-first, offline-only design |

## Traceability

Which phases cover which requirements. Updated during roadmap creation.

| Requirement | Phase | Status |
|-------------|-------|--------|
| DEL-01 | Phase 8 | Complete |
| DEL-02 | Phase 8 | Complete |
| DEL-03 | Phase 8 | Complete |
| DEL-04 | Phase 8 | Complete |
| TCX-01 | Phase 9 | Complete |
| TCX-02 | Phase 9 | Complete |
| TCX-03 | Phase 9 | Complete |
| TCX-04 | Phase 9 | Complete |
| CLN-01 | Phase 10 | Complete |
| TM-01 | Phase 11 | Planned |
| TM-02 | Phase 11 | Planned |
| TM-03 | Phase 11 | Planned |
| TM-04 | Phase 11 | Planned |
| TM-05 | Phase 11 | Planned |

**Coverage:**
- v1.2 requirements: 14 total
- Mapped to phases: 14
- Unmapped: 0

---
*Requirements defined: 2026-03-18*
*Last updated: 2026-03-24 after phase 11 planning*
