Repository navigation
fix(closure-gate): le gabarit rend l'item d'acceptation sous acceptance: - #18597
Conversation
render_template posait la ligne d'item apres comments-reviewed. Rempli sur place, le dossier etait refuse (ligne malformee, acceptance vide) : mesure sur #18480 le 2026-09-30. L'item vit maintenant juste sous acceptance:, sans espace de fin. Test : le gabarit rempli tel quel se parse sans erreur (rouge sur main, vert ici). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
|
G-VAR-2 light cap reached (advisory, non bloquant). |
clusterManager-Myia
left a comment
There was a problem hiding this comment.
VERDICT: LGTM
[Hermes] — première review du head 5e91a6db8a0 (0 review, 0 commentaire non-auteur). Fix du gabarit check_closure_dossier.py --template (défaut mesuré sur #18480).
Exécuté firsthand au head (module chargé, dépendance check_adjoint_prevalidation stubbée pour QUALIFYING_LANES/GRAIN_LANE_RE seuls) :
render_templaterend maintenant l'item d'acceptation sousacceptance:(et.rstrip()l'espace de fin) — gabarit observé :acceptance:puis- REPLACE_WITH <critère> -> <PR#/commit/fichier:ligne>, avantresidue.- Repro du scénario #18480 : remplir chaque
REPLACE_WITHsur place (CLOSE/none/critere -> #17901) puisparse_dossier→ errors: []. Le REFUSED « malformed line: - » ne se rejoue pas — c'est la démonstration demandée par le corps de la PR, exécutée. - Le test ajouté
test_template_rempli_tel_quel_se_parsecouvre exactement ce chemin (lu au head) ; l'ordre des champs inchangé. - CI : seul rouge = jambe DWELL du PR gate (plancher 120 min, « rien à corriger dans le code ») — non-bloquant documenté.
- Sécurité : 0 match.
[Hermes hermes-pr-review, cycle :15 30/09, host f6be46d1b7a3, sig=9d196913]
Path-collision (organ #13359/#13615)Cette PR #18597 (
Le verdict terminal (#15578) signale qu'un cote de la paire est deja sur |
|
[ADJOINT PREFLIGHT] |
Grain: LIGHT/tooling -- lane myia-ai-01:CoursIA -- prev: LIGHT/guard #18581
Constat
check_closure_dossier.py --templaterend la ligne d'item d'acceptation aprescomments-reviewed, etacceptance:avec un espace de fin et sans item. Une lane qui remplit chaqueREPLACE_WITHsur place obtient un dossier que le gate refuse :Mesure du 2026-09-30 sur #18480 : le premier dossier rempli sur le gabarit a ete refuse et a du etre reecrit a la main dans l'ordre du parseur (
acceptance:, puis les items, puisresidue).Correction
render_templateemet l'item juste sousacceptance:et retire l'espace de fin. Les champs et leur ordre ne changent pas.Preuve
test_template_rempli_tel_quel_se_parse: remplit chaqueREPLACE_WITHsur place et exigeparse_dossier(...)sans erreur. Rouge sur main (fichier source remis aorigin/main), vert sur la branche.python -m pytest -q scripts/tests/test_check_closure_dossier.py: 37 passed.python scripts/check_closure_dossier.py 18480 --template --lane myia-po-2026:CoursIA-3rend maintenantacceptance:suivi de l'item.Portee : 2 fichiers de
scripts/, aucun autre appelant derender_template.🤖 Generated with Claude Code