0.0.1-alpha.3.fix.1

This commit is contained in:
2026-09-27 23:00:24 +02:00
parent 6b6bdcfc71
commit fd3d363bff
17 changed files with 625 additions and 30 deletions

View File

@@ -0,0 +1,143 @@
<!-- file: history/0.0.1/alpha.3.fix.1.md -->
<!-- version: 1 -->
# History 0.0.1-alpha.3.fix.1 — correction `SourceId` et précision Web/Maud
## Statut
FAIL
La gate opérateur de `0.0.1-alpha.3.fix.1` exécutée le `2026-09-27` confirme la correction de `SourceId` et le passage des tests ciblés, mais Clippy strict échoue sur la documentation manquante des variantes publiques de `ContentFamily`.
## Baseline opérateur
La tranche `alpha.3` `FAIL` a été historisée, committée et poussée avant application du fix :
```text
history/0.0.1/alpha.3.md = FAIL
commit 6b6bdcf
message 0.0.1-alpha.3
branch master
push origin/master PASS
status clean après push
```
Le push observé a avancé `origin/master` de `8cd187b` à `6b6bdcf`.
## Correction `SourceId`
La vérification ciblée confirme que le fix attendu est présent :
```text
return Ok(Self(value.to_owned()));
```
L'erreur de compilation `E0423` observée sur `alpha.3` n'est plus reproduite.
## Structure et audits
Les contrôles suivants sont propres :
```text
VERSION = 0.0.1-alpha.3.fix.1
git diff --check = clean
cargo fmt --all -- --check = PASS
Rust blank-line audit: clean (8 file(s))
Rust item-spacing audit: clean (8 file(s))
Rust module-order audit: clean (8 file(s))
Rust trait-import-block audit: clean (8 file(s))
Rust re-export-block audit: clean (8 file(s))
Rust export completeness audit: 0 candidate(s) across 3 package(s)
```
## `cargo check`
`cargo check --workspace` termine avec succès pour les trois crates.
Il émet cependant quatre warnings `missing_docs` dans :
```text
crates/knowledge-domain-lib/src/content_family.rs
```
sur les variantes publiques :
```text
Pgr
Howto
Snippet
ProjectLocal
```
La politique workspace déclare `missing_docs = "warn"`, donc ces diagnostics restent des warnings sous `cargo check`.
## Échec Clippy strict
La commande :
```text
cargo clippy --workspace --all-targets --all-features -- -D warnings
```
transforme les warnings `missing_docs` en erreurs, comme attendu par la gate stricte.
Les quatre variantes publiques non documentées empêchent donc le `PASS` de tranche.
Le défaut ne doit pas être contourné par un `allow(missing_docs)` ni par une réduction de la politique de lint ; les items publics doivent être documentés.
## Tests ciblés
Les tests passent malgré les warnings documentaires :
```text
knowledge-domain-lib : 3 passed; 0 failed
knowledge-git-api : 1 passed; 0 failed
knowledge-sync-api : 1 passed; 0 failed
```
Les preuves confirment notamment :
- construction valide de `SourceId` ;
- rejet d'un identifiant vide ;
- absence de limite codée à trois repositories ;
- indépendance du contrat Git vis-à-vis d'une forge ;
- caractère non autoritaire de `ExternalSignal`.
## Scope Git observé
`git diff --cached --check` est propre.
Le staging transmis avant ajout du présent history contient :
```text
M CHANGELOG.md
M Cargo.lock
M Cargo.toml
M README.md
M ROADMAP.md
M RULES.md
M VERSION
M crates/knowledge-domain-lib/src/source.rs
M crates/knowledge-domain-lib/src/unit_tests.rs
A deltas/0.0.1/alpha.3.fix.1.md
M docs/000-README.md
M docs/architecture/001-PROJECT_PROFILE.md
M docs/architecture/002-KNOWLEDGE_ARCHITECTURE.md
M docs/plans/001-V0_0_1_FOUNDATION_PLAN.md
A docs/studies/002-ACTIX_MAUD_VITE_CORPUS_STUDY.md
M docs/validation/001-VALIDATION_MATRIX.md
```
Ce scope est cohérent avec le fix annoncé et le `Cargo.lock` régénéré par Cargo.
## Décision
`0.0.1-alpha.3.fix.1` est `FAIL`.
La transition autorisée est :
```text
0.0.1-alpha.3.fix.2
```
Le second fix doit rester minimal : documenter les quatre variantes publiques de `ContentFamily`, conserver la politique `missing_docs`, puis rejouer `cargo check`, Clippy strict et les trois suites ciblées. Aucun élargissement fonctionnel n'est autorisé.