BillTracker/services
null a6c9b6cb1c refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts)
Batch of low-blast-radius modules: utils/apiError, and services statusRuntime,
loginFingerprint, auditService, transactionMatchState, updateCheckService,
advisoryFilterService, bankSyncConfigService.

- types/http.d.ts: shared permissive Express-ish Req/Res/Next/Router types
  (@types/express isn't installed; handlers are dynamic) — for apiError's
  errorHandler now and the routes/middleware batches next.
- Every require of a migrated module updated to the explicit .cts extension.
- Confirmed + documented the Node rule: a .cts needs at least one `import`
  statement or type-stripping never activates (node --check fails on the first
  type token); import-less modules lead with an `import type`.

Behavior-preserving. Verified: typecheck:server 0, check:server 0, suite 226/226.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-06 10:47:16 -05:00
..
advisoryFilterService.cts refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
amountSuggestionService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
analyticsService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
aprService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
auditService.cts refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
authService.js refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
backupScheduler.js feat(roadmap): size grid from populated lanes + db cleanup fixes 2026-05-30 13:04:27 -05:00
backupService.js feat: Payoff Custom mode, Summary reordering, unifed billing schedule, SimpleFIN + backup fixes (batch v0.34.1.3) 2026-05-30 21:20:51 -05:00
bankSyncConfigService.cts refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
bankSyncService.js refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
bankSyncWorker.js refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
billMerchantRuleService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
billsService.js feat(server-ts): utils/dates → TypeScript (.mts); utils/ dir now TS (Phase 2) 2026-07-05 13:48:44 -05:00
calendarFeedService.js refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
cleanupService.js fix(qa): retention GC orphaned matched transactions on bill purge (QA-B5-04) 2026-07-03 11:04:59 -05:00
csvTransactionImportService.js feat(import): OFX/QFX transaction import (Batch 3) 2026-07-03 15:11:59 -05:00
driftService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
encryptionService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
loginFingerprint.cts refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
matchSuggestionService.js refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
merchantStoreMatchService.js refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
notificationService.js refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
ofxImportService.js feat(import): OFX/QFX transaction import (Batch 3) 2026-07-03 15:11:59 -05:00
oidcService.js refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
paymentAccountingService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
paymentValidation.cts feat(server-ts): paymentValidation → .cts, proving the CJS-module path (Phase 2) 2026-07-05 13:51:37 -05:00
simplefinService.js feat(auth): add per-username rate limiter, migrate dates to local-time utils (batch 0.38.1) 2026-06-10 19:42:51 -05:00
snowballService.js feat(server-ts): migrate the money boundary to TypeScript on Node's native runtime (Phase 2) 2026-07-05 13:44:04 -05:00
spendingService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
spreadsheetImportService.js feat(server-ts): migrate the money boundary to TypeScript on Node's native runtime (Phase 2) 2026-07-05 13:44:04 -05:00
statusRuntime.cts refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
statusService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
subscriptionService.js feat(server-ts): utils/dates → TypeScript (.mts); utils/ dir now TS (Phase 2) 2026-07-05 13:48:44 -05:00
totpService.cts refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
trackerService.js refactor(server): migrate 10 services to TypeScript (.cts) 2026-07-06 10:35:29 -05:00
transactionMatchService.js refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
transactionMatchState.cts refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
transactionService.js fix(bank-sync): transaction matching, services, and worker updates 2026-06-07 20:07:27 -05:00
updateCheckService.cts refactor(server): migrate 8 leaf services + apiError to TypeScript (.cts) 2026-07-06 10:47:16 -05:00
userDataService.js feat(data): "Erase my data" danger zone (Batch 5) 2026-07-03 15:21:07 -05:00
userDbImportService.js fix(brand): finish the "BillTracker" → "Bill Tracker" rename (display copy) 2026-07-05 17:31:14 -05:00
userSettings.js feat(tracker): persist Overdue/Drift panel collapse + inline hide 2026-07-06 10:34:39 -05:00
webauthnService.js security: WebAuthn / FIDO2 hardware security key 2FA 2026-06-05 22:05:23 -05:00