feat(foundation): schema Treapta 2 + migrari aditive + openpyxl pinned (#1)

- accounts.rar_creds_enc TEXT (creds RAR durabile per-cont, D4)
- submissions.batch_id, row_index (T7 scoping R1)
- submissions.purge_after (T16 GDPR)
- Tabele noi: column_mappings, import_batches, import_rows, import_attestations
- _migrate idempotent pe DB veche (ALTER aditiv, pattern existent)
- openpyxl==3.1.5 adaugat in requirements.txt (Issue 4, PINNED)
- 15 teste noi: coloane, tabele, idempotenta, migrare DB veche, openpyxl

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Claude Agent
2026-06-16 20:13:19 +00:00
parent 4295a0aa31
commit 80897ccbb1
4 changed files with 270 additions and 14 deletions

View File

@@ -12,5 +12,8 @@ rapidfuzz==3.14.5
# Criptare creds RAR efemere in submissions (app/crypto.py, Fernet). Zero-storage at rest.
cryptography==46.0.5
# Parsare xlsx/xls pentru import fisiere (Treapta 2, Issue 4 — PINNED).
openpyxl==3.1.5
# Migrare DBF (tools/import_dbf.py). Necesar doar pentru import optional, nu pentru runtime.
dbfread==2.0.7