All notable changes to MobCrew are documented in this file. This project follows Semantic Versioning.
0.3.0 - 2026-08-09
- Versioned session recovery for running, paused, and pending-break sessions, including safe reconciliation when a timer expired while the app was closed.
- Optional breaks with an explicit Take Break or Skip Break decision and a completion alert.
- Separate, live status for Notification authorization and Launch at Login registration, with recovery links when macOS requires user action.
- Accessible transition announcements, contextual control descriptions, keyboard roster ordering, and a scrollable, responsive roster for larger teams.
- Unified the main window, menu bar, floating timer, and break screen around one phase-aware session model with consistent Start, Pause, Resume, Reset, Skip, and break behavior.
- Made countdowns deadline-based so delayed refreshes, sleep, and wake do not lose elapsed time.
- Duration changes while a timer is running or paused now apply to the next turn; idle changes apply immediately. Both duration controls use the same 1–60 minute range.
- Roster removal and reordering now preserve the current driver's identity when possible.
- The ⌘⇧L global shortcut no longer requests Accessibility permission; Settings reports Carbon registration failures and provides a retry action.
- Migrated the app and tests to Swift 6 and added deterministic coverage for session transitions, timer recovery, persistence, roster invariants, and macOS integration status.
- Skipping during a break no longer advances the roster or starts a regular timer inside break state.
- Delayed timer delivery no longer makes the countdown run slow or complete more than once.
- Corrupt, incompatible, or repeatedly restored session snapshots fall back safely without erasing the saved roster or settings.
- Notification and Launch at Login controls no longer imply success when macOS denied or failed an operation.
- MobCrew still requires macOS 14 or later.
- This release remains ad-hoc signed and is not Developer ID signed or notarized. macOS may require confirmation in System Settings → Privacy & Security on first launch.
- The release artifact's supported architectures must be confirmed and recorded during qualification.
0.2.0 - 2026-02-01
- Initial public release of the native macOS mob programming timer.
- Configurable turn timer with sound alerts.
- Driver and navigator roster management with drag-and-drop reordering.
- Floating always-on-top timer, break overlay, menu bar integration, global keyboard shortcut, and dark mode support.