Commit Graph

275 Commits

Author SHA1 Message Date
null a1e6a308cf feat: existing bill matching in recommendations, feedback tracking, broad-merchant rejection, annual price detection 2026-06-06 21:15:08 -05:00
null 422d8550bb feat: recommendation detail dialog with evidence, ambiguity badges, transaction list 2026-06-06 21:05:01 -05:00
null b2f8f5ef66 feat: dedicated subscription catalog page, evidence badges, price display in recommendations 2026-06-06 20:44:54 -05:00
null 3a034ddeb7 feat: subscription catalog with bank descriptors, custom per-user descriptors, catalog→bill linking 2026-06-06 20:02:13 -05:00
null 17478ebd9c 1 2026-06-06 19:47:05 -05:00
null fc3709337c feat: bulk unmatch — review similar payees, batch-undo with optional rule removal 2026-06-06 19:15:06 -05:00
null f69f778821 fix: use express-rate-limit ipKeyGenerator for sync limiter fallback 2026-06-06 18:38:40 -05:00
null 7455dff5b8 feat: v0.37.0 — auto-learn merchant rules, ambiguous match protection, session hashing, geolocation opt-in 2026-06-06 18:30:21 -05:00
null b4779c9eda feat: auto-match review panel with undo — last 7d provider_sync payments 2026-06-06 17:34:09 -05:00
null 6e211c8366 fix: v0.94 migration signature — run(db) → run() 2026-06-06 17:17:10 -05:00
null 04f5f922b7 chore: remove stale tracked backup/DB files; add /bills.db to gitignore 2026-06-06 17:01:06 -05:00
null 9a2a7ecdee feat: v0.94 — session token hashing, geolocation opt-in privacy setting 2026-06-06 17:00:22 -05:00
null 840620efe2 feat: v0.93 — stable provider keys, per-payment interest tracking with once-per-month gating 2026-06-06 16:34:20 -05:00
null a2ac241cd3 refactor(sync): centralize sync constants in bankSyncConfigService, wire through config/UI 2026-06-06 15:51:56 -05:00
null a73d0afe07 feat(encryption): support TOKEN_ENCRYPTION_KEY env var with startup migration 2026-06-06 15:27:45 -05:00
null 9e38a6b252 feat(tracker): show last_updated age on balance cards and summary pill 2026-06-06 15:17:27 -05:00
null 80b5d56010 feat(sync): rate limit sync/backfill endpoints to 10 per 15 minutes 2026-06-06 15:08:33 -05:00
null 7d42d119c0 fix(simplefin): retry transient fetch failures (3 attempts, 1s/2s backoff) 2026-06-06 15:06:12 -05:00
null a66fe13bc6 fix(simplefin): add 30s AbortSignal timeout to fetch calls 2026-06-06 14:54:00 -05:00
null 6168a71d8f fix(sync): move auto-match into syncDataSource after merchant rules 2026-06-06 14:41:27 -05:00
null a97d656e92 fix(match-suggestions): use rejection timestamps and share late attribution helper 2026-06-06 14:06:28 -05:00
null 99abca9868 security: WebAuthn / FIDO2 hardware security key 2FA 2026-06-05 22:05:23 -05:00
null 2c9cc37593 feat: copy last month budgets, monthly income section on summary page 2026-06-04 21:57:42 -05:00
null 3a19303d4d fix: SQLite timestamp timezone ambiguity — convert to proper UTC ISO strings 2026-06-04 21:42:34 -05:00
null df9d6fbf6d fix: backup enabled setting key mismatch 2026-06-04 21:35:02 -05:00
null a2266635f4 perf: worker N+1 batching, status runtime DB persistence, 'use strict' 2026-06-04 21:32:28 -05:00
null 81ae41325a feat: move income modal to tracker page, clickable bank card 2026-06-04 21:22:20 -05:00
null 3623cadcf6 feat: income breakdown modal with ignore/restore, summary chart click, includeIgnored query param 2026-06-04 21:19:25 -05:00
null 59d32f4686 perf: composite DB indexes, notification N+1 batching, spending page double-fetch fix 2026-06-04 21:00:59 -05:00
null 803e91da28 fix: migration error handling for legacy DBs, fallback rejection query 2026-06-04 20:52:50 -05:00
null 910febae63 feat: bill rules manager page, merchant re-normalization, match suggestion scoring fix, cleanup pruning 2026-06-04 20:45:11 -05:00
null 743379fc94 feat: spending toggle per category, empty state, income query, auto-enable on rule creation 2026-06-04 20:01:51 -05:00
null 3f0078b930 feat: spending income section, rules manager, error handling improvements 2026-06-04 19:53:38 -05:00
null ac5d6c6625 feat: spending tracking page with category breakdowns 2026-06-04 04:31:25 -05:00
null 92f292dcee refactor: otplib named imports, cleanup totpService internal naming 2026-06-04 04:16:20 -05:00
null 653dd72e12 feat: TOTP 2FA for login & profile setup flow 2026-06-04 04:10:14 -05:00
null a6b2e8bb87 fix: login mode card update, OIDC service improvements, auth middleware refinements 2026-06-04 03:53:38 -05:00
null 26b6fb13e5 feat: login history with geolocation, encryption, new device alerts, session detection 2026-06-04 03:38:32 -05:00
null ecec6763b0 docs: update user-guide index with recent features (bank status, notifications, cash flow, batch import, merchant rules) 2026-06-04 03:14:54 -05:00
null 809bd4498b fix: BankSyncSection enhancements, merchant rule service updates, user settings import 2026-06-04 02:57:09 -05:00
null 3745ef79b7 docs: update HISTORY.md with bank tracking, merchant rules, and UI changes 2026-06-04 02:48:32 -05:00
null 5689fc95c2 feat: historical import batch selection UI, backend endpoint, DB migration v0.83 2026-06-04 02:36:36 -05:00
null d5a0b65532 feat: live bank status bar and card on TrackerPage with effective balance + pending 2026-06-04 02:24:10 -05:00
null 19421c06fc fix: historical import backend routes and service adjustments 2026-06-04 02:20:30 -05:00
null d2d3045afe feat: historical payment import dialog for bank merchant rules 2026-06-04 02:05:15 -05:00
null d04f03b6b1 fix: replace Portal with inline block to avoid Radix pointer-event capture 2026-06-04 01:50:40 -05:00
null 68667fea59 fix: render suggestion dropdown in Portal to escape BillModal overflow container 2026-06-04 01:45:17 -05:00
null 52af533845 fix: remove duplicate/early refetch calls in BillModal sync flow 2026-06-04 01:38:14 -05:00
null 48f5577031 fix: bank tracking pending deduction corrected, projected month-end balance, settings loading fix 2026-06-04 01:36:07 -05:00
null ccdd16a626 fix: summary route and trackerService refinements 2026-06-04 01:27:00 -05:00