3.1 KiB
3.1 KiB
Règles générales du projet
Portée
Les règles GEN-* s'appliquent à l'ensemble du dépôt, sauf lorsqu'une règle indique explicitement une portée plus étroite.
Hiérarchie normative
- GEN-RULE-001 —
RULES.mdest l'index normatif racine et ne duplique pas le détail des autres fichiers de règles. - GEN-RULE-002 — Les règles sont cumulatives. Une règle spécifique peut renforcer une règle générale mais ne peut pas l'assouplir sans exception explicite.
- GEN-RULE-003 — Toute exception est locale, bornée, justifiée et traçable.
- GEN-RULE-004 — Une décision non validée reste une question ouverte ; elle ne doit pas être transformée en règle par supposition.
- GEN-RULE-005 — Une validation n'est déclarée réussie que si elle a réellement été exécutée.
Noms et fichiers texte
- GEN-FILE-001 — Les noms de fichiers et de répertoires sont en anglais, sans accent, espace ou caractère spécial inutile, sauf format imposé par un outil externe.
- GEN-FILE-002 — Tout fichier texte qui supporte des commentaires commence par son chemin relatif puis par une version entière du fichier.
- GEN-FILE-003 — Un script exécutable nécessitant un shebang conserve celui-ci en première ligne ; les lignes
file:etversion:suivent immédiatement. - GEN-FILE-004 — La version d'un fichier est incrémentée à chaque enregistrement qui modifie son contenu, quelle que soit l'importance de la modification. Une modification enregistrée puis annulée par une modification ultérieure consomme donc deux versions distinctes. Une version déjà utilisée n'est jamais réutilisée et la version d'un fichier ne diminue jamais.
- GEN-FILE-005 — Les fichiers texte se terminent par exactement une fin de ligne lorsque leur formatter le permet.
Langues
- GEN-LANG-001 — Les noms de code, chemins, identifiants, commentaires de code et rustdocs sont en anglais.
- GEN-LANG-002 — Les documents Markdown internes KSP sont rédigés en français, sauf contrat externe, citation, extrait ou documentation technique dont la langue doit être conservée.
Travail et validation
- GEN-WORK-001 — Une tranche de travail traite un périmètre cohérent et suffisamment petit pour être revu et validé sans devenir une livraison monolithique.
- GEN-WORK-002 — Lors de la planification, une tranche dont le budget de travail prévu dépasse approximativement quinze à vingt minutes doit être découpée avant exécution en tranches plus petites et cohérentes.
- GEN-WORK-003 — Les erreurs locales révélées par une validation sont corrigées dans la tranche qui les introduit ou explicitement reportées avant de continuer.
- GEN-WORK-004 — Une erreur métier ou architecturale ne doit pas être masquée par une exception globale de lint, de test ou de validation.
- GEN-WORK-005 — Les outils d'audit du dépôt sont en lecture seule vis-à-vis des fichiers qu'ils contrôlent. Ils peuvent détecter et signaler mais ne corrigent pas automatiquement le workspace.