v2.22.2 September 12, 2026
🐛 Fixed
  • Dragging the Quick Capture window by its header now actually moves it — the previous release stopped it from closing on a drag, but it still wasn't moving
  • Scrollbars throughout the app now match the theme instead of showing a plain white bar
v2.22.1 September 12, 2026
🐛 Fixed
  • Dragging the Quick Capture window by its header closed it instead of moving it
  • All Tasks' sort dropdown always had date-based sorting, but nothing said "date" — it's now grouped and labeled clearly (Last worked / Created, newest or oldest first), with the missing "oldest created" direction added
v2.22.0 September 12, 2026
🆕 New
  • All Tasks now has its own full page (sidebar) with search, filters, and bulk actions — select tasks and mark them Done or Not Done, one at a time or several at once
  • Quick Capture can now find and resume your own tasks by title or description, not just an exact ticket number, and shows your recent tasks by default so you can continue a stopped timer without opening the Dashboard
🐛 Fixed
  • Sessions and tasks now show what you actually typed for that session instead of the ticket's generic title, which is what was hiding your real notes everywhere but the edit screen
v2.21.3 September 11, 2026
🐛 Fixed
  • The "still working on it?" prompt shown after your work day ends no longer includes timers left over from a previous day — only today's
  • That same prompt (when checking for a session left running from an earlier day) could appear in the middle of a meeting — it now waits until the meeting ends
v2.21.2 September 11, 2026
🐛 Fixed
  • The "meeting?" and "log hours" buttons on a session were nearly invisible (styled like disabled text) — now clearly visible buttons in every state
  • Worklog comments pushed to Jira no longer end with "— Logged via FlowTrack" — just your description, the time range, and duration
v2.21.1 September 11, 2026
🐛 Fixed
  • Starting, stopping, or marking a task done from the All Tasks list (or Quick Capture) now updates the screen immediately — previously it could take a few seconds, or in rare cases longer, to show the new running timer
v2.21.0 September 11, 2026
🆕 New
  • The tray's right-click menu can stop every running timer at once when more than one is going
🔧 Improved
  • Redesigned the Quick Capture window — cleaner layout, crisper icons, and it now shows how much you've tracked today while a timer runs
  • Reworked the tray right-click menu: running timers on top under a status line, the Quick Capture shortcut shown as a real menu accelerator, meeting sessions tagged, long task names no longer clipped mid-word, and Alt-key menu navigation
v2.20.2 September 11, 2026
🐛 Fixed
  • Sign in and sign up no longer fail on the first attempt when the server is waking from idle — the app waits and tells you it's starting up
  • Starting a timer just after midnight no longer fails with "Validation failed" — a server-side timezone bug that rejected any start time the server's clock considered "tomorrow"
🔧 Improved
  • Errors when starting a timer or signing in now show the specific reason instead of a generic message
🔒 Security
  • A login session is now fully revoked if its refresh token is seen being reused
  • Login and sign-up rate limits are now enforced reliably across server restarts
v2.20.1 August 2, 2026
🐛 Fixed
  • Session edit form — start/end date and time were split across mismatched rows; each pair now sits together on one line
v2.20.0 August 2, 2026 Major
🆕 New
  • Delete your account — new option in Settings → Profile (password-confirmed); your data is fully removed within 30 days
  • After-hours timer check — if a timer's still running well past your work hours, a popup asks whether you're still working, lets you set the real end time, or stops it. Toggle it off in Settings → Nudges.
🔧 Improved
  • Login and token refresh now time out instead of hanging indefinitely on a bad connection
  • Timers left running are parked for you to confirm the real end time, instead of guessing one
  • Failed Jira worklog pushes now show up instead of silently disappearing
  • Night-shift and overnight work schedules no longer disable reminders entirely
  • Reduced backend server load, cutting hosting cost further
🐛 Fixed
  • App could fail to start if the Quick Capture shortcut was already claimed by another app
  • Quick Capture and other popup windows could incorrectly show "Not logged in" right after signing in
  • The "welcome back" idle popup could silently fail to appear
  • Clicking a notification didn't always take you anywhere
  • Excluding a session from totals wasn't always reflected in the task's total time
  • Break time wasn't deducted correctly for sessions crossing midnight
  • Deleting a task could unintentionally erase its session history
