diff --git a/05_activity_log/2026-08-05.md b/05_activity_log/2026-08-05.md index 0f98565..c7d8ab1 100644 --- a/05_activity_log/2026-08-05.md +++ b/05_activity_log/2026-08-05.md @@ -1279,3 +1279,46 @@ mémoire ordonne LEAVE/don't-harmonize : la doc est correcte, c'est le lecteur q CLEAN sur les 26 modules ce jour, et le faux-positif `validate [-o OUT]` a **récidivé une 3ᵉ fois** (re-signalé par un `Explore` neuf malgré l'amorce de SKIP) → confirme qu'il faut le garder documenté comme piège, pas le "corriger". + +--- + +## Session 20260805_141301 · SWEEP neuf *forward-compat warnings* — 25 suites sous `-W error` → **CLEAN** (classe absente de la mémoire) + +**Contexte + choix de tâche.** `./run_ci.sh` au démarrage : **33 PASS · 0 FAIL · 0 SKIP**, arbre +propre (HEAD `48b19b9`). Roadmap `ROADMAP_8_WEEKS_OR_LESS.md` intégralement livrée/gatée in-repo ; +restes S3/S5/S6 (refactor BIM, builds EAS, dépôts ONAPI, déploiement prod) **hors périmètre worker** +(`CLAUDE.md` #8). Les surfaces de dérive usuelles sont saturées et le daily_report `2026-08-05` + +`OPEN_DECISIONS_REGISTER` sont courants — les ré-attester serait du churn (#5, déjà signalé ce jour, +cf. 121234/134254). J'ai donc visé une **classe de vérification que la mémoire ne couvre PAS** : +la **compatibilité Python future** du corpus de tests. + +**Hypothèse de risque.** Le runner tourne aujourd'hui sous **Python 3.10.12** ; toutes les suites +sont VERTES. Mais un `DeprecationWarning`/`SyntaxWarning`/`ResourceWarning` émis silencieusement +aujourd'hui (ex. escape-séquences d'expression régulière non-`r""`, `datetime.utcnow()`, sockets/ +fichiers non fermés) reste **invisible aux tables de currency** : la CI est verte tant que le warning +n'est pas promu en erreur — ce qui arrive tout seul à un futur bump d'interpréteur. Un vrai **faux +vert forward-looking**, orthogonal aux axes *teeth* (qui prouvent que les gates mordent *aujourd'hui*). + +**Méthode (lecture seule).** Rejeu des **25 suites** de `gate.needs` (bijection 25 dossiers `tests/` +↔ 25 jobs, déjà gatée) avec les warnings promus en erreurs : +`python3 -W error::DeprecationWarning -W error::SyntaxWarning -W error::PendingDeprecationWarning -W error::ResourceWarning -m unittest discover -s tests` +depuis le `working-directory` de chaque module. Le `tests/` **racine** a aussi été balayé : il rend +« Ran 0 tests » — attendu, c'est la suite **Playwright e2e** (`smoke.spec.ts`, TypeScript, job manuel +`workflow_dispatch` `e2e-baseline` hors gate de merge car exige un serveur live), pas une suite python. + +**Résultat — CLEAN.** **25/25 suites OK** sous warnings-as-errors (624 tests au total, cohérent avec +`regression_run.json`). **0 warning latent** dans tout le corpus python : le corpus est prêt à un +futur durcissement d'interpréteur sans régression silencieuse. Aucune suite ne dépend d'une API +dépréciée ni n'émet de `ResourceWarning` (pas de handle de fichier/socket fuité dans les fixtures). + +**Portée / anti-churn.** **0 fichier de production édité**, **0 artefact reconstruit** (aucun +`out/*.json` touché → pas de rebuild `quality_report`, cf. [[audit4big-rebuild-after-doc-edits]]), +**0 gate ajouté** (#5 — attester ≠ multiplier les gates ; ce n'est pas une *classe de dérive* mais +une propriété forward-compat, re-jouable à la demande via la commande ci-dessus après tout bump +Python ou ajout de suite), **0 chiffre saisi à la main** (#6 — 25 et 624 dérivés de `gate.needs`/du +runner), **0 commande VPS** (#8 — sweep 100 % local & lecture seule). Seule édition : ce journal + +une entrée mémoire neuve. + +**Vérif.** `git status --short` avant le sweep = vide (lecture seule) ; `./run_ci.sh` après → +**33 PASS · 0 FAIL · 0 SKIP** (aucun fichier gaté touché). Nouvelle mémoire *forward-compat warnings +sweep* consignée pour re-jeu futur.