30 lines
964 B
Markdown
30 lines
964 B
Markdown
# Contrat de ticket — Proposer / Apply-ticket / Auto-label
|
||
|
||
Ce document fixe le format minimal et les invariants des tickets d’édition.
|
||
Objectif : parsing fiable par scripts + workflows.
|
||
|
||
## Invariants (non négociables)
|
||
Doivent toujours exister dans le body du ticket :
|
||
|
||
- `Chemin: /.../`
|
||
- `URL locale: ...#...` (utile pour audit humain)
|
||
- `Ancre: #p-...`
|
||
- `Type: type/...`
|
||
- `State: state/...`
|
||
- `Proposition (remplacer par):`
|
||
|
||
## Texte actuel : best effort
|
||
Priorité :
|
||
1) `Texte actuel (copie exacte du paragraphe):`
|
||
2) sinon `Texte actuel (extrait):` + note de troncature
|
||
|
||
> Même si le texte actuel est un extrait, l’ancre + chemin rendent le ticket opposable.
|
||
|
||
## Catégorie (optionnelle)
|
||
- `Category: cat/...` (ou vide)
|
||
|
||
## Pourquoi ce contrat ?
|
||
- `apply-ticket.mjs` dépend de repères textuels stables
|
||
- `auto-label-issues` dépend de `Type/State/Category`
|
||
- on veut éviter des tickets “illisibles machine” qui cassent l’industrialisation
|