Skip to main content
Let's discuss Tech - Join our Community
Let's discuss Tech - Join our Community
Bun's Rust Rewrite Took 11 Days and Cost $165,000
Technology

La Reescritura en Rust de Bun Tardó 11 Días y Costó 165.000 Dólares

Un millón de líneas de código de runtime cambió de lenguaje en menos de dos semanas, y ahora los fuzzers deciden cuánto valió

Will Lisil|Director & Digital Creator
6 min de lectura

En Resumen

El runtime de JavaScript Bun se portó de Zig a Rust en 11 días y 6.502 commits, con hasta 64 agentes de IA en paralelo y unos 165.000 dólares en tokens, un trabajo antes estimado en tres años-ingeniero. Un port paralelo de Postgres pasó el 100% de las pruebas y luego cayó ante un fuzzer.

El 8 de julio, Jarred Sumner, creador de Bun, publicó las cifras detrás de un trabajo que la mayoría de los equipos de ingeniería habría descartado como imposible. Una reescritura en Rust del runtime de JavaScript, una base de alrededor de un millón de líneas escrita originalmente en Zig, se completó en 11 días y 6.502 commits, impulsada por hasta 64 agentes de IA trabajando en paralelo. La factura de tokens rondó los 165.000 dólares al precio público de la API.

La comparación que más circuló fue el contrafactual: el mismo trabajo, hecho de forma convencional, se estimó en cerca de un año para tres ingenieros. En menos de un día, ese artículo, una reescritura rival de Postgres y una réplica contundente del creador de Zig estaban a menos de 30 puntos entre sí en lo alto de Hacker News. La discusión que siguió no trata realmente de un runtime. Trata de qué ocurre cuando el costo de reescribir software fundamental cae dos órdenes de magnitud.

Verdad en Tecnología, Entregada por MW3.BIZ

Únete a miles que confían en nosotros para insights imparciales sobre IA, blockchain y el futuro de la tecnología

By subscribing, you agree to our Terms and Privacy Policy.

Qué pasó realmente dentro de la reescritura

Las cifras brutas detrás de la reescritura en Rust son lo bastante inusuales como para enunciarlas con claridad. La ejecución consumió unos 5.900 millones de tokens de entrada sin caché y 690 millones de tokens de salida. Los agentes trabajaron en paralelo y no en secuencia, y por eso el tiempo de reloj se desplomó mientras el trabajo total no. El resultado se verificó de forma continua contra la propia suite de pruebas de Bun, que reúne alrededor de un millón de aserciones.

Esa suite de pruebas es la parte que sostiene la historia. Un port dirigido por máquina no tiene criterio sobre la intención; solo tiene una especificación que puede ejecutar. Bun contaba con una de las especificaciones ejecutables más exigentes del ecosistema JavaScript, construida durante cuatro años persiguiendo la compatibilidad con Node.js. La cifra publicada para la build en Rust es del 99,8% de compatibilidad de pruebas en Linux x64 con glibc.

Lo que esa cifra no significa es que la build en Rust sea la que se instala hoy. Sigue siendo experimental, limitada a una sola plataforma, y no es el binario por defecto. La línea estable 1.3.x de Bun se sigue produciendo desde el código en Zig. Según el relato de julio, el código reescrito sí llegó a usuarios dentro de Claude Code v2.1.181 el 17 de junio, lo que es una señal relevante de producción, pero no equivale a un lanzamiento general.

Por qué un runtime que funciona abandonaría Zig

Se dieron tres razones, y ninguna es la velocidad bruta. Ambos lenguajes compilan a código nativo sin recolector de basura, y la expectativa expresada en público era que la build en Rust quedara a pocos puntos porcentuales de la de Zig.

La primera razón son las personas. Rust tiene una comunidad de contribuidores mucho mayor que Zig y, para un proyecto que quiere recibir parches externos, el tamaño de ese embudo es una restricción de diseño como cualquier otra. La segunda es el mantenimiento a escala, donde el modelo de ownership y el sistema de tipos de Rust trasladan una clase de errores del tiempo de ejecución al tiempo de compilación. La tercera es institucional. Bun fue adquirido por Anthropic en diciembre de 2025, y Claude Code se distribuye como un ejecutable de Bun a millones de usuarios. El resumen de Sumner sobre lo que está en juego fue directo: si Bun se rompe, Claude Code se rompe. Ese mismo anuncio se comprometió a mantener Bun como software libre con licencia MIT y su desarrollo público en GitHub.

Andrew Kelley, creador de Zig, publicó una réplica al día siguiente. Su objeción central es de capacidad de revisión, no de preferencia de lenguaje: entregar cerca de un millón de líneas de código generado por máquina que ningún humano ha leído tiene un perfil de riesgo distinto al de entregar un millón de líneas que un equipo escribió y revisó. También cuestionó con qué consistencia se aplicó la suite de pruebas. Es una objeción razonable, y la respuesta honesta es que nadie tiene todavía un buen método para revisar código a ese volumen.

Postgres recibió el mismo tratamiento, y los fuzzers respondieron

El segundo proyecto hizo visible el intercambio. pgrust, una reescritura de PostgreSQL en Rust iniciada a comienzos de abril de 2026 por Michael Malis y Jason Seibel, siguió una ruta parecida: un primer intento desde cero y, en junio, un cambio a conversión automática de C a Rust seguida de reescritura asistida por IA hacia un Rust más seguro.

El 25 de junio el proyecto anunció que pasaba el 100% de las más de 46.000 pruebas de regresión de PostgreSQL 18.3, junto con las pruebas de aislamiento, y que podía arrancar desde un directorio de datos existente de Postgres. Para una base de datos, ese es un listón genuinamente difícil de superar.

Entonces Andreas Seltenreich, autor del fuzzer SQLsmith, lo apuntó contra el resultado el 9 de julio. En pocos días produjo un fallo de segmentación a partir de una sola línea de SQL, SELECT numrange_subdiff(1,1);, un error interno en una sentencia MERGE, varias invariantes del planificador rotas y una validación ausente en literales bytea. Las pruebas de recuperación estaban en 34 de 47. Los benchmarks publicados fueron igual de duros: unas 728 transacciones por segundo frente a 6.365 de PostgreSQL 18.4 original, una inicialización once veces más lenta y muertes por falta de memoria bajo carga sostenida. La base incluye 2.664 bloques unsafe y 1.835 funciones unsafe, un recordatorio de que traducir mecánicamente a Rust no produce de forma automática un Rust seguro en memoria.

El kernel resolvió la cuestión del lenguaje años antes

Perdido en el ruido está que la cuestión de fondo se respondió hace tiempo, y en voz baja. En el Maintainers Summit del kernel de Linux, en diciembre de 2025, el consenso fue que Rust en el kernel ya no es experimental. Jonathan Corbet, al informar del desenlace, lo resumió como que el experimento había terminado y había salido bien. El soporte de Rust se había incorporado a finales de 2022 y creció de forma sostenida desde entonces; el summit solo retiró la etiqueta.

Ese camino llevó tres años de revisión humana, subsistema por subsistema, con mantenedores discutiendo cada interfaz. Es lo contrario de una carrera de 11 días, y por eso el resultado del kernel es duradero. El lenguaje nunca fue la parte discutida. La parte discutida es a qué velocidad puede una base de código migrar a él y seguir siendo confiable.

Qué prueban las cifras y qué no

Leídos con cuidado, la reescritura en Rust de Bun y su equivalente en Postgres sostienen una afirmación más estrecha que la de los titulares. Muestran que, cuando una base de código cuenta con una especificación ejecutable amplia, una flota de agentes ya puede traducirla entre lenguajes en días en lugar de años, a un costo que una sola persona bien financiada podría cubrir. Eso es un cambio de capacidad real y significativo.

No muestran que el resultado esté listo para producción. Los resultados de fuzzing de pgrust demuestran justo lo que una suite de regresión no atrapa: verifica el comportamiento que alguien pensó en probar, no el que nadie imaginó. La propia postura de Bun, manteniendo las versiones estables en Zig mientras la build en Rust madura, es la señal más instructiva. Quienes están más cerca del trabajo lo tratan como prometedor e inacabado, que es la lectura correcta.

Queda además una pregunta de mantenimiento que nadie ha respondido. Una base producida en 11 días sigue teniendo que ser comprendida por quien la arregle a las 3 de la madrugada dentro de dos años. La revisabilidad no es un extra en software de base; es el mecanismo por el que se acumula la confianza.

Qué cambia esto para los equipos pequeños

En MW3.biz leemos esto como una historia de democratización con un asterisco. Una capacidad que antes exigía un equipo financiado está ahora al alcance de dos personas con una tarjeta de crédito y una buena suite de pruebas, y esa es la dirección en la que queremos que avance la tecnología. También creemos que el asterisco importa: los proyectos que funcionaron aquí son los que ya habían invertido años en pruebas, y esa inversión no es algo que un agente pueda añadir después. Nuestra visión es que ampliar el acceso a este tipo de herramientas vale la pena, y que la forma honesta de defenderlo es informar de los resultados del fuzzer junto con el recuento de commits.

La conclusión práctica para un equipo pequeño es poco vistosa. La palanca está en la especificación, no en el modelo. Si tu proyecto tiene una suite de pruebas débil, una refactorización dirigida por agentes producirá algo que compila, pasa lo poco que escribiste y falla en producción. Si es exhaustiva, la misma herramienta se convierte en un multiplicador de fuerza real, del mismo modo que los modelos de pesos abiertos han ampliado el acceso al trabajo cotidiano de programación. Dedicar quince días a la cobertura de pruebas rinde hoy más que dedicarlos a la refactorización.

Ninguna de las dos reescrituras está terminada, y ambas conviene seguirlas antes que copiarlas. El estado actual del port de Bun y la lista de issues abiertas de pgrust dirán más en los próximos seis meses que cualquier benchmark aislado hoy. Lo que ya cambió es el precio de intentarlo.

Etiquetas:#Rust#Bun#PostgreSQL#AI coding agents#Open Source#Developer Tools#Memory Safety
Palabras clave:Rust rewriteBun runtimeAI coding agentspgrustPostgreSQL

Puntos Clave

  • La reescritura en Rust de Bun tardó 11 días y 6.502 commits con hasta 64 agentes de IA en paralelo, por unos 165.000 dólares en tokens, frente a una estimación de un año para tres ingenieros.
  • El runtime reescrito declara un 99,8% de compatibilidad de pruebas en Linux x64, pero las versiones estables 1.3.x de Bun se siguen generando desde el código original en Zig.
  • Un proyecto aparte de dos personas, pgrust, pasó las más de 46.000 pruebas de regresión de PostgreSQL en junio y, semanas después, sufrió un segfault provocado por una consulta de una sola línea.
  • Pasar una suite de pruebas y estar listo para producción no son la misma afirmación, y en esa brecha se sitúa el debate actual.
  • El kernel de Linux resolvió la cuestión del lenguaje en diciembre de 2025, cuando los mantenedores declararon concluido y exitoso el experimento con Rust.

Frequently Asked Questions

Once días y 6.502 commits, según el relato que publicó Jarred Sumner, creador de Bun, el 8 de julio de 2026. El trabajo empleó hasta 64 agentes de IA en paralelo y consumió unos 5.900 millones de tokens de entrada y 690 millones de salida, alrededor de 165.000 dólares al precio público de la API.

No. La build en Rust sigue siendo experimental y limitada a Linux x64 glibc. Las versiones estables 1.3.x de Bun se siguen produciendo desde el código original en Zig, así que una instalación normal no se ve afectada.

Se dieron tres razones: Rust tiene una comunidad de contribuidores mucho mayor que Zig, su modelo de ownership aporta garantías de seguridad en tiempo de compilación útiles a esta escala, y Bun ahora sostiene Claude Code de Anthropic, lo que eleva la exigencia de estabilidad a largo plazo.

pgrust anunció el 25 de junio de 2026 que pasaba el 100% de las más de 46.000 pruebas de regresión de PostgreSQL 18.3 y que podía arrancar desde un directorio de datos existente. Dos semanas después, una ronda del fuzzer SQLsmith produjo un segfault con la consulta SELECT numrange_subdiff(1,1), además de fallos de planificador y de validación.

No con esta evidencia. Ambos proyectos tenían redes de seguridad poco comunes: Bun cuenta con cerca de un millón de aserciones de prueba y pgrust disponía de la suite madura de Postgres. Los proyectos sin esa especificación ejecutable no tienen forma de exigir cuentas a una reescritura hecha por máquinas.

Fuentes

  1. Bun: Bun is joining Anthropic (Jarred Sumner)(accessed 2026-08-03)
  2. Cosmic: Bun's Rust Rewrite: Where It Stands(accessed 2026-08-03)
  3. Lilting: pgrust passed 100% of Postgres regression tests(accessed 2026-08-03)
  4. LWN.net: The (successful) end of the kernel Rust experiment(accessed 2026-08-03)

Continúa Leyendo

A clinician working at a laptop in a bright small clinic, illustrating AI agents in healthcare
Technology18 de julio de 2026

Agentes de IA en la salud: cómo 2026 está transformando las pequeñas clínicas

En 2026, los agentes de IA en la salud recortan horas de trabajo administrativo de los clínicos y por fin llegan a las pequeñas clínicas independientes antes olvidadas.

Will Lisilnull min de lectura
Leer Más
What the EU AI Act Means for Small Builders in 2026
Technology15 de julio de 2026

Qué significa la Ley de IA de la Unión Europea para los pequeños desarrolladores en 2026

Will Lisilnull min de lectura
Leer Más
A developer writing code at a desktop computer, weighing which AI coding tool to adopt
AI Tools12 de julio de 2026

Cursor vs Claude Code: Cual Elegir para Desarrolladores Independientes en 2026?

Will Lisil6 min de lectura
Leer Más
A diverse group of small business owners in a classroom workshop, learning about AI on their laptops.
Technology10 de julio de 2026

Adopción de IA en Pequeñas Empresas: Brecha de Habilidades

Un aumento en la adopción de IA entre las pequeñas empresas está impulsando los ingresos y la eficiencia, pero una brecha de habilidades significativa presenta un gran obstáculo. Este artículo explora las tendencias, los desafíos y las estrategias para que las pymes naveguen con éxito la revolución de la IA.

Will Lisil5 min de lectura
Leer Más
A diverse team of professionals in a modern office collaborating on a large whiteboard covered in workflow diagrams.
Technology10 de julio de 2026

OpenAI lanza ChatGPT Work y GPT-5.6 para la automatización empresarial

OpenAI ha lanzado ChatGPT Work, una nueva plataforma de IA agéntica para empresas, junto con un nuevo modelo GPT-5.6. Esta medida busca automatizar flujos de trabajo complejos, posicionando a OpenAI frente a sus competidores en la carrera por el dominio de la IA empresarial.

Will Lisil6 min de lectura
Leer Más
Ver Todas las Noticias
Más artículos en la sección de noticias

Vuelve pronto para más actualizaciones de MW3.BIZ