Files
arthur 7496aafe64 lint(limagrain): corrections completes Phase 1+2
- Bloquants: mermaid 03-picking/_index reconstitue (archive 11-05), 13 liens vers pages squelette retires, 2 liens recibles (anoxie, application-dictionary)
- Conventions: 910 em dashes -> tirets simples, 145 checklists -> puces question, 13 questions resolues barrees
- Liens: 9 ancres reparees (slugs GitHub)
- Delta: 12 standard_ref remappes, blocs Standard EasyWMS + sections References ajoutes, front matter complete
- Glossaire: 15 termes standard deplaces en section rappel avec renvoi
- Rapport: limagrain/_lint_report.md (Phase 1 + Phase 2 + re-scan final)
- Inclut les pages des sessions precedentes non commitees + CLAUDE.md et consume.log en l'etat
2026-07-20 12:56:42 +02:00

24 KiB
Raw Permalink Blame History

CLAUDE.md — Wiki EasyWMS (Cowork)

Mission

Tu maintiens un wiki EasyWMS en Markdown composé de deux parties indépendantes :

  • Le wiki standard EasyWMS (dossiers architecture/, concepts/, modules/, operations/, glossary.md) - documentation générique du produit EasyWMS. Également accessible via le MCP server wms-wiki.
  • Le wiki projet Limagrain (dossier limagrain/) - documentation du delta projet : customs, configurations, décisions, flux spécifiques. Chaque page renvoie vers la page standard correspondante quand un concept générique existe.

Modes de travail

Ce dépôt fonctionne selon deux modes exclusifs. Le mode détermine le périmètre d'écriture ; l'autre wiki est en lecture seule.

Sélection du mode

Comportement par défaut : toujours demander. Si Arthur ne précise pas le mode dans son prompt, demande-lui avant de commencer toute modification :

« On travaille sur le wiki standard ou sur le wiki Limagrain ? »

Déclencheurs explicites :

  • mode: standard ou mention explicite du wiki standard → mode standard
  • mode: limagrain ou mention explicite du wiki Limagrain / projet → mode limagrain

mode: standard - Wiki standard EasyWMS

Aspect Règle
Écriture architecture/, concepts/, modules/, operations/, glossary.md, _index.md
Lecture seule limagrain/ (ne jamais modifier)
Template Template standard (voir section dédiée)
Workflow Workflow de consommation structuré (sources → intégration → log → archivage)
Index Mettre à jour _index.md si des pages sont créées/modifiées
Glossaire Mettre à jour glossary.md si de nouveaux termes apparaissent

mode: limagrain - Wiki projet Limagrain