🔒 Security
  • Hardened login and registration against automated abuse
  • Set an explicit, restrictive content security policy for the desktop app
  • Added a sane limit to analytics date ranges to prevent excessive data loads
v2.19.2 July 31, 2026
🐛 Fixed
  • Random logouts — a background token-refresh race across windows could invalidate a valid session and reset "Remember Me" along with it
  • Meeting-ended popup occasionally showing blank instead of the resume options
  • Jira ticket description defaulting to the wrong text when creating a new ticket from a task
  • Nudges (morning plan, EOD, etc.) could repeat later the same day after a background token refresh
🔧 Improved
  • Quick Capture and other popups now show a "Log In" button when signed out, instead of a dead end
v2.19.0 July 12, 2026 Major
🆕 New
  • Worklog timing options — choose Immediate, Delayed (configurable), or End of Day for Jira worklogs
  • Jira worklog ID stored — editing session time updates existing worklog (no duplicates)
  • Profile redesigned into 3 cards: Identity (avatar + name), Work Preferences, Display
  • Display name auto-populated from registration for new users
🔧 Improved
  • JVM memory optimized: 2.5–5.5 GB → ~450 MB on Railway (80% cost reduction)
  • Auto-log toggle validation fixed
v2.17.0 July 11, 2026
🆕 New
  • Update popup with "Update Now" / "Update Later" buttons and download progress
  • What's New modal now reads structured release notes from the manifest
🐛 Fixed
  • 10 UI polish issues — invisible button text, toggle gaps, chart visibility, emoji consistency, header overflow, popup layout
  • Feature Guide showing wrong version (now reads dynamically)
  • All popup windows: eliminated black bars with proper background colors
v2.16.0 July 10, 2026
🆕 New
  • Notification Center — bell icon in sidebar with unread badge and slide-over panel
  • What's New modal — auto-shows on first launch after update with categorized changelog
  • Feature Guide page — all 37 features documented in-app with NEW badges
  • Auto-stop orphaned timers on app startup (client-side, no server dependency)
v2.15.0 July 10, 2026 Major
🆕 New
  • Notification Center — bell icon in sidebar with unread badge, slide-over panel with All/Updates/Features tabs
  • What's New modal — auto-shows on first launch after update with categorized changelog
  • Feature Guide page — dedicated sidebar page listing all 37 FlowTrack capabilities across 7 categories
  • Auto-stop orphaned timers — desktop app stops timers left running past work hours on next launch
  • Website features showcase — full features page with CSS mockup visualizations
🔧 Improved
  • All popup windows now show error feedback instead of silently dismissing on API failures
  • Meeting popup self-shows on event (no longer relies on main window to show it)
  • Idle events now target idle-popup window specifically instead of broadcasting globally
  • Updated vite 5 → 8 and plugin-react 4 → 6
🔒 Security
  • Hardened HTML output sanitization on OAuth pages
  • Improved token lifecycle — shorter access tokens with seamless background refresh
  • Fixed a race condition in third-party token refresh flow
  • Hardened process spawning for CLI integrations
  • Added pagination limits to prevent excessive data loading
  • Fixed session cleanup on logout for all storage modes
  • Optimized database queries to use scoped lookups
v2.14.0 July 9, 2026
🆕 New
  • Remember Me checkbox on login — stay logged in across restarts or clear session on close
  • Session grouping in search/filter results — same task-based grouping as Today view
🐛 Fixed
  • Password reset form CORS error — backend's own origin now in allowed list
v2.13.0 July 8, 2026
🆕 New
  • Session grouping in Today view — sessions with the same task collapse under a header showing title, count, and total time
🐛 Fixed
  • Task totalMinutes not recalculating when a session is edited
  • Gemini model dropdown updated — removed deprecated models, added 3.5 Flash and 3.1 Flash Lite
  • AI responses getting truncated — increased max_tokens to 8192
  • AI responses in Hindi — all prompts now enforce English output
  • AI going into chatbot mode — added strict system instructions to prevent question-asking
  • Antigravity CLI (agy) enabled as AI provider
  • Null pointer exception in all 4 AI provider response extractors
v2.12.2 July 7, 2026
🆕 New
  • Meaningful Jira worklog comments auto-generated from session description
  • Log hours button moved to session status line for quicker access
v2.12.1 July 7, 2026
🆕 New
  • Auto-assign Jira tickets to the creator when creating tickets from FlowTrack
  • Manual worklog push button on individual sessions