From 1f1351304583fe4bf8b91741654bc5126743d438 Mon Sep 17 00:00:00 2001 From: ChemaVX Date: Tue, 21 Jul 2026 08:27:02 +0000 Subject: [PATCH] =?UTF-8?q?seo:=20el=20aviso=20de=20colisi=C3=B3n=20de=20t?= =?UTF-8?q?ema=20also=20en=20el=20blog=20ES?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Estaba capado a EN porque las stopwords del motor eran inglesas: en español «que» o «los» pasaban el filtro de 3 caracteres y contaban como identidad de caso, así que el aviso habría sido ruido. Con las stopwords ES y el tokenizador sin acentos (chemavx-seo-tools 31c9d3e) ese motivo ya no existe. Se destapó generando a propósito un artículo de Canarias 1976 que ya estaba publicado: el motor lo detectaba con severidad alta («same case + year: canarias, 1976») y el aviso no llegaba a Telegram. Simulado con el corpus real antes de tocar nada — con la reja quitada, el mensaje sale correcto. fetch_collision_corpus y collision_notice ya eran agnósticas del idioma, así que no hay más cambios. Sigue sin bloquear: el draft se crea igual. --- src/generator/generator.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/generator/generator.py b/src/generator/generator.py index 412ad12..b50dca1 100644 --- a/src/generator/generator.py +++ b/src/generator/generator.py @@ -685,12 +685,14 @@ class OutputGenerator: async def _collision_note(self, lang: str, title: str) -> str: """Aviso de canibalización del título propuesto contra los posts - published+scheduled del sitio. Solo EN (las stopwords del motor son - inglesas). Nunca lanza y nunca bloquea: el draft se publica igual y - el aviso viaja en el notice de Telegram. + published+scheduled del sitio. Los DOS idiomas desde 2026-07-21: estuvo + capado a EN porque las stopwords del motor eran inglesas y en español + «que» o «los» contaban como identidad de caso; con las stopwords ES y el + tokenizador sin acentos ya no. Se destapó generando a propósito un + Canarias 1976 que ya existía: el motor lo detectaba y el aviso no salía. + Nunca lanza y nunca bloquea: el draft se crea igual y el aviso viaja en + el notice de Telegram. """ - if lang != "en": - return "" try: from src.seo.autofill import collision_notice, fetch_collision_corpus corpus = await fetch_collision_corpus(lang)