manifeste.apcom.app/dev
v1.1 · KERNEL 2026-07-02

Référence de développement

— L'atelier : la mise en œuvre du flux Git posé dans le manifeste

En bref

Ceci est l'atelier : la mise en œuvre complète de la doctrine posée dans La mémoire situative. Pour la thèse et le modèle, voir le manifeste. Pour l'état réel par logiciel et les commandes Git exactes, voir le KERNEL (GLOBAL/STRUCTURE/GIT.md et les DEV_WORKFLOW.md). Cette page est auto-suffisante pour un développeur — flux de branches, neuf bascules, garde-fous, traçabilité et routines de session en un seul lieu.


Le modèle, en une ligne

commit → feature → develop → main + tag : grain, chantier, intégration, livraison, jalon figé. Quatre lignes de travail coexistent dans l'atelier :

apcom · schéma
ATELIER · Forgejo souverain (cible) — toute la vérité : dev + prod feat/* develop hotfix main · prod v3.45 v3.45.1 v3.46 feat/export-csv ⊕ export.test.ch feat/tri-date ⊕ tri.test.ch hotfix/3.45.1 propagation 1 2 3 4 5 6 7 8 push ciblé : main + tags VITRINE · GitHub public — release propre v3.45.1 v3.46 ne reçoit que la production taguée — jamais develop ni les branches de chantier

Atelier & vitrine

Le dépôt de développement souverain — chez APCOM, Forgejo auto-hébergé — a vocation à être l'atelier : dans le modèle cible, il détient toute la vérité, branches de travail, commits intermédiaires, allers-retours, historique granulaire, développement et production. Le dépôt public — GitHub — est la vitrine : il ne reçoit que la production livrée — la branche de production et ses jalons de version — jamais le tronc d'intégration ni les branches de chantier. Les deux historiques divergent volontairement. La vitrine n'a qu'une utilité externe — offrir un historique de release lisible et rejoindre les habitudes des clients et partenaires, qui consultent GitHub ; l'historique de développement complet, lui, ne quitte pas l'atelier.

Cette barrière n'est pas qu'une commodité : elle est fondée par la Règle 24 du KERNEL — séparation entre l'IA et les dépôts de production hors infrastructure souveraine. Seul l'humain pousse vers le dépôt public, et il nomme toujours ce qu'il livre.

La même logique gouverne la donnée, pas seulement le code. Le CORPUS est l'atelier de fichiers : l'IA commerciale n'y lit que des contenus dont le traitement lui est légalement (droit suisse) et éthiquement admissible. Les données de production et le cloud d'entreprise traditionnel — chez APCOM, un second Nextcloud auto-hébergé — lui restent fermés. Atelier de code, atelier de fichiers : l'IA n'opère que dans les ateliers souverains ; la production et la vitrine publique ne sont jamais son terrain.

Les neuf bascules

Les neuf bascules numérotées sur le schéma — la légende, par cas.

Features et versions

# Bascule Déclencheur Résultat Zone
Ouverture feature nouveau chantier (hors urgence) branche de chantier isolée, ouverte depuis develop atelier · feat
Test live chaque push (commit ou branche) déploiement sur un environnement de test dédié (cible) atelier → test
Intégration feature verte travail versé dans develop ; branche supprimée, commits conservés atelier · develop
Release intégration stable jalon de version figé posé sur main atelier · main
Publication vitrine jalon validé la vitrine reçoit main + tag — jamais develop ni les features atelier → vitrine

Hotfix

# Bascule Déclencheur Résultat Zone
Ouverture hotfix bug en prod pendant le dev correctif ouvert depuis le tag de prod, jamais depuis develop atelier · hotfix
Correctif prod fix prêt et testé prod corrigée ; incrément du numéro de correctif atelier · main
Propagation aussitôt après ⑦ — obligatoire le fix rejoint aussi develop (anti-régression) atelier · develop

Rollback (théorique)

# Bascule Déclencheur Résultat Zone
Retour arrière version livrée défaillante retour immédiat au dernier jalon sain par redéploiement d'un tag antérieur, sans réécriture d'historique ; le correctif se prépare ensuite via un hotfix atelier · main + prod

Garde-fous

Le garde-fou qualité — le test live. Dans le modèle cible, chaque branche poussée est déployée sur un environnement de test dédié (test live), pour qu'une fonction soit vue fonctionner avant d'être intégrée ; aujourd'hui ce test se fait par environnement (démo, test) attaché à une branche, le déploiement par branche de chantier restant à généraliser. Le verrou cible — non encore acquis — lie ce test à la protection des branches : tant que le test est au rouge, l'intégration vers le tronc ou la production reste impossible.

Deux règles d'or prolongent directement les disciplines posées pour la mémoire — la consolidation comme acte de gouvernance, et la consolidation en lot (local d'abord, distant ensuite, sur décision explicite) :

Cette ligne fixe le modèle, pas l'état de chaque projet : le tronc d'intégration, les jalons de version, le correctif depuis le tag, la propagation et le retour arrière sont la part prescriptive, en cours de généralisation — comme l'est le rattachement effectif de chaque logiciel à l'atelier souverain, certains lisant encore un miroir du dépôt public.

Traçabilité — deck · commit · timesheet

Chaque commit s'inscrit dans la routine projet (du besoin client au livrable validé), dont le point névralgique est la convention deck-commit-timesheet :

Le commit est ainsi le pivot qui relie l'effort enregistré (timesheet) à la demande contractuelle (carte Deck). Le journal de projet vivant est la simple consolidation de ces trois sources — Deck, commits, timesheet — sans rédaction supplémentaire.

Routine projet complète et conventions : STACK_TECHNIQUE/ROUTINES/PROJET.md du KERNEL.

Discipline de branche & session

Toute session n'écrit jamais directement sur la branche principale : à l'ouverture elle crée sa branche de travail, à la clôture elle la pousse ou la consolide.

Typologie des sessions

Type Dépôt Branche de travail Qui consolide
Travail sur KERNEL KERNEL work/<sujet> La gouvernance
Travail sur SPOKE SPOKE work/<sujet> Le propriétaire du SPOKE
Consolidation SPOKE → KERNEL KERNEL work/consolidation-<spoke> La gouvernance exclusivement

Cycle d'une session

apcom · schéma
OUVERTURE — synchronisation du clone — lecture du contexte (constitution, règles, état) git checkout -b work/<sujet> CŒUR — commits par bloc logique (pas de micro-commits) — validation pas à pas CLÔTURE — push de la branche — mise à jour de la mémoire inter-sessions — synchronisation des Backups Nextcloud éventuellement, sur ordre explicite CONSOLIDATION — acte de gouvernance git checkout main git merge --no-ff work/<sujet> git push — suppression de la branche, retour à l'état initial

Quand plusieurs sessions travaillent réellement en même temps — plusieurs agents IA conduits en parallèle — chacune opère dans un worktree Git distinct : un répertoire de travail séparé, rattaché au même dépôt, sur sa propre branche. La branche par session isole les écritures ; le worktree isole les espaces de travail. Ensemble, ils rendent le travail parallèle sûr par construction. La consolidation vers la branche principale n'est jamais automatique : elle prend la forme d'une fusion Git (merge --no-ff) — commit de fusion, trace explicite, pas d'écrasement silencieux.

Routines de session dev

Distinctes des rituels de session KERNEL, les routines de développement — ouverture, permanence, clôture, cycle de vie projet — encadrent le travail des équipiers sur les logiciels, dans les SPOKES. Elles reposent sur la ligne Git unique décrite ci-dessus, de la branche de chantier au jalon de production.

Checklists exactes : STACK_TECHNIQUE/ROUTINES/ du KERNEL (ouverture, permanence, clôture) et les DEV_WORKFLOW.md par logiciel.

Renvois