# History 0.0.3-rel.1 — promotion stable pré-tag ## Statut PARTIAL La gate opérateur de `0.0.3-rel.1` exécutée le `2026-09-29` acquiert toutes les preuves produit/runtime et atteint le staging final attendu, mais deux contrôles explicitement demandés n'apparaissent pas dans le transcript : l'audit de composition du workspace à partir du JSON `cargo metadata` et l'audit d'hygiène texte. La tranche est donc conservée `PARTIAL` plutôt que promue implicitement en `PASS`. ## Baseline opérateur `rc.1.fix.1` `PASS` a été historisé, committé et poussé avant application de `rel.1` : ```text history/0.0.3/rc.1.fix.1.md PASS commit 0351aa0 message 0.0.3-rc.1.fix.1 branch master push origin/master PASS workspace après push propre ``` Un premier `git push origin master` a été interrompu à l'invite utilisateur, puis le second push a réussi et a avancé `origin/master` de `038b918` à `0351aa0`. ## Promotion stable et documentation ```text VERSION 0.0.3 Cargo workspace version 0.0.3 history rc.1.fix.1 PASS git diff --check PASS Markdown header audit clean (122 file(s)) Markdown link audit clean (82 local link(s), 122 file(s)) Markdown table audit clean (4 table(s), 122 file(s)) ``` Les contrôles confirment également : ```text CHANGELOG ## 0.0.3, sans marqueur candidate ROADMAP 0.0.3 terminée ROADMAP 0.0.4 engagée ROADMAP 0.0.5 -> 0.0.10 horizons révisables README 0.0.3 présentée comme stable plan 003 historique de la stable 0.0.3 prompt 004 présent prompt 004 sans commit/SHA post-tag inventé PostgreSQL / migrations absents forge Gitea absente ``` Les dix histories antérieurs sont présents avec leurs statuts réels : ```text alpha.1 PARTIAL alpha.1.fix.1 PARTIAL alpha.1.fix.2 PASS alpha.2 PASS alpha.3 FAIL alpha.3.fix.1 PASS alpha.4 PASS beta.1 PASS rc.1 FAIL rc.1.fix.1 PASS ``` ## Formatage et audits Rust ```text cargo fmt --all PASS cargo fmt --all -- --check PASS Rust test-layout audit clean (9 crate(s)) Rust blank-line audit clean (36 file(s)) Rust item-spacing audit clean (36 file(s)) Rust module-order audit clean (36 file(s)) Rust trait-import-block audit clean (36 file(s)) Rust re-export-block audit clean (36 file(s)) Rust crate-root facade audit clean (6 crate root(s)) Rust export completeness audit 0 candidate(s) across 9 package(s) ``` ## Cargo, Clippy et tests Git ```text cargo metadata --format-version 1 --no-deps PASS (fichier JSON produit) cargo check --workspace PASS cargo clippy --workspace --all-targets --all-features -- -D warnings PASS cargo test -p knowledge-git-lib --test git_read_path PASS (2) cargo test -p knowledge-git-lib --test git_write_candidate PASS (2) cargo test -p knowledge-git-lib --test git_write_push PASS (2) cargo test --workspace --all-targets --all-features PASS ``` Tests workspace observés : ```text knowledge-app-lib 3 PASS knowledge-domain-lib 3 PASS knowledge-git-api 7 PASS knowledge-git-lib 8 unit + 6 integration PASS knowledge-sync-api 1 PASS knowledge-web-lib 4 PASS launchers 0 test chacun ``` Les tests Git réels confirment encore le chemin de lecture, le candidat isolé et confiné, le push gardé et le conflit concurrent sans écrasement. ## Baseline Web et runtime ```text npm ci PASS npm audit observé 0 vulnérabilité npm run typecheck PASS npm run build PASS Vite 8.3.1 modules transformés 63 Vite manifest audit PASS ``` Les avertissements Sass/Bootstrap de dépréciation et l'avertissement npm sur le script d'installation `@parcel/watcher` restent non bloquants ; le build termine avec succès. Les trois serveurs ont ensuite été reconstruits et les smokes de production passent avec `/healthz`, `/` et les assets hashés du manifest : ```text knowledge-pgr-server PASS knowledge-howtos-server PASS knowledge-snippets-server PASS ``` ## Preuves manquantes Deux commandes annoncées dans la gate `rel.1` ne sont pas présentes dans le retour opérateur : ```text workspace audit depuis /tmp/sasedev-knowledge-0.0.3-rel.1-metadata.json NON FOURNI text hygiene sur README/RULES/ROADMAP/CHANGELOG/docs/prompts/deltas/history NON FOURNI ``` Le fichier metadata a bien été produit et utilisé indirectement par les commandes Cargo, mais la vérification explicite de l'ensemble exact des neuf packages n'a pas été exécutée dans le transcript. De même, les audits Markdown passent mais ne remplacent pas l'audit d'hygiène texte demandé. ## Scope, lockfiles et staging Les contrôles finaux fournis confirment : ```text aucun diff crates/Web/architecture/studies/rules/prompts PASS Cargo.lock présent, ignoré, non suivi package-lock Web présent tag local v0.0.3 absent rapport publish.001 absent git diff --cached --check PASS ``` Le staging final observé avant ajout du présent history est exactement : ```text M CHANGELOG.md M Cargo.toml M README.md M ROADMAP.md M VERSION A deltas/0.0.3/rel.1.md M docs/000-README.md M docs/plans/003-V0_0_3_GIT_WRITE_PLAN.md M docs/validation/001-VALIDATION_MATRIX.md ``` ## Décision `0.0.3-rel.1` est `PARTIAL`. Aucune régression produit n'est observée et aucune correction fonctionnelle n'est nécessaire. Conformément au workflow local, ce résultat doit être historisé, committé et poussé avec le message `0.0.3-rel.1`, sans créer le tag `v0.0.3`. La transition autorisée est uniquement `rel.1.fix.1`, bornée à la complétion des deux preuves manquantes avant le premier commit stable réellement `PASS`.