From 96e0627741165332604594a10ea4bbfe22b47a29 Mon Sep 17 00:00:00 2001 From: Siphonight Date: Tue, 8 Sep 2026 21:09:34 +0200 Subject: [PATCH] =?UTF-8?q?Docs=20:=20premi=C3=A8re=20release=20web=20publ?= =?UTF-8?q?i=C3=A9e=20(v1.4.10,=20cloudyfy)=20+=20statut=20conteneur=20r?= =?UTF-8?q?=C3=A9el?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - §10 : v1.4.10 = première release Gitea web (zip vérifié par téléchargement via scripts/publish-release.py, construit par git archive AU TAG) ; farewell en attente de la création du repo - §10 : statut conteneur = build + run réels validés localement (colima) ; container-test en configuration durcie vert ; deux problèmes du premier test documentés (tmpfs /tmp requis en read-only, case header_json curl) - README : lien releases + statut conteneur --- README.md | 4 +++- docs/DEVELOPPEMENT.md | 38 +++++++++++++++++++++++--------------- 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 0d41423..8a0a680 100644 --- a/README.md +++ b/README.md @@ -18,8 +18,10 @@ > endocrinologue. - **Statut** : web v1.4.10 — portage de l'Android v1.4.10 · **121 tests verts** · - E2E navigateur ✅ · lint/i18n ✅ + E2E navigateur ✅ · conteneur testé en configuration durcie ✅ · lint/i18n ✅ - **Journal des versions web** : [docs/CHANGELOG.md](docs/CHANGELOG.md) +- **Releases** : [gitea.cloudyfy.fr/Siphonight/HormoneTrack-web/releases](https://gitea.cloudyfy.fr/Siphonight/HormoneTrack-web/releases) + (zip de déploiement statique vérifié par téléchargement) - **Versionnage** : les versions web sont **alignées sur l'Android porté** (web v1.4.10 = toutes les fonctionnalités de l'Android v1.4.10, sauf les impossibilités structurelles du navigateur) — cf diff --git a/docs/DEVELOPPEMENT.md b/docs/DEVELOPPEMENT.md index 1b5094e..5670e41 100644 --- a/docs/DEVELOPPEMENT.md +++ b/docs/DEVELOPPEMENT.md @@ -458,10 +458,13 @@ Règles de code (appliquées partout, à conserver) : Les releases web sont **SYNCHRONISÉES avec les releases APK** (décision du 8 sept. 2026) : chaque feature release de l'Android est portée et tagguée au MÊME numéro dans ce dépôt — l'utilisatrice a toujours la parité des -fonctionnalités (sauf impossibilités structurelles §12). La publication -Gitea (release avec assets) du côté web est GELÉE tant que la qualité n'est -pas validée au standard APK : en attendant, une release web = commit + tag -UNIQUEMENT. +fonctionnalités (sauf impossibilités structurelles §12). + +**v1.4.10 = la première release web publiée (8 sept. 2026, cloudyfy)** : +tag + release Gitea avec l'archive zip de déploiement, APRES validation +complète (121 tests unitaires + E2E navigateur local + container-test réel +en configuration durcie). Le dépôt farewell reste en attente de la création +du repo (one-shot côté Gitea). ### Remotes @@ -502,11 +505,13 @@ push initial v1.2.3, cf doc Android §16.) 4. **Releases Gitea** : - Android : `publish-release.py` sur les deux instances (2 APK), cf doc Android §16.bis ; - - Web : **GELÉ** tant que la parité qualité n'est pas validée — sinon - créer la release avec le corps = section `docs/CHANGELOG.md` et, si - un jour on distribue un zip, le vérifier par téléchargement (leçon - #43 Android : une invocation fait tout, les uploads rapprochés se - remplacent mutuellement). + - Web : `python3 scripts/publish-release.py cloudyfy vX.Y.Z` — + crée/met à jour la release (corps = section `docs/CHANGELOG.md`) et + attache l'archive `HormoneTrack-web-vX.Y.Z.zip` construite PAR + `git archive` AU TAG (jamais le working tree), vérifiée par + téléchargement (uid des leçons #37/#43 Android : une invocation fait + tout, vérif par téléchargement, échec bruyant). Idem `farewell` une + fois le repo créé. 5. **Smoke-test** : Android sur le Pixel 9 (checklist §21 Android) ; web sur le navigateur : import d'un backup réel, pan/zoom, export/import, langue. @@ -564,13 +569,16 @@ HRT_E2E_BASE=http://127.0.0.1:8080 node scripts/e2e.mjs `/js/ui/app.js`, `/docs/CHANGELOG.md` — les mêmes que le smoke HTTP de `check.sh --with-serve`. -**Statut (8 sept. 2026)** : fichiers + docs prêts et relus — build NON -exécuté localement (aucun daemon Docker sur la machine de dev, CLI seule) ; -la configuration compose (`read_only`/tmpfs) est le pattern standard de -nginx-unprivileged, à valider au premier `docker compose up` sur l'hôte -cible. Si le durcissement pose problème sur ton NAS : retirer +**Statut (8 sept. 2026)** : build et run RÉELS validés localement via +colima (daemon Docker léger, 2 CPU / 2 Go) — `scripts/container-test.sh` +vert en configuration DURCIE (healthcheck healthy, endpoints, headers, +gzip, MIME, E2E complet contre le conteneur). Deux problèmes réels trouvés +et corrigés au premier test : (a) tmpfs `/tmp` REQUIS en read-only (les +temporaires de nginx-unprivileged — « mkdir /tmp/proxy_temp failed » +sinon), (b) curl `%header_json` minuscule les clés (bug du TEST, pas du +conteneur). Si le durcissement pose problème sur ton NAS : retirer `read_only`/`tmpfs`/`security_opt` du compose (aucune perte de sécurité -cruciale — le conteneur ne détient rien, cf plus haut). +cruciale — le conteneur ne détient rien). ## 11. Bugs potentiels évités pendant le portage