# STATE — simpl-liste > Derniere MAJ : 2026-09-27 (par analyze #120) ## 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 (`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`, `@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). **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`, ecrit contre 0.83.3, ne resolvent plus — `metro-resolver/utils/toPosixPath` et `metro/node-haste/Package` supprimes, `metro-file-map/lib/dependencyExtractor` deplace. Ils leveraient `MODULE_NOT_FOUND`, mais **aucun paquet de l'arbre ne les requiert** (203 des 206 imports profonds `metro*/private/...` resolvent). Inerte aujourd'hui ; a re-verifier au prochain bump du SDK Expo ou de `@expo/metro`. Companion web `liste.lacompagniemaximus.com` : deploye **manuellement** (docker-compose standalone `/data/simpl-liste-web` sur le VPS, build depuis `source/` rsync — PAS une app Coolify malgre la spec). Procedure en memoire `simpl-liste-web-deploy`. ## Decisions recentes - 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. - 2026-09-04 : #115 ouverte + PR #116 — `browserslist@^4.28.7` (2 advisories HIGH publiees le 2026-09-01, `first_patched_version = 4.28.7`). Resout en 4.28.9, derniere HIGH de l'arbre. Bundle Hermes au hash identique avant/apres : cibles de compilation inchangees. - 2026-09-04 : #112 fermee doublon de #108 ; PR #113 fermee sans merge (son diff ne contenait aucune occurrence d'`image-size` — 633/584 de churn de lockfile sans rapport). - 2026-09-04 : #108 fermee (PR #114 merged) — `image-size` retiree de l'arbre via overrides `metro@^0.83.8`. Le blocage upstream tient toujours (`first_patched_version = None`, `2.0.2` reste la derniere publiee) ; c'est metro qui a **supprime** la dependance et vendore un parseur reduit sans les formats ICNS/JXL/HEIF vises. Backport sur la ligne 0.83.x le 2026-08-19 — pas besoin du bump de SDK Expo anticipe. 9 HIGH -> 1 HIGH. - 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).