Compilación en Frío: La Superioridad del SSG frente al PDF Dinámico
Se observa que la generación en cliente (Client-Side Rendering) utilizando librerías como jsPDF o html2canvas ha sido tradicionalmente utilizado para crear PDFs. Este método, aunque flexible, presenta varios problemas:
- Carga Computacional: Obliga al usuario a descargar cientos de kilobytes de código JS bloqueante, lo que rompe el paradigma Zero-JS y puede generar resultados inconsistentes dependiendo del navegador y dispositivo.
- Seguridad: Exponer un endpoint dinámico para crear PDFs es susceptible a ataques Denegación de Servicio (DoS), permitiendo que un bot sature la CPU del servidor con múltiples peticiones simultáneas.
La arquitectura de Mercedev ha optado por una solución más proactiva y segura: la Compilación en Frío (Build-Time Generation). Se implementó el script merci-publish.py como parte del orquestador local merci-total. Este pipeline se encarga de asumir toda la carga computacional de renderizado gráfico de forma síncrona en la máquina del desarrollador antes de realizar el despliegue.
Aunque esto aumenta temporalmente el tiempo de compilación local (alrededor de 8 segundos por lote), el resultado es un PDF precompilado completamente inerte y cristalizado. Al servir estos PDFs mediante Nginx o un CDN estático, se reduce significativamente el coste de CPU en producción a cero (0.0%). El servidor es invulnerable a ataques DoS y no requiere mantenimiento de software backend complejo.
El script merci-publish.py solo regeneraría un PDF si el hash SHA del Markdown original de la bitácora ha sido modificado, lo que permite una gestión eficiente del volumen de PDFs.
Para obtener más detalles sobre este proceso y su implementación, leer el cuadernillo completo.