callumalpass_tasknotes/test-overdue-setting.md
Callum Alpass b01400f852 feat: Add setting to hide completed tasks from overdue status (#300)
Implements a new "Hide completed tasks from overdue" setting in the misc
section that controls whether completed tasks appear as overdue in
agenda
views. When enabled (default), completed tasks will not be classified as
overdue even if their due or scheduled date has passed.

Changes:
- Add `hideCompletedFromOverdue` setting (default: true) to settings
interface
- Enhance `isOverdueTimeAware` function with completion status
parameters
- Update FilterService constructor to accept plugin reference for
settings access
- Add completion-aware overdue detection throughout date categorization
- Update all FilterService instantiations with new constructor signature
- Add comprehensive documentation in misc-settings.md
- Create test documentation for the new feature
- Update NotesView empty state message for better clarity

This change helps keep overdue lists focused on actionable items while
maintaining proper task categorization for completed work.
2025-07-27 10:20:40 +10:00

876 B

Test: Hide Completed Tasks from Overdue Setting

Test Steps

  1. Enable the "Hide completed tasks from overdue" setting in Settings > Misc
  2. Create a task with a due date in the past (e.g., yesterday)
  3. Mark the task as completed
  4. Check the agenda view - the completed task should NOT appear as overdue
  5. Disable the setting
  6. Check the agenda view again - the completed task should now appear as overdue

Expected Behavior

  • When setting is enabled (default): Completed tasks don't show as overdue
  • When setting is disabled: Completed tasks show as overdue if their date has passed

Implementation Details

  • Setting: hideCompletedFromOverdue (boolean, default: true)
  • Function: isOverdueTimeAware(dateString, isCompleted?, hideCompletedFromOverdue?)
  • Location: Settings > Misc tab
  • Impact: Affects agenda view, task grouping, and overdue categorization