Files
cursor/desk/agents/fix-lint.md
Nicolas Cantu 785868b53b Initial: desk + ncantu placeholder + per-project cursor configs
**Motivations:**
- Centraliser les fichiers Cursor (rules, skills, agents, commands, hooks) par user et par projet

**Root causes:**
- N/A

**Correctifs:**
- N/A

**Evolutions:**
- desk: rules, skills-cursor, agents, commands, hooks, argv/hooks/mcp.json
- ncantu: README placeholder
- 4NK_node, algo, builazoo, ia_local, lecoffre_ng, lecoffre_ng_pprod, lecoffre_ng_test: .cursor contents

**Pages affectées:**
- cursor/desk/, cursor/ncantu/, cursor/<project>/
2026-03-03 23:29:29 +01:00

72 lines
2.7 KiB
Markdown

---
name: fix-lint
description: Corrige les erreurs de lint backend, frontend et ressources partagées. Use when lint errors need to be fixed across the monorepo.
model: inherit
is_background: true
---
# Corriger les erreurs de lint (backend, frontend, ressources)
Vérifie que les règles de lint n'ont pas été réduites ou desactivées dans les configurations et dans le code.
Corrige toutes les erreurs de lint du projet sans contournement ni désactivation des règles.
## Contrainte absolue
**NE JAMAIS modifier ni ce fichier ni aucun fichier dans `~/.cursor/`.** Ta tâche est UNIQUEMENT de corriger les erreurs de lint dans le code du projet (lecoffre-back-main, lecoffre-front-main, lecoffre-ressources-dev). Ne pas modifier ni améliorer la définition de cet agent.
## Première action obligatoire
Exécuter immédiatement `npm run lint` dans chaque application pour lister les erreurs. Ne pas modifier de fichiers avant d'avoir la liste des erreurs.
## Périmètre
- **Backend** : `lecoffre-back-main``npm run lint`
- **Frontend** : `lecoffre-front-main``npm run lint`
- **Ressources partagées** : `lecoffre-ressources-dev``npm run lint`
## Concurrence
Ne pas lancer si un déploiement est en cours. Si un déploiement est demandé pendant l'exécution, s'arrêter proprement. Voir docs/WORKFLOWS_AND_COMPONENTS.md §10.2.1.
## Processus
1. Exécuter `npm run lint` dans chaque application pour lister les erreurs
2. Corriger par lots de 10 erreurs maximum
3. Entre chaque lot : lancer un test de build/typecheck pour valider
4. Ne jamais contourner : pas de `eslint-disable`, pas de désactivation de règles
5. Appliquer les patterns du projet : extraction de helpers, découpage de fichiers, objets de configuration pour réduire les paramètres
## Règles applicables (docs/CODE_STANDARDS.md)
- max-lines : 250
- max-lines-per-function : 40
- max-params : 4
- max-depth : 4
- complexity : 8
- max-nested-callbacks : 3
- Autres règles du projet
## Stratégies de correction
Dans l'ordre:
1. Autres règles du projet
2. - **max-params** : regrouper dans un objet de configuration typé
3. - **complexity** : extraire des branches dans des fonctions dédiées
4. - **max-depth** : aplatir les imbrications avec early return
5. - **max-lines / max-lines-per-function** : extraire des helpers, découper en sous-composants
## Finalisation
- Si des variables ont été préfixées de "_" les supprimer et mettre à jour le code
- Si des mutualisations/contralisations/simplifications sont possibles fait le
- Si du texte peut être passsé sous i18n fait le
- Supprime le code mort.
- Lance le subagent `/docupdate`
## Références
- `docs/CODE_STANDARDS.md`
- `docs/OPERATIONS.md` (section Transition ESLint 250/40)
- `.cursor/rules/rules.mdc`