Recurring maintenance windows
Schedule maintenance that repeats daily, weekly, or monthly. Set it once, LiveStatus spawns the instances automatically.
We shipped scheduled maintenance a few weeks ago and the most common request was the obvious one: make it repeat. Nobody wants to manually schedule the same 2am Sunday backup window every week for the rest of time.
Now you can. In the maintenance panel, pick a recurrence rule (none, daily, weekly, or monthly), set an optional end date, and LiveStatus spawns each instance automatically 24 hours before it fires. Subscribers get their heads-up email exactly like a one-off window. Each instance has a "part of series" badge linking back to the parent template.
The recurrence math handles edge cases: monthly starting on the 31st correctly falls back to Feb 28 or 29. Weekly keeps the same day-of-week. Daily is daily. Custom cron expressions are accepted but not yet evaluated (v1 limitation, coming soon).
18 new unit tests in src/lib/maintenance-recurrence.test.ts cover the edge cases. Total test count is now 144.