Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 2 additions & 5 deletions .claude/agents/readme-hierarchy-auditor.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ Pour chaque repertoire sans README, en commencant par les plus profonds :

| Statistique | Valeur |
|-------------|--------|
| Notebooks | X |
| Kernel | [type] |
| Duree estimee | ~Xh |

Expand All @@ -78,7 +77,7 @@ Pour chaque repertoire sans README, en commencant par les plus profonds :
Pour chaque README existant, en remontant niveau par niveau :

1. **Verifier la coherence** :
- Nombre de notebooks correct ?
- Tous les notebooks du dossier sont-ils presentes (section ou ligne de table) ?
- Tous les fichiers references existent ?
- Liens vers sous-repertoires a jour ?

Expand All @@ -89,19 +88,17 @@ Pour chaque README existant, en remontant niveau par niveau :

3. **Corriger les erreurs** :
- Liens brises
- Statistiques obsoletes
- Totaux ecrits a la main (nombre de notebooks, cellules) : les supprimer au profit du bloc `CATALOG-STATUS`, jamais les remettre a jour
- Structure de repertoire changee

### Phase 4 : Consolidation README principal

1. **Collecter les informations** de tous les README intermediaires :
- Statistiques totales (notebooks, durees)
- Structure complete de l'arborescence
- Technologies utilisees

2. **Mettre a jour la cartographie** :
- Section "Structure du depot"
- Tableaux statistiques globaux
- Liens vers README intermediaires

3. **Identifier les incoherences** :
Expand Down
25 changes: 11 additions & 14 deletions .claude/agents/readme-updater.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: readme-updater
description: Update README files for notebook series (structure tables, navigation links, statistics). Use after adding or modifying notebooks in a series.
description: Update README files for notebook series (notebook presentation, structure tables, navigation links; totals are left to the catalogue regeneration). Use after adding or modifying notebooks in a series.
tools: Read, Glob, Grep, Bash, Write, Edit
model: haiku
memory: user
Expand Down Expand Up @@ -40,8 +40,6 @@ python scripts/notebook_tools/extract_notebook_skeleton.py [target_path] --outpu
```

2. **Analyser le resultat** pour identifier :
- Nombre de notebooks
- Cellules totales (markdown/code)
- Sections principales par notebook
- Kernels utilises
- Duree estimee
Expand All @@ -59,16 +57,16 @@ python scripts/notebook_tools/extract_notebook_skeleton.py [target_path] --outpu
3. **Determiner les sections a mettre a jour** :
- Tableaux de notebooks (toujours mettre a jour)
- Descriptions detaillees (si --full)
- Compteurs (total cellules, duree)
- **Jamais les totaux** (nombre de notebooks, cellules, comptes par langage) : ils relevent de la regeneration du catalogue (`CATALOG-STATUS`, #9377) ; une ligne de compte fausse se supprime au profit du renvoi au catalogue

### Phase 3 : Generation du contenu

#### Format du tableau principal

```markdown
| # | Notebook | Kernel | Cellules | Duree | Contenu |
|---|----------|--------|----------|-------|---------|
| 1 | [Name](Name.ipynb) | Python | 45 | ~30 min | Description courte |
| # | Notebook | Kernel | Duree | Contenu |
|---|----------|--------|-------|---------|
| 1 | [Name](Name.ipynb) | Python | ~30 min | Description courte |
```

#### Format des descriptions detaillees
Expand All @@ -81,7 +79,6 @@ Pour chaque notebook :
**Titre du notebook**

- **Kernel**: Python / .NET C# / Lean 4
- **Cellules**: X (MD: Y, Code: Z)
- **Duree**: ~N min
- **Prerequis**: Notebook(s) precedent(s)

Expand All @@ -107,7 +104,6 @@ Pour chaque notebook :
- La structure generale du document
3. **Mettre a jour** :
- Les tableaux avec les nouvelles donnees
- Les compteurs de cellules/durees
- Les descriptions si modifiees

## Criteres de qualite
Expand All @@ -123,16 +119,17 @@ Description courte de la serie.

| Statistique | Valeur |
|-------------|--------|
| Notebooks | N |
| Cellules totales | X |
| Duree estimee | ~Yh |
| Langages | [kernels] |
| Niveau | [debutant a avance] |

(Pas de total de notebooks ni de cellules : le decompte vit dans le bloc `CATALOG-STATUS`, regenere automatiquement.)

## Structure

### Partie 1 : [Theme]

| # | Notebook | Kernel | Cellules | Duree | Contenu |
|---|----------|--------|----------|-------|---------|
| # | Notebook | Kernel | Duree | Contenu |
|---|----------|--------|-------|---------|
...

### Partie 2 : [Theme]
Expand Down
2 changes: 1 addition & 1 deletion .claude/rules/pr-review-discipline.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ Single-seed ou single-fold = **CHANGES_REQUESTED** sauf flag explicite `[POC]` d

PRs uniquement docs/README/CLAUDE.md/rules : quand le diff est **fin**, le reflexe n'est pas le refus mais la question « **le geste peut-il etre etendu ?** » — proposer l'elargissement qui evite le saucissonnage (les fichiers voisins de la meme serie, les occurrences sœurs du meme defaut). Le refus reste la sortie quand l'extension a ete proposee et ecartee sans motif, et pour de multiples READMEs sans coherence cross-series.

**Feuille README (#3973/#3975) — audit fichier ENTIER obligatoire.** Une PR qui met à jour un compte / une statistique / un paragraphe dans un README de série DOIT prouver dans le body qu'elle a ré-audité le **fichier entier** contre le disque : (a) `ls`/`find` count par sous-dossier cité ; (b) réconciliation **disque ↔ `CATALOG-STATUS` ↔ prose** (catalogue faux : **signaler**, ne PAS s'aligner dessus) ; (c) listes, arbres de structure et breakdowns vérifiés à jour. Corriger l'intro en laissant une liste obsolète 100 lignes plus bas = `CHANGES_REQUESTED` ; le format « slim +5/−5 » ne dispense pas de l'audit, il le **plafonne à tort**.
**Feuille README — les totaux ne se mettent pas à jour à la main (arbitrage user 2026-09-24, #17029 revertée).** Total de notebooks, comptes par langage ou par sous-dossier, comptes de cellules, bandeaux « N notebooks » : ces statistiques dérivent à chaque ajout et relèvent de la **régénération du catalogue** (`CATALOG-STATUS` ; mandat user du 2026-08-04, #9377). Une PR de README dont la substance est une mise à jour de totaux = `CHANGES_REQUESTED`, quelle que soit la qualité de son audit. L'organe qui les repère est `python scripts/notebook_tools/check_prose_quantitative_claims.py --diff origin/main...HEAD` : son check-run `prose-counts` est advisory et rend `success` **même quand il trouve**, donc on lit sa sortie, pas sa couleur ; une ligne de compte fausse se **supprime** au profit du renvoi au catalogue, elle ne se remet pas à jour. Après l'ajout d'un notebook, la PR de README livre le **corps qui le présente** : sa section (ce qu'il démontre, ses outils, sa place dans le fil de la série), ses lignes dans les tables de navigation, les acquis et les parcours — contenu fidèle au notebook, lu avant d'écrire. Une PR qui corrige un passage d'un README ne laisse pas d'incohérence ailleurs dans le fichier (listes, arbres, liens) ; corriger l'intro en laissant une liste obsolète 100 lignes plus bas = `CHANGES_REQUESTED`.

### F. Audit reassessment / « false positive »

Expand Down
Loading