docs: align the branch model with the actual remote
Two points the document got wrong. The stable branch is main, not master: the remote has never had a master. And the promotion chain was written as if it existed, while landing-silo and experimental-silo were created only today, the first as empty branches off main. Nothing else in the document is touched. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f839f5d435
commit
0cdcfe433b
19
AGENTS.md
19
AGENTS.md
@ -24,13 +24,18 @@ amont.
|
|||||||
## Branches et canaux
|
## Branches et canaux
|
||||||
|
|
||||||
```
|
```
|
||||||
feature/* ──► landing-silo ──► experimental-silo ──► master
|
feature/* ──► landing-silo ──► experimental-silo ──► main
|
||||||
(nightly) (testing) (stable)
|
(nightly) (testing) (stable)
|
||||||
```
|
```
|
||||||
|
|
||||||
Vers la droite on promeut, vers la gauche on redescend un correctif. Une correction ne saute
|
Vers la droite on promeut, vers la gauche on redescend un correctif. Une correction ne saute
|
||||||
jamais un cran.
|
jamais un cran.
|
||||||
|
|
||||||
|
Les trois branches existent sur le remote depuis le 2026-08-02. Les deux silos ont été créés
|
||||||
|
vides depuis `main` ; `landing-silo` a ensuite reçu `feature/fronius-sunspec` comme premier
|
||||||
|
contenu, `experimental-silo` est encore au niveau de `main`. Avant cette date le modèle
|
||||||
|
ci-dessus était une intention, pas un état du dépôt.
|
||||||
|
|
||||||
`experimental-silo` n'est pas une branche de travail : elle ne reçoit que ce qui a déjà survécu au
|
`experimental-silo` n'est pas une branche de travail : elle ne reçoit que ce qui a déjà survécu au
|
||||||
nightly. Le travail se fait dans `feature/*`.
|
nightly. Le travail se fait dans `feature/*`.
|
||||||
|
|
||||||
@ -41,19 +46,19 @@ nightly. Le travail se fait dans `feature/*`.
|
|||||||
| commits dans `feature/*` | `verify` en local, l'agent boucle seul |
|
| commits dans `feature/*` | `verify` en local, l'agent boucle seul |
|
||||||
| `feature/*` → `landing-silo` | PR, `verify` vert sur le runner, AC de la spec couverts par des tests |
|
| `feature/*` → `landing-silo` | PR, `verify` vert sur le runner, AC de la spec couverts par des tests |
|
||||||
| `landing-silo` → `experimental-silo` | build complet propre, banc nocturne vert |
|
| `landing-silo` → `experimental-silo` | build complet propre, banc nocturne vert |
|
||||||
| `experimental-silo` → `master` | validation matérielle nommée : appareil, firmware, configuration |
|
| `experimental-silo` → `main` | validation matérielle nommée : appareil, firmware, configuration |
|
||||||
|
|
||||||
Le dernier critère n'est pas automatisable et ne doit pas l'être.
|
Le dernier critère n'est pas automatisable et ne doit pas l'être.
|
||||||
|
|
||||||
### Correctifs
|
### Correctifs
|
||||||
|
|
||||||
**Avant de créer une branche : reproduire le bug et déterminer la branche la plus proche de
|
**Avant de créer une branche : reproduire le bug et déterminer la branche la plus proche de
|
||||||
`master` où il apparaît.** C'est elle qui décide du point de départ, pas l'urgence ressentie.
|
`main` où il apparaît.** C'est elle qui décide du point de départ, pas l'urgence ressentie.
|
||||||
|
|
||||||
| Le bug se reproduit… | Départ | Ensuite |
|
| Le bug se reproduit… | Départ | Ensuite |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| jusque dans `master` | `hotfix/*` depuis `master` | fusion dans `master`, puis redescente dans `experimental-silo`, puis dans `landing-silo` |
|
| jusque dans `main` | `hotfix/*` depuis `main` | fusion dans `main`, puis redescente dans `experimental-silo`, puis dans `landing-silo` |
|
||||||
| dans `experimental-silo`, pas dans `master` | `fix/*` depuis `experimental-silo` | redescente dans `landing-silo` |
|
| dans `experimental-silo`, pas dans `main` | `fix/*` depuis `experimental-silo` | redescente dans `landing-silo` |
|
||||||
| seulement dans `landing-silo` | `fix/*` depuis `landing-silo` | rien, il remonte par la promotion normale |
|
| seulement dans `landing-silo` | `fix/*` depuis `landing-silo` | rien, il remonte par la promotion normale |
|
||||||
|
|
||||||
Ne jamais corriger en aval un bug présent en amont : le correctif remontera un jour, mais la
|
Ne jamais corriger en aval un bug présent en amont : le correctif remontera un jour, mais la
|
||||||
@ -79,7 +84,7 @@ Ne jamais le remplacer par un tiret (`-etmN`) : `-` a un sens réservé en versi
|
|||||||
## Agents
|
## Agents
|
||||||
|
|
||||||
Les agents travaillent dans `feature/*` et `fix/*`. Jamais de commit direct dans `landing-silo`,
|
Les agents travaillent dans `feature/*` et `fix/*`. Jamais de commit direct dans `landing-silo`,
|
||||||
`experimental-silo` ou `master` : ces branches ne reçoivent que des fusions.
|
`experimental-silo` ou `main` : ces branches ne reçoivent que des fusions.
|
||||||
|
|
||||||
Une spec, une branche, un jeu de critères d'acceptation.
|
Une spec, une branche, un jeu de critères d'acceptation.
|
||||||
|
|
||||||
@ -90,7 +95,7 @@ fait pas.
|
|||||||
|
|
||||||
1. **NE PAS renommer les paquets PUBLIÉS** : `powersync-plugin-eastron`,
|
1. **NE PAS renommer les paquets PUBLIÉS** : `powersync-plugin-eastron`,
|
||||||
`powersync-plugin-abbb2x`, `nymea-plugin-abbterra`. Casse l'upgrade des box beta.
|
`powersync-plugin-abbb2x`, `nymea-plugin-abbterra`. Casse l'upgrade des box beta.
|
||||||
Valable sur toutes les branches : un renommage dans `landing-silo` finit par atteindre `master`.
|
Valable sur toutes les branches : un renommage dans `landing-silo` finit par atteindre `main`.
|
||||||
2. `abbterra` est volontairement sous nom amont (transition upstream propre) — ne pas « corriger ».
|
2. `abbterra` est volontairement sous nom amont (transition upstream propre) — ne pas « corriger ».
|
||||||
3. Matrice validée beta : SDM72 / SDM120 (eastron), Waveshare D8.
|
3. Matrice validée beta : SDM72 / SDM120 (eastron), Waveshare D8.
|
||||||
4. Aucun composant propriétaire ici. Aucun ne doit y entrer.
|
4. Aucun composant propriétaire ici. Aucun ne doit y entrer.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user