eeb60dc51b0096e3fb3ad82c0d70c7bc6fc5b878
Previous logic compared dueDate against startOfDay for all tasks, so a task due at 2:00 PM stayed in "Today" until midnight even after the time passed. TickTick rule: - hasTime=true → overdue the moment dueDate < now (wall clock) - hasTime=false → overdue at start of next day (dueDate < startOfDay) overdueTasks: now uses `dueDate < now` for timed tasks, `dueDate < today` for date-only tasks. todayTasks: now excludes timed tasks whose time has already passed — those belong in overdue, not today — while keeping date-only tasks in Today for the full calendar day. Co-Authored-By: Kutesir <tqwyy79vzn@privaterelay.appleid.com>
Description
Personal productivity and fitness companion — iOS SwiftUI app
Languages
Swift
99.3%
HTML
0.4%
Shell
0.3%