From 7dba4014c4db1dbd2ca38ab95abe4679d3805593 Mon Sep 17 00:00:00 2001 From: Domi31tls Date: Thu, 2 Jul 2026 18:13:01 +0200 Subject: [PATCH] =?UTF-8?q?docs(build):=20torch-free=20+=20pr=C3=A9cache?= =?UTF-8?q?=20OnnxTR=20+=20version=20unifi=C3=A9e=20+=20runbook=20URL=20po?= =?UTF-8?q?rtail=20(P0-4/P1-8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- docs/beta/runbook-portail-beta.md | 9 +++++++++ docs/build-windows-oneclick.md | 27 +++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/docs/beta/runbook-portail-beta.md b/docs/beta/runbook-portail-beta.md index 4c5fd83..4043fc8 100644 --- a/docs/beta/runbook-portail-beta.md +++ b/docs/beta/runbook-portail-beta.md @@ -20,6 +20,15 @@ récupérer la GUI et d'activer sa licence. (le cookie Secure confirme que le fix `884661a` tourne — APP_ENV=production). ## 1. Publier l'installateur GUI comme artefact actif + +**Avant l'upload — vérifications obligatoires :** + +- [ ] Vérifier l'URL portail embarquée dans l'EXE fraîchement buildé : + lancer l'EXE avec `--self-test` et contrôler dans le log que + `resolve_portal_url()` retourne `https://app.aivanov.eu` (pas localhost). +- [ ] Mettre à jour le SHA-256 dans `note-beta-client.md` (le SHA change à + chaque rebuild — l'ancienne note devient caduque, P1-8). + **Pré-requis : l'EXE Windows doit d'abord être copié sur le serveur Linux** (il est aujourd'hui sur la machine de build Windows, non diffusé). Une fois sur le serveur, depuis `/home/dom/ai/app_aivanov` avec l'environnement prod chargé : diff --git a/docs/build-windows-oneclick.md b/docs/build-windows-oneclick.md index d07700e..8738df3 100644 --- a/docs/build-windows-oneclick.md +++ b/docs/build-windows-oneclick.md @@ -94,6 +94,33 @@ Sorties attendues identiques : diffusion ; - `release\Anonymisation.exe.sha256.txt` : hash de l'exécutable. +## Build GUI V6 torch-free (Plan 3) + +Depuis le Plan 3 (2026-07), le flavor `-GuiV6` : + +1. **Purge torch/optimum du venv de build** (P0-3) : `optimum[onnxruntime]` + (requirements.txt) tire `torch>=1.11` en dépendance cœur ; la GUI V6 ne + l'utilise jamais (NER = onnxruntime brut, OCR = OnnxTR). Le script échoue + si `torch` reste importable après purge. La spec legacy V5 + (`anonymisation_onefile.spec`) garde torch — ne pas builder V5 et V6 dans + le même venv sans réinstaller les requirements. +2. **Précache les poids OnnxTR** (P0-4) : `db_resnet50` + `crnn_vgg16_bn` + téléchargés explicitement avant PyInstaller (la spec raise s'ils manquent). + Le build ne dépend plus du cache résiduel de la machine. +3. **Injecte la version release** (P1-7) : `yyyy.MM.dd.HHmm` calculée une fois, + écrite dans `build_info.py` (BUILD_VERSION), `gui_v6/_build_version.py` + (affichage GUI + télémétrie) et l'installeur (`/DAppVersion`). En dev, + `gui_v6.__version__` retombe sur `6.0.0-dev`. + +### Validation torch-free (à chaque build) + +- Taille EXE mesurée et comparée au build précédent (~697 MB avec torch ; + attendu nettement inférieur — consigner la valeur). +- `Select-String -Path build\anonymisation_gui_v6_onefile\xref-*.html -Pattern "torch|optimum"` + → 0 résultat (l'arbo PyInstaller fait foi, pas le diff de la spec). +- Smoke OCR sur PDF scanné (`ocr_used=True`) : les poids OnnxTR viennent de + `_MEIPASS/models/onnxtr/models`, aucun téléchargement runtime. + ## Important - les utilisateurs finaux n'ont pas besoin d'installer Python