Files
oto-enterprise-os-dtp/05_deliverables_mvp/rbac/roleprofile_gen/out/MANIFEST.json
T
Claude Code DTP Worker a30ff937f0 [DTP-Worker] Sprint 8 · buffer L75 · Reproductibilité checkout propre : hand-off out/ des 4 générateurs RBAC était .gitignore-é (gate rouge en CI, vert local seulement) + durcissement check_artifacts (build produit ⇒ DOIT être suivi par git)
Défaut réel (même classe que le bug regression_run.json corrigé plus tôt) :
les 4 générateurs RBAC (fixtures_gen/userperm_gen/roleprofile_gen/apply_plan)
.gitignore-aient leur out/, alors qu'ils sont audités en archétype `generator`
(critère HANDOFF). En checkout PROPRE (git archive HEAD = ce que voit le runner
Gitea) leur out/ est absent → qa/audit_4big (dont le build relit le out/ de
CHAQUE module) les note 80<95 ⇒ INV7 ⇒ build refusé ⇒ check-artifacts ET
check-regression ROUGES. Ça ne passait qu'en local via les out/ non suivis
laissés par des build manuels.

Fix : committer le out/ des 4 générateurs (build byte-déterministe prouvé ;
apply_plan lit ses frères en process, pas via out/) → alignement sur les 15
autres générateurs ; audit 100/100 en checkout propre.

Durcissement : check_artifacts.sh exige désormais `git ls-files --error-unmatch`
sur chaque fichier produit → un out/ ignoré/non commité devient une erreur
LOCALE honnête au lieu d'une surprise en CI. Bite-proof : git rm --cached d'un
artefact (laissé sur disque) ⇒ exit 1 ; re-add ⇒ exit 0.

Régénéré : quality_report.json (dérive DOC = taille des 4 README édités).
Vérifs : 6 gates verts sur git archive propre ; 534/21 inchangé ; suites OK.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-31 01:42:14 +00:00

50 lines
1.0 KiB
JSON

{
"generated_from": "rbac_50_roles.json",
"source_version": "1.0.0",
"cible_rbac_roles": 50,
"counts": {
"role_profiles": 6,
"portails_metier": 5,
"portails_techniques": 1,
"roles_couverts": 50
},
"profiles": [
{
"portail": "achat",
"role_profile": "OTO Portail Achat",
"metier": true,
"nb_roles": 5
},
{
"portail": "compta",
"role_profile": "OTO Portail Compta",
"metier": true,
"nb_roles": 8
},
{
"portail": "construction",
"role_profile": "OTO Portail Construction",
"metier": true,
"nb_roles": 10
},
{
"portail": "direction",
"role_profile": "OTO Portail Direction",
"metier": true,
"nb_roles": 9
},
{
"portail": "plateforme",
"role_profile": "OTO Portail Plateforme",
"metier": false,
"nb_roles": 6
},
{
"portail": "ventes",
"role_profile": "OTO Portail Ventes",
"metier": true,
"nb_roles": 12
}
]
}