From 2e552232f3d664adbc6d1bb591d7b81cad9f8071 Mon Sep 17 00:00:00 2001 From: ChemaVX Date: Tue, 28 Jul 2026 07:42:39 +0000 Subject: [PATCH] =?UTF-8?q?auditor:=20el=20motivo=20del=20waiver=20tambi?= =?UTF-8?q?=C3=A9n=20necesita=20el=20sitio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Los 18 waivers del ES salían como "waived: None": la línea que imprime el motivo llamaba a accepted_reason sin el sitio, así que lo buscaba en el diccionario del EN. El waiver se aplicaba bien —eso sí pasaba el sitio—, pero el informe salía mudo justo donde tiene que justificarse, que es el único propósito de esa sección. Y si algún día vuelve a no haber motivo, ahora lo dice: un waiver sin razón documentada es un fallo, no un hueco que rellenar con None. --- seo_audit.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/seo_audit.py b/seo_audit.py index 7cc13e5..707d4b2 100755 --- a/seo_audit.py +++ b/seo_audit.py @@ -204,10 +204,13 @@ def main(): print("ACCEPTED EXCEPTIONS (won't fix — documented decisions, NOT in the count)\n") for p, actionable, accepted, info, sc in sorted(results, key=lambda t: t[0]["slug"]): for v in accepted: - reason = X.accepted_reason(v.rule, p["slug"]) + # ⚠️ CON el sitio: sin él busca en el diccionario del EN y + # devuelve None para los 18 waivers del ES, dejando el informe + # mudo justo donde tiene que justificarse. + reason = X.accepted_reason(v.rule, p["slug"], args.site) print(f"• {p['slug']}") print(f" [{R.SEV_NAME[v.severity]:4}] {v.message}") - print(f" waived: {reason}") + print(f" waived: {reason or '⚠ SIN MOTIVO DOCUMENTADO — esto es un fallo'}") print() # ---- ranked guidance ----