CognxSafeTrack commited on
Commit ·
820d280
1
Parent(s): 75225ab
docs: add final audit report for fastify v4
Browse files
docs/audit_resolution_fastify_v4_final.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Compte-rendu de Résolution Critique : Compatibilité Fastify 4.x
|
| 2 |
+
|
| 3 |
+
## 1. État du Downgrade (package.json)
|
| 4 |
+
Le correctif a été appliqué en profondeur pour garantir qu'aucune dépendance indirecte ne tire de plugins Fastify v5.
|
| 5 |
+
|
| 6 |
+
### Lignes modifiées dans `apps/api/package.json` :
|
| 7 |
+
```json
|
| 8 |
+
"dependencies": {
|
| 9 |
+
"@fastify/cors": "^8.3.0",
|
| 10 |
+
"@fastify/jwt": "^8.0.1",
|
| 11 |
+
"@fastify/multipart": "^8.3.0",
|
| 12 |
+
"@fastify/rate-limit": "^9.1.0",
|
| 13 |
+
"@fastify/static": "^7.0.4",
|
| 14 |
+
"@fastify/view": "8",
|
| 15 |
+
"fastify": "^4.29.1",
|
| 16 |
+
"fastify-plugin": "^4.5.1"
|
| 17 |
+
}
|
| 18 |
+
```
|
| 19 |
+
|
| 20 |
+
## 2. Harmonisation Globale via Overrides (Root)
|
| 21 |
+
Pour neutraliser le blocage causé par `@bull-board/fastify` (qui tentait d'installer `@fastify/view` v11), j'ai ajouté des **overrides** à la racine du projet (`package.json`) :
|
| 22 |
+
|
| 23 |
+
```json
|
| 24 |
+
"pnpm": {
|
| 25 |
+
"overrides": {
|
| 26 |
+
"@fastify/view": "^8.2.0",
|
| 27 |
+
"@fastify/static": "^7.0.4"
|
| 28 |
+
}
|
| 29 |
+
}
|
| 30 |
+
```
|
| 31 |
+
|
| 32 |
+
## 3. Confirmation du Lockfile
|
| 33 |
+
- [x] **pnpm-lock.yaml mis à jour** : Une commande `pnpm install` a été exécutée avec succès après l'ajout des overrides.
|
| 34 |
+
- [x] **Validation** : Le lockfile confirme que même les dépendances de BullBoard utilisent désormais `@fastify/view@8.2.0` et `@fastify/static@7.0.4`.
|
| 35 |
+
|
| 36 |
+
## 4. Informations Techniques pour Redémarrage
|
| 37 |
+
- **Port** : L'API est configurée pour écouter sur le port **8080** (via `process.env.PORT` ou fallback).
|
| 38 |
+
- **Host** : Configuré sur `0.0.0.0` pour être accessible depuis le conteneur Hugging Face.
|
| 39 |
+
- **Secret** : Le champ `ENCRYPTION_SECRET` a été ajouté au `.env` pour éviter le crash du Worker au démarrage.
|
| 40 |
+
|
| 41 |
+
## 5. Conclusion
|
| 42 |
+
Le système est désormais **verrouillé en Fastify 4.x**. Le "Factory Rebuild" sur Hugging Face devrait maintenant passer sans erreur de version de plugin. Les changements ont été poussés sur GitHub et Hugging Face.
|