From 84048e976cdedec6ecc231639f697d40496b7190 Mon Sep 17 00:00:00 2001 From: le king fu Date: Fri, 2 Oct 2026 14:14:44 -0400 Subject: [PATCH] state: sync after #124 and #125 Co-Authored-By: Claude Opus 5.5 --- STATE.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/STATE.md b/STATE.md index 4be3215..6a646d9 100644 --- a/STATE.md +++ b/STATE.md @@ -1,19 +1,21 @@ # STATE — simpl-liste -> Derniere MAJ : 2026-09-27 (par analyze #120) +> Derniere MAJ : 2026-10-02 (par fix-issue #124, #125) ## Position actuelle -Version 1.6.6 (versionCode 18). **Zero HIGH/critical** apres #117 (PR #119) et #121 -(PR #122), 2026-09-25 : `npm audit` = 4 findings, 3 moderate (chaine `expo-router` -> -`query-string@7` -> `decode-uri-component`, inatteignable, #120 fermee en risque accepte) et 1 low +Version 1.6.6 (versionCode 18). `npm audit` = 10 entrees au 2026-10-02 apres #124/#125 +(PR #127) : 6 high qui sont une seule advisory `node-forge` et ses 5 parents (#123, bloquee +upstream, CLI Expo seulement), 3 moderate (chaine `expo-router` -> `query-string@7` -> +`decode-uri-component`, acceptation de #120 a re-tester dans #126) et 1 low (`postcss-selector-parser`). La remediation passe par des overrides de plancher dans `package.json` : -`esbuild`, `@xmldom/xmldom@^0.8.15`, `uuid`, `postcss`, `js-yaml` (3.15.2 / 4.3.2), `brace-expansion`, +`esbuild`, `@xmldom/xmldom@^0.8.15`, `uuid`, `postcss`, `js-yaml` (3.15.2 / 4.3.2), `brace-expansion` (1.1.21 / 2.1.7 / 5.0.12), `@babel/core`, `browserslist@^4.28.7`, `@react-navigation/core@^7.22.1`, et les 14 paquets `metro@^0.83.8`. Le smoke test verrouille la chaine de build (presets Expo -hoistes a la racine, un seul SDK Expo, metro 0.83.x partout). +hoistes a la racine, un seul SDK Expo, metro 0.83.x partout) et les planchers +`brace-expansion` / `undici` / comportement de `minimatch` (majeurs 3, 9, 10). **Caveat sur l'override metro** (releve par la review de PR #114) : `0.83.3 -> 0.83.8` n'est pas un bump de patch pur cote API privee. Trois shims de `@expo/metro@54.2.0`, @@ -29,6 +31,7 @@ Coolify malgre la spec). Procedure en memoire `simpl-liste-web-deploy`. ## Decisions recentes +- 2026-10-02 : #124 et #125 fermees (PR #127 merged) — planchers `brace-expansion` ^1.1.21 / ^2.1.7 / ^5.0.12 (9 advisories DoS neuves, toujours version-scoped) et `@expo/cli > undici` ^6.28.1 (resolu 6.29.0). Outillage de build seulement. Trois gardes au smoke test, dont le test `minimatch` qui manquait depuis #103. `npm audit` 12 -> 10. Ouvertes le meme jour : #123 (`node-forge`, tete publiee 1.4.0 vulnerable) et #126 (`decode-uri-component@0.5.0` publiee). - 2026-09-27 : #120 fermee en risque accepte (rectification du cadrage « attend un bump de SDK »). Aucune version d'expo-router (jusqu'a 58.0.8 / sdk-57) ne quitte `query-string@7`. expo-router n'appelle que `queryString.stringify()`, qui ne touche jamais `decode-uri-component` (le seul `parse()` du fork est commente) : code vulnerable inatteignable. A re-verifier a chaque bump d'expo-router. - 2026-09-25 : #121 fermee (PR #122 merged) — planchers `@xmldom/xmldom@^0.8.15` et `js-yaml` ^3.15.2 / ^4.3.2 (advisories HIGH du 2026-09-08, outillage de build seulement, hash du bundle Hermes inchange). Le Defenseur ne les avait pas signalees : hypothese de dedup par paquet contre issues fermees -> agent-defenseurs#139. - 2026-09-25 : #117 fermee (PR #119 merged) — override `@react-navigation/core@^7.22.1`, qui ne depend plus de `query-string` (GHSA-vcc3-ghjq-m6fr). Lock : 2 entrees. PR #118 du Defenseur fermee : son `npm audit fix` global desinstallait `babel-preset-expo`/`@expo/metro-config` de la racine et nichait un Expo 57 (build casse, tests verts). Gardes de toolchain ajoutees au smoke test. Residu `expo-router` -> #120. @@ -38,8 +41,8 @@ Coolify malgre la spec). Procedure en memoire `simpl-liste-web-deploy`. - 2026-07-27 : #68 merged (PR #101) — Feedback Hub integre (bouton Reglages > A propos, POST feedback.lacompagniemaximus.com app_id simpl-liste, opt-in contexte + identite Loi 25 ; client sans dependance teste via node:test). - 2026-05-30 : #90 merged (PR #93, ThemeToggle eslint-disable) + premier deploy web depuis 7 sem (rsync source/ + docker compose --build sur VPS) — #70 et #90 live sur liste.lacompagniemaximus.com. - 2026-05-30 : PR #89 merged — display name web resolu via userInfo (ordre fallback de la vitrine), fix #70. -- 2026-05-30 : nettoyage lint web/ (PR #91, 2 prefer-const + import inutilise) ; #90 analyse (ThemeToggle set-state-in-effect, decision : eslint-disable documente). ## Blockers actifs - Essai sur appareil a faire avant le prochain APK : core 7.22.1 tourne avec native/native-stack/bottom-tabs publies contre 7.14 (deep link vers une tache, onglets, pile). +- #123 : `node-forge` <=1.4.0 sans version corrigee. Surveiller `node-forge` > 1.4.0 ou le retrait de la dependance par `@expo/code-signing-certificates` / `@expo/cli`.