Al construir aplicaciones en entornos de ejecución de borde como Cloudflare Workers, los desarrolladores se enfrentan a restricciones de entorno estrictas. Los Workers operan como aislados de V8, que son entornos de pruebas que ejecutan JavaScript y WebAssembly, pero carecen de un sistema operativo tradicional o de la capacidad de ejecutar binarios nativos arbitrarios. Esto crea un obstáculo significativo para herramientas como LaTeX, que son programas de código de máquina nativo. Los motores de LaTeX (como `pdflatex` o `xelatex`) están diseñados para interactuar con un sistema operativo completo, leyendo y escribiendo numerosos archivos temporales y ejecutando otros programas mediante la terminal. Debido a que estos requisitos no pueden cumplirse dentro de un aislado, el proceso de compilación debe delegarse a un servicio separado, típicamente un contenedor, accesible a través de HTTP.
Para gestionar esta delegación, el autor eligió Tectonic como el motor subyacente. A diferencia de una instalación estándar de TeX Live, que puede ocupar gigabytes de espacio en disco, Tectonic es un programa autónomo que descarga únicamente los paquetes, fuentes y patrones de guionización específicos requeridos para un documento determinado bajo demanda. Esto permite que la imagen del contenedor se mantenga pequeña mientras sigue admitiendo documentos complejos. Además, Tectonic maneja automáticamente las múltiples pasadas requeridas por LaTeX para resolver referencias cruzadas y bibliografías, simplificando la API para la aplicación de borde. Para garantizar la seguridad, el servicio utiliza la bandera `--untrusted` y desactiva el 'shell escape', una función que de otro modo podría permitir que un documento LaTeX malicioso ejecute comandos de terminal arbitrarios en el servidor anfitrión.
El despliegue de este servicio implica compensaciones específicas de seguridad e infraestructura. Debido a que el contenedor se encuentra en una URL pública, el autor implementó un modelo de seguridad de 'fallo cerrado': el servicio se niega a iniciar a menos que se proporcione un `COMPILE_TOKEN` válido en el entorno. Esto evita que usuarios no autorizados utilicen el contenedor como un recurso de computación gratuito. Además, el servicio gestiona el manejo de archivos creando directorios temporales únicos y atómicos para cada trabajo utilizando `mkdtemp`. Esto evita colisiones entre solicitudes concurrentes que comparten la misma instancia de contenedor. Aunque el autor consideró utilizar autenticación específica de la plataforma (como los tokens de identidad firmados de Google Cloud), optó por un secreto compartido para mantener la compatibilidad entre diferentes hosts de contenedores, lo que ilustra una compensación deliberada entre la máxima seguridad y la portabilidad arquitectónica.
