# History 0.0.1-rc.1 — release candidate ## Statut FAIL La gate opérateur de `0.0.1-rc.1` exécutée le `2026-09-28` valide la quasi-totalité de la candidate, mais l'audit d'intégration livré contient une assertion incorrecte sur le diff Git avant staging. Après cette gate, l'opérateur décide également de retirer `Cargo.lock` du repository avant la stable `0.0.1`. Cette décision locale est compatible avec PGR `v0.1.1`, qui exige une politique explicite de lockfile sans imposer universellement son versionnement. ## Baseline opérateur `beta.1` `PASS` a été historisé, committé et poussé avant application de la RC : ```text history/0.0.1/beta.1.md = PASS commit 7c0048b message 0.0.1-beta.1 branch master push origin/master PASS status clean après push ``` Le push observé a avancé `origin/master` de `515f815` à `7c0048b`. ## Gel initial Les premières preuves passent : ```text VERSION = 0.0.1-rc.1 git diff --check PASS cargo fmt --all -- --check PASS aucun diff sous crates/ ou Web/ PASS ``` ## Défaut bloquant de l'audit d'intégration L'audit livré attendait exactement : ```text Cargo.toml VERSION deltas/0.0.1/rc.1.md docs/plans/001-V0_0_1_FOUNDATION_PLAN.md docs/validation/001-VALIDATION_MATRIX.md ``` via : ```text git diff --name-only ``` Cette commande n'inclut pas les fichiers non suivis. Au moment du contrôle, `deltas/0.0.1/rc.1.md` est précisément un fichier non suivi. L'ensemble réellement observé est donc : ```text Cargo.toml VERSION docs/plans/001-V0_0_1_FOUNDATION_PLAN.md docs/validation/001-VALIDATION_MATRIX.md ``` L'assertion échoue et maintient la tranche en `FAIL`. Le delta RC lui-même est bien présent dans le workspace et apparaît ensuite dans le staging final après `git add -A`. ## Preuves non bloquées Malgré le défaut de l'audit d'intégration, les autres gates passent. ### Markdown ```text Markdown header audit: clean (30 file(s)) Markdown table audit: clean (4 table(s), 30 file(s)) Markdown link audit: clean (28 local link(s), 30 file(s)) ``` ### Hygiène texte ```text Knowledge 0.0.1-rc.1 text hygiene: clean ``` ### Rust ```text Rust test-layout audit: clean (7 crate(s)) Rust blank-line audit: clean (18 file(s)) Rust item-spacing audit: clean (18 file(s)) Rust module-order audit: clean (18 file(s)) Rust trait-import-block audit: clean (18 file(s)) Rust re-export-block audit: clean (18 file(s)) Rust export completeness audit: 0 candidate(s) across 7 package(s) ``` `cargo check`, Clippy strict et les tests workspace passent. Tests observés : ```text knowledge-domain-lib : 3 PASS knowledge-git-api : 1 PASS knowledge-sync-api : 1 PASS knowledge-web-lib : 4 PASS launchers : 0 test chacun ``` ### Web `npm ci`, `npm run typecheck` et `npm run build` passent. Le warning `@parcel/watcher@2.6.0` reste observable mais non approuvé et non bloquant. ### Manifest Vite ```text Knowledge 0.0.1-rc.1 Vite manifest audit: clean ``` ### Smokes HTTP ```text knowledge-pgr-server smoke PASS knowledge-howtos-server smoke PASS knowledge-snippets-server smoke PASS Knowledge 0.0.1-rc.1 HTTP smoke: clean ``` ## Staging final observé Après `git add -A` : ```text M Cargo.lock M Cargo.toml M VERSION A deltas/0.0.1/rc.1.md M docs/plans/001-V0_0_1_FOUNDATION_PLAN.md M docs/validation/001-VALIDATION_MATRIX.md ``` `git diff --cached --check` passe. ## Décision `Cargo.lock` Avant promotion stable, l'opérateur choisit de ne plus versionner `Cargo.lock`. La politique cible devient : ```text Cargo.lock généré localement par Cargo Cargo.lock ignoré par Git Cargo.lock absent de l'index/repository ``` Cette décision ne modifie pas la politique frontend : `Web/knowledge-template-lab/package-lock.json` reste versionné. ## Décision `0.0.1-rc.1` est `FAIL`. La transition autorisée est : ```text 0.0.1-rc.1.fix.1 ``` Le fix doit : - corriger la gate d'intégration afin de ne plus confondre diff suivi et fichiers non suivis ; - retirer `Cargo.lock` du suivi Git sans supprimer sa copie locale ; - ignorer explicitement `/Cargo.lock` ; - réconcilier les documents vivants avec cette politique ; - rejouer la gate complète RC.