7 Commits

Author SHA1 Message Date
SmileQWQ
814464bc58 perf: optimize lite caching and worker endpoints
- add tiered D1 caching and cache version invalidation for worker-heavy reads

- reduce CPU cost in statistics, calendar, settings, exchange-rate, and import paths

- align worker-facing settings and shared types with the no-KV lite runtime
2026-04-26 20:42:08 +08:00
SmileQWQ
dba4be9986 refactor: remove worker KV state and D1 transaction-heavy paths
Move worker state from KV to D1 or memory.
Clear affected page queries after Wallos import and avoid D1 transaction-heavy Prisma paths.
2026-04-23 21:33:34 +08:00
SmileQWQ
eeaf5dab55 feat: add flexible reminder rule configuration
- replace fixed reminder day controls with configurable reminder rule strings for advance and overdue notifications
- add shared parsing and normalization helpers, subscription-level override fields, and default seeded rules
- switch reminder scanning to minute-level rule matching while preserving merged notification behavior
- update settings, subscription forms, detail views, and types to use tooltip-guided rule inputs and normalized save flow
- refresh API and tests to cover the new reminder rule settings, storage, and notification matching behavior
2026-04-20 18:47:08 +08:00
SmileQWQ
d6913fef1a feat: add configurable reminder settings and app version display
- add notifyOnDueDay and overdueReminderDays to shared settings schema and defaults

- wire reminder settings through API settings service, notification scan logic, seed data, and tests

- update settings page with 默认提前提醒天数 label, 到期当天提醒 switch, and 过期提醒 multi-select

- show current app version under SubTracker branding and inject VITE_APP_VERSION during web builds

- add GPLv3 LICENSE and update README with license and acknowledgements
2026-04-19 22:55:36 +08:00
SmileQWQ
6f95114558 refactor: simplify webhook persistence model 2026-04-17 16:06:16 +08:00
SmileQWQ
264db1a0a6 feat: refactor subscriptions to tags and add Wallos import pipeline
- replace legacy category-based subscription flow with tag-based models, routes, types and UI management

- rebuild Prisma schema around Tag and SubscriptionTag, remove legacy category relation fields, and reseed defaults

- add unified Wallos import inspect/commit flow for JSON, SQLite and ZIP packages with ZIP logo ingestion and DB-version compatibility

- add auto-renew execution in scheduler plus payment record drawer entry in subscription actions

- rename user-facing renewal wording to 续订 in key views and align subscription form with tag selection and auto-renew

- improve logo handling with local library support, remote import persistence, and ZIP asset matching fallback
2026-04-15 11:42:11 +08:00
SmileQWQ
81418ea57d feat: initialize SubTracker repository 2026-04-11 13:36:43 +08:00