Explications

Les explications répondent à la question « pourquoi ? ». Elles décrivent les décisions d'architecture, les modèles conceptuels, et les compromis qui ont façonné gitrust. Consultez-les quand vous avez besoin de comprendre un système avant de le modifier.

Diátaxis — mode compréhension : les explications ne vous apprennent pas à faire quelque chose de précis. Elles vous donnent un modèle mental juste, qui rend les autres actions plus sûres et plus cohérentes.

Les explications disponibles

Sécurité et accès

Page Ce qu'elle explique
Modèle de permissions RBAC Les 4 rôles, les trois sources d'accès, le calcul du rôle effectif par maximum
Fonctionnement du 2FA TOTP RFC 6238, chiffrement AES-256-GCM du secret, codes de secours bcrypt, challenges temporaires

Interface et architecture

Page Ce qu'elle explique
Décisions UI : SSR, HTMX, DaisyUI Pourquoi pas React, comment HTMX remplace des SPA pour 90 % des cas, budget bundle
Patron worker async mpsc + Semaphore + SSE, durabilité via table SQL, récupération au redémarrage

Données et organisation

Page Ce qu'elle explique
Hiérarchie des labels à deux niveaux Classification (scope owner) vs subject (scope dépôt), filtrage cross-dépôt, schéma DB

CI et outillage

Page Ce qu'elle explique
CI Dagger : Easy Mode vs Power Mode Détection .gitrust-ci.yml / .dagger/, quand basculer, philosophie anti-YAML de Dagger

Quand lire une explication

Lisez une explication quand :

  • Vous vous apprêtez à modifier un système existant et vous voulez éviter de casser un invariant non documenté dans le code.
  • Vous rencontrez une décision qui vous semble étrange (ex : pourquoi le rôle effectif est-il le maximum et non le minimum ?) et vous voulez comprendre le raisonnement.
  • Vous voulez proposer une alternative architecturale et vous avez besoin du contexte des compromis déjà évalués.