El fin de semana en que el motor maduró
Hay un momento en que una base de código deja de ser algo que estás construyendo y pasa a ser algo sobre lo que otros pueden construir. Para RakuAI, ese momento fue un fin de semana de 276 commits entre Navidad y Año Nuevo.
Hay fines de semana en los que una base de código avanza, y hay fines de semana en los que una base de código cambia de categoría. El fin de semana entre Navidad y Año Nuevo fue del segundo tipo.
Doscientos setenta y seis commits llegaron a los repositorios. El runtime ganó el tipo de superficie que convierte un proyecto de investigación en una plataforma. Anclas espaciales. Composición OpenXR. Inferencia de modelos de lenguaje pequeños en el dispositivo. Sincronización federada con criptografía real. Abstracción de hardware para el canal de comunicaciones ópticas. La mayor parte llegó en PRs paralelas escritas por agentes, revisadas y fusionadas a través del flujo de trabajo multiproveedor que lleva funcionando dos meses.
El sábado por la mañana me senté con un café y una cola llena de TODOs de alta prioridad. Para el domingo por la noche cerré la laptop sobre un motor distinto del que había abierto el sábado. Esta es la entrada sobre qué se lanzó, qué significa, y por qué creo que 2026 es el año en que otros empiezan a tomarse en serio este motor.
Los grandes lanzamientos
API en C de TensorFlow Lite para inferencia de SLM. Este es el que más me entusiasma. El runtime ahora puede cargar modelos de lenguaje pequeños en formato TFLite y ejecutar inferencia contra ellos como una operación de primera clase del runtime. La motivación es sencilla: no todo modelo necesita un viaje de ida y vuelta a la nube. Algunos de los comportamientos de IA que impulsan una experiencia de RA son ajustados, enfocados, y lo bastante pequeños como para correr en el dispositivo. El camino de TFLite nos da eso. El camino del LLM en la nube a través del XRAssistantService nos da el otro extremo. El motor ahora abarca ambos.
Anclas espaciales completas (Épica #555). Ciclo de vida completo de anclas espaciales: crear, persistir, compartir entre dispositivos, restaurar en una sesión distinta, expirar. La capa de persistencia está respaldada en la nube a través de HTTP con libcurl, con la capa de cifrado (AES-256-GCM, derivación de claves PBKDF2) llegando el mismo fin de semana. Las anclas ahora son objetos de primera clase del runtime. Una experiencia de RA que necesite colocar un objeto virtual sobre la misma encimera de cocina hoy, mañana, y dentro de un mes, en dos pares distintos de gafas propiedad de dos personas distintas, funciona.
Estabilización de la pose de anclas con filtro de Kalman. Algo pequeño que importa mucho. Las poses de anclas sin filtrado tiemblan lo justo para sentirse mal. Las poses de anclas con filtrado de predicción de estado de Kalman se sienten sólidas. El runtime ahora aplica el filtro automáticamente; las aplicaciones por encima no tienen que saberlo.
Gestor de capas de composición OpenXR y espacios de acción. Continuando el trabajo de columna vertebral de OpenXR de noviembre. El gestor de capas de composición es lo que permite que un solo fotograma combine el passthrough de la cámara, el contenido virtual del usuario, y cualquier superposición del sistema en el orden correcto con los modos de mezcla correctos. Fundamental y fácil de subestimar.
Cifrado AES-256-GCM de producción y descubrimiento de pares por UDP para anclas compartidas. Esto es lo que hace que «compartir un ancla con un amigo que está en la misma habitación» sea realmente seguro de lanzar. El protocolo de anclas compartidas usa cifrado autenticado de extremo a extremo. El descubrimiento de pares ocurre por UDP localmente sin pasar por un viaje de ida y vuelta a la nube. La historia de privacidad y latencia para la RA compartida es real.
Capa de abstracción de hardware para el canal óptico (33 TODOs de sensores resueltos). El enlace óptico, cuando está presente en un dispositivo, ahora es un par del enlace de RF. Ambos están abstraídos detrás del mismo gestor de enlace de doble modo que llegó en noviembre. El runtime por encima no le importa qué radio está en el cable.
Sincronización federada conectada a criptografía real. El subsistema de sincronización federada funcionó con stubs durante la mayor parte del otoño. Este fin de semana ganó implementaciones reales: transporte HTTP, sobre JSON, verificación de firma criptográfica. Las actualizaciones de modelos de IA/ML ahora pueden distribuirse a los dispositivos a través de la vía federada de forma segura.
Integración de SDK de seguimiento ocular de proveedores y verificación de tokens. Un puñado de SDKs de seguimiento ocular específicos de proveedores ahora están conectados detrás de la interfaz de proveedor de OpenXR, con autenticación adecuada basada en tokens para la capa de licenciamiento del proveedor.
Instrumentación de perfilado de GPU en todo el renderizador (15 TODOs resueltos). El tiempo de GPU por pasada, los presupuestos de memoria, y la detección de bloqueos de pipeline ahora están activos. Si un fotograma se alarga, podemos ver exactamente qué pasada consumió el presupuesto.
Funcionalidad de actualizador de runtime (10 TODOs resueltos). El runtime ahora puede actualizarse a sí mismo en campo. Con versiones, firmado, con reversión. Este es el tipo de plomería que nadie nota hasta que la necesita, momento en el cual es la diferencia entre una plataforma y un proyecto artístico.
Lo que aprendí del ritmo
Doscientos setenta y seis commits en un largo fin de semana festivo es un ritmo que no funciona en un flujo de trabajo de desarrollo tradicional. Funciona en este porque el flujo de trabajo está construido alrededor de agentes que lanzan en paralelo contra una cola que mantengo llena. Algunas observaciones de correr a ese ritmo durante el tramo de Navidad a Año Nuevo:
La estructura de Épicas se ganó su lugar. Hacia mediados de mes cambié el rastreador de incidencias a un patrón de Épica con sub-incidencias (Épica #506 para el núcleo del runtime Fase 1, Épica #555 para Anclas Espaciales, Épica #508 para Extensiones OpenXR). Cada Épica obtiene una PR que cierra un cuerpo de trabajo coherente. Los agentes implementan las sub-incidencias en paralelo, pero la fusión ocurre como una sola PR atómica a nivel de Épica. Eso le dio a la base de código un historial mucho más limpio e hizo la revisión manejable.
El sistema de rastreo de TODOs fue la decisión correcta. A principios de mes agregué un sistema automatizado que escanea la base de código en busca de comentarios TODO y crea incidencias de GitHub para cada uno, con priorización. Para cuando empezó el sprint de Navidad, había 342 TODOs de runtime rastreados. Los agentes fueron eliminando primero los de mayor prioridad. Cerramos aproximadamente 150 de ellos este fin de semana. La base de código está significativamente más limpia de lo que estaba a principios de diciembre.
El momento de la fusión entre repositorios importa. El runtime y el SDK tuvieron que aterrizar sus cambios con horas de diferencia entre sí para varias Épicas este fin de semana. Cuando el runtime publica una nueva API en C, el SDK tiene que actualizar sus bindings el mismo día. Retuve algunas PRs del SDK y fusioné algunas PRs del runtime en la misma hora para mantener la integración honesta.
Los agentes están mejorando en sus roles. Las PRs que llegan este fin de semana son notablemente más limpias que las PRs que llegaban en septiembre. Parte de eso es que la base de código está más madura. Parte es que el flujo de trabajo es más disciplinado. Parte es que los propios modelos están mejorando en el tipo de trabajo que produce esta base de código. Las tres cosas son reales.
Dónde está el motor, de cara a 2026
La versión en lista de verificación:
- Pivote de AR1+ a AR2 Gen1: hecho
- Columna vertebral OpenXR: hecho
- Integración de intención de LLM en la nube a través de XRAssistantService: hecho
- Inferencia de SLM en el dispositivo a través de TFLite: hecho
- Anclaje submilimétrico para superposiciones de alta precisión: hecho
- Anclas espaciales con persistencia, compartición, y criptografía adecuada: hecho
- Pipeline de renderizado descargado por Wi-Fi 7: hecho
- Gestor de enlace de doble modo RF / óptico: hecho
- Seguimiento ocular, de manos, y de cuerpo completo: hecho
- Renderizado foveado con optimización multiperfil: hecho
- Abstracción de hardware para sensores y canal óptico: hecho
- Sincronización federada para distribución de modelos y contenido: hecho
- Actualizador de runtime con versionado y reversión: hecho
- Builds multiplataforma (Linux, macOS, Windows MSVC 2026): hecho
- Pipeline de telemetría y OpenTelemetry: hecho
- 342 TODOs rastreados, ~150 cerrados este mes: en progreso, pero tomando forma
Lo que no está hecho: los subsistemas de IA que conectan la capa del modelo con el paso de simulación. Árboles de comportamiento. Mallas de navegación. Simulación de multitudes. Sistemas sensoriales. Árboles de decisión. Ese es el trabajo que espero que llegue en la primera semana de enero. El runtime está listo para recibirlos. Hoy el motor tiene los huesos. El próximo fin de semana obtiene los nervios.
Lo que quiero que socios, constructores, y laboratorios se lleven de esto
Si eres un socio de hardware evaluando si este motor puede lanzarse en tu dispositivo en 2026, la respuesta es sí, y el trabajo para hacerlo realidad es sobre todo el pegamento específico de proveedor a estas alturas. El motor en sí está listo.
Si eres un laboratorio de IA viendo dónde podría invertirse mejor el presupuesto de inferencia de tu modelo en un runtime de RA, tanto el camino de TFLite en el dispositivo como el camino del LLM en la nube vía XRAssistantService son ahora de calidad de producción. Si tu modelo cabe en el presupuesto del dispositivo, puede correr en el paso de simulación. Si no cabe, el camino de la nube está abierto. De cualquier forma, la integración es agnóstica al modelo, y quiero que tu modelo sea el mejor modelo detrás de ella.
Si eres un desarrollador pensando en construir sobre este motor en 2026, la superficie es real. La API en C es estable. Los bindings del SDK (Unity y Unreal) son reales. La columna vertebral OpenXR significa que el motor apunta a múltiples dispositivos. El blog en esta URL ha sido un registro público de cómo el motor llegó hasta aquí. Léelo de nuevo si quieres saber cómo va a ser la cultura de ingeniería cuando traigas una experiencia a esta plataforma.
276 commits, un año terminando, un motor que maduró. Fin de semana distinto, mismo flujo de trabajo. De vuelta a construir el próximo sábado.
Pon tu modelo en el paso de simulación
RakuAI ofrece tanto inferencia de SLM en el dispositivo a través de TFLite como un camino de LLM en la nube: agnóstico al modelo, de calidad de producción, listo para tus pesos. Descubre dónde tu presupuesto de inferencia rinde más en un runtime espacial.