maintenance/frontend
jtricerolph d9b01a5981 Add lead time to recurring templates — generate before actually due
task_templates.lead_days (default 0): scheduler now spawns the task
when (next_due - lead_days) <= today instead of next_due <= today, but
due_date on the created task is still the real next_due — so overdue
and priority handling are unaffected, the task just becomes visible
earlier for prep/booking. Small jobs (AC filter clean) can stay at 0;
bigger ones needing advance notice (septic tank empty-out, contractor
booking) can set 2-3 days or 30 days as needed.

- db.js: lead_days INT NOT NULL DEFAULT 0 (inline for fresh installs,
  ALTER for existing).
- scheduler.js: WHERE (next_due - lead_days) <= $1 — next_due itself
  and the fixed/floating rollover logic are untouched by this.
- templates.js: accept + validate lead_days (>= 0) on create/update.
- Recurring.tsx: lead time field in the template form with contextual
  hint text, plus a small 'generates Nd early' note on list rows that
  have one set.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-26 12:20:50 +00:00
..
public/icons Replace letter icons with Lucide PWA icons 2026-07-11 20:30:09 +00:00
src Add lead time to recurring templates — generate before actually due 2026-08-26 12:20:50 +00:00
Dockerfile Maintenance log book app — initial scaffold 2026-07-03 21:28:57 +00:00
index.html Add iOS install hint + Apple PWA meta tags 2026-08-06 14:12:12 +00:00
nginx.conf Fix maintenance /assets 403 and remove vite-plugin-pwa 2026-07-14 08:45:32 +00:00
package-lock.json Make maintenance installable as a PWA 2026-07-11 11:27:00 +00:00
package.json Add PWA manifest + update banner to maintenance app 2026-07-20 22:28:08 +00:00
tsconfig.json Maintenance log book app — initial scaffold 2026-07-03 21:28:57 +00:00
vite.config.ts Use full "Maintenance" as PWA short_name instead of "Maint." 2026-07-29 17:23:19 +00:00