Skip to content

DOC

Conventions editoriales — ulk

Conventions editoriales — ulk

Reconstitue depuis agents/_shared/base-rules.md, agents-authoring.md et les pratiques observees dans le codebase.


1. Nommage des fichiers

1.1 Agents

TypePatternExemple
Agent racineNN-agent-name.md25-bruce.md
Agent sous-dossierNN-agent-name.mdfrontend/01-brique.md
Protocole partagenom-descriptif.md_shared/context-protocol.md
Checklistnom-checklist.mdfrontend/checklists/ux-checklist.md

La numerotation est globale et preservee (prochain : 51). Les trous historiques ne sont pas reutilises (02-03, 13-14, 19-20, 22-23, 28-30, 33, 37).

1.2 Documents generes

TypePatternEmplacement
Auditaudit-[TYPE]-YYYYMMDD.mddocs/audits/
Rapport[type]-YYYYMMDD.mddocs/reports/
Import Notionspec_notion.md, todo_notion.mddocs/imports/
Communicationupdate-YYYYMMDD.mddocs/communications/
API*.mddocs/api/
Metadonnees*.json.claude/
Entree memoireslug-en-kebab-case.mddocs/_memory/<categorie>/

1.3 Documents manuels

TypePatternEmplacement
Specificationspec.mddocs/
Kanbantodo.mddocs/
Guideguide.mddocs/
Referencereference.mddocs/
ADRadr.mddocs/
Glossaireglossaire.mddocs/
Indexindex.mddocs/00-meta/
Conventionsconventions.mddocs/00-meta/

1.4 Regles generales de nommage

  • kebab-case pour tous les fichiers Markdown
  • Pas d’espaces dans les noms de fichiers
  • Max 60 caracteres pour les noms de fichiers de memoire (slugification automatique)
  • Suffixe date (-YYYYMMDD) pour les rapports et audits

2. Frontmatter YAML

2.1 Frontmatter standard pour documents

---
title: "Titre du document"
type: spec | audit | guide | report | adr | task | context
category: "Categorie libre"
date: YYYY-MM-DD
updated: YYYY-MM-DD
status: draft | active | deprecated | archived
author: nom-agent | nom-humain
tags:
  - tag1
  - tag2
---

Champs obligatoires : title, type, date, status.

Champs recommandes : category, author, tags.

Champs optionnels : updated, version.

2.2 Frontmatter agent

---
name: agent-name
description: |
  Description multi-lignes de l'agent.
  Quand l'invoquer et mots-cles de detection.
tools: Read, Glob, Grep, Bash, Write, Task, AskUserQuestionTool
model: opus | sonnet
phase: define | plan | build | verify | review | ship | orchestrator
invocation: /ulk:name or "name" or "trigger"
extends:
  - _shared/base-rules.md
  - _shared/update-protocol.md
---

2.3 Frontmatter Monoboard (todo.md)

---
kanban-plugin: board
project: Nom du Projet
version: "1.0.0"
updated: YYYY-MM-DD
---

2.4 Frontmatter entree memoire (vault)

---
title: "Titre de l'entree"
category: lesson | pattern | mistake | insight | rule | research
subcategory: architecture | debugging | workflow | typescript
project: nom-projet
severity: critical | major | minor
tags: [tag1, tag2]
date: YYYY-MM-DD
captured_from: MEMORY.md
status: active
---

3. Conventions Markdown

3.1 Structure des documents

  • h1 (#) : titre unique du document, correspond au title du frontmatter
  • h2 (##) : sections principales (numerotees ## 1. Titre, ## 2. Titre)
  • h3 (###) : sous-sections
  • h4 (####) : findings dans les rapports d’audit (avec prefixe [PREFIX-NNN])

3.2 Tableaux

Privilegier les tableaux Markdown pour les donnees structurees :

| Colonne 1 | Colonne 2 | Colonne 3 |
|-----------|-----------|-----------|
| Valeur | Valeur | Valeur |

3.3 Blocs de code

  • Toujours specifier le langage : ```yaml, ```bash, ```typescript
  • Pour les commandes, utiliser ```bash
  • Pour les structures de donnees, utiliser le langage adapte

3.4 Liens

  • Liens relatifs entre documents du meme depot : [Titre](./chemin-relatif.md)
  • Pas de wikilinks ([[...]]) dans la documentation principale (reservees au vault Obsidian docs/_memory/)
  • Liens absolus uniquement pour les ressources externes

3.5 Emojis et indicateurs

ContexteConvention
PrioritesP0, P1, P2, P3
Scores/10 (ex: 7/10)
Statuts dans les tableauxdraft, active, deprecated, archived
FindingsPrefixes #A001, #A11Y-001, #PERF-001

4. Format des findings (audits)

#### [PREFIX-NNN] Titre du finding
- **Fichier** : `path/to/file.ts:42`
- **Probleme** : Description factuelle
- **Impact** : Consequence mesurable
- **Recommandation** : Action concrete
- **Effort** : Estimation realiste

Prefixes par source :

SourcePrefixe
Code auditA
A11y auditA11Y-
Perf auditPERF-
API designAPI-
SEO auditSEO-

5. Format des taches (todo.md)

5.1 Carte courte

- [ ] #PREFIX-NNN [PX] Description #zone #effort-S

5.2 Carte detaillee

### #PREFIX-NNN · Titre
> Contexte — Severite

- **Critere de done** : Definition precise
- **Estimation** : Xh
- **Dependances** : aucune | #XXX
- **Fichiers concernes** : liste

**Sous-taches :**
- [ ] Sous-tache 1
- [ ] Sous-tache 2

5.3 Niveaux de priorite

PrioriteCriteres
P0Bloquant : securite, bugs critiques, data loss
P1Haute : perf majeure, archi cassee, DX degradee
P2Moyenne : qualite, dette tech, tests manquants
P3Basse : style, doc, nice-to-have

5.4 Niveaux d’effort

EffortDuree
XS< 30 min
S1-2h
M2-4h
L4-8h
XL1-2 jours
XXL3-5 jours

6. Conventions git

6.1 Format de commit

[prefix]([scope]): description (#ID)

6.2 Prefixes

CategoriePrefixe
Nouvelle fonctionnalitefeat
Correction de bugfix
Refactoringrefactor
Documentationdocs
Teststest
Maintenancechore
Performanceperf
Securitesecurity

7. Conventions pour les agents docs

7.1 Regles absolues

  1. Exhaustif : couvrir l’integralite du perimetre demande
  2. Factuel : chaque finding avec fichier:ligne quand applicable
  3. Actionnable : chaque issue = une recommandation concrete
  4. Prioritise : Securite > Performance > Qualite > Style
  5. Non destructif : ne pas supprimer sans archiver ou documenter
  6. Reproductible : documenter les commandes et conditions utilisees
  7. Idempotent : relancer l’agent produit le meme resultat
  8. Incremental : mettre a jour les sections existantes plutot que reecrire

7.2 Langue

Tout en francais : rapports, messages, commentaires dans les documents generes.

7.3 Scoring standard

ScoreNiveau
8-10Bon
5-7Moyen
0-4Critique

8. References