<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Ideas y perspectivas – Autotomy</title><description>Explorando desarrollo AI-first, guardrails de código y la arquitectura de la descartabilidad.</description><link>https://autotomy.dev/</link><language>es</language><item><title>Tu rama main está rota. Tienes 200 commits que revisar.</title><link>https://autotomy.dev/es/blog/git-bisect-binary-search-commit/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/git-bisect-binary-search-commit/</guid><description>`git bisect` convierte una búsqueda manual de commits en una búsqueda binaria automatizada. Así es cómo encontrar el commit exacto que introdujo un bug sin hacer checkout de cada uno.</description><pubDate>Tue, 25 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Tu rastreador de errores sabe dónde murió. Eso no te ayudará a reproducirlo.</title><link>https://autotomy.dev/es/blog/production-crash-capture-replay/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/production-crash-capture-replay/</guid><description>Los stack traces te dicen dónde ocurrió un crash, no qué lo causó. Aquí tienes un patrón de captura y reproducción que convierte los crashes de producción en casos de prueba locales que realmente puedes depurar.</description><pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate></item><item><title>La ejecución simbólica encontró un integer overflow que mi cobertura de tests del 94% se perdió</title><link>https://autotomy.dev/es/blog/symbolic-execution-integer-overflow-coverage/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/symbolic-execution-integer-overflow-coverage/</guid><description>Tus unit tests comprueban entradas específicas. La ejecución simbólica comprueba cada entrada posible. Así es como funciona, qué cuesta y por dónde empezar.</description><pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Tus logs están filtrando PII, y grep no te salvará</title><link>https://autotomy.dev/es/blog/pii-tracking-code-pipeline/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/pii-tracking-code-pipeline/</guid><description>La mayoría de los equipos descubren fugas de PII después de una queja de un cliente. Así es como rastrear datos sensibles desde la ingesta hasta la salida, con ejemplos de código que puedes usar hoy.</description><pubDate>Sat, 22 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Tu API se rompió en producción porque el CI estaba probando código, no contracts</title><link>https://autotomy.dev/es/blog/api-contract-testing-ci/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/api-contract-testing-ci/</guid><description>La mayoría de los pipelines de CI detectan errores de sintaxis y bugs de lógica. Se pierden los contract breaks de la API que realmente tumban producción. Así es como solucionarlo.</description><pubDate>Fri, 21 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Las correlaciones de crashes mienten. Así es como hacer que apunten al bug real.</title><link>https://autotomy.dev/es/blog/crash-correlation-triangulation/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/crash-correlation-triangulation/</guid><description>La depuración estadística encuentra predicados correlacionados con crashes, pero la correlación no es un archivo y número de línea. Así es cómo clasificar, filtrar y triangular tu camino desde una puntuación de correlación hasta una ubicación real de bug.</description><pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Seer de Sentry puede leer tus trazas. Eso no significa que siempre encuentre la causa raíz.</title><link>https://autotomy.dev/es/blog/sentry-seer-trace-root-cause/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/sentry-seer-trace-root-cause/</guid><description>Seer ingiere árboles de trazas, errores conectados y datos de profiling para diagnosticar problemas distribuidos. Así es como funciona realmente, dónde brilla y dónde todavía necesita ayuda humana.</description><pubDate>Wed, 19 Aug 2026 00:00:00 GMT</pubDate></item><item><title>La depuración estadística debía acabar con el debugging con printf. La mayoría de los equipos nunca logró que funcionara.</title><link>https://autotomy.dev/es/blog/statistical-debugging-adoption-challenges/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/statistical-debugging-adoption-challenges/</guid><description>La depuración estadística prometía identificar bugs exactos al correlacionar el comportamiento del programa con fallas. Esta es la razón por la que la idea nunca pasó de los papers de investigación a los sistemas de producción.</description><pubDate>Tue, 18 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Tus pruebas pasaron. Tus datos siguen estando mal.</title><link>https://autotomy.dev/es/blog/statistical-debugging-production-data-anomalies/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/statistical-debugging-production-data-anomalies/</guid><description>La depuración estadística trata tus datos de producción como una señal y los bugs como anomalías. Así es como encontrar corrupción de datos, errores off-by-one y fallas silenciosas sin agregar una sola prueba unitaria.</description><pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Las pruebas metamórficas encontraron 147 bugs en compilers y un defecto en un vehículo autónomo. Así funcionan.</title><link>https://autotomy.dev/es/blog/metamorphic-testing-production-bugs-compiler/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/metamorphic-testing-production-bugs-compiler/</guid><description>Las pruebas metamórficas han descubierto bugs reales en GCC, LLVM, compilers de shaders Vulkan y simuladores de ADAS. Esta publicación explica la técnica con código funcional y muestra dónde encaja en tu suite de pruebas.</description><pubDate>Sun, 16 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Los LLMs pueden sugerir metamorphic relations. Simplemente no pueden garantizarlas.</title><link>https://autotomy.dev/es/blog/llm-metamorphic-relations-brainstorming/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/llm-metamorphic-relations-brainstorming/</guid><description>Los large language models son socios de lluvia de ideas decentes para descubrir test oracles, pero alucinan propiedades y omiten restricciones de dominio. Así es cómo usarlos sin desplegar pruebas falsas.</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate></item><item><title>La mayoría de las metamorphic relations son inútiles. Así es cómo elegir las buenas.</title><link>https://autotomy.dev/es/blog/metamorphic-relation-quality/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/metamorphic-relation-quality/</guid><description>No todas las metamorphic relations atrapan bugs. Las relaciones débiles dan una falsa confianza mientras que las fuertes encuentran fallas reales. Así es cómo distinguir la diferencia y construir un conjunto de relaciones que realmente funcione.</description><pubDate>Fri, 14 Aug 2026 00:00:00 GMT</pubDate></item><item><title>¿Cómo pruebo código cuando no conozco la respuesta correcta?</title><link>https://autotomy.dev/es/blog/metamorphic-testing-oracle-problem/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/metamorphic-testing-oracle-problem/</guid><description>El metamorphic testing te permite verificar la corrección del código sin conocer la salida esperada exacta. Así es como funciona, cuándo falla y cómo empezar a usarlo.</description><pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate></item><item><title>TypeScript no te dejará hacer esa llamada: codificando el estado del protocol en el sistema de types</title><link>https://autotomy.dev/es/blog/typescript-phantom-types-protocol-state/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/typescript-phantom-types-protocol-state/</guid><description>Cómo usar phantom types y parámetros `this` para convertir transiciones de protocol ilegales en errores de compilación en lugar de bugs en tiempo de ejecución.</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate></item><item><title>OpenAPI te da el alfabeto. Los session types necesitan la gramática.</title><link>https://autotomy.dev/es/blog/openapi-session-types-protocol-gap/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/openapi-session-types-protocol-gap/</guid><description>Las especificaciones OpenAPI describen los esquemas de petición y respuesta, pero no especifican las secuencias de mensajes válidas. Así es como extraer lo que puedes y dónde aún necesitas llenar los vacíos.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Los tipos de sesión funcionan. La mayoría de lenguajes simplemente se negaron a implementarlos.</title><link>https://autotomy.dev/es/blog/session-types-research-to-production/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/session-types-research-to-production/</guid><description>Los tipos de sesión codifican protocols de comunicación en el sistema de tipos, convirtiendo errores de protocol en tiempo de ejecución en fallos en tiempo de compilación. Aquí está por qué pasaron treinta años en artículos de investigación antes de que el código de producción pudiera usarlos.</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Cómo los tipos de sesión convierten los deadlocks en errores del compiler</title><link>https://autotomy.dev/es/blog/session-types-deadlock-compiler-errors/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/session-types-deadlock-compiler-errors/</guid><description>Los tipos de sesión codifican protocols de comunicación en tu sistema de tipos, convirtiendo los desajustes de paso de mensajes en errores del compiler antes de que tu código se ejecute.</description><pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate></item><item><title>La interpretación abstracta suena como un requisito de doctorado. Ya no lo es.</title><link>https://autotomy.dev/es/blog/infer-abstract-interpretation-ci/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/infer-abstract-interpretation-ci/</guid><description>Cómo ejecutar análisis estático formal en tu pipeline de CI usando Infer, con configuraciones funcionales y trade-offs realistas.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Los LLM pueden ordenar tus advertencias de análisis estático. Simplemente no pueden explicar por qué.</title><link>https://autotomy.dev/es/blog/llm-static-analysis-triage/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/llm-static-analysis-triage/</guid><description>Los large language models pueden ayudar a triagear falsos positivos del análisis estático, pero no entienden la semántica del programa como lo hace la interpretación abstracta. Así es como combinar ambos.</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Facebook paralelizó Android con interpretación abstracta. Así es como funciona.</title><link>https://autotomy.dev/es/blog/facebook-android-abstract-interpretation-races/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/facebook-android-abstract-interpretation-races/</guid><description>Cómo Facebook usó interpretación abstracta y unsoundness intencional para encontrar condiciones de carrera a escala en millones de líneas de código Android.</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Meta encontró 100,000 bugs en código de producción con un analizador estático que nunca ejecuta el programa</title><link>https://autotomy.dev/es/blog/meta-infer-100000-bugs-static-analysis/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/meta-infer-100000-bugs-static-analysis/</guid><description>Infer de Meta usa interpretación abstracta y bi-abducción para encontrar desreferencias nulas, fugas de memoria y condiciones de carrera razonando sobre la estructura del código, no sobre su ejecución. Así es como funciona y cómo usarlo en tu propia codebase.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate></item><item><title>El análisis estático no puede demostrar que tu avión no se estrellará. Puede demostrar algo más útil.</title><link>https://autotomy.dev/es/blog/static-analysis-aviation-abstract-interpretation/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/static-analysis-aviation-abstract-interpretation/</guid><description>La interpretación abstracta sobreaproxima cada posible estado del programa. Si una división por cero es inalcanzable en la abstracción, es inalcanzable en el código real. Así es como funciona y dónde falla.</description><pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Cómo demostrar que tu código no tiene errores en tiempo de ejecución (y por qué probablemente desistirás)</title><link>https://autotomy.dev/es/blog/abstract-interpretation-runtime-error-proof/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/abstract-interpretation-runtime-error-proof/</guid><description>La interpretación abstracta te permite probar que ciertos errores en tiempo de ejecución son imposibles antes de ejecutar el código. Así es como funciona en realidad, por qué es difícil y dónde encaja en tu cadena de herramientas.</description><pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Tu código en C puede ejecutarse en hardware con capacidades sin rewrite por completo</title><link>https://autotomy.dev/es/blog/cheri-c-porting-hybrid-abi/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/cheri-c-porting-hybrid-abi/</guid><description>El ABI híbrido de CHERI te permite portar código en C a hardware con capacidades de forma incremental. Aquí te explicamos cómo compilar, qué se rompe y cómo solucionarlo sin rewrite toda tu codebase.</description><pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate></item><item><title>El hardware de capabilities no falló. Llegó 40 años antes de tiempo.</title><link>https://autotomy.dev/es/blog/capability-hardware-cheri-history/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/capability-hardware-cheri-history/</guid><description>La seguridad de memoria a nivel de hardware ha sido posible desde los años 70. Aquí te explicamos por qué las arquitecturas de capabilities siguieron perdiendo contra los modelos de memoria plana, y por qué CHERI está cambiando finalmente las reglas.</description><pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Tu dependencia en C puede hacer fallar todo tu proceso. WebAssembly puede evitarlo.</title><link>https://autotomy.dev/es/blog/c-library-wasm-sandbox/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/c-library-wasm-sandbox/</guid><description>Los contenedores son excesivos para aislar una sola biblioteca en C. Compílala a WebAssembly y ejecútala dentro de un sandbox WASI para memory safety, acceso al filesystem basado en capabilities y contención de fallos sin Docker.</description><pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Tu teléfono ya tiene hardware que detecta corrupción de memoria</title><link>https://autotomy.dev/es/blog/mobile-memory-tagging-extension/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/mobile-memory-tagging-extension/</guid><description>ARM Memory Tagging Extension y GWP-ASan hacen posible la detección de problemas de seguridad de memoria en producción en dispositivos móviles modernos. Así es como funcionan y cómo se ven los compromisos.</description><pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Los Buffer Overflows Siguen Ocurriendo Porque Los Arreglamos en Software</title><link>https://autotomy.dev/es/blog/cheri-hardware-buffer-overflow-prevention/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/cheri-hardware-buffer-overflow-prevention/</guid><description>CHERI es una extensión de hardware que convierte cada pointer en una bounded capability. Así es como detiene los buffer overflows a nivel de CPU, lo que cuesta y cómo probarlo en hardware real.</description><pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Los LLM no pueden demostrar que tu código es correcto, pero pueden escribir el código repetitivo que lo logra</title><link>https://autotomy.dev/es/blog/llm-cleanroom-proof-obligation-automation/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/llm-cleanroom-proof-obligation-automation/</guid><description>La verificación Cleanroom requiere generar y descargar obligaciones de prueba. Así es como los LLM automatizan la anotación y la generación de condiciones de verificación (VC) para que puedas centrarte en las pruebas realmente difíciles.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Cleanroom Entrega 0.1 Defectos por KLOC. No Necesitas la Religión Completa para Llegar Ahí.</title><link>https://autotomy.dev/es/blog/cleanroom-pragmatic-subset/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/cleanroom-pragmatic-subset/</guid><description>La ingeniería de software Cleanroom reduce las tasas de defectos 100×, pero la adopción completa requiere equipos de prueba separados y pruebas formales. Aquí tienes un subconjunto pragmático que captura la mayor parte del beneficio sin el overhead.</description><pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate></item><item><title>El Zero-Defect Process de IBM entregó 0.1 bugs por KLOC. La industria lo abandonó de todos modos.</title><link>https://autotomy.dev/es/blog/ibm-cleanroom-zero-defects-disappearance/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ibm-cleanroom-zero-defects-disappearance/</guid><description>El Cleanroom engineering de IBM alcanzó tasas de defectos 100 veces mejores que el promedio de la industria, y luego se desvaneció en la oscuridad. La desaparición no tuvo nada que ver con si funcionaba.</description><pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate></item><item><title>¿Alguien realmente verificó 10.000 líneas con cero defectos? IBM lo hizo, y la metodología es más extraña que el resultado.</title><link>https://autotomy.dev/es/blog/ibm-cleanroom-10000-lines-zero-defects/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ibm-cleanroom-10000-lines-zero-defects/</guid><description>Cleanroom software engineering prometió incrementos zero-defect mediante mathematical verification en lugar de debugging. Analizamos los datos reales del proyecto de IBM para ver si la afirmación se sostuvo.</description><pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Tu módulo tiene tres capas. Probablemente solo escribiste una.</title><link>https://autotomy.dev/es/blog/cleanroom-box-structure-three-layers/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/cleanroom-box-structure-three-layers/</guid><description>Las Box Structures te obligan a definir qué hace un módulo, qué recuerda y cómo funciona como tres capas separadas y verificables. Así es como Cleanroom elimina el debugging.</description><pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate></item><item><title>IBM entregó software con 0,1 defectos por KLOC prohibiendo a los desarrolladores ejecutar su propio código</title><link>https://autotomy.dev/es/blog/ibm-cleanroom-01-defects-per-kloc/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ibm-cleanroom-01-defects-per-kloc/</guid><description>El proceso de ingeniería Cleanroom de IBM logró tasas de defectos 100 veces mejores que el promedio de la industria al prevenir bugs en lugar de encontrarlos. Así funcionaba, por qué casi nadie lo usa y qué puedes adoptar de él hoy.</description><pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Tu programa literario está roto hasta que CI pueda hacer tangle sin ti</title><link>https://autotomy.dev/es/blog/ci-literate-programming-tangle/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ci-literate-programming-tangle/</guid><description>La programación literaria promete una única fuente de verdad, pero los pasos manuales de weave y tangle rompen la pipeline de CI/CD. Así es como automatizar la extracción y generación de documentación para que tus archivos Markdown sean canónicos.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Explicar el Código a un LLM Primero Redujo Mi Tasa de Bugs en un 85%</title><link>https://autotomy.dev/es/blog/llm-rubber-ducking-bug-rate/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/llm-rubber-ducking-bug-rate/</guid><description>Pasé 30 días escribiendo explicaciones de diseño antes de pedirle código a un LLM. Los resultados cambiaron cómo pienso sobre el rubber-ducking.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Dejé de copiar código en la documentación manteniendo tests, código y prosa en un solo archivo Markdown</title><link>https://autotomy.dev/es/blog/literate-programming-markdown-python/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/literate-programming-markdown-python/</guid><description>La programación literaria mantiene la documentación, los tests y la implementación sincronizados al convertir un archivo Markdown en la única fuente de verdad. Así es como implementarlo en treinta líneas de Python.</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Tu Thread con Claude Ya Es Documentación. Solo Muere en Doce Horas.</title><link>https://autotomy.dev/es/blog/claude-thread-to-documentation/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/claude-thread-to-documentation/</guid><description>Las conversaciones con LLM contienen intención, alternativas rechazadas y código funcional. Eso es exactamente lo que la documentación debería ser. Aquí está cómo convertir chat efímero en documentación durable y buscable sin perder la narrativa.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Los editores de texto te permiten escribir código inválido. Los editores de árbol no lo harían.</title><link>https://autotomy.dev/es/blog/structured-editing-ast-text-editors/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/structured-editing-ast-text-editors/</guid><description>Cada compilador ve tu código como un árbol, pero tu editor te deja editar texto en bruto. Así es como se ve realmente la edición estructurada, por qué no se ha impuesto y cómo aprovechar sus beneficios sin cambiar de herramientas.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Donald Knuth quería que los programas se leyeran como literatura. El compilador tuvo otras ideas.</title><link>https://autotomy.dev/es/blog/knuth-literate-programming-history/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/knuth-literate-programming-history/</guid><description>La programación literaria prometía que el código debía escribirse primero para humanos y segundo para máquinas. Cuatro décadas después, casi nadie escribe de esa manera. He aquí por qué la idea más elegante en la documentación de software no logró cambiar la forma en que trabajamos.</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Arreglar el bug es la parte fácil. Descubrir por qué existe es lo que importa.</title><link>https://autotomy.dev/es/blog/fagan-causal-analysis-defects/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/fagan-causal-analysis-defects/</guid><description>La mayoría de los equipos arreglan defectos y siguen adelante. Los mismos defectos vuelven. Así es como ejecutar análisis causal dentro de una inspección Fagan para dejar de escribir el mismo bug dos veces.</description><pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Las Revisiones de Pull Request Detectan el 15-30 % de Defectos. Los Datos lo Dicen Hace 50 Años.</title><link>https://autotomy.dev/es/blog/pr-reviews-catch-15-to-30-percent-defects/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/pr-reviews-catch-15-to-30-percent-defects/</guid><description>Múltiples estudios en IBM, AT&amp;T, HP y Microsoft confirman que la revisión informal de código detecta aproximadamente una cuarta parte de los defectos. Aquí está lo que los datos realmente dicen, por qué el número es tan bajo y cómo solucionarlo.</description><pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Una checklist genérica no detecta nada. Una estructurada detecta el 60 % de los defectos.</title><link>https://autotomy.dev/es/blog/fagan-structured-checklist-defect-detection/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/fagan-structured-checklist-defect-detection/</guid><description>La mayoría de las checklists de revisión son listas copiadas y pegadas de buenas intenciones. Una checklist estructurada al estilo Fagan inspection se construye a partir de datos reales de defectos, está dirigida a tipos de artefactos específicos y se utiliza durante la preparación individual. Así es como se construye una que funciona.</description><pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Un LLM puede pre-inspeccionar tu código. No puede dirigir la reunión.</title><link>https://autotomy.dev/es/blog/llm-fagan-inspection-preparation/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/llm-fagan-inspection-preparation/</guid><description>Las inspecciones Fagan necesitan de cuatro a seis personas y dos horas para revisar 250 líneas. Un LLM puede reducir ese costo gestionando la preparación y el cumplimiento de checklist, pero no puede sustituir los roles humanos que encuentran los defectos más costosos.</description><pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Las Fagan Inspections detectaban el 90 % de los defectos antes de las pruebas. Luego dejamos de hacerlas.</title><link>https://autotomy.dev/es/blog/fagan-inspections-disappearance-ibm/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/fagan-inspections-disappearance-ibm/</guid><description>El proceso de revisión estructurado de Michael Fagan en IBM atrapaba casi todos los defectos antes de que llegaran al compilador. También consumía el 15-20 % del esfuerzo total del proyecto. Aquí está por qué desapareció el método de revisión más efectivo en la historia del software, y qué es lo que los equipos realmente extrañan.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Tu mejor revisor se pierde la mayoría de los defectos. Fagan lo midió en IBM en 1976.</title><link>https://autotomy.dev/es/blog/fagan-reviewer-defect-detection-variance/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/fagan-reviewer-defect-detection-variance/</guid><description>Incluso los ingenieros senior detectan solo una fracción de los defectos en revisiones no estructuradas. La investigación de Michael Fagan en IBM mostró por qué, y construyó un proceso de inspección estructurado para solucionarlo.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate></item><item><title>La mayoría de las code reviews detectan el 20 % de defectos. Las Fagan inspections detectan el 90 %.</title><link>https://autotomy.dev/es/blog/fagan-inspections-90-percent-defects/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/fagan-inspections-90-percent-defects/</guid><description>La revisión de código informal detecta el 15-30 % de defectos. Las Fagan inspections, un proceso estructurado de 50 años, reportan consistentemente tasas de eliminación del 60-90 %. Aquí se explica cómo funcionan, por qué los equipos las evitan y cómo ejecutar una versión ligera.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate></item><item><title>AutoVerus convierte 40 horas de escritura de proofs en 3 llamadas a LLM. El truco es saber cuándo rendirse.</title><link>https://autotomy.dev/es/blog/autoverus-llm-rust-verification/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/autoverus-llm-rust-verification/</guid><description>AutoVerus utiliza una red de agentes LLM para generar proofs de corrección de Verus para código Rust, automatizando más del 90% de las proof obligations mediante un bucle de generar-reparar-dischargar impulsado por el feedback del solver SMT.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Los LLMs pueden generar código en Rust. Las pruebas formales son un problema completamente distinto.</title><link>https://autotomy.dev/es/blog/llm-rust-formal-proofs-hallucination/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/llm-rust-formal-proofs-hallucination/</guid><description>Los grandes modelos de lenguaje escriben código en Rust sorprendentemente bueno, pero cuando les pides una prueba formal alucinan invariantes e inventan sintaxis que ningún verificador acepta. Esto es lo que realmente hacen bien, dónde fallan y cómo usarlos de todos modos.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Esperar a que aparezcan race conditions es una estrategia de pruebas terrible</title><link>https://autotomy.dev/es/blog/model-checking-race-conditions/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/model-checking-race-conditions/</guid><description>Por qué el model checking supera a días de ejecución en producción para encontrar bugs de concurrencia, y cómo aplicarlo a tu propio código.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Puedes verificar código con model checking sin aprender temporal logic</title><link>https://autotomy.dev/es/blog/is-there-a-model-checker-that-doesnt-require-learning-temporal-logic/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/is-there-a-model-checker-that-doesnt-require-learning-temporal-logic/</guid><description>Los bounded model checkers como Kani y los relational model finders como Alloy permiten verificar propiedades con assertions y constraints ordinarios. Renuncias a las pruebas de liveness a cambio de una curva de aprendizaje medida en horas, no en semanas.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Puedes probar que tu código Rust es correcto sin escribir una sola prueba, pero el espacio de estados es la factura</title><link>https://autotomy.dev/es/blog/rust-model-checking-kani-state-space/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/rust-model-checking-kani-state-space/</guid><description>Herramientas de model checking como Kani te permiten verificar propiedades de Rust con assertions en lugar de pruebas formales. El problema es lo que ocurre cuando tus bucles no tienen límites pequeños.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate></item><item><title>No puedes hacer pruebas unitarias de un protocolo distribuido, pero sí puedes verificarlo con model checking</title><link>https://autotomy.dev/es/blog/distributed-protocol-model-checking-tla/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/distributed-protocol-model-checking-tla/</guid><description>Los errores distribuidos son costosos de corregir después del despliegue. El model checking te permite encontrarlos antes de escribir una sola línea de código de implementación. Así es como hacerlo con TLA+.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Copiar archivos `.env` entre entornos no es una estrategia de configuración</title><link>https://autotomy.dev/es/blog/infrastructure-config-dsl-per-context/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/infrastructure-config-dsl-per-context/</guid><description>Cómo los equipos de infraestructura gestionan la configuración entre dev, staging y production mediante DSLs por contexto que hacen explícitas las diferencias entre entornos y son type-safe.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Grammar-constrained decoding: forzando a los LLMs a emitir sintaxis válida en cada token</title><link>https://autotomy.dev/es/blog/grammar-constrained-decoding-llm/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/grammar-constrained-decoding-llm/</guid><description>Los LLMs alucinan sintaxis porque samplean tokens probabilísticamente. El grammar-constrained decoding filtra el vocabulario en cada paso para que solo se emitan tokens que preserven la validez sintáctica.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Traducir del inglés a un tema es fácil. Hacerlo determinista es el verdadero problema.</title><link>https://autotomy.dev/es/blog/english-to-theme-deterministic-design-tokens/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/english-to-theme-deterministic-design-tokens/</guid><description>Puedes generar design tokens a partir de descripciones simples en inglés, pero solo si tratas la descripción como un DSL de contexto delimitado con un contrato de schema y snapshot tests.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Olvida el archivo de gramática: escribe tu parser DSL en TypeScript puro</title><link>https://autotomy.dev/es/blog/typescript-parser-combinators-dsl/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/typescript-parser-combinators-dsl/</guid><description>Los generadores de parsers son excesivos para la mayoría de DSLs de contexto acotado. Los combinadores de parsers te permiten construir un parser funcional en el mismo lenguaje que tu aplicación, sin código generado ni pasos de build.</description><pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Los errores de configuración en runtime son fallos de producción que decidiste permitir</title><link>https://autotomy.dev/es/blog/config-validation-build-time/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/config-validation-build-time/</guid><description>Cómo detectar errores de configuración antes de que tu aplicación empiece a recibir tráfico, usando validación de esquemas y verificaciones en tiempo de build.</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tus dependencias pueden leer tus variables de entorno. JavaScript se lo permite.</title><link>https://autotomy.dev/es/blog/javascript-capability-security-lockdown/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/javascript-capability-security-lockdown/</guid><description>La autoridad ambiental significa que cualquier código en tu proceso de Node.js puede tocar el sistema de archivos, la red y el entorno. Así es como puedes eliminarla con lockdown, compartments y el paso explícito de capabilities.</description><pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate></item><item><title>La proximidad de red no es identidad: cómo los servicios se autentican sin autoridad ambiental</title><link>https://autotomy.dev/es/blog/service-authentication-without-ambient-authority/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/service-authentication-without-ambient-authority/</guid><description>La mayoría de la confianza entre servicios viene de la ubicación en la red, no de la prueba criptográfica. Aquí explicamos cómo las capabilities, mTLS y SPIFFE permiten que los servicios se autentiquen sin autoridad ambiental, y por qué es más difícil de lo que debería.</description><pubDate>Sat, 27 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tus dependencias pueden leer cualquier archivo en disco. cap-std las obliga a pedir permiso.</title><link>https://autotomy.dev/es/blog/rust-cap-std-capability-filesystem/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/rust-cap-std-capability-filesystem/</guid><description>La biblioteca estándar de Rust otorga autoridad de sistema de archivos ambiental a cada dependencia. cap-std la reemplaza con APIs basadas en capabilities que obligan al código a demostrar que tiene derecho a acceder a una ruta antes de abrirla.</description><pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tu Servicio Es un Cómplice Inconsciente: Cómo Funcionan los Ataques de Confused Deputy</title><link>https://autotomy.dev/es/blog/whats-a-confused-deputy-attack-and-how-do-i-prevent-it/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/whats-a-confused-deputy-attack-and-how-do-i-prevent-it/</guid><description>Un ataque de confused deputy engaña a un servicio privilegiado para que use su autoridad contra sí mismo. Así es como los atacantes explotan la confianza implícita, y por qué la seguridad basada en capabilities es la solución.</description><pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tus verificaciones de permisos te están mintiendo</title><link>https://autotomy.dev/es/blog/typescript-capability-based-security/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/typescript-capability-based-security/</guid><description>La seguridad basada en capabilities reemplaza las verificaciones de roles dispersas con tokens de autoridad inforgeables. Así es como implementarla en TypeScript sin hacer que tu código sea ilegible.</description><pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate></item><item><title>¿Y si cada función tuviera que recibir permiso en lugar de asumirlo?</title><link>https://autotomy.dev/es/blog/capability-based-security-permissions/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/capability-based-security-permissions/</guid><description>La mayoría del código se ejecuta con autoridad ambiental: cada función puede tocar todo. La seguridad basada en capacidades invierte ese modelo al obligar a las funciones a recibir permisos explícitos y delimitados.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Deja de Lanzar Errores que tu Type Checker No Puede Ver</title><link>https://autotomy.dev/es/blog/should-i-stop-throwing-errors-and-start-returning-them/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/should-i-stop-throwing-errors-and-start-returning-them/</guid><description>Las excepciones lanzadas ocultan los caminos de fallo de tu sistema de tipos. Aquí te explicamos por qué los retornos de error explícitos hacen tu código más honesto, y cómo adoptarlos sin odiar tu vida.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Los newtypes de Rust hacen que los estados incorrectos sean imposibles de representar en tiempo de compilación, sin costo</title><link>https://autotomy.dev/es/blog/rust-newtypes-zero-cost-safety/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/rust-newtypes-zero-cost-safety/</guid><description>Un struct envoltorio de un solo campo atrapa bugs de mezcla de unidades y confusión de tipos sin añadir ni un solo byte de overhead.</description><pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Los switch statements filtran bugs en tiempo de compilación</title><link>https://autotomy.dev/es/blog/is-there-a-better-way-than-switch-statements-for-type-safe-matching/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/is-there-a-better-way-than-switch-statements-for-type-safe-matching/</guid><description>Los switch statements de TypeScript te dejan olvidar casos en silencio. Así es cómo reemplazarlos con patrones de exhaustividad que hacen fallar el build en lugar del runtime.</description><pubDate>Sat, 20 Jun 2026 00:00:00 GMT</pubDate></item><item><title>El compilador debería detectar los casos de estado faltantes, no tu equipo de QA</title><link>https://autotomy.dev/es/blog/typescript-exhaustiveness-state-machines/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/typescript-exhaustiveness-state-machines/</guid><description>Agregar un nuevo estado a tu máquina es fácil. Recordar actualizar cada switch no lo es. Así es como hacer que TypeScript se niegue a compilar cuando olvidas un caso.</description><pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Sí, Pero Tu Sistema de Tipos Necesita Saber Qué Es un Dólar</title><link>https://autotomy.dev/es/blog/typescript-currency-types/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/typescript-currency-types/</guid><description>TypeScript ve todos los números como idénticos. Así es como puedes enseñarle la diferencia entre USD y EUR para que el compilador detecte errores de conversión de divisas antes de que lleguen a producción.</description><pubDate>Thu, 18 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Un número no es solo un número: cómo hacer que el compilador detecte errores de unidades</title><link>https://autotomy.dev/es/blog/typescript-unit-types-compile-time/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/typescript-unit-types-compile-time/</guid><description>Pasar milisegundos donde se esperaban segundos es un bug que pasa todas las pruebas. Así es cómo codificar unidades directamente en el sistema de tipos de TypeScript para que las confusiones fallen en tiempo de compilación con coste de ejecución cero.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate></item><item><title>TypeScript me dejó pasar un user ID donde correspondía un order ID</title><link>https://autotomy.dev/es/blog/typescript-branded-types-newtypes/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/typescript-branded-types-newtypes/</guid><description>Los alias de tipo no crean tipos distintos en TypeScript. Los tipos branded sí, y pueden evitar que mezcles identificadores en tiempo de compilación.</description><pubDate>Tue, 16 Jun 2026 00:00:00 GMT</pubDate></item><item><title>El testing diferencial funciona sin una prueba formal, pero los fallos de modo común son el problema</title><link>https://autotomy.dev/es/blog/differential-testing-common-mode-failures/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/differential-testing-common-mode-failures/</guid><description>El testing diferencial te permite encontrar bugs sin conocer la respuesta correcta. El problema es que los errores correlacionados parecen acuerdo. Así es como detectar los puntos ciegos.</description><pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Las pruebas no demostrarán que dos funciones sean equivalentes. Esto es lo que sí lo hará.</title><link>https://autotomy.dev/es/blog/function-equivalence-smt-solvers/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/function-equivalence-smt-solvers/</guid><description>La programación en N versiones asume que tus implementaciones coinciden. Analizamos por qué las pruebas no bastan, cómo los solucionadores SMT pueden demostrar equivalencia realmente y dónde trazar la línea entre lo suficientemente bueno y lo formalmente verificado.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>¿Y si mis variantes de LLM discrepan? ¿Cuál tiene razón?</title><link>https://autotomy.dev/es/blog/llm-variant-disagreement-resolution/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/llm-variant-disagreement-resolution/</guid><description>Ejecutar múltiples LLMs en paralelo detecta errores que cualquier modelo individual enviaría con total confianza. Así es como construir un sistema de resolución de discrepancias que realmente funciona.</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Cinco implementaciones y ninguna mayoría: cómo elegir realmente la mejor</title><link>https://autotomy.dev/es/blog/n-version-implementation-selection/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/n-version-implementation-selection/</guid><description>La programación de N versiones suena simple: ejecutar varias implementaciones y elegir la mejor respuesta. En la práctica, &apos;mejor&apos; es mucho más difícil de definir que &apos;más común&apos;.</description><pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate></item><item><title>El mismo LLM puede escribir cinco versiones de tu función. Así es como hacerlas realmente diferentes.</title><link>https://autotomy.dev/es/blog/llm-n-version-diverse-implementations/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/llm-n-version-diverse-implementations/</guid><description>La programación N-version con LLMs no requiere múltiples modelos. Puedes extraer implementaciones diversas y correctas de un solo modelo variando prompts, personas y restricciones de razonamiento.</description><pubDate>Thu, 11 Jun 2026 00:00:00 GMT</pubDate></item><item><title>NASA Ejecutó 27 Copias del Mismo Programa. Los Bugs Votaron en Bloque.</title><link>https://autotomy.dev/es/blog/nasa-n-version-programming-knight-leveson/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/nasa-n-version-programming-knight-leveson/</guid><description>La programación N-version prometía que equipos independientes cometerían errores independientes. El experimento de Knight y Leveson en 1986 demostró lo contrario, y NASA abandonó la idea en silencio.</description><pubDate>Wed, 10 Jun 2026 00:00:00 GMT</pubDate></item><item><title>La mitad de tus escenarios de Cucumber están skippeados. Aquí está por qué ese estado te miente.</title><link>https://autotomy.dev/es/blog/cucumber-skipped-scenarios-diagnosis/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/cucumber-skipped-scenarios-diagnosis/</guid><description>El estado &apos;skipped&apos; de Cucumber oculta tres problemas completamente distintos. Así es como diagnosticar cuál se está comiendo tu suite de pruebas, y cómo detenerlo.</description><pubDate>Tue, 09 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tus especificaciones Gherkin te están mintiendo</title><link>https://autotomy.dev/es/blog/gherkin-specs-automated-sync/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/gherkin-specs-automated-sync/</guid><description>Las especificaciones Gherkin se desincronizan en el momento en que confías en que los humanos las actualicen manualmente. Así es como automatizar las verificaciones que mantienen honestos los archivos de feature.</description><pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tu compilador verifica la sintaxis. Tus tests deberían verificar la arquitectura.</title><link>https://autotomy.dev/es/blog/architecture-tests-ci-enforcement/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/architecture-tests-ci-enforcement/</guid><description>La mayoría de los equipos documentan las reglas de arquitectura en wikis. Aquí te mostramos cómo escribirlas como tests ejecutables que hacen fallar CI cuando tu grafo de dependencias se desvía.</description><pubDate>Sun, 07 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tu capa de dominio importa Postgres. A tu CI le da igual.</title><link>https://autotomy.dev/es/blog/clean-architecture-domain-infrastructure-ci/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/clean-architecture-domain-infrastructure-ci/</guid><description>Los diagramas de arquitectura limpia se ven genial en una pizarra. Así es como hacer que tu pipeline de build imponga la dirección de las dependencias para que el código de dominio no pueda alcanzar la infraestructura.</description><pubDate>Sat, 06 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tu Diagrama de Arquitectura Ya Es una Mentira</title><link>https://autotomy.dev/es/blog/architecture-docs-code-generated-diagrams/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/architecture-docs-code-generated-diagrams/</guid><description>La documentación de arquitectura se descompone en el momento en que la guardas. Así es como mantener los docs honestos usando diagramas generados desde código, ADRs y tests de arquitectura automatizados.</description><pubDate>Fri, 05 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tu bucle de reintentos asume que la primera petición falló. Probablemente no lo hizo.</title><link>https://autotomy.dev/es/blog/idempotency-keys-api-retries/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/idempotency-keys-api-retries/</guid><description>Un timeout o un crash no significan que tu petición a la API se haya perdido. Aquí te explicamos cómo las idempotency keys hacen seguros los reintentos, y el patrón de almacenamiento que realmente previene duplicados.</description><pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Un lock que sobrevive a tu proceso: cómo funcionan realmente los leases distribuidos</title><link>https://autotomy.dev/es/blog/distributed-leases-fencing-tokens/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/distributed-leases-fencing-tokens/</guid><description>Los mutex en memoria desaparecen cuando tu servidor reinicia. Así es como los leases distribuidos con fencing tokens y TTLs evitan trabajo duplicado tras un crash, y dónde aún fallan.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Un circuit breaker sin goroutines, sin timers y sin overhead en segundo plano</title><link>https://autotomy.dev/es/blog/circuit-breaker-lazy-recovery-no-goroutines/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/circuit-breaker-lazy-recovery-no-goroutines/</guid><description>La mayoría de las bibliotecas de circuit breaker lanzan hilos en segundo plano para sondear la recuperación. No los necesitas. Aquí tienes un diseño dirigido por requests que elimina todo el overhead en segundo plano sin sacrificar la corrección.</description><pubDate>Tue, 02 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tu Servicio Web Tiene una Ruta de Graceful Shutdown. Ese es el Bug.</title><link>https://autotomy.dev/es/blog/crash-only-software-web-services/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/crash-only-software-web-services/</guid><description>El software crash-only trata cada fallo como un crash y cada inicio como una recuperación. Para los servicios web, esto significa eliminar tu lógica de shutdown y diseñar un estado que sobreviva a un kill -9.</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Cómo matar un mutante superviviente cuando no entiendes qué cambió</title><link>https://autotomy.dev/es/blog/killing-surviving-mutants/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/killing-surviving-mutants/</guid><description>El mutation testing encontró un superviviente y no tienes ni idea de qué hace la mutación. Aquí tienes un método paso a paso para escribir la prueba correcta sin entender primero el mutante.</description><pubDate>Sun, 31 May 2026 00:00:00 GMT</pubDate></item><item><title>El código de autenticación necesita un 90% de cobertura de mutación. Tus utilidades de string no.</title><link>https://autotomy.dev/es/blog/mutation-score-per-module-risk/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/mutation-score-per-module-risk/</guid><description>Por qué exigir un único porcentaje de mutación en toda tu base de código es un error, y cómo establecer umbrales por módulo que correspondan al riesgo real.</description><pubDate>Sat, 30 May 2026 00:00:00 GMT</pubDate></item><item><title>Tus pruebas pasan. Tu mutation score es del 40%. Esto es lo que los surviving mutants te están diciendo.</title><link>https://autotomy.dev/es/blog/my-tests-pass-but-my-mutation-score-is-40-whats-a-surviving-mutant/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/my-tests-pass-but-my-mutation-score-is-40-whats-a-surviving-mutant/</guid><description>La code coverage dice que estás a salvo. El mutation testing dice que tus pruebas son, en su mayoría, decoración. Así es como los surviving mutants exponen la brecha, y cómo cerrarla.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate></item><item><title>El mutation testing en Rust funciona, pero tus tiempos de compilación te lo harán pagar</title><link>https://autotomy.dev/es/blog/rust-mutation-testing-cargo-mutants/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/rust-mutation-testing-cargo-mutants/</guid><description>cargo-mutants encuentra los tests que solo pretenden verificar tu código. Aquí te explicamos cómo funciona el mutation testing en Rust, qué detecta y si el coste en tiempo de compilación merece la pena.</description><pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate></item><item><title>Espectro de validación: por qué la IA programa mejor backend</title><link>https://autotomy.dev/es/blog/ai-coding-validation-spectrum-backend-web-mobile/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ai-coding-validation-spectrum-backend-web-mobile/</guid><description>La codificación con IA sigue un gradiente de validación. Backend: milisegundos. Web: minutos. Mobile: horas. El ciclo de retroalimentación lo determina todo.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>Mono, Ametralladora, Aimbot: Gobernanza de AI para Equipos</title><link>https://autotomy.dev/es/blog/monkey-machine-gun-aimbot/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/monkey-machine-gun-aimbot/</guid><description>Gobernanza de código con AI no es quitar herramientas a juniors y agentes. Es instalar guardrails para que cada disparo acierte sin daño colateral.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>El mutation testing tarda 4 horas. ¿Cómo lo usan los equipos realmente en CI?</title><link>https://autotomy.dev/es/blog/mutation-testing-takes-4-hours-how-do-teams-actually-use-it-in-ci/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/mutation-testing-takes-4-hours-how-do-teams-actually-use-it-in-ci/</guid><description>La mayoría de los equipos no ejecutan suites completas de mutation testing en cada commit. Así es como los equipos de ingeniería integran el mutation testing en CI sin romper el pipeline de build.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>Tus tests unitarios pasan, pero tus datos aún desaparecen</title><link>https://autotomy.dev/es/blog/database-persistence-testing-mocks/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/database-persistence-testing-mocks/</guid><description>Los tests de base de datos con mocks verifican tu sintaxis SQL, no si las filas sobreviven a caídas, escrituras concurrentes o desajustes de esquema. Así es como se prueba la persistencia de verdad.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate></item><item><title>Miedo vs. Arrasar: Las Dos Realidades de la Programación con IA</title><link>https://autotomy.dev/es/blog/fear-vs-steamroll-ai-coding-divide/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/fear-vs-steamroll-ai-coding-divide/</guid><description>La programación con IA funciona para equipos de élite que se recuperan de cualquier desastre. Todos los demás obtienen miedo, CI fallida y experimentos abandonados. La brecha no está en el modelo.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate></item><item><title>Probar Redux sin ahogarte en mocks de acciones</title><link>https://autotomy.dev/es/blog/redux-testing-real-state-transitions/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/redux-testing-real-state-transitions/</guid><description>Mockear cada acción de Redux convierte tus pruebas en un validador de changelog. Así es como probar tu store con transiciones de estado reales.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate></item><item><title>AI Coding en producción: por qué la mayoría de los equipos abandonan</title><link>https://autotomy.dev/es/blog/ai-coding-in-production-autotomy-framework/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ai-coding-in-production-autotomy-framework/</guid><description>La mayoría de los equipos prueban AI coding, entregan código que falla en QA y abandonan. El problema no es el modelo, sino la ausencia de barreras que hacen que el resultado de la IA sea confiable.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate></item><item><title>100 Test Runs Es una Mentira: Cómo Dimensionar Correctamente Tus Property-Based Tests</title><link>https://autotomy.dev/es/blog/property-based-testing-run-count/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/property-based-testing-run-count/</guid><description>Los 100 ejemplos por defecto en property-based testing son un compromiso social, no una estrategia estadística. Aquí te explicamos cómo elegir un número de ejecuciones que se ajuste a tus necesidades de confianza y tu presupuesto de CI.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate></item><item><title>Fuck-u-code: La Puerta de Calidad Determinista que tu Pipeline de IA Olvidó</title><link>https://autotomy.dev/es/blog/fuck-u-code-deterministic-quality-gate-ai-pipeline/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/fuck-u-code-deterministic-quality-gate-ai-pipeline/</guid><description>Tienes type checking, linting y reglas de arquitectura. Pero tu stack determinista es ciego ante la complejidad, la duplicación y los desastres de nomenclatura. Aquí está la solución de $0.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate></item><item><title>Los Property-Based Tests en Rust Encuentran los Bugs que tus Unit Tests No Detectan</title><link>https://autotomy.dev/es/blog/rust-property-based-testing-quickcheck/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/rust-property-based-testing-quickcheck/</guid><description>El example-based testing solo cubre los inputs que se te ocurrieron. El property-based testing genera datos aleatorios, verifica invariantes y reduce los fallos a contraejemplos mínimos mediante shrinking.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate></item><item><title>Por qué la versión uno nunca es el problema: programación con IA y mantenimiento a largo plazo</title><link>https://autotomy.dev/es/blog/ai-coding-why-version-one-is-never-the-problem/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ai-coding-why-version-one-is-never-the-problem/</guid><description>Las herramientas de programación con IA son excelentes generando la versión uno. El verdadero desafío de ingeniería comienza en la versión cuatro, cuando el equipo necesita cambiar algo sin romper todo lo demás.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Código generado por IA y el principio de reemplazabilidad</title><link>https://autotomy.dev/es/blog/ai-generated-code-replaceability-principle/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ai-generated-code-replaceability-principle/</guid><description>La verdadera medida de la calidad del código generado por IA no es si funciona el primer día. Es si puedes reemplazarlo el día treinta sin reescribir todo lo demás.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Barreras deterministas para codebases con IA</title><link>https://autotomy.dev/es/blog/deterministic-guardrails-ai-codebases/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/deterministic-guardrails-ai-codebases/</guid><description>La revisión humana es inconsistente. La revisión por IA es peor. La única defensa escalable para codebases generados por IA es el enforcement determinista: reglas que fallan la compilación, no sugerencias que se ignoran.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Tus pruebas unitarias pasan. Tu código en producción sigue roto.</title><link>https://autotomy.dev/es/blog/i-write-unit-tests-why-do-bugs-still-slip-through/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/i-write-unit-tests-why-do-bugs-still-slip-through/</guid><description>Las métricas de cobertura de código generan una falsa sensación de seguridad. Aquí te explicamos por qué las pruebas unitarias no detectan los bugs que realmente te quitan el sueño, y qué probar en su lugar.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Los Runtime Contracts de Rust Pueden Tener Costo Cero en Release Builds, pero el Compilador No Lo Hará por Ti</title><link>https://autotomy.dev/es/blog/rust-zero-cost-runtime-contracts/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/rust-zero-cost-runtime-contracts/</guid><description>Rust elimina las debug assertions automáticamente, pero el verdadero design-by-contract necesita más que debug_assert!. Aquí te mostramos cómo construir runtime contracts de costo cero que desaparecen de tu release binary.</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate></item><item><title>Cero, Una o Doce: Cuántas Aserciones Necesita Realmente una Función de Producción</title><link>https://autotomy.dev/es/blog/production-assertion-decision-framework/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/production-assertion-decision-framework/</guid><description>Los desarrolladores o esparcen aserciones como confeti o las evitan por completo. Aquí está el marco de decisión que separa los invariantes útiles de los detonadores de fallos en producción.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate></item><item><title>Tu capa de validación es más grande que tu lógica de negocio</title><link>https://autotomy.dev/es/blog/declarative-runtime-contracts-validation/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/declarative-runtime-contracts-validation/</guid><description>La validación manual infla tu codebase y aun así se salta casos límite. Aquí te explicamos cómo aplicar runtime contracts con schemas declarativos que no interfieren.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate></item><item><title>strictNullChecks de TypeScript es un guardia en tiempo de compilación, no un escudo en tiempo de ejecución</title><link>https://autotomy.dev/es/blog/typescript-strictnullchecks-runtime-nulls/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/typescript-strictnullchecks-runtime-nulls/</guid><description>El modo estricto atrapa los nulos que escribes, no los nulos que llegan en tiempo de ejecución desde APIs, consultas al DOM y JSON.parse. Aquí es donde el sistema de tipos se detiene y tus defensas comienzan.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate></item><item><title>En la era de la AI, la revisión de código se convierte en revisión de especificaciones</title><link>https://autotomy.dev/es/blog/code-review-becomes-specification-review/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/code-review-becomes-specification-review/</guid><description>Cuando la AI puede generar implementación, tests y contracts a partir de una especificación, el trabajo humano de más alto impacto se mueve aguas arriba. Lo que más escrutinio necesita es la propia especificación.</description><pubDate>Sun, 17 May 2026 00:00:00 GMT</pubDate></item><item><title>La pila de seguridad para AI: types, contracts, property tests y mutation gates</title><link>https://autotomy.dev/es/blog/ai-safety-stack-types-contracts-property-tests-mutation/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ai-safety-stack-types-contracts-property-tests-mutation/</guid><description>Si quieres que el código generado con AI sobreviva en producción, code review no basta. Necesitas una pila por capas desde type constraints hasta mutation testing y runtime containment.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Meteor development es real. Tu codebase no tiene por qué derrumbarse con él</title><link>https://autotomy.dev/es/blog/meteor-development-is-real/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/meteor-development-is-real/</guid><description>El meme funciona porque muchos equipos realmente desarrollan con objetivos cambiantes, fechas límite fijas y alcance a medio definir. Autotomy no arregla la fantasía de la planificación, pero sí evita que el desarrollo se detenga cada vez que cambia la ruta.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Stanford CS146S acierta sobre el AI coding. La asignatura que falta es arquitectura</title><link>https://autotomy.dev/es/blog/stanford-cs146s-ai-architecture-gap/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/stanford-cs146s-ai-architecture-gap/</guid><description>Una reseña crítica de Stanford CS146S: acierta al tomarse en serio el AI coding, pero deja abierta la disciplina de AI architecture necesaria para construir sistemas reemplazables.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Por qué las grandes ideas de ingeniería siguieron siendo de nicho hasta que la AI las volvió viables</title><link>https://autotomy.dev/es/blog/engineering-ideas-ai-economics/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/engineering-ideas-ai-economics/</guid><description>Design by contract, property-based testing, mutation testing y model checking no eran malas ideas. Exigían demasiada experiencia especializada para sostenerlas. La AI cambia esa ecuación.</description><pubDate>Fri, 15 May 2026 00:00:00 GMT</pubDate></item><item><title>De vibe code a producción: por qué tu app React Native codificada con IA necesita guardrails para escalar</title><link>https://autotomy.dev/es/blog/ai-react-native-guardrails-scaling/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/ai-react-native-guardrails-scaling/</guid><description>La IA puede sacar tu MVP de React Native muy rápido, pero sin guardrails cada cambio pequeño puede romper flujos que no tienen nada que ver. Así es como las restricciones declarativas evitan que la velocidad se convierta en fragilidad.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>La guía del vibe coder para el ciclo de vida de apps React Native</title><link>https://autotomy.dev/es/blog/app-lifecycle-resume-status/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/app-lifecycle-resume-status/</guid><description>Tu app funciona bien en dev, pero los usuarios ven una pantalla en blanco cuando vuelven después de comer. Este es el patrón de resume status que maneja correctamente el ciclo de vida nativo.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Por qué tu app React Native hecha con vibe coding se cae al arrancar (y cómo evitarlo)</title><link>https://autotomy.dev/es/blog/dependency-tiers-hard-soft-optional/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/dependency-tiers-hard-soft-optional/</guid><description>Si los SDK opcionales se inicializan igual que la infraestructura core, pueden hacer crash a tu app en el arranque. Este es el sistema de niveles de dependencias que evita que herramientas no críticas tumben producción.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Por qué hacer vibe coding con NativeWind en Cursor romperá tu app React Native cuando escale</title><link>https://autotomy.dev/es/blog/nativewind-vs-stylesheet-contract/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/nativewind-vs-stylesheet-contract/</guid><description>Lanzaste un MVP en un fin de semana con Cursor, pero ahora cambiar un color rompe 47 archivos. Este es el contrato de estilos que detiene la hemorragia.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Por qué Claude Code no debería revisar tu código (y qué usar en su lugar)</title><link>https://autotomy.dev/es/blog/o1-guards-vs-llm-reviews/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/o1-guards-vs-llm-reviews/</guid><description>La revisión de código con LLM es no determinista, lenta y no detecta violaciones arquitectónicas. Este es el stack de guardas O(1) que sí mantiene limpio tu código.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Borra, no migres: la estrategia de refactorización para apps React Native hechas con vibe coding</title><link>https://autotomy.dev/es/blog/refactor-by-replacement/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/refactor-by-replacement/</guid><description>Refactorizar código generado por IA significa hacer ingeniería inversa de una intención que nunca fue tuya. Este es el patrón de reemplazo guiado por interfaces que hace seguras las eliminaciones.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Cómo Cursor y Claude Code destruyen tu arquitectura React Native (y cómo arreglarla)</title><link>https://autotomy.dev/es/blog/service-boundaries-composition-root/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/service-boundaries-composition-root/</guid><description>El auth generado por IA parece ir bien hasta que una feature nueva mete la mano en el servicio equivocado. Esta es la arquitectura guiada por interfaces que evita que los cambios de vendor y el trabajo de producto rompan el login.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Por qué los deep links hacen crash a las apps React Native hechas con vibe coding (y cómo validarlos con Zod)</title><link>https://autotomy.dev/es/blog/url-validation-expo-router/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/url-validation-expo-router/</guid><description>Los deep links, los payloads de push y las URLs compartidas son input no confiable. Así se validan en el boundary de Expo Router antes de que unos params malos lleguen a tus pantallas.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>`useSyncExternalStore`: el hook de React que salva tu app hecha con vibe coding de bugs de estado</title><link>https://autotomy.dev/es/blog/useSyncExternalStore-pattern/</link><guid isPermaLink="true">https://autotomy.dev/es/blog/useSyncExternalStore-pattern/</guid><description>Deja de escribir suscripciones con `useEffect` que filtran memoria y pierden actualizaciones de estado. Este es el patrón de React 18 para un estado externo a prueba de balas.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item></channel></rss>