chore: curatare agresiva comentarii — scoatere referinte US/PRD din cod si template-uri
Eliminat zgomotul de trasabilitate (US-xxx, PRD x.x, Rn, OV-x, Tn, decizii/naratiune istorica) din 41 fisiere app/ + template-uri. Pastrate comentariile care documenteaza invarianti si logica ne-evidenta (idempotenta/hash, reconciliere anti-duplicat, RAR 500 esec definitiv, creds per cont, WAF User-Agent, 422 fara echo de parola, scope NULL->1), curatate doar de tokeni. Verificare: pentru cele 27 module .py curatate, structura de cod (tokeni non-comentariu/ non-string) e IDENTICA fata de HEAD -> doar comentarii/docstring-uri schimbate. Singura schimbare de cod e in tests/test_web_responsive.py (scos 3 assert pe markeri US-006/007/008, inlocuite de asertiunile structurale alaturate). 0 tokeni US/PRD reziduali in app/. Regresie: 896 passed, 1 deselected. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,12 +1,11 @@
|
||||
"""Logger structurat central (PRD 5.6 US-003).
|
||||
"""Logger structurat central.
|
||||
|
||||
Singurul punct prin care se emit evenimente de aplicatie: garanteaza format,
|
||||
redactare si dublul canal (app_events in DB + log text rotativ) consistente si
|
||||
imposibil de ocolit. Best-effort ca `notify_signup`: o cadere a jurnalului NU
|
||||
doboara cererea/worker-ul.
|
||||
imposibil de ocolit. Best-effort: o cadere a jurnalului NU doboara cererea/worker-ul.
|
||||
|
||||
Redactare la SCRIERE (nu la afisare): toate valorile trec prin `redact_pii`
|
||||
(creds/token mascate integral, VIN/nr partial) inainte de persistare (US-007).
|
||||
(creds/token mascate integral, VIN/nr partial) inainte de persistare.
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
@@ -22,8 +21,8 @@ from .config import get_settings
|
||||
from .db import get_connection, insert_app_event
|
||||
from .security import redact_pii, scrub_text
|
||||
|
||||
# request_id al cererii curente (US-002). Setat de middleware-ul HTTP; disponibil
|
||||
# in handlerul de erori (US-001) si aici, fara a polua semnaturile de functii.
|
||||
# request_id al cererii curente. Setat de middleware-ul HTTP; disponibil in
|
||||
# handlerul de erori si aici, fara a polua semnaturile de functii.
|
||||
request_id_var: contextvars.ContextVar[str | None] = contextvars.ContextVar(
|
||||
"request_id", default=None
|
||||
)
|
||||
@@ -31,7 +30,7 @@ request_id_var: contextvars.ContextVar[str | None] = contextvars.ContextVar(
|
||||
_LEVELS = {"DEBUG": 10, "INFO": 20, "WARNING": 30, "WARN": 30, "ERROR": 40, "CRITICAL": 50}
|
||||
|
||||
# Sursa implicita a evenimentelor pentru procesul curent. API = 'api' (default);
|
||||
# worker-ul cheama set_source('worker') la pornire (T5: fisier per-proces).
|
||||
# worker-ul cheama set_source('worker') la pornire (fisier per-proces).
|
||||
_DEFAULT_SOURCE = "api"
|
||||
|
||||
_loggers: dict[str, logging.Logger] = {}
|
||||
@@ -46,9 +45,9 @@ def set_source(sursa: str) -> None:
|
||||
def _text_logger(sursa: str) -> logging.Logger:
|
||||
"""Logger cu RotatingFileHandler pe fisier per-proces (app-<sursa>.log).
|
||||
|
||||
Rotatia pe dimensiune e in aplicatie (decizie §5) — nu depindem de deploy.
|
||||
Cheia de cache include calea: la schimbarea log_dir (teste) se creeaza un logger
|
||||
nou, fara a acumula handlere duplicate pe acelasi fisier.
|
||||
Rotatia pe dimensiune e in aplicatie — nu depindem de deploy. Cheia de cache
|
||||
include calea: la schimbarea log_dir (teste) se creeaza un logger nou, fara a
|
||||
acumula handlere duplicate pe acelasi fisier.
|
||||
"""
|
||||
settings = get_settings()
|
||||
path = settings.log_dir / f"app-{sursa}.log"
|
||||
@@ -94,10 +93,10 @@ def log_event(
|
||||
) -> None:
|
||||
"""Emite un eveniment: un rand `app_events` + o linie in logul text (acelasi continut redactat).
|
||||
|
||||
- `tip`: text liber documentat (lista extensibila, decizie §5).
|
||||
- `tip`: text liber documentat (lista extensibila).
|
||||
- `nivel`: DEBUG|INFO|WARNING|ERROR|CRITICAL. Sub `AUTOPASS_LOG_LEVEL` -> ignorat.
|
||||
- `context`: metadate (submission_id, count, status...) — NU payload PII integral.
|
||||
- `conn`: reutilizeaza conexiunea apelantului pe calea fierbinte (evita contentie WAL, T4);
|
||||
- `conn`: reutilizeaza conexiunea apelantului pe calea fierbinte (evita contentie WAL);
|
||||
None -> deschide/inchide o conexiune proprie.
|
||||
Best-effort: orice exceptie e inghitita (jurnalul nu trebuie sa rupa fluxul).
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user