cohorta/backend/app
Vadym Samoilenko 0a419eeee1 fix(ui+billing): dark theme for session page + no double-charge on restart
FocusGroupSession.tsx: replace bg-slate-50 with bg-background so the page
matches the rest of the dark UI; swap remaining text-slate-* for muted tokens.

focus_group_ai.py: before deducting 40 cr for an AI mode run, check if this
focus group already has a charge within the last 4 hours. Skip deduction if
found — prevents double-billing when the server restarts mid-session.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 12:26:21 +01:00
..
auth Complete phases D–G: quota enforcement, token invalidation, admin writes, backfill 2026-04-24 18:34:48 +01:00
models fix(backend): get_settings fills missing DEFAULTS keys for stale config documents 2026-05-24 18:08:02 +01:00
routes fix(ui+billing): dark theme for session page + no double-charge on restart 2026-05-25 12:26:21 +01:00
services feat: compass/crosshair SVG decorations across landing page, fix email from noreply→hello 2026-05-23 23:06:42 +01:00
utils Add LLM usage tracking infrastructure (Phases A-C) 2026-04-24 18:08:27 +01:00
.DS_Store changed permissions 2025-12-19 19:26:16 +00:00
__init__.py feat: commit all app changes — billing API, new auth, design overhaul 2026-05-23 19:04:43 +01:00
db.py feat: commit all app changes — billing API, new auth, design overhaul 2026-05-23 19:04:43 +01:00
extensions.py changed permissions 2025-12-19 19:26:16 +00:00
websocket_debug_tap.py changed permissions 2025-12-19 19:26:16 +00:00
websocket_manager.py Apply Jintech security audit remediation (sprint 3) — 87/92 findings fixed 2026-03-20 12:51:18 +00:00
websocket_manager_async.py Fix AI autonomous mode: cross-loop WebSocket emit + polling fallback 2026-03-23 18:22:24 +00:00