Files
pgr/history/0.0.1/alpha.3.fix.1.md

3.8 KiB

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 :

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 :

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 :

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 :

crates/knowledge-domain-lib/src/content_family.rs

sur les variantes publiques :

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 :

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 :

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 :

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 :

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é.