140 lines
3.8 KiB
Markdown
140 lines
3.8 KiB
Markdown
<!-- file: deltas/0.0.1/rc.1.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta 0.0.1-rc.1 — foundation release candidate
|
|
|
|
## Baseline
|
|
|
|
Version attendue avant application :
|
|
|
|
```text
|
|
0.0.1-beta.1
|
|
```
|
|
|
|
Le history `history/0.0.1/beta.1.md` MUST avoir été appliqué et committé avant ce delta.
|
|
|
|
Version après application :
|
|
|
|
```text
|
|
0.0.1-rc.1
|
|
```
|
|
|
|
## Objet
|
|
|
|
Geler le scope fonctionnel de `0.0.1`, préparer les métadonnées de release et exécuter la gate documentaire complète applicable à la fondation avant toute promotion stable.
|
|
|
|
Cette tranche n'introduit aucune nouvelle famille normative.
|
|
|
|
## Scope
|
|
|
|
REPLACE :
|
|
|
|
```text
|
|
VERSION
|
|
CHANGELOG.md
|
|
```
|
|
|
|
ADD :
|
|
|
|
```text
|
|
prompts/002-V0_0_2_START_PROMPT.md
|
|
deltas/0.0.1/rc.1.md
|
|
```
|
|
|
|
DELETE : aucun.
|
|
|
|
## Changements
|
|
|
|
- `VERSION` passe à `0.0.1-rc.1` ;
|
|
- `CHANGELOG.md` prépare l'entrée utilisateur/intégrateur de `0.0.1` sans recopier le journal des prereleases ;
|
|
- `prompts/002-V0_0_2_START_PROMPT.md` prépare la mission de la version suivante à partir de la future baseline stable `v0.0.1` ;
|
|
- aucune règle générale, de workflow, de documentation ou de validation n'est étendue pendant la RC ;
|
|
- la gate ci-dessous rejoue les contrôles transversaux applicables à toute la fondation.
|
|
|
|
## Validation opérateur
|
|
|
|
```bash
|
|
test "$(cat VERSION)" = "0.0.1-rc.1"
|
|
|
|
test -f prompts/002-V0_0_2_START_PROMPT.md
|
|
grep -Fx '<!-- file: prompts/002-V0_0_2_START_PROMPT.md -->' prompts/002-V0_0_2_START_PROMPT.md
|
|
grep -F 'v0.0.1' prompts/002-V0_0_2_START_PROMPT.md
|
|
grep -F '0.0.2-alpha.1' prompts/002-V0_0_2_START_PROMPT.md
|
|
|
|
grep -Fx '## 0.0.1' CHANGELOG.md
|
|
grep -F 'fondation normative de PGR' CHANGELOG.md
|
|
grep -F 'validation proportionnée' CHANGELOG.md
|
|
|
|
for file in \
|
|
README.md \
|
|
RULES.md \
|
|
ROADMAP.md \
|
|
CHANGELOG.md \
|
|
docs/000-README.md \
|
|
docs/objectives/001-PROJECT_OBJECTIVES.md \
|
|
docs/architecture/001-PROJECT_PROFILE.md \
|
|
docs/architecture/002-GOVERNANCE_ARCHITECTURE.md \
|
|
docs/plans/001-V0_0_1_FOUNDATION_PLAN.md \
|
|
docs/rules/000-README.md \
|
|
docs/rules/200-GOVERNANCE.md \
|
|
docs/rules/210-WORKFLOW.md \
|
|
docs/rules/300-DOCUMENTATION.md \
|
|
docs/rules/400-VALIDATION.md \
|
|
docs/validation/001-VALIDATION_MATRIX.md \
|
|
prompts/001-V0_0_1_START_PROMPT.md \
|
|
prompts/002-V0_0_2_START_PROMPT.md; do
|
|
test -f "$file" || {
|
|
echo "Missing required file: $file" >&2
|
|
exit 1
|
|
}
|
|
done
|
|
|
|
while IFS= read -r file; do
|
|
relative="${file#./}"
|
|
grep -Fx "<!-- file: ${relative} -->" "$file" >/dev/null || {
|
|
echo "Missing or invalid file header: ${relative}" >&2
|
|
exit 1
|
|
}
|
|
grep -Eq '^<!-- version: [1-9][0-9]* -->$' "$file" || {
|
|
echo "Missing or invalid version header: ${relative}" >&2
|
|
exit 1
|
|
}
|
|
done < <(find . -type f -name '*.md' -not -path './.git/*' | sort)
|
|
|
|
if grep -F 'seront définis séparément' docs/rules/200-GOVERNANCE.md; then
|
|
echo '200-GOVERNANCE contient une promesse de cadrage obsolète.' >&2
|
|
exit 1
|
|
fi
|
|
|
|
if grep -F 'seront formalisées dans `alpha.5`' docs/rules/210-WORKFLOW.md; then
|
|
echo '210-WORKFLOW contient une référence de cadrage obsolète.' >&2
|
|
exit 1
|
|
fi
|
|
|
|
grep -F '`PGR-NAV-001`' docs/validation/001-VALIDATION_MATRIX.md
|
|
grep -F '`PGR-SCOPE-001`' docs/validation/001-VALIDATION_MATRIX.md
|
|
|
|
git diff --check
|
|
|
|
git add VERSION CHANGELOG.md prompts/002-V0_0_2_START_PROMPT.md deltas/0.0.1/rc.1.md
|
|
|
|
git diff --cached --check
|
|
|
|
git status --short
|
|
```
|
|
|
|
La sortie attendue avant ajout du history est :
|
|
|
|
```text
|
|
M CHANGELOG.md
|
|
M VERSION
|
|
A deltas/0.0.1/rc.1.md
|
|
A prompts/002-V0_0_2_START_PROMPT.md
|
|
```
|
|
|
|
## Transition
|
|
|
|
PASS : enregistrer `history/0.0.1/rc.1.md`, committer `rc.1`, puis préparer la promotion stable `0.0.1`.
|
|
|
|
FAIL : rester dans `rc.1` avec `rc.1.fix.1`, sauf REPLAN si la RC révèle un problème structurel incompatible avec une correction de stabilisation.
|