chore(devops): project skeleton — uv, docker compose, Makefile, CI
CI / ruff · pytest (pull_request) Successful in 1m50s
CI / ruff · pytest (pull_request) Successful in 1m50s
One Postgres with isolated identity/clinical databases and roles (ADR-003), FastAPI /health, Streamlit placeholder, typed settings with offline defaults. Refs #1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
# Copy to .env. Secrets only here; .env is gitignored.
|
||||
|
||||
# --- LLM (152-FZ: GigaChat only). mock = offline demo without network (ADR-004)
|
||||
LLM_PROVIDER=mock
|
||||
GIGACHAT_CREDENTIALS=
|
||||
GIGACHAT_SCOPE=GIGACHAT_API_PERS
|
||||
GIGACHAT_MODEL=GigaChat
|
||||
|
||||
# --- Pseudonymisation key: 32+ random bytes, hex. Generate: python -c "import secrets;print(secrets.token_hex(32))"
|
||||
PSEUDO_KEY=
|
||||
|
||||
# --- Databases (docker compose overrides the URLs to point at the postgres service)
|
||||
POSTGRES_PASSWORD=postgres
|
||||
IDENTITY_DB_PASSWORD=identity_app
|
||||
CLINICAL_DB_PASSWORD=clinical_app
|
||||
IDENTITY_DB_URL=postgresql+asyncpg://identity_app:identity_app@localhost:5432/identity
|
||||
CLINICAL_DB_URL=postgresql+asyncpg://clinical_app:clinical_app@localhost:5432/clinical
|
||||
|
||||
# --- Telegram: prototype on synthetic data only; prod channel is MAX / Gosuslugi. Empty = bot disabled.
|
||||
TG_BOT_TOKEN=
|
||||
DOCTOR_NOTIFY_CHAT_ID=
|
||||
|
||||
# --- Demo virtual clock (ADR-005)
|
||||
DEMO_CLOCK=true
|
||||
TZ=Europe/Moscow
|
||||
|
||||
# --- Gitea (for Claude Code / team workflow, not used by the app)
|
||||
GITEA_URL=https://gitea.24studbank.ru
|
||||
GITEA_REPO=MedITron/PTSRaiAgent
|
||||
GITEA_USER=
|
||||
GITEA_TOKEN=
|
||||
Reference in New Issue
Block a user