peregrine/app
pyr0ball 96715bdeb6 feat(peregrine): add cloud_session middleware + SQLCipher get_connection()
cloud_session.py: no-op in local mode; in cloud mode resolves Directus JWT
from X-CF-Session header to per-user db_path in st.session_state.

get_connection() in scripts/db.py: transparent SQLCipher/sqlite3 switch —
uses encrypted driver when CLOUD_MODE=true and key provided, vanilla sqlite3
otherwise. libsqlcipher-dev added to Dockerfile for Docker builds.

6 new cloud_session tests + 1 new get_connection test — 34/34 db tests pass.
2026-03-09 19:43:42 -07:00
..
.streamlit chore: seed Peregrine from personal job-seeker (pre-generalization) 2026-02-24 18:25:39 -08:00
components feat: paste/drag-drop image component, remove server-side Playwright capture button 2026-03-03 14:40:47 -08:00
pages fix: remove dead byok_cloud_acknowledged scalar key — list is the authority 2026-03-06 15:17:26 -08:00
wizard feat: BYOK unlocks LLM features regardless of tier 2026-03-02 11:34:36 -08:00
__init__.py fix: add app/__init__.py so wizard submodule is importable inside Docker 2026-02-25 21:41:09 -08:00
app.py fix: use explicit utf-8 encoding when reading llm.yaml in sidebar 2026-03-06 14:52:22 -08:00
cloud_session.py feat(peregrine): add cloud_session middleware + SQLCipher get_connection() 2026-03-09 19:43:42 -07:00
feedback.py fix: save form data to non-widget state on Next, fix disabled timing, pass page title 2026-03-03 15:17:45 -08:00
Home.py fix: Settings widget crash, stale setup banners, Docker service controls 2026-03-04 12:11:23 -08:00