This commit is contained in:
parent
ef5f977f8a
commit
d7871736c8
10 changed files with 566 additions and 8 deletions
87
AGENTS.md
Normal file
87
AGENTS.md
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
# Agent Instructions
|
||||
|
||||
Sokko G est une webapp React + Vite + Sass centrée sur des toolboxes locales et des pages de jeu.
|
||||
|
||||
## Références projet
|
||||
|
||||
Avant de modifier un outil toolbox, le stockage IndexedDB, l'import/export ou les formats de données, lire :
|
||||
|
||||
- `docs/STORAGE_SCHEMA.md`
|
||||
- `docs/FEATURE_CHECKLIST.md`
|
||||
|
||||
Après ce type de modification, mettre à jour ces documents si le format ou le workflow change.
|
||||
|
||||
## Contenu éditable
|
||||
|
||||
Le contenu éditorial du site doit rester dans :
|
||||
|
||||
- `website/public/data/site.json`
|
||||
- `website/public/data/<gameId>/...`
|
||||
|
||||
Ne pas réintroduire de fallback massif type `DEFAULT_SITE_CONTENT` dans le code React. `site.json` est la source de vérité et `npm run check` doit échouer si le contenu requis est invalide.
|
||||
|
||||
## Outils toolbox
|
||||
|
||||
Chaque outil toolbox doit rester dans son propre fichier dans :
|
||||
|
||||
```text
|
||||
website/src/features/toolboxes/modules/
|
||||
```
|
||||
|
||||
Quand un outil est ajouté ou modifié :
|
||||
|
||||
- déclarer l'outil dans `website/src/features/toolboxes/modules/index.jsx` ;
|
||||
- ajouter les textes dans `website/public/data/site.json` ;
|
||||
- mettre à jour la validation dans `tests/helpers/data-validation.mjs` ;
|
||||
- mettre à jour la structure IndexedDB dans `docs/STORAGE_SCHEMA.md` si nécessaire ;
|
||||
- vérifier l'affichage page toolbox et panneau latéral.
|
||||
|
||||
## Style
|
||||
|
||||
Le style est en Sass dans `website/src/styles/`.
|
||||
|
||||
Privilégier :
|
||||
|
||||
- les tokens existants ;
|
||||
- les classes de boutons existantes ;
|
||||
- les patterns visuels déjà présents pour les cards, panels, badges, scrollbars et hovers.
|
||||
|
||||
Éviter les styles isolés qui ne réutilisent pas le thème.
|
||||
|
||||
## Validation
|
||||
|
||||
Avant de terminer une modification significative, lancer :
|
||||
|
||||
```bash
|
||||
npm run check
|
||||
```
|
||||
|
||||
Le check couvre la génération des index de listes, les tests et le build de production.
|
||||
|
||||
## Pré-push check
|
||||
|
||||
Quand l'utilisateur indique qu'il va push, faire une passe globale avant de conclure.
|
||||
|
||||
Vérifier et corriger si nécessaire :
|
||||
|
||||
- code mort, imports inutilisés, fonctions inutilisées, styles devenus obsolètes ;
|
||||
- duplication de code ou de style pouvant être factorisée sans complexifier le projet ;
|
||||
- composants qui utilisent des classes trop spécifiques alors qu'un pattern général existe déjà ;
|
||||
- incohérences entre boutons, badges, cards, panels, hovers, focus states et scrollbars ;
|
||||
- cohérence entre `website/public/data/site.json`, les validations et les textes utilisés ;
|
||||
- cohérence entre `docs/STORAGE_SCHEMA.md` et les normalisations IndexedDB réelles ;
|
||||
- import/export des toolboxes quand la structure de données a changé ;
|
||||
- champs inutiles persistés dans IndexedDB ou dans les exports ;
|
||||
- fichiers générés attendus, notamment les index de listes ;
|
||||
- optimisations simples de performance : recalculs au render, listeners non nettoyés, observers, effets CSS lourds appliqués en masse.
|
||||
|
||||
Utiliser en priorité :
|
||||
|
||||
```bash
|
||||
rg
|
||||
git status --short
|
||||
git diff --stat
|
||||
npm run check
|
||||
```
|
||||
|
||||
Ne pas faire de refactor large sans bénéfice clair. Garder les corrections pré-push ciblées, vérifiables et faciles à relire.
|
||||
Loading…
Add table
Add a link
Reference in a new issue