# Gateway RAR AUTOPASS — variabile de mediu (copiaza in .env; .env NU se comite). # Compose citeste .env automat. Prefix AUTOPASS_ pentru toate. # --- CRITIC: cheie criptare creds RAR (Fernet) --- # PARTAJATA intre api si worker (API cripteaza, worker decripteaza). Genereaza: # python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())" AUTOPASS_CREDS_KEY= # --- Auth API-key --- # true = orice /v1/* cere cheie valida (prod). false = dev (fara cheie -> cont id=1). # OBLIGATORIU in docker-compose.yml (:?) — vezi nota din compose. AUTOPASS_REQUIRE_API_KEY=false # --- Worker --- # Send catre RAR. false = nu trimite (default, sigur pentru probe). true = end-to-end. # OBLIGATORIU in docker-compose.yml (:?) — vezi nota din compose. AUTOPASS_WORKER_SEND_ENABLED=false # Dev: foloseste creds din settings.xml cand submission-ul nu are creds criptate. AUTOPASS_WORKER_USE_TEST_CREDS=false # --- RAR --- # test | prod. Ancora globala, NU tinta trimiterilor: dupa PRD 5.20 mediul RAR e # per submission/cont (worker-ul trimite dupa submissions.rar_env). Variabila asta # e doar fallback API pentru conturi fara medii disponibile, backfill la migrare # si afisaj dashboard. OBLIGATORIE in docker-compose.yml (:?) — vezi nota din compose. AUTOPASS_RAR_ENV=test # --- Sesiuni web --- # Secret semnat cookie sesiune, PARTAJAT intre restart-uri (fara el, fiecare # redeploy delogheaza toti userii). Genereaza: # python3 -c "import secrets; print(secrets.token_hex(32))" # OBLIGATORIU in docker-compose.yml (:?). AUTOPASS_SESSION_SECRET= # True (prod, implicit in compose): cookie de sesiune cu flag Secure (necesita HTTPS). # False: doar pentru smoke-test local pe HTTP simplu (browserul dropeaza cookie-ul # Secure pe HTTP, deci login-ul ar esua silentios cu true). AUTOPASS_SESSION_HTTPS_ONLY=true # --- Embeddings (sugestie mapare, Stratul 2 PRD 5.14) --- # false = dezactivat (default; /mapari instant, sugestii din GOLD/SILVER + fuzzy). # true = sugestii semantice. Prima cerere /mapari lazy-load-eaza modelul fastembed/ONNX # (~230MB pe disc) sincron -> hang la prima cerere. Doar API-ul il incarca. AUTOPASS_EMBEDDINGS_ENABLED=false # --- Backup SQLite criptat (T2/P0-4, vezi docs/backup.md) --- # TRIGGER DUR: backup-ul trebuie configurat INAINTE de prima declaratie reala in # prod. Baza e sistemul legal de evidenta (L.142/2023); FINALIZATA e terminal la # RAR, deci pierderea volumului fara backup produce duplicate necorectabile. # # Parola de criptare (gpg AES256) a backup-urilor — obligatorie, tools/backup_db.sh # refuza sa scrie un backup necriptat. Foloseste fisierul (secret montat), NU variabila # inline, in prod: AUTOPASS_BACKUP_PASSPHRASE_FILE= # Alternativa (ex. teste locale) — parola inline, evita in prod: AUTOPASS_BACKUP_PASSPHRASE= # Director destinatie backup-uri (pe volumul persistent, NU efemer). AUTOPASS_BACKUP_DIR=/data/backups # Cate backup-uri locale criptate se pastreaza (cele mai vechi se sterg). AUTOPASS_BACKUP_KEEP=14 # Tinta rclone optionala pentru upload off-site (ex. remote:bucket/autopass). Fara ea, # backup-ul ramane doar local pe volum — sarit explicit cu log, nu esec silentios. AUTOPASS_BACKUP_RCLONE_REMOTE=