Commit Graph
12 Commits
Author SHA1 Message Date
Mouigni 272d14d623 Maj
Build & Deploy / build (push) Successful in 38s
2026-08-19 13:42:31 +02:00
Mouigni 742469b032 Mise à jour API, scraper CIR et tests
Build & Deploy / build (push) Successful in 17s
2026-08-16 17:13:43 +02:00
neckfireandClaude Opus 5 f8c8e16e7e Scrapers : endpoints de lancement à la demande et d'historique
Build & Deploy / build (push) Successful in 16s
La page admin appelait /admin/scrapers/logs et /admin/scrapers/run, absents de
l'API : 404 sur cet onglet.

- Nouvelle table scraper_runs (source, status, started_at, finished_at,
  documents_added, message), créée au boot par le create_all de entrypoint.sh.
- GET /admin/scrapers/logs : les 20 dernières exécutions, réservé aux admins.
- POST /admin/scrapers/run?source=CIR|SCCS : journalise puis lance le scraper en
  tâche de fond, et renvoie la ligne de journal attendue par le front. Refuse en
  409 si une exécution de la même source est déjà en cours.
- Le nombre de documents ajoutés est mesuré avant/après, comme le fait déjà le
  cron hôte.

Les imports de scrapers sont tardifs : ollama/pdfplumber/bs4 sont lourds et ne
servent qu'ici, inutile de les charger au démarrage de l'API.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-15 16:33:45 +02:00
neckfireandClaude Opus 5 97983ae5ba Rebranche la base sur DATABASE_URL (PostgreSQL partagé) au lieu du SQLite en dur
Build & Deploy / build (push) Successful in 34s
database.py codait la base en dur en SQLite et ignorait la variable
DATABASE_URL fournie par le compose. Le conteneur recréait donc un
/app/regwatch.db vide à chaque démarrage (aucun volume), pendant que les
397 documents réels dormaient dans PostgreSQL : GET /documents renvoyait
[] et le cron de veille comptait dans PG des documents que les scrapers
écrivaient dans le SQLite jetable.

- DATABASE_URL est lu depuis l'environnement, le SQLite ne reste qu'en repli.
- check_same_thread n'est passé que pour SQLite (psycopg2 le rejette).
- psycopg2-binary ajouté : aucun driver PostgreSQL n'était installé.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-15 15:01:17 +02:00
neckfireandClaude Opus 5 b780dce8c3 Relance CI (build #5 en échec : 502 Docker Hub sur python:3.12-slim)
Build & Deploy / build (push) Successful in 33s
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-15 14:27:10 +02:00
neckfireandClaude Opus 5 1e811c0b43 Retire le BOM UTF-8 en tête de entrypoint.sh et .gitignore
Build & Deploy / build (push) Failing after 6s
Le BOM (EF BB BF) précédait le shebang de entrypoint.sh : le noyau ne
voyait plus de shebang valide, d'où « exec ./entrypoint.sh: exec format
error » et le conteneur regwatch-backend en boucle de redémarrage.

Même BOM sur .gitignore, où il neutralisait le premier motif
(__pycache__/).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-15 14:18:15 +02:00
Mouigni ad84286259 Ajout admin
Build & Deploy / build (push) Successful in 41s
2026-08-13 23:46:41 +02:00
Mouigni c4aeedd032 Restauration : Docker + CI/CD + entrypoint
Build & Deploy / build (push) Successful in 28s
2026-08-12 00:09:18 +02:00
Mouigni 1f7d06c26d Restauration : fichiers Python depuis commit 4080a308ea 2026-08-11 23:33:24 +02:00
Mouignihazi 8df04dd679 Fix : gitignore + suppression __pycache__ et regwatch.db 2026-08-11 23:18:50 +02:00
Mouignihazi 36e211a524 Revert "Sécurité : validation EmailStr + tests complets 57/57 + RGPD"
This reverts commit 4080a308ea.
2026-08-09 21:30:14 +02:00
Mouignihazi 4080a308ea Sécurité : validation EmailStr + tests complets 57/57 + RGPD 2026-08-09 20:57:40 +02:00