From f4121d11bb89d8d14d020bd8f40ba235b78edf83 Mon Sep 17 00:00:00 2001 From: ChemaVX Date: Wed, 29 Jul 2026 09:04:32 +0000 Subject: [PATCH] =?UTF-8?q?hreflang:=20curadas=20las=205=20parejas=20de=20?= =?UTF-8?q?agosto,=20y=20el=20aviso=20que=20no=20se=20pod=C3=ADa=20atender?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit El NIVEL C decía «nada convincente» en belgium, jal-1628 y libro azul, pero eso era del escáner de vectores: el espejo ES existe y está en la cola de agosto, no publicado cuando se escaneó. Abiertos los dos lados de cada uno: SÍ Bélgica 89-90 mismas noches (Eupen, 30/31-mar), Petit-Rechain, SOBEPS SÍ JAL 1628 mismo vuelo del 17-nov-86, Terauchi, Callahan y la FAA SÍ Libro Azul mismo programa y mismas cifras (12.618 / 701) SÍ Colares 1977 misma isla, Operação Prato, testimonio de Hollanda SÍ Teherán 1976 misma madrugada, los dos F-4, el documento de la DIA NO bases nucleares el EN son DOS casos (Malmstrom y Rendlesham); el ES es la apertura de PURSUE y CINCO bases. Solo comparten Malmstrom Libro Azul es el que enseña dónde está la línea: los apartados NO coinciden y aun así es SÍ, porque el SUJETO de los dos es el mismo programa histórico. En AARO el sujeto del ES era la confrontación con Grusch, y por eso es NO. Y las bases nucleares traen la lección de AARO repetida: coincidían hasta en el recuento —1.264 palabras exactas los dos— y no son el mismo artículo. Un número que cuadra no es prueba de equivalencia. Declararlas destapó un falso positivo: `violaciones()` solo miraba que ESTE lado estuviera publicado, así que los tres EN ya publicados con el ES aún programado salieron como hreflang.missing, recetando un `aplicar` que se niega —y con razón— porque apuntaría a una URL que no existe. Ahora exige los dos lados publicados. Un aviso que no se puede atender es ruido, y el ruido acaba con que nadie mire el informe. Auditores 42 y 40 limpios, seo-watch sin hallazgos. Co-Authored-By: Claude Opus 5 --- hreflang-parejas.md | 74 +++++++++++++++++++++++++++++++++++++++++---- seo_hreflang.py | 22 ++++++++++++++ 2 files changed, 90 insertions(+), 6 deletions(-) diff --git a/hreflang-parejas.md b/hreflang-parejas.md index b4cf1b3..48506d9 100644 --- a/hreflang-parejas.md +++ b/hreflang-parejas.md @@ -214,20 +214,40 @@ sim 0.746 sim 0.714 EN belgium-1989-1990-nato-fighters-ufo-wave Belgium 1989–1990: When NATO Fighter Jets Chased Ghosts - ES (nada convincente; lo más cercano: el-incidente-ovni-de-rendlesham-forest-1980-el-caso-) - decision: NO + ES oleada-belga-1989-1990-f-16-triangulo + Oleada belga 1989-1990: los F-16 que persiguieron un triángulo silencioso + NOTA (2026-07-29): los vectores dijeron «nada convincente» porque el espejo ES no + estaba PUBLICADO al escanear — está en la cola de agosto. Curado a mano abriendo + los dos: misma oleada, mismas noches (29-nov-1989 en Eupen, 30/31-mar-1990 con los F-16), + mismo fraude de Petit-Rechain y el mismo SOBEPS. ES publica el 4 de agosto. + Entra cuando se publiquen los dos lados; hasta entonces el tool lo salta solo + («un hreflang a una URL futura es un 404») y el auditor no lo pide. + decision: SI sim 0.709 EN jal-1628-alaska-1986-ufo-radar-encounter JAL 1628: The Best-Documented UFO Encounter in Aviation History - ES (nada convincente; lo más cercano: eeuu-desclasifica-162-archivos-secretos-sobre-ovnis-) - decision: NO + ES jal-1628-1986-alaska-luces-radar + JAL 1628: el Boeing 747 y las luces que lo siguieron sobre Alaska en 1986 + NOTA (2026-07-29): «nada convincente» era del escáner, porque el ES estaba PROGRAMADO, + no publicado. Abiertos los dos: mismo vuelo del 17-nov-1986, mismo 747 de carga con + vino francés, mismo Terauchi y mismo John Callahan salvando los documentos de la FAA. + ES publica el 25 de agosto. + decision: SI sim 0.705 EN project-blue-book-declassified-ufo-files Project Blue Book: 12,618 Sightings, 701 Unsolved, and a Program That Was Told to Stop - ES (nada convincente; lo más cercano: eeuu-desclasifica-162-archivos-secretos-sobre-ovnis-) - decision: NO + ES proyecto-libro-azul-701-casos-sin-explicar + Proyecto Libro Azul: 12.618 casos OVNI y 701 que nadie pudo explicar + NOTA (2026-07-29): mismo programa, mismas cifras en el titular (12.618 y 701), 1.726 y + 1.723 palabras. Los apartados NO coinciden —el EN va por Arnold, el Informe Especial + 14 y el Panel Robertson; el ES por Sign y Grudge, Hynek y cómo consultar los archivos + hoy— y aun así es SÍ: el ES no es traducción del EN por convención de la casa, y el + SUJETO de los dos artículos es el mismo programa histórico. Es la diferencia con AARO, + donde el sujeto del ES era la confrontación con Grusch y no los hallazgos de AARO. + ES publica el 10 de agosto. + decision: SI sim 0.701 EN americas-secret-psychic-spy-program-declassified-documents-reveal-project-stargates-extraordinary-history @@ -298,3 +318,45 @@ sim 0.645 La Noche del Misterio en Trans-en-Provence: El Caso OVNI Mejor Documentado de la Histo vaticano-extraterrestres-iglesia-catolica El Vaticano y los Extraterrestres: Una Iglesia Abierta al Misterio del Cosmos + +========================================================================== +## NIVEL D — parejas de AGOSTO, curadas a mano el 2026-07-29 +========================================================================== + +Los dos lados están escritos pero alguno aún no se ha publicado. No hay nada +que hacer hasta entonces: el tool las salta solo («un hreflang a una URL futura +es un 404») y el auditor no las pide mientras estén programadas. En cuanto +salgan las dos, `python3 seo_hreflang.py aplicar`. + +sim n/a colares 1977 + EN colares-1977-brazil-air-force-ufo-investigation + Colares 1977: Brazil's Most Documented UFO Investigation + ES colares-1977-operacion-prato-chupa-chupa + Colares 1977: cuando la Fuerza Aérea de Brasil investigó el chupa-chupa + NOTA: mismo caso, misma isla del delta amazónico, misma Operação Prato y el mismo + testimonio tardío de Hollanda. Los DOS se publican el 24 de agosto. + decision: SI + +sim n/a teherán 1976 + EN tehran-1976-iranian-f4-ufo-incident + Tehran 1976: The UFO That Disabled Two Fighter Jets + ES teheran-1976-cazas-f-4-ovni + Teherán 1976: los cazas F-4 que se quedaron sin sistemas ante un OVNI + NOTA: misma madrugada del 19-sep-1976, los mismos dos F-4 Phantom, el mismo fallo de + armamento y el mismo documento de la DIA. ES sale el 17 de agosto y EN el 27: la + pareja no se puede declarar hasta el 27. + decision: SI + +sim n/a bases nucleares + EN uap-nuclear-bases-six-decades-incursions + Nuclear Bases and UAP: Six Decades of Documented Incursions + ES archivos-pursue-uap-bases-nucleares-desclasificado + Los Archivos PURSUE y las bases nucleares: lo que el Gobierno acaba de confirmar + NOTA: parecían pareja hasta por el recuento —1.264 palabras EXACTAS los dos— y no lo + son. El EN se construye sobre DOS casos, Malmstrom y Rendlesham, con la explicación + del Pentágono de 2025, y cierra en «dos casos, dos preguntas». El ES se construye + sobre la apertura de archivos PURSUE y recorre CINCO bases: Malmstrom, Minot, + Vandenberg, Loring y el lado soviético. Solo comparten Malmstrom. Mismo tema, + artículos distintos — y la coincidencia de longitud enseña lo mismo que la de fecha + en AARO: un número que cuadra no es prueba de equivalencia. + decision: NO diff --git a/seo_hreflang.py b/seo_hreflang.py index 476445c..1de56b5 100644 --- a/seo_hreflang.py +++ b/seo_hreflang.py @@ -161,6 +161,18 @@ def cambios(): return plan + huerfanos(parejas), avisos, parejas +_PUB_OTRO = {} + + +def publicados(site): + """Slugs publicados del OTRO sitio, cacheado. Hace falta para no cantar una + violación que no se puede arreglar (ver `violaciones`).""" + if site not in _PUB_OTRO: + _PUB_OTRO[site] = {s for s, p in trae(site, None).items() + if p.get("status") == "published"} + return _PUB_OTRO[site] + + def violaciones(post, site, parejas=None): """Regla para el auditor: una pareja declarada que NO lo tiene puesto. @@ -171,6 +183,13 @@ def violaciones(post, site, parejas=None): No basta con que exista el bloque: se comprueba que las URLs sean las de ESTA pareja. Si un slug cambia, el hreflang se queda apuntando al viejo y esto es lo único que lo cazaría. + + Hacen falta los DOS lados publicados, no solo este. Al curar las parejas de + agosto (2026-07-29) quedaron tres EN ya publicados emparejados con un ES aún + programado, y el auditor cantó tres violaciones con una receta que no las + arreglaba: `aplicar` se niega, y con razón, porque el hreflang apuntaría a + una URL que todavía no existe. Un aviso que no se puede atender es ruido, y + el ruido acaba con que nadie mire el informe. """ import seo_rules as R if parejas is None: @@ -181,6 +200,9 @@ def violaciones(post, site, parejas=None): return [] if post.get("status") != "published": return [] + otro_site = "es" if site == "en" else "en" + if (par[1] if site == "en" else par[0]) not in publicados(otro_site): + return [] cabeza = post.get("codeinjection_head") or "" esperado = bloque(*par) if esperado in cabeza: