diligence/backend
Claude f2954af400 Fix: ai_provider reads actual DB schema (config_key/config_value rows)
Root cause: ai_provider.py assumed a single JSON blob in an
'encrypted_value' column, but IntegrationConfig stores each credential
as a separate row with config_key + config_value columns.

Fixes:
- Query groups rows by provider, decrypts each config_value separately
- Correct decrypt_value(secret_key, ciphertext) argument order
- Filter by user_id so providers are per-user
- Callers (ai_chat.py, chat()) now pass user_id through
2026-06-22 00:27:19 +00:00
..
app Fix: ai_provider reads actual DB schema (config_key/config_value rows) 2026-06-22 00:27:19 +00:00
.dockerignore Stream D: Security hardening — 10 fixes from QA review 2026-06-21 23:13:53 +00:00
Dockerfile Deliver Step 1: Backend cleanup — secrets scrubbed, is_admin column, Telegram optional, crypto service, v4-v7 migrations, .env.example, setup.sh 2026-06-15 14:29:53 +00:00
requirements.txt Fix: replace passlib with bcrypt directly - passlib incompatible with bcrypt 4.x 2026-03-15 01:35:46 +00:00