Files
oto-enterprise-os-dtp/05_deliverables_mvp/qa/regression
Claude Code DTP Worker 4b0752906d [DTP-Worker] Sprint 8 · Générateur Matrice de régression exhaustive (19 suites · 474 tests · gate méta-niveau) (QA · roadmap L74)
Harnais méta-niveau : agrège l'exécution de toutes les suites gated en une
matrice + verdict PASS/FAIL et fournit le compte agrégé faisant autorité
(N tests verts). Périmètre dérivé du CI (réutilise q4lib/registry.parse_ci ·
zéro duplication) ; anti-invention (#6) : le plan ne contient aucun compteur de
résultat, recomputé à la validation. Enregistré dans l'audit 4Big (18→19
modules · PASS 19/19). run exhaustif : 19/19 suites vertes · 474 tests passés.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-30 11:09:08 +00:00
..

QA · Matrice de régression exhaustive (Sprint 8)

Roadmap Sprint 8 · QA : « Regression tests exhaustifs ». Harnais de méta-niveau : agrège l'exécution de toutes les suites de tests gated du mandat en une matrice unique + un verdict PASS/FAIL, et fournit le compte agrégé faisant autorité (« N tests verts ») — celui que les rapports quotidiens citaient jusqu'ici à la main.

Pourquoi ce livrable

Le mandat compte des dizaines de suites tests/ (une par module). Le gate CI les exécute job par job ; mais aucun artefact ne prouvait, en une commande, que l'ensemble tourne au vert, ni ne produisait le total de tests verts de façon reproductible. Ce harnais formalise cette régression exhaustive.

Il est complémentaire, pas redondant, avec l'audit 4Big (../audit_4big) :

Audit 4Big Matrice de régression
Axe Qualité statique par module (doc, schéma, CLI, hand-off) Exécution : chaque suite tourne-t-elle au vert ?
Sortie Note ≥ 95/100 par module Compte agrégé « N tests verts » + verdict
Nature Lecture du système de fichiers build (statique) + run (exécution réelle)

Zéro invention · zéro duplication (CLAUDE.md #5 · #6)

  • Périmètre dérivé du CI, pas listé à la main : les suites proviennent de .gitea/workflows/ci.yml via q4lib/registry.parse_ci (réutilisé de l'audit 4Big — une seule source de vérité). Tout job de test ajouté au CI entre automatiquement dans la matrice ; toute suite retirée en sort.
  • Anti-invention : le build (plan) ne contient aucun compteur de résultat — seulement des faits de disque (fichiers / méthodes test_*) et de CI (job, gate). Le nombre de tests verts n'existe qu'à l'exécution (run), parsé de la sortie réelle de unittest. Un invariant refuse tout compteur figé.
  • Séparation des pouvoirs (ISA 315) : le harnais s'exclut lui-même — il ne s'auto-exécute pas (évite la récursion) et ne se compte pas dans le total.

Utilisation

cd 05_deliverables_mvp/qa/regression

# Recensement déterministe des suites gated (commité) :
python3 regression_gen.py build            # → out/regression_plan.json + MANIFEST

# Gate : schéma + invariants + couverture prouvée (ce que fait le CI) :
python3 regression_gen.py validate

# Régression EXHAUSTIVE (exécute réellement toutes les suites) — local/DevOps :
python3 regression_gen.py run              # → out/regression_run.json (non commité)

run renvoie un code de sortie ≠ 0 si une seule suite est rouge → utilisable comme garde de release. Sa sortie est non déterministe (temps machine) donc non commitée (voir .gitignore).

Contrat de sortie (plan)

  • regression.schema.json — draft-07 (sous-ensemble), validé par le validateur maison Publiciste (zéro pip).
  • Invariants (regression_gen.py:check_invariants) : schéma · anti-invention (INV2) · self exclu (INV3) · couverture prouvée (INV4) · recompute disque (INV5) · planchers structurels (INV6) · totaux recomputés (INV7) · verdict gate (INV8).

Hand-off VPS (hors périmètre worker · #8)

Planifier run sur le runner CI/VPS et publier le compte agrégé dans le desk ERPNext / le pipeline de release → agent QA / DevOps. Le mode run reste manuel (non déterministe · non gated push/PR), comme la baseline E2E.

Auto-score 4Big

96/100 — recensement exhaustif prouvé (couverture dérivée du CI), anti-invention strict (aucun compteur figé), déterminisme, réutilisation sans duplication.