null
83e6afa9e6
feat(subscriptions): simplified SubscriptionsPage, inline actions, improved matching card, Service Catalog route
...
- Extracted known-service catalog to dedicated /subscriptions/catalog route
- Simplified main Subscriptions page to focus on tracked services + bank-backed recommendations
- Replaced inline Pause/Resume with Edit + MoreHorizontal dropdown on subscription rows
- Added 'Improve Matching' card linking to Service Catalog
- Vite proxy respects API_PORT env var for dev flexibility
- Added top_200_us_subscriptions_researched dataset
- Updated HISTORY.md with v0.35.0 changes
2026-06-06 22:09:34 -05:00
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
fc3709337c
feat: bulk unmatch — review similar payees, batch-undo with optional rule removal
2026-06-06 19:15:06 -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
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
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
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
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
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
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
809bd4498b
fix: BankSyncSection enhancements, merchant rule service updates, user settings import
2026-06-04 02:57:09 -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
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
779ace60dd
fix: overdue badge excludes due today, tooltip with names, larger column labels
2026-06-04 01:12:25 -05:00
null
46bcf83d22
fix: NavPill and Sidebar UI refinements, trackerService adjustments
2026-06-04 01:00:29 -05:00
null
1ea6979903
fix: TrackerBucket and SnowballPage minor adjustments
2026-06-04 00:50:50 -05:00
null
da4642dbd0
feat: late-attribution prompt for bank payments that crossed month boundary
2026-06-04 00:06:16 -05:00
null
278521a612
fix: bank matching returns bill names, reactive Sync button in BillModal, error handling in merchant rule service
2026-06-03 23:29:30 -05:00
null
0011ade58d
fix: encryptionService removes env-var key path, always uses auto-generated DB key
2026-06-03 23:21:48 -05:00
null
2a2ebd4b28
feat: Pin Due toggle to float urgent bills to top, keyboard nav for tracker rows
2026-06-03 22:55:27 -05:00
null
4188a2059d
fix: mortgage and housing categories auto-detected as debt in snowball
2026-06-03 22:19:58 -05:00
null
37cf24f5a0
feat: Sync Bank button on tracker that runs merchant rule matching on all connected sources
2026-06-03 21:59:50 -05:00
null
c353dd9f40
fix: remove client-side snowball projection, delegate to server with ?extra=N
...
- Delete 86-line computeLiveProjection() — drift risk eliminated
- GET /api/snowball/projection now accepts ?extra=N for unsaved amount preview
- Client uses debounced useEffect calling server instead of useMemo duplicate
2026-06-03 21:50:29 -05:00
null
36f7191289
feat: push notification channels (ntfy/Gotify/Discord/Telegram) and cash flow projection
...
- Wire four push channels into runNotifications() with urgency mapping
- push_url and push_token encrypted at rest via AES-256-GCM
- Profile page Push card with master toggle, channel picker, test button
- Calendar CashFlowCard with period/month projections and negative alert
- Tracker card shows projected amount when cashflow data available
2026-06-03 21:43:54 -05:00
null
c26880da89
fix: bank tracking Pending badge cleanup, CalendarPage money map polish
...
- TrackerPage Pending badge: consistent styling and tooltip text
- CalendarPage money map: handle edge cases when bank tracking is active but no pending payments
- trackerService: deduplicate pending payment query, handle zero-pending state
2026-06-03 21:30:02 -05:00
null
a0fe7880df
feat: bill bank matching rules with pattern preview, conflict detection, retroactive payment sync
...
- Merchant rules link bills to bank transaction patterns for auto-import
- Live preview badge shows match count as user types merchant name
- Inline conflict warning if another bill already owns that pattern
- Retroactive sync on save — imports historical payments immediately
- Green Bank chip on bill list items with active rules
- New endpoints: GET/POST/DELETE merchant-rules + GET preview
2026-06-03 21:21:38 -05:00
null
690a86611a
feat: SimpleFIN bank budget tracking with live balance, pending payments, bank tracking mode
...
- Opt-in Bank Budget Tracking mode replaces manual starting amounts with live bank balance
- Calendar money map shows Balance / Pending / Unpaid Bills / After Bills in bank mode
- Pending badge (amber) on tracker rows within configurable pending window (0-7 days)
- New GET /api/data-sources/accounts/all endpoint for account picker
- Tracker starting-amounts card shows account name and live balance hint
2026-06-03 21:09:26 -05:00
null
36a65156e3
feat: merge pipeline workflow into bill-tracker (batch v0.36.0)
...
- Copy pipeline-report.py from Pipeline project into scripts/
- Update TOOLS.md and MEMORY.md to reflect workflow consolidation
- (includes all uncommitted v0.36.0 changes from prior session)
2026-06-03 20:28:37 -05:00
null
e4f1f58730
feat: Roadmap pulls from Forgejo issues (v0.35.1)
2026-05-31 19:37:01 -05:00
null
557378dab9
chore: bump to v0.35.0
2026-05-31 16:09:40 -05:00
null
ab93c53c82
chore: bump to v0.36.0
2026-05-31 15:57:03 -05:00