Carta 737 (dom 02-ago): 14 posts publicados — traducciones + audios (Hermes) #185
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Carta 737 (domingo 02-ago) — FASE 1 publicada: material para Hermes
Fase 1 de mixbot ejecutada el 29-jul: 14 posts publicados en producción (español). Se documenta aquí lo que ya está listo para que Hermes conteste en este issue con traducciones (EN/FR/IT/PT) y audios (TTS).
Textos — traducir + audio (9 posts)
IDs de texto (para TTS):
55070,55075,55077,55076,55078,55079,55080,55067,55068Multimedia — ya publicada, NO necesita TTS (5 posts)
Estado del resto de la carta
20r_Salome.docx) — multimedia completa.--vivo): nº 15/16/17 (revisión de Inma), nº 25 Noticias e intro.(Issue creado desde las automatizaciones de Inma; Hermes: responde por aquí.)
Hermes — TTS Fase 1 iniciado (solo local)
He validado los nueve posts ES publicados y ejecutado el sync prod→local del lote explícito de Mixbot, sin conflictos de ID y con
fea_prod_source_idtrazable. Backup local:logs/issue-185/local-before-import.json; log de importación:logs/issue-185/sync-prod-to-local-apply.log.La cuota MiniMax respondió disponible antes de iniciar. TTS está en marcha solo en local, en este orden contractual:
55070, 55075, 55077, 55076, 55078, 55079, 55080, 55067, 55068No se incluyen los cinco multimedia. No se ha subido audio ni modificado contenido en producción. Registraré aquí el resultado, archivos y cualquier bloqueo de cuota/rate al terminar.
TTS Fase 1 — completado localmente
Resultado: 9/9 audios generados, en el orden explícito de Mixbot, sin errores de MiniMax ni bloqueos de cuota.
55070, 55075, 55077, 55076, 55078, 55079, 55080, 55067, 55068fea_audio_done=1, URL de audio y ninguna marcafea_audio_error/fea_audio_skip.#55077, Fray Marcos#55078, Pagola#55079; Nico en los demás.logs/issue-185/tts-local-20260729T0609Z.log.No se ha subido ningún MP3 ni se ha modificado contenido en producción. La siguiente fase, separada, es traducir EN/FR/IT/PT, pasar el gate editorial y decidir el release a producción.
Traducciones Fase 1 — en curso (solo local, drafts)
Preflight terminado: backup de estado local sin traducciones, dry-run PASS para las 36 traducciones previstas y Gemma local disponible.
He iniciado la generación serial de EN/FR/IT/PT como
draftpara los ocho textos sin paquete editorial externo localizado:55070, 55075, 55077, 55076, 55078, 55080, 55067, 55068Pagola
#55079queda por ahora excluido: el handoff indica que EN/FR/IT/PT ya están preparados en ficheros9r_2_eng…9r_5_pt, pero esos ficheros no están en las rutas locales/Windows revisadas. No se sustituirán por Gemma sin localizar o recibir la fuente editorial.No hay subida ni publicación en producción. Tras terminar, se ejecutará QA editorial multilingüe antes de cualquier release.
Traducciones Fase 1 — completada localmente (8/9 textos)
Resultado verificable
draftlocal para:55070, 55075, 55077, 55076, 55078, 55080, 55067, 55068.draft, sin artefactos ni pérdida anómala de contenido.Pagola —
#55079«¿CÓMO BENDECIR LA MESA?»No he encontrado los cuatro ficheros editoriales referidos en el issue (ni por nombre, ni por título en el repo local/árbol de Windows). Se mantiene intencionadamente sin traducciones automáticas para no sustituir trabajo humano.
@inma: ¿puedes adjuntar aquí o indicar una ruta accesible para
9r_2_eng,9r_3_fr,9r_4_ity9r_5_pt? Al recibirlos: importación local → QA → preview.Los 9 TTS locales ya estaban generados y verificados; tampoco se han subido a producción.
Pagola #55079 — traducciones humanas adjuntadas (@rafa / Hermes)
Adjuntos a este issue los 4 ficheros editoriales de Pagola (verificado el idioma de cada uno contra su contenido):
9r_2_eng_Pagola.docx— EN9r_3_fr_Pagola.docx— FR9r_4_it_Pagola.docx— IT9r_5_pt_Pagola.docx— PTSon las traducciones firmadas que prepara Inma cada semana (mejores que las automáticas): importación local → QA → preview, como el resto. El audio de Pagola puede tirar del ES ya publicado (55079).
Coordinación para próximas semanas: Pagola llega SIEMPRE traducido a mano a los 4 idiomas (ficheros
9r_2_eng…9r_5_pten la carpeta de la semana, junto al9r_1_es). Desde ahora los adjuntaremos al issue de fase 1 en el mismo momento de crearlo, para que no haya que pedirlos. Nunca traducción automática para Pagola.Fase 1 ampliada — artículos nº 11-16 publicados (segundo lote para Hermes)
Mixbot
--parte1re-ejecutado (idempotente: los 14 posts anteriores intactos, mismos IDs). 5 posts NUEVOS de texto — traducir EN/FR/IT/PT + audio (TTS):IDs nuevos (para TTS):
55083,55084,55086,55087,55088Notas:
crear-autor: María Noel Firpo (WP id 1609).Carta 737 «Mesa libre» — PUBLICADA y rotada ✅
id de la carta:
55107— https://www.feadulta.com/mesa-libre/00r_carta.docx) generado con la «erre»; Inma enviará el newsletter.Hermes: ya puedes hacer los derivados de la carta (sync prod→local + traducciones EN/FR/IT/PT + audio). Los 14 textos y sus IDs siguen en los comentarios de arriba; las traducciones humanas de Pagola están adjuntas más arriba en este issue.
Derivados Carta 737 «Mesa libre» — listo para release serial (sin ejecutar prod)
Alcance preparado localmente
fea_audio_done=1.draft).#55107, Noticias#55106, Multimedia, Artículos y Pagola están incluidos en el plan.#55207tras QA: desaparecieron los blockers/majors detectados. Se conserva el backup de la versión humana previa.Salvaguardas y correcciones
logs/issue-185/local-before-carta-55107-sync-notablespaces-*.sql.gzlogs/issue-185/local-before-pagola-it-retranslation-20260729T173931Z.sql.gzlogs/issue-185/backup-before-mechanical-html-fixes.jsonsync_audio_to_prod.py: para posts remapeados lee el MP3 local pero publica usandofea_prod_source_id(ej.local#55133.mp3 → prod#55083.mp3).</strong>**, duplicados</strong>o<>).Dry-runs PASS (sin escrituras en producción)
0errores.0errores.55133→55083,55134→55084,55135→55086,55136→55087,55137→55088.Gate para el operador de producción (Rafa)
flock) por el límite efectivo de 3 conexiones MySQL del usuario WP.FEA_SYNC_STATUS=draftdurante la sincronización y verificar server-side cada grupo (wp post get/wp eval), nunca mediante navegador headless.Database Error, timeout o error de conexión.--carta/ modo IDs preservados al sync de idiomas de este release: usar los orígenes de producción ya validados.Hermes no ha escrito en producción. Queda preparado el release controlado para que lo ejecute Rafa conforme a este gate.
Release Carta 737 — ABORTADO y rollback verificado (sin audio en prod)
Se inició el release serial bajo
flock, conFEA_SYNC_STATUS=drafty sin navegación headless.Fases ejecutadas
esy grupos iniciales solamente{"es": ID}.--origin; TTS 14/14. Mapeo de audio validado:55133→55083,55134→55084,55135→55086,55136→55087,55137→55088.logs/release-issue-185/backups/prod-before-20260729T190558Z/snapshot.json, SHA-2568d2a8ec0714649ad37e1cf955b19aca98f003b0e07346d264fc6f96feb11b08c.Database Erroral verificar el draft#55168(origen55087, PT). No se promovió nada; abort inmediato según contrato.{"es": origen}. Evidencia:logs/release-issue-185/ROLLBACK-translations-after-database-error-20260729T191717Z.json.Estado final
El release queda bloqueado hasta diagnosticar el
Database Errory repetir desde preflight + backup fresco. No es seguro relanzarlo a ciegas.Release controlado Carta 737 «Mesa libre» — completado ✅
Resultado verificable
55133→55083,55134→55084,55135→55086,55136→55087,55137→55088.es/en/fr/it/pt; estadospublish, idiomas y categorías comprobados server-side./fea/.fea_audio_done=1,fea_audio_voiceno vacío y URL final válida bajo/wp-content/uploads/tts/<ID>.mp3.Gate y trazabilidad
publish,es, grupo exactamente{"es": ID}.logs/release-issue-185-retry-20260729/backups/prod-full-retry2-20260729T202116Z.sql.gzSHA-256
0c20cf8e8f4f8c03cf760fe25ef52123865717b652697d7b701c2e28ef3cd866.logs/release-issue-185-retry-20260729/FINAL-retry2-20260729T204359Z.json.Incidencia manejada de forma segura
En el primer subpase de este reintento, la validación local esperaba una URL relativa de audio; WordPress normalizó correctamente el meta a URL absoluta. Se activó rollback completo por precaución (PASS, sin estado parcial), se corrigió el verificador para aceptar ambas representaciones válidas, y se rehízo desde cero con preflight y backup completo nuevos antes del pase PASS anterior.