# Data Retention / Patient Anonymization — notatki

## Anonimizacja a hard delete

Hard delete usuwa rekordy fizycznie z bazy.

Anonimizacja zachowuje strukturę danych i część historii operacyjnej, ale usuwa dane identyfikujące pacjenta. To jest bezpieczniejsze dla raportów, statystyk i historii systemu.

## Dlaczego nie nadpisujemy hashy tokenów publicznych

Tokeny w `public_patient_links` są zapisane jako SHA-256. Przy anonimizacji zmieniamy status linku na `anonymized`, ale nie nadpisujemy token_hash jedną wartością, żeby nie naruszyć indeksu unikalnego.

## Czyszczenie kont testowych

Automatyczne czyszczenie testów powinno być uruchamiane najpierw w trybie bezpiecznym. Dopiero po potwierdzeniu reguł można włączyć działanie CRON.

## Raport zgodności

Raport nie jest formalnym audytem prawnym, ale operacyjnym raportem stanu danych w systemie OS.

## Następny krok

Po potwierdzeniu 0.34.0 kolejnym etapem może być:
- polityki retencji per typ danych,
- automatyczne wygaszanie publicznych linków,
- panel eksportu danych pacjenta,
- workflow obsługi żądania pacjenta: eksport / anonimizacja / hard delete.