Aspect Règle
Écriture limagrain/ uniquement. Exception : _index.md racine (section ## Limagrain — Projet seulement)
Lecture seule architecture/, concepts/, modules/, operations/, glossary.md (ne jamais modifier)
Template Template Limagrain (voir section dédiée)
Workflow Workflow de consommation structuré (sources → intégration → log → archivage)
Delta uniquement Ne jamais dupliquer le standard ; renvoyer vers lui et ne documenter que le delta
Glossaire Mettre à jour limagrain/glossaire-limagrain.md si de nouveaux termes apparaissent
README Mettre à jour limagrain/README.md si des pages sont créées

Règle de cloisonnement

Ne jamais modifier un fichier hors du périmètre d'écriture du mode actif. Cette règle est absolue. Si une modification semble nécessaire dans l'autre périmètre, le signaler à Arthur et lui proposer de changer de mode.


Arborescence

wiki-ameliorator-v2_x-Limagrain/        ← racine du dépôt
│
├── CLAUDE.md                            ← CE FICHIER
│
├── ── WIKI STANDARD (écriture en mode standard) ──
├── architecture/                        ← 6 pages standard
├── concepts/                            ← 35 pages standard
├── modules/                             ← 24 pages standard
├── operations/                          ← 19 pages standard
├── glossary.md                          ← glossaire standard
├── _index.md                            ← index global (standard + Limagrain)
├── _lint_report.md
├── _log.md
│
├── ── SOURCES (inbox) ──
├── sources/                             ← déposer ici les ressources à intégrer
│   └── archives/                        ← ressources déjà traitées
│
├── ── JOURNAL ──
├── consume.log                          ← journal de consommation (append-only)
│
└── ── WIKI LIMAGRAIN (écriture en mode limagrain) ──
    limagrain/
    ├── README.md                        ← index + table des matières du wiki Limagrain
    ├── glossaire-limagrain.md           ← termes et acronymes spécifiques projet
    │
    ├── 01-inbound/
    │   ├── _index.md
    │   ├── reception-fournisseur.md
    │   ├── reception-retour.md
    │   ├── controle-qualite-reception.md
    │   └── flux-erp-inbound.md
    │
    ├── 02-stockage/
    │   ├── _index.md
    │   ├── asrs-miniload.md
    │   ├── galileo-config.md
    │   ├── putaway-strategies.md
    │   ├── zones-stockage.md
    │   └── defragmentation.md
    │
    ├── 03-picking/
    │   ├── _index.md
    │   ├── picking-combinatoire.md
    │   ├── stations-picking.md
    │   ├── waves-groupes.md
    │   └── replenishment.md
    │
    ├── 04-outbound/
    │   ├── _index.md
    │   ├── flux-expedition.md
    │   ├── shipping-orders.md
    │   ├── consolidation-chargement.md
    │   └── flux-erp-outbound.md
    │
    ├── 05-agv/
    │   ├── _index.md
    │   ├── still-igo-integration.md
    │   ├── agv-stations-routes.md
    │   └── agv-troubleshooting.md
    │
    ├── 06-erp-interface/
    │   ├── _index.md
    │   ├── messages-reference.md
    │   ├── mapping-erp-wms.md
    │   └── interface-monitoring.md
    │
    ├── 07-admin/
    │   ├── _index.md
    │   ├── utilisateurs-groupes.md
    │   ├── parametres-projet.md
    │   └── ad-customs.md
    │
    ├── 08-transverse/
    │   ├── _index.md
    │   ├── jira-tickets-cles.md
    │   ├── decisions-architecture.md
    │   ├── questions-ouvertes.md
    │   └── historique-projet.md
    │
    └── assets/

L'arborescence limagrain/ ci-dessus est le squelette initial. Tu peux créer de nouvelles pages ou sous-dossiers si le contenu le justifie — respecte les conventions ci-dessous et mets à jour limagrain/README.md en conséquence.


Workflow de consommation

Ce workflow s'applique aux deux modes. Quand Arthur demande d'intégrer des ressources ou quand des fichiers sont détectés dans sources/ :

Étape 1 — Inventaire

Lis le contenu de sources/ (ignore archives/) et liste les fichiers présents. Pour chaque fichier, identifie :

  • Le type (Confluence export, note Obsidian, mail, Excel, PDF, Word, capture d'écran)
  • Le domaine fonctionnel probable
  • Les infos clés à extraire
  • Le mode cible : standard ou limagrain (si mixte, le signaler)

Présente ce résumé à Arthur avant de commencer l'intégration. Confirme le mode actif si pas encore établi.

Étape 2 — Rédaction / Mise à jour

Pour chaque ressource :

  1. Vérifie le contexte existant : consulte les pages concernées via le wiki local ET/OU appelle wms-wiki:search_wiki ou wms-wiki:get_wiki_page via MCP
  2. Identifie la page cible dans le périmètre d'écriture du mode actif (existante ou à créer)
  3. Rédige ou mets à jour la page en respectant le template du mode actif
  4. Cross-référence : ajoute des liens vers les autres pages du même wiki si pertinent
  5. Mets à jour le glossaire du mode actif si de nouveaux termes apparaissent
  6. Mets à jour l'index : _index.md (mode standard) ou limagrain/README.md (mode limagrain)

Spécifique mode limagrain : ne documenter que le delta par rapport au standard. Renvoyer vers la page standard pour les concepts génériques.

Étape 3 — Log et archivage

Après intégration de chaque fichier :

  1. Ajoute une entrée dans consume.log à la racine (format ci-dessous), en précisant le mode
  2. Déplace le fichier de sources/ vers sources/archives/

Étape 4 — Compte rendu

Après chaque session d'intégration, résume à Arthur :

  • Mode utilisé
  • Fichiers consommés
  • Pages créées ou modifiées
  • Nouvelles cross-références
  • Questions ouvertes identifiées
  • Termes ajoutés au glossaire

Format du consume.log

Fichier append-only à la racine du dépôt. Chaque session est datée avec le mode utilisé, chaque fichier a une entrée.

## [2026-05-05] session-001 (mode: limagrain)

- **Fichier** : `CR_reunion_picking_2026-04-15.pdf`
  **Type** : CR réunion
  **Action** : Mis à jour `limagrain/03-picking/picking-combinatoire.md` (ajout section CstAtt handshake)
  **Cross-refs** : Lien ajouté depuis `limagrain/04-outbound/flux-expedition.md`
  **Questions** : "Valeur par défaut CstAtt quand lot inconnu ?" → ajouté dans `limagrain/08-transverse/questions-ouvertes.md`

## [2026-05-10] session-002 (mode: standard)

- **Fichier** : `Notes_reception_multi-reference.md`
  **Type** : Notes techniques
  **Action** : Mis à jour `concepts/reception.md` (ajout section réception multi-référence)
  **Cross-refs** : Lien ajouté depuis `modules/inbound.md`
  **Questions** : aucune

Templates de page wiki

Template standard (mode: standard)

Chaque fichier .md dans architecture/, concepts/, modules/, operations/ suit la structure ci-dessous. Les sections sont adaptables au sujet - seuls le front matter, l'Overview et la section Related sont obligatoires. Les autres sections sont des suggestions courantes à utiliser quand elles sont pertinentes.

Langue : anglais (cohérent avec les pages existantes). Termes techniques WMS en anglais.

---
title: "Page Title"
type: concept | module | architecture | operation
sources:
  - areas/path/to/source.md
  - sources/archives/source-file.md
related:
  - concepts/other-page.md
  - modules/related-module.md
last_compiled: "2026-05-15"
---

# Page Title

## Overview

1-2 paragraphes décrivant le concept, module ou opération. Contexte fonctionnel, rôle dans EasyWMS, et relations principales avec les autres composants.

## (Sections libres adaptées au sujet)

Le corps de la page est structuré librement selon le sujet. Les sections suivantes sont des patterns courants dans le wiki existant - les utiliser quand elles sont pertinentes, les omettre ou les adapter sinon :

- **Architecture / Communication protocol** — pour les pages techniques (galileo, AGV, etc.)
- **Parameters** — tableau des paramètres de configuration liés au sujet :

| Parameter | Effect |
|---|---|
| `PARAM_NAME` | Description de l'effet |

- **ERP Integration** — tableau des messages ERP liés :

| Message | Direction | Trigger |
|---|---|---|
| `MSG` | ERP → WMS | Description |

- **Common Errors** — erreurs fréquentes avec cause et solution
- **Interface Paths** — chemins UI (PC/SmartUI et RFT) pour accéder aux fonctionnalités :

| Path | Equipment | Description |
|---|---|---|
| `Menu > Sub-menu` | PC / RFT | Description |

## Related

- [concepts/other-page.md](../concepts/other-page.md) — brève description du lien
- [modules/related-module.md](../modules/related-module.md) — brève description du lien

Règles front matter :

  • type : obligatoire, une des 4 valeurs (concept, module, architecture, operation)
  • sources : liste des fichiers sources utilisés pour compiler la page (chemins relatifs)
  • related : liste des pages liées (chemins relatifs depuis la racine du dépôt)
  • last_compiled : date ISO de dernière mise à jour significative

Template Limagrain (mode: limagrain)

Chaque fichier .md dans limagrain/ doit suivre cette structure :

---
title: "Titre de la page"
tags: [domaine, sous-domaine, concept]
status: draft | review | validated
standard_ref: concepts/reception.md
jira_refs: [LIM-70, LIM-75]
confluence_refs: []
sources: []
last_updated: 2026-05-05
author: Arthur
---

# Titre de la page

> **Résumé** : 1-2 phrases décrivant le sujet et pourquoi c'est spécifique Limagrain.

> **Standard EasyWMS** : → voir [Nom page standard](../../concepts/page.md)
> Ce qui suit documente les **spécificités Limagrain** par rapport au standard.

## Contexte projet

Pourquoi ce sujet est spécifique chez Limagrain. Quel besoin métier.

## Configuration / Implémentation

Détails techniques : paramètres, valeurs, éléments AD customs.

## Flux fonctionnel

Description du flux. Utiliser un diagramme Mermaid si pertinent :

```mermaid
sequenceDiagram
    participant ERP
    participant WMS
    ERP->>WMS: SOR01
    WMS->>WMS: Stock assignment
    WMS-->>ERP: SOF01
```

## Points d'attention

⚠️ Particularités, pièges connus, bugs rencontrés, workarounds.

## Questions ouvertes

- [ ] Question 1 (@Théo)
- [ ] Question 2 (@Michael)

## Historique des modifications

| Date | Auteur | Modification |
|------|--------|-------------|
| 2026-05-05 | Arthur | Création initiale |

## Références

| Source | Type | Date |
|--------|------|------|
| Jira LIM-70 | Ticket | 2025-xx-xx |
| "Titre page" Confluence | Page | 2025-xx-xx |
| CR réunion picking | PDF | 2026-04-15 |

Template _index.md (sommaire de section)

---
title: "Inbound — Vue d'ensemble"
tags: [inbound, index]
status: draft
last_updated: 2026-05-05
---

# Inbound — Vue d'ensemble

> **Périmètre** : réception fournisseur, retours, contrôle qualité à réception, messages ERP inbound.

> **Standard EasyWMS** : voir [Reception](../../concepts/reception.md), [Order Inbound](../../concepts/order-inbound.md)

## Pages de cette section

- [Réception fournisseur](reception-fournisseur.md)
- [Réception retour](reception-retour.md)
- [Contrôle qualité réception](controle-qualite-reception.md)
- [Flux ERP inbound](flux-erp-inbound.md)

## Vue synthétique du flux inbound Limagrain

(Diagramme Mermaid du flux global de la section — à compléter)

Liens entre wikis

Mode standard - liens entre pages standard

Chemins relatifs entre dossiers standard :

→ voir [Reception](../concepts/reception.md)
→ voir [Galileo Integration](../architecture/galileo-integration.md)
→ voir [Glossaire](../glossary.md)

Mode limagrain - depuis une page Limagrain → page standard

Chemins relatifs remontant au-dessus de limagrain/ :

→ voir [Reception standard](../../concepts/reception.md)
→ voir [Picking standard](../../concepts/picking.md)
→ voir [Galileo Integration](../../architecture/galileo-integration.md)

Mode limagrain - entre pages Limagrain

Chemins relatifs au sein de limagrain/ :

Voir aussi [Flux expédition](../04-outbound/flux-expedition.md)
Voir aussi [Glossaire Limagrain](../glossaire-limagrain.md)

Vers Jira

[LIM-70](https://easywmsfrance.atlassian.net/browse/LIM-70)

Conventions strictes

Nommage

  • Fichiers : kebab-case, pas d'accents, .mdpicking-combinatoire.md
  • Dossiers dans limagrain/ : numérotés 01- à 08- + kebab-case
  • Assets : {section}-{description}.{ext}03-picking-schema-stations.png

Markdown lint

Règles à respecter (compatible markdownlint) :

  • Headings ATX (#) uniquement, pas de saut de niveau (h1 → h3 interdit)
  • Pas de trailing spaces
  • Pas de lignes vides multiples (max 1)
  • Line length ≤ 120 caractères (souple pour tableaux et liens)
  • Listes entourées de lignes vides
  • Premier élément du fichier = front matter --- puis heading H1
  • Pas de headings dupliqués dans un même fichier
  • Liens relatifs entre pages (pas de chemins absolus)

Langue

  • Français pour la rédaction
  • Termes techniques WMS en anglais acceptés (putaway, picking, stock assignment, etc.)
  • Noms de messages ERP en majuscules : SOR, SOF, ASN, RUT, LOF
  • Noms d'entités AD en anglais PascalCase : OutboundOrder, ContainerStock, etc.

Intégrité des fichiers après écriture

Les outils Write et Edit peuvent tronquer silencieusement le contenu d'un fichier long sans signaler d'erreur. Pour éviter toute perte :

  1. Vérifier après écriture : après tout Write ou Edit touchant plus de ~50 lignes, exécuter en bash wc -l + tail -3 sur le fichier pour confirmer que le nombre de lignes est cohérent et que le fichier se termine correctement (dernière section attendue, pas de coupure en milieu de phrase)
  2. Écriture incrémentale : pour les fichiers longs (> 150 lignes), ne jamais réécrire tout le contenu d'un coup via Write. Préférer des Edit ciblés section par section. Si un Write complet est inévitable, découper en deux passes (première moitié via Write, seconde moitié via Edit append)
  3. Si troncature détectée : ne pas continuer la session sans restaurer le contenu manquant. Signaler le problème à Arthur.

Contexte projet Limagrain

Équipe

Personne Rôle
Arthur Chef de projet technique - Intégrateur WMS / liaison client-dev, auteur du wiki
Nicolas Chabanis Responsable développement
Théo Chef de projet général - pilote tout le projet
Michael Directeur des opérations - Pilote Arthur
Fabien Mogade Développeur
Fares Zaroui Développeur
Justine Beutin Chef de projet fonctionnelle - Pilote le planning et principale interlocutrice avec Limagrain

Périmètre fonctionnel (par priorité)

  1. Réception / Inbound — modes de réception, ASN, SSCC/LPN, mono-référence
  2. Stockage / ASRS / Galileo — miniload, transstockeurs, stations, routes
  3. Picking / Préparation — picking combinatoire (CR V3.0, 4-job, CstAtt), stations
  4. Expédition / Outbound — flux SOR → RUT → SOF → LOF, chargement
  5. Intégration AGV / Still — iGo API, DB protocol, transport lifecycle
  6. Intégration ERP — catalogue messages, mapping champs
  7. Administration — RBAC, groupes, paramètres, éléments AD customs

Glossaire initial (termes spécifiques Limagrain)

Terme Signification
CstAtt Custom Attribute — handshake dans le picking combinatoire
CR V3.0 Change Request version 3.0 — architecture 4 jobs picking combinatoire
SOR Shipping Order Request — message ERP entrant, crée un ordre d'expédition
RUT Route — message ERP entrant, définit une tournée transporteur
SOF Shipping Order Fulfilled — message ERP sortant, ordre expédié
LOF Load Order Fulfilled — message ERP sortant, chargement camion terminé
ASN Advanced Shipping Notice — pré-avis de réception avec contenu connu
PIE Station de pesée automatique
PDL Picking Dedicated Location — emplacement dédié picking
ASRS Automatic Storage and Retrieval System — stockage automatique
TK Transstockeur (miniload)
TMS Transport Management System (Galileo chez Mecalux)
AD Application Dictionary — framework métadonnées EasyWMS

Jira

  • Projet : Limagrain (préfixe LIM-)
  • Cloud ID : d79e5957-a82c-4b8f-bd19-d553ef331c42
  • URL base : https://easywmsfrance.atlassian.net

MCP tools disponibles

Serveur Usage
wms-wiki:* Wiki standard EasyWMS — search, get_page, get_glossary_term, list_sections, get_related_pages
wms:* Données WMS live — queries LINQ, entities, workflows, AD, metadata
Atlassian:* Jira + Confluence — recherche JQL/CQL, lecture tickets/pages

Utilise wms-wiki systématiquement pour vérifier les concepts standard avant de rédiger. Utilise Atlassian avec le cloudId ci-dessus pour rechercher tickets ou pages Confluence référencés. Consulte aussi les pages standard locales (concepts/, modules/, etc.) quand elles sont plus complètes que le MCP.


Règles impératives

Règles communes (les deux modes)

  1. Cloisonnement strict — ne jamais modifier un fichier hors du périmètre d'écriture du mode actif (voir section Modes de travail)
  2. Toujours sourcer — chaque information vient d'une source identifiable. Cite-la dans le front matter sources et le tableau Références
  3. Marquer les incertitudes> ⚠️ À confirmer ou - [ ] Question (@personne)
  4. Log obligatoire — chaque fichier consommé → entrée dans consume.log AVANT archivage, avec le mode indiqué
  5. Archivage obligatoire — après intégration, déplacer le fichier de sources/ vers sources/archives/
  6. Cross-référencer — quand une page mentionne un concept couvert ailleurs dans le même wiki, ajouter un lien
  7. Granularité — un fichier = un sujet. Découper si > 300 lignes
  8. _index.md racine à jour — le fichier _index.md à la racine est le registre utilisé par le MCP server wms-wiki pour découvrir les pages. Il doit refléter toute création/suppression de page, quel que soit le mode

Règles spécifiques mode standard

  1. Pas de contenu projet — les pages standard ne doivent pas contenir d'information spécifique à un projet client. Les exemples génériques sont acceptés
  2. Cohérence inter-pages — vérifier que les liens entre pages standard restent valides après modification
  3. Glossaire standard — mettre à jour glossary.md si de nouveaux termes génériques apparaissent
  4. Sections _index.md — en mode standard, modifier les sections existantes (Concepts, Modules, Architecture, Operations) de _index.md. Ne pas toucher la section ## Limagrain — Projet

Règles spécifiques mode limagrain

  1. Delta uniquement — si le standard couvre un concept, renvoyer vers lui et ne documenter que le delta Limagrain
  2. Marquer les questions — reporter les incertitudes dans limagrain/08-transverse/questions-ouvertes.md
  3. README.md à jour — toute création/suppression de page dans limagrain/ doit y être reflétée
  4. Section _index.md Limagrain — quand une page est créée ou supprimée dans limagrain/, ajouter/retirer son entrée dans _index.md sous la section dédiée ## Limagrain — Projet. Le format doit suivre exactement le même pattern que les sections existantes :
## Limagrain — Projet (XX pages)

### Réception fournisseur
- **Path:** limagrain/01-inbound/reception-fournisseur.md
- **Type:** limagrain
- Résumé court de la page (1-2 lignes tirées du front matter ou du bloc Résumé).

### Picking combinatoire
- **Path:** limagrain/03-picking/picking-combinatoire.md
- **Type:** limagrain
- Architecture 4 jobs, CstAtt handshake, CR V3.0.

Ne pas toucher les sections standard (Concepts, Modules, Architecture, Operations) de _index.md en mode limagrain.


Démarrage

Mode limagrain - première initialisation

Si le dossier limagrain/ n'existe pas encore :

  1. Crée limagrain/ et toutes ses sous-sections (01-inbound/ à 08-transverse/, assets/)
  2. Crée consume.log à la racine (vide, avec juste un header # Journal de consommation)
  3. Crée les _index.md pour chaque section (contenu minimal, statut draft)
  4. Crée limagrain/README.md avec la table des matières
  5. Crée limagrain/glossaire-limagrain.md avec le tableau du glossaire initial ci-dessus
  6. Attends qu'Arthur dépose des ressources dans sources/ ou donne des instructions

Mode standard - première utilisation

Le wiki standard existe déjà. Pas d'initialisation nécessaire. Vérifie simplement que consume.log existe à la racine (le créer si absent). Puis attends les instructions d'Arthur ou les fichiers dans sources/.