02-Oct-2026
- Fixed
DailyReminderTimesvalues that mix valid and invalid entries (for example,8:00,17:00) resolving to no baseline reminder slots. The invalid-entry warning text was captured into the resolved value instead of the log, so the valid17:00entry was dropped, the08:00,12:00,16:00default was not applied, and Remind Me Later fell through to the first pre-deadline threshold (Issue #139; thanks, @TechTrekkie!)- Invalid entries are now logged as
[WARNING] Ignoring invalid DailyReminderTimes entry '…'and skipped, valid entries are kept, and a fully invalid value still falls back to the default with the existingdefaulting to '…'warning. - Affected standalone and deployed runs alike; deployed
dor.zshadditionally lost the warning line entirely because it logs through the LaunchDaemon's standard output. HH:MMstill requires zero-padded hours;8:00is rejected (and now logged), not normalized.
- Invalid entries are now logged as
- Applied the same fix to
MinutesBeforeDeadlineReminderSchedule, where mixed input such as45,abcpreviously disabled all pre-deadline threshold reminders. - Applied the same fix to
Resources/reminderDialogPreferenceTest.zsh. - Hardened language-code handling for localized dialog text and deadline date formats. Unrecognized language values now fall back to English and the global
DateFormatDeadlineHumanReadable, and log a[WARNING]. - Validated localized preference key names before applying them; keys with an unrecognized language code are skipped and logged at
[WARNING]. - Applied the same hardening to
Resources/reminderDialogPreferenceTest.zsh. - No preference keys, defaults, or precedence rules changed.