What
Time spent actively working is now written to disk, so break reminders can survive a restart. The ledger lives in active-time.json in the config directory, or under an active-time-ledger key when a storage backend is present, and holds start, end and active-seconds windows pruned to one year. Reminders themselves still only fire when the breakReminder.enabled setting is turned on, documented as defaulting to false, alongside the existing breakThresholdMinutes.
Details
- a failed read logs "active-time ledger read failed" and falls back to an empty ledger rather than erroring
- the periodic flush timer is an empty early return in this build, so nothing is written on a schedule; writes happen only when something explicitly flushes
Evidence
active-time ledger read failed
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
Names in the bundlebreakThresholdMinutes