Files
_Assistant_Lead_Tech/knowledge/n8n/risques/general.md
MaksTinyWorkshop 9b7af9f1b0 Refonte Structure
2026-03-25 08:34:19 +01:00

68 lines
1.9 KiB
Markdown

# n8n — Risques & vigilance : Général
> Extrait de la base de connaissance Lead_tech. Voir `knowledge/n8n/risques/README.md` pour l'index complet.
---
<a id="risque-n8n-vigilance-generale"></a>
## Vigilance générale
- Différences de comportement entre n8n **cloud et self-hosted** (certains nodes, credentials, timeouts)
- **Expressions mal évaluées** : `{{ $json.field }}` peut retourner `undefined` silencieusement
- **Comportements implicites** des nodes : toujours tester les cas limites (null, tableau vide, erreur HTTP)
---
<a id="risque-n8n-if-node"></a>
## IF Node
### Risques
- Comparaisons ambiguës entre `null`, `undefined`, `""` et `false`
- Résultats surprenants si les types ne sont pas normalisés
### Symptômes
- Branche IF "inversée" par rapport à l'intuition
- Cas limites qui passent en prod mais pas en test
### Bonnes pratiques / mitigations
- Normaliser les données avant comparaison (string/number/bool)
- Tester explicitement `null` / `undefined`
- Logguer la valeur et le type en amont si doute
### Contexte technique
- Observé : (à compléter quand tu as un cas précis)
- n8n : (version à préciser)
---
<a id="risque-n8n-staticdata"></a>
## staticData (`$getWorkflowStaticData`)
### Risques
- Persistance entre exécutions (effet mémoire non voulu)
- Dépendance forte à l'`executionId` si on fait de l'agrégation
- Sensible aux upgrades n8n (comportements qui peuvent changer)
### Symptômes
- Données "fantômes" réutilisées
- Résultats incohérents entre exécutions
- Branches parallèles qui s'écrasent
### Bonnes pratiques / mitigations
- Toujours lier les données à `executionId`
- Nettoyer/reset explicitement à chaque run
- Documenter le pattern dès qu'il est utilisé
- Préférer un stockage externe si l'état devient critique (DB/Redis/etc.)
### Contexte technique
- Validé : oui (usage avancé)
- n8n : 1.121.2 / self-hosted / docker