state: sync after #124 and #125

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
le king fu 2026-10-02 14:14:44 -04:00
parent 35ab0f64ae
commit 84048e976c

View file

@ -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`.