siftlode/backend/app
npeter83 f6c5488566 chore: structured timestamped logging across the backend
- uvicorn --log-config (log_config.json): timestamped formatters for uvicorn
  access/error and the app's own "subfeed" loggers (ms precision)
- Log key activity: startup/shutdown, login/denied, token refresh, YouTube API
  errors, subscription imports, sync pause/resume
- Background sync jobs no longer swallow errors silently — failures in RSS poll,
  backfill, enrichment, autotag and resync are logged with tracebacks
2026-06-11 04:26:18 +02:00
..
routes feat: sync status indicator, admin pause/resume, filtered video count 2026-06-11 04:15:25 +02:00
static fix: default app UI language to English (login page) 2026-06-11 01:03:36 +02:00
sync chore: structured timestamped logging across the backend 2026-06-11 04:26:18 +02:00
youtube chore: structured timestamped logging across the backend 2026-06-11 04:26:18 +02:00
__init__.py feat: M1 foundation — compose stack, FastAPI, Google OAuth, encrypted tokens 2026-06-11 01:01:37 +02:00
auth.py chore: structured timestamped logging across the backend 2026-06-11 04:26:18 +02:00
config.py fix: feedback round 2 — language, subscriptions, feed scope, UX 2026-06-11 03:28:45 +02:00
db.py feat: M1 foundation — compose stack, FastAPI, Google OAuth, encrypted tokens 2026-06-11 01:01:37 +02:00
main.py chore: structured timestamped logging across the backend 2026-06-11 04:26:18 +02:00
models.py feat: sync status indicator, admin pause/resume, filtered video count 2026-06-11 04:15:25 +02:00
quota.py feat: M2 (part 1) — subscription import, YouTube client, quota guard 2026-06-11 01:22:07 +02:00
scheduler.py feat: sync status indicator, admin pause/resume, filtered video count 2026-06-11 04:15:25 +02:00
security.py feat: M1 foundation — compose stack, FastAPI, Google OAuth, encrypted tokens 2026-06-11 01:01:37 +02:00
state.py chore: structured timestamped logging across the backend 2026-06-11 04:26:18 +02:00