5.2 KiB
Delta 0.0.2-alpha.1 — adoption PGR et cadrage Git/synchronisation
Baseline requise
Partir de la stable autoritaire :
tag Knowledge v0.0.1
commit Knowledge 98ec46fe73bd50dacbe6be220650d87dd2000b74
archive SHA-256 1f0b2cfaecee1cbee621abb9c3c95811773ebfc17c374c4369fdc220bcf7d72d
publish report sasedev-knowledge-0.0.1-publish.001-report.md = PASS
Le prompt exécuté est :
prompts/002-V0_0_2_START_PROMPT.md
La version devient :
0.0.2-alpha.1
Objet
Fermer les décisions obligatoires de démarrage de 0.0.2 avant toute implémentation Git fonctionnelle :
- vérifier et adopter explicitement la stable PGR courante
v0.1.3dans son scope applicable ; - activer
230-ADOPTIONpour la migration PGR du projet existant ; - préserver l'historique
0.0.1construit sous PGRv0.1.1; - documenter l'inventaire des contrats Git/sync existants ;
- sélectionner le processus
gitcontrôlé après comparaison avecgixetgit2; - attribuer à la future
knowledge-git-libl'ownership de la configuration physique et du backend Git ; - fixer une racine d'état Git généré hors du dépôt source ;
- établir le plan versionné
0.0.2et sa première gate.
Aucun runtime Git, aucune crate et aucune dépendance ne sont ajoutés dans cette tranche.
Adoption PGR
La baseline PGR applicable devient :
PGR tag v0.1.3
PGR commit fe80dbbb737390a7ea99df27d979bd59ccfb86e3
PGR archive SHA-256 f3a7dffd5fe0fd3542e6b5207fda0b94bca2bd05bd5a54542d0a08d635a5d6ee
PGR publish report pgr-0.1.3-publish.001-report.md = PASS
Le mapping durable est enregistré dans docs/architecture/001-PROJECT_PROFILE.md.
Les changements PGR 0.1.2/0.1.3 sur Java/Maven/Gradle/Android ne rendent pas ces profils applicables à Knowledge. Le DEFER Tauri reste inchangé. Aucun OVERRIDE n'est introduit.
Décision Git
L'étude :
docs/studies/004-V0_0_2_GIT_IMPLEMENTATION_STUDY.md
retient le client Git externe piloté via std::process::Command, sans shell.
Le layout retenu est conceptuellement :
<git-state-root>/
hooks-disabled/
repositories/<source-key>.git/
snapshots/<source-key>/<resolved-revision>/
Aucun de ces chemins n'est créé par alpha.1.
Scope
REPLACE :
VERSION
Cargo.toml
README.md
RULES.md
docs/000-README.md
docs/architecture/001-PROJECT_PROFILE.md
docs/architecture/002-KNOWLEDGE_ARCHITECTURE.md
docs/validation/001-VALIDATION_MATRIX.md
ADD :
docs/studies/004-V0_0_2_GIT_IMPLEMENTATION_STUDY.md
docs/plans/002-V0_0_2_GIT_SYNC_PLAN.md
deltas/0.0.2/alpha.1.md
DELETE : aucun.
Aucun fichier sous crates/ ou Web/ n'est modifié.
Aucun history 0.0.2-alpha.1 n'est inclus : il doit refléter les preuves opérateur après application.
Gate opérateur
Après application du delta :
test "$(cat VERSION)" = '0.0.2-alpha.1'
grep -F 'version = "0.0.2-alpha.1"' Cargo.toml
git diff --check
python3 -B scripts/audit_rust_test_layout.py crates
python3 -B scripts/audit_rust_blank_lines.py crates
python3 -B scripts/audit_rust_item_spacing.py crates
python3 -B scripts/audit_rust_module_order.py crates
python3 -B scripts/audit_rust_trait_import_blocks.py crates
python3 -B scripts/audit_rust_reexport_blocks.py crates
python3 -B scripts/audit_rust_export_completeness.py --root . --summary-only
cargo fmt --all -- --check
cargo metadata --format-version 1 --no-deps
cargo check --workspace
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test --workspace --all-targets --all-features
(
cd Web/knowledge-template-lab
npm ci
npm run typecheck
npm run build
)
Puis rejouer les contrôles de manifest Vite et les trois smokes HTTP selon les commandes déjà possédées par la gate stable 0.0.1.
Contrôles spécifiques de cette tranche :
test -f docs/studies/004-V0_0_2_GIT_IMPLEMENTATION_STUDY.md
test -f docs/plans/002-V0_0_2_GIT_SYNC_PLAN.md
test -f deltas/0.0.2/alpha.1.md
test ! -e history/0.0.2/alpha.1.md
grep -F 'PGR stable tag v0.1.3' docs/architecture/001-PROJECT_PROFILE.md
grep -F '`230-ADOPTION`' docs/architecture/001-PROJECT_PROFILE.md
grep -F 'processus `git` contrôlé' docs/studies/004-V0_0_2_GIT_IMPLEMENTATION_STUDY.md
grep -F 'repositories/<source-key>.git' docs/studies/004-V0_0_2_GIT_IMPLEMENTATION_STUDY.md
grep -F 'snapshots/<source-key>/<resolved-revision>' docs/studies/004-V0_0_2_GIT_IMPLEMENTATION_STUDY.md
git diff --name-only -- crates Web
git diff --cached --check
git diff --name-only -- crates Web doit être vide pour cette tranche.
Le Cargo.lock peut être généré ou modifié localement par Cargo mais reste ignoré/non suivi conformément à la stable 0.0.1. Le package-lock.json reste versionné.
Transition
PASS
Produire séparément :
history/0.0.2/alpha.1.md
avec les résultats réels, l'appliquer, puis commit/push 0.0.2-alpha.1 avant préparation de alpha.2.
FAIL
Produire le history réel FAIL, le committer, puis corriger uniquement cette tranche avec :
0.0.2-alpha.1.fix.1
Ne pas préparer alpha.2 tant que la tranche courante n'est pas fermée conformément au workflow.