Cómo construí un backfill de sindicación del blog
72 publicaciones de Medium de las que la base de datos no sabía nada: el límite de RSS, un workaround no documentado de GraphQL, apóstrofes Unicode, y la trampa del stdin de kamal.
72 publicaciones de Medium de las que la base de datos no sabía nada: el límite de RSS, un workaround no documentado de GraphQL, apóstrofes Unicode, y la trampa del stdin de kamal.
El daemon de Docker de mi Mac era una pieza estructural de los deploys de producción. Build-once-deploy-many con Kamal 2, y las tres suposiciones de la investigación que resultaron incorrectas.
Detectar publicaciones en Medium sondeando el feed RSS, los cuatro encabezados obligatorios de LinkedIn, y la regla de acrónimos de Zeitwerk que rompió el rollback de una migración en CI.
Haciendo que los títulos del dashboard enlacen a los posts en vivo: un prefijo de ruta configurable, una condición con pub_date contra enlaces rotos, y una columna del spec que descarté.
Búsqueda de Pexels en la misma página con Turbo Frames, la particularidad del header de autenticación que devuelve 401 a los tokens Bearer, y un modelo singleton de configuración para la API key.
Un botón para publicar en Medium sobre una API obsoleta pero funcional: Net::HTTP inyectable, renderizado de markdown bajo demanda, y una máquina de estados dividida entre el job y el servicio.
Conectando Turbo Streams para que los jobs de escaneo actualicen la página mientras corren, y la trampa del adaptador async de cable.yml que se tragaba cada broadcast del worker.
Mover el escaneo de GitHub a un trabajo en segundo plano después de que superó el tiempo límite del proxy, y la trampa del orden LIFO de rescue_from que rompió el camino de descarte.
Hacer que cada merge despliegue staging automáticamente: un runner autoalojado, cuatro obstáculos seguidos, y la trampa de los secretos de Kamal que más costó resolver.
Escribir las reglas de qué hacer cuando el CI se pone en rojo en un proyecto Rails en solitario, y la limitación de GitHub que convirtió la puerta de fusión en un comentario que sostiene todo el peso.
Página 4 de 5