title: Execution apres N due to non-hermetic gating and ternary misuse

env:
Win11
PowerShell console (no admin)
NAS SMB

repro: Coller un bloc ou 'return' n'encapsule pas toutes les commandes (hors if global).

repro: Utiliser une pseudo-ternary '?:' en PowerShell provoque une erreur de parsing, puis collage fractionne.

verify_cmds: Select-String -Path REGLES_GOUVERNANCE.txt -Pattern 'SCRIPT-GENERATION-HANDOVER-RULE\\s+v1\\.0'

verify_cmds: Get-ChildItem \\DS-918\\...\\_registry -Filter *.bak | Sort-Object LastWriteTime -Descending | Select -First 5 Name,LastWriteTime

patterns: presence de '?' suivi de ':' (indice) - verifier manuellement

patterns: one-shot sans encapsulation globale & { ... } (regex tete absente)

summary: Encapsulation hermetique & { } + EXECUTE uniquement si ( -eq 'O'); suppression du ternary

code_guardrail: = Read-Host 'Proceed? Type O to continue (O/N)'; if( -ne 'O'){ Write-Host '[CANCEL]'; return }

recipe_steps: Tout le bloc (helpers+preview+O/N+execute) dans un unique scriptblock & { ... }

recipe_steps: Aucune commande d'ecriture apres la condition

recipe_steps: Remplacer la pseudo-ternary par un if/else PowerShell explicite

guardrails: ENCAPSULATION-ONE-SHOT v1.0 : bloc unique & { ... } obligatoire

guardrails: ASCII-only, no here-strings, single-layer

guardrails: Preview -> O/N -> ecriture ; .bak systematiques ; local->NAS Safe-Replace

verify_cmds: Get-ChildItem \\DS-918\\chatgpt\\ChatGPT-Gouvernance-Projets\\_registry -Filter *.bak | Sort-Object LastWriteTime -Descending | Select -First 3 Name,LastWriteTime

verify_cmds: Select-String -Path \\DS-918\\...\\REGLES_GOUVERNANCE.txt -Pattern 'ENCAPSULATION-ONE-SHOT\\s+v1\\.0'

status: fixed


title: Boot-pack incomplet (KB et Patch History absents) entraine boucles et incoherences

impact: Rebouclages et echanges multiples avant d obtenir un script correct

impact: Incoherence des regles appliquees suivant les fils

impact: Perte de temps (manque de garde-fous connus)

repro: Demarrer un fil code/script sans fournir bug_kb\\BUG_KB.jsonl et _patches\\SCRIPT_PATCH_HISTORY.txt

repro: Le modele ne charge pas les garde-fous et recettes correctives deja connues

repro: Livraisons non standard (ex: here-strings, gating partiel, verifs insuffisantes)

verify_cmds: Select-String -Path \\DS-918\\...\\_registry\\REGLES_GOUVERNANCE.txt -Pattern 'BOOT-PACK-KB-REQUIRED\\s+v1\\.0'

patterns: Audit BOOT-PACK: elements manquants (KB JSONL, Patch History)

patterns: REGLES_GOUVERNANCE.txt sans section BOOT-PACK-KB-REQUIRED v1.0

summary: Rendre KB et Patch History obligatoires dans le BOOT-PACK + enforcer et audit

code_guardrail: if (-not (Test-Path bug_kb\\BUG_KB.jsonl) -or -not (Test-Path _patches\\SCRIPT_PATCH_HISTORY.txt)) {

code_guardrail: Write-Host '[BLOCK] KB/Patch History manquants. Fournissez le BOOT-PACK complet.'

recipe_steps: Ajouter la regle BOOT-PACK-KB-REQUIRED v1.0 dans REGLES_GOUVERNANCE.txt

recipe_steps: Exiger le BOOT-PACK complet a l ouverture de tout fil code/script

recipe_steps: Refuser de livrer des scripts tant que KB et Patch History ne sont pas fournis

recipe_steps: Utiliser l audit BOOT-PACK avant generation

recipe_steps: Mettre a jour la memoire du modele pour cette exigence

guardrails:
BOOT-PACK-KB-REQUIRED v1.0
SAFE-CREATE-ENFORCER v1.1
ENCAPSULATION-ONE-SHOT v1.0
SCRIPT-GENERATION-HANDOVER-RULE v1.0

verify_cmds: Get-ChildItem \\DS-918\\chatgpt\\ChatGPT-Gouvernance-Projets\\_registry\\bug_kb -Filter BUG_KB.jsonl

verify_cmds: Get-ChildItem \\DS-918\\chatgpt\\ChatGPT-Gouvernance-Projets\\_registry\\_patches -Filter SCRIPT_PATCH_HISTORY.txt