[DTP-Worker 20260802_080527] Sprint 8 · buffer · Doc QA : documentation du 2ᵉ étage QA (batterie de gates statiques ci/*.sh) dans qa/AGENT.md — trou comblé (le titre promettait « gates de méta-niveau », le corps n'en tabulait aucun) ; vérif préalable : pas de dérive fiscal/ecf (ledger schéma-#1 synthétisé), pas de gate redondant à ajouter

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Claude Code DTP Worker
2026-08-02 08:13:27 +00:00
parent 0f4f1b533b
commit ccb86fe7ca
2 changed files with 67 additions and 0 deletions
+22
View File
@@ -36,6 +36,28 @@ périmètre — un auditeur ne s'audite jamais.
Ce compte est **découvert automatiquement depuis le CI** (`q4lib.registry.parse_ci`,
réutilisé sans duplication) — jamais compté à la main.
## Deuxième étage QA : la batterie de gates statiques (`ci/*.sh`)
Au-dessus des 4 modules d'audit ci-dessus, le mandat exécute une couche de **gates
statiques** — les *gates de méta-niveau* du titre. Leur périmètre n'est **jamais**
figé à la main : `check_ci_integrity` **découvre** l'ensemble via `git ls-files
'ci/*.sh'` et **refuse** qu'un `ci/*.sh` ne soit pas câblé à un job du gate CI (ou
inversement) — la liste ci-dessous est donc *l'état courant*, pas une constante.
| Gate | Rôle (une commande, déterministe, zéro chiffre fabriqué) |
|---|---|
| `check_ci_integrity.sh` | Intégrité du câblage CI : chaque `ci/*.sh` est câblé à un job **dans** `gate.needs` (aucun gate décâblé ni orphelin) — c'est le gardien des gardiens (il **s'exclut** lui-même · SoD). |
| `check_readme_claims.sh` | Intégrité des **chiffres** des README / fiches agent (CLAUDE.md #6) : chaque compte cité est **recalculé** depuis l'artefact `out/` ou la source (jamais une donnée inventée). |
| `check_artifacts.sh` | **Reproductibilité** : chaque `out/*.json` se régénère **byte-identique** (aucune dérive entre source et hand-off commité). |
| `check_regression.sh` | **Fraîcheur** de la matrice de régression : le run rejoué == le run commité (aucune régression silencieuse · #5). |
| `check_docs.sh` | Qualité documentaire : les liens Markdown relatifs internes pointent vers une cible **existante** (gate 4Big). |
| `guard_constraints.sh` | Enforce les **contraintes NON-NÉGOCIABLES** de CLAUDE.md : plateformes git proscrites (hors Gitea), CRM interdits, paiement non conforme, écriture serveur bannie — via une prohibition marquée ou l'échappatoire `ci-allow`. |
| `validate_json.sh` | Tous les `.json` suivis sont **bien formés** (parse strict) — première ligne de défense avant toute lecture d'artefact. |
Ces gates ne **produisent** pas de livrable métier : ils **prouvent** que les
livrables des autres agents tiennent. Un nouveau gate suit la même règle — il est
**automatiquement** intégré au périmètre dès qu'il est câblé (découverte CI), sans
liste à maintenir.
## Non-négociables (voir CLAUDE.md racine pour la liste complète)
- Gitea only (jamais GitHub)
- ERPNext natif en priorité