<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Ideias &amp; Insights – Autotomy</title><description>Explorando desenvolvimento AI-first, guardrails de código e a arquitetura da descartabilidade.</description><link>https://autotomy.dev/</link><language>pt</language><item><title>Sua branch main está quebrada. Você tem 200 commits para vasculhar.</title><link>https://autotomy.dev/pt/blog/git-bisect-binary-search-commit/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/git-bisect-binary-search-commit/</guid><description>Git bisect transforma uma caçada manual de commits em uma busca binária automatizada. Veja como encontrar o commit exato que introduziu um bug sem fazer checkout de cada um deles.</description><pubDate>Tue, 25 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Seu rastreador de erros sabe onde morreu. Isso não vai te ajudar a reproduzir.</title><link>https://autotomy.dev/pt/blog/production-crash-capture-replay/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/production-crash-capture-replay/</guid><description>Stack traces te dizem onde um crash aconteceu, não o que o causou. Aqui está um padrão de captura e replay que transforma crashes de produção em casos de teste locais que você pode realmente debugar.</description><pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Execução Simbólica Encontrou um Integer Overflow que Meus 94% de Cobertura de Testes Deixaram Passar</title><link>https://autotomy.dev/pt/blog/symbolic-execution-integer-overflow-coverage/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/symbolic-execution-integer-overflow-coverage/</guid><description>Seus unit tests verificam entradas específicas. A execução simbólica verifica todas as entradas possíveis. Veja como funciona, o que custa e por onde começar.</description><pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Seus logs estão vazando PII, e grep não vai te salvar</title><link>https://autotomy.dev/pt/blog/pii-tracking-code-pipeline/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/pii-tracking-code-pipeline/</guid><description>A maioria das equipes descobre vazamentos de PII depois de uma reclamação de cliente. Veja como rastrear dados sensíveis desde a ingestão até a saída, com exemplos de código que você pode usar hoje.</description><pubDate>Sat, 22 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Sua API quebrou em produção porque o CI testava código, não contracts</title><link>https://autotomy.dev/pt/blog/api-contract-testing-ci/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/api-contract-testing-ci/</guid><description>A maioria dos pipelines de CI captura erros de sintaxe e bugs de lógica. Eles deixam passar as quebras de contract da API que realmente derrubam a produção. Veja como corrigir isso.</description><pubDate>Fri, 21 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Correlações de Crash Mentem. Veja Como Fazê-las Apontar para o Bug Real.</title><link>https://autotomy.dev/pt/blog/crash-correlation-triangulation/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/crash-correlation-triangulation/</guid><description>O statistical debugging encontra predicados correlacionados com crashes, mas correlação não é um arquivo e número de linha. Veja como classificar, filtrar e triangular seu caminho de um escore de correlação para uma localização real de bug.</description><pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate></item><item><title>O Seer do Sentry Pode Ler Suas Traces. Isso Não Significa Que Ele Sempre Encontra a Causa Raiz.</title><link>https://autotomy.dev/pt/blog/sentry-seer-trace-root-cause/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/sentry-seer-trace-root-cause/</guid><description>O Seer consome trace trees, erros conectados e dados de profiling para diagnosticar problemas distribuídos. Veja como ele realmente funciona, onde se destaca e onde ainda precisa de ajuda humana.</description><pubDate>Wed, 19 Aug 2026 00:00:00 GMT</pubDate></item><item><title>O statistical debugging deveria acabar com a era do printf. A maioria das equipes nunca conseguiu fazê-lo funcionar.</title><link>https://autotomy.dev/pt/blog/statistical-debugging-adoption-challenges/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/statistical-debugging-adoption-challenges/</guid><description>O statistical debugging prometia identificar bugs correlacionando comportamento do programa com falhas. Veja por que a ideia nunca cruzou de artigos de pesquisa para sistemas de produção.</description><pubDate>Tue, 18 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Seus testes passaram. Seus dados ainda estão errados.</title><link>https://autotomy.dev/pt/blog/statistical-debugging-production-data-anomalies/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/statistical-debugging-production-data-anomalies/</guid><description>O statistical debugging trata seus dados de produção como um sinal e bugs como anomalias nesse sinal. Veja como encontrar corrupção de dados, erros off-by-one e falhas silenciosas sem adicionar um único unit test.</description><pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate></item><item><title>O metamorphic testing encontrou 147 bugs em compilers e um defeito em carro autônomo. Veja como funciona.</title><link>https://autotomy.dev/pt/blog/metamorphic-testing-production-bugs-compiler/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/metamorphic-testing-production-bugs-compiler/</guid><description>O metamorphic testing descobriu bugs reais no GCC, no LLVM, em compilers de shaders Vulkan e em simuladores de ADAS. Este post explica a técnica com código funcional e mostra onde ela se encaixa na sua test suite.</description><pubDate>Sun, 16 Aug 2026 00:00:00 GMT</pubDate></item><item><title>LLMs Podem Sugerir Metamorphic Relations. Eles Simplesmente Não Podem Garanti-las.</title><link>https://autotomy.dev/pt/blog/llm-metamorphic-relations-brainstorming/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/llm-metamorphic-relations-brainstorming/</guid><description>Large language models são parceiros de brainstorming decentes para descobrir test oracles, mas eles alucinam propriedades e perdem restrições de domínio. Veja como usá-los sem entregar testes falsos.</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate></item><item><title>A Maioria das Metamorphic Relations São Inúteis. Veja Como Escolher as Boas.</title><link>https://autotomy.dev/pt/blog/metamorphic-relation-quality/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/metamorphic-relation-quality/</guid><description>Nem todas as metamorphic relations capturam bugs. Relations fracas dão falsa confiança enquanto as fortes encontram falhas reais. Veja como distinguir a diferença e construir um conjunto de relations que realmente funcione.</description><pubDate>Fri, 14 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Como eu testo código quando não sei a resposta certa?</title><link>https://autotomy.dev/pt/blog/metamorphic-testing-oracle-problem/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/metamorphic-testing-oracle-problem/</guid><description>O metamorphic testing permite que você verifique a correção do código sem saber a saída esperada exata. Veja como funciona, quando falha e como começar a usá-lo.</description><pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate></item><item><title>TypeScript Não Vai Deixar Você Fazer Essa Chamada: Codificando o Estado do protocol no Sistema de Tipos</title><link>https://autotomy.dev/pt/blog/typescript-phantom-types-protocol-state/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/typescript-phantom-types-protocol-state/</guid><description>Como usar phantom types e parâmetros `this` para transformar transições ilegais de protocol em erros de compilação em vez de bugs em runtime.</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate></item><item><title>OpenAPI Te Dá o Alfabeto. Session Types Precisam da Gramática.</title><link>https://autotomy.dev/pt/blog/openapi-session-types-protocol-gap/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/openapi-session-types-protocol-gap/</guid><description>As especificações OpenAPI descrevem schemas de requisição e resposta, mas não especificam sequências válidas de mensagens. Veja como extrair o que é possível e onde você ainda precisa preencher as lacunas.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Os tipos de sessão funcionam. A maioria das linguagens simplesmente recusou-se a implementá-los.</title><link>https://autotomy.dev/pt/blog/session-types-research-to-production/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/session-types-research-to-production/</guid><description>Tipos de sessão codificam protocols de comunicação no sistema de tipos, transformando erros de protocol em tempo de execução em falhas em tempo de compilação. Veja por que passaram trinta anos em artigos de pesquisa antes do código de produção poder usá-los.</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Como os tipos de sessão transformam deadlocks em erros de compiler</title><link>https://autotomy.dev/pt/blog/session-types-deadlock-compiler-errors/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/session-types-deadlock-compiler-errors/</guid><description>Tipos de sessão codificam protocols de comunicação no seu sistema de tipos, transformando incompatibilidades de passagem de mensagens em erros de compiler antes que seu código execute.</description><pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Interpretação abstrata soa como um requisito de doutorado. Não é mais.</title><link>https://autotomy.dev/pt/blog/infer-abstract-interpretation-ci/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/infer-abstract-interpretation-ci/</guid><description>Como executar análise estática formal no seu pipeline de CI usando Infer, com configs funcionais e trade-offs realistas.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate></item><item><title>LLMs Podem Ordenar Seus Avisos de Análise Estática. Eles Simplesmente Não Podem Explicar Por Quê.</title><link>https://autotomy.dev/pt/blog/llm-static-analysis-triage/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/llm-static-analysis-triage/</guid><description>Large language models podem ajudar a triar falsos positivos de análise estática, mas não entendem a semântica do programa como faz a interpretação abstrata. Veja como combinar ambos.</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Facebook paralelizou o Android com interpretação abstrata. Veja como funciona.</title><link>https://autotomy.dev/pt/blog/facebook-android-abstract-interpretation-races/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/facebook-android-abstract-interpretation-races/</guid><description>Como o Facebook usou interpretação abstrata e insoundness intencional para encontrar race conditions em escala em milhões de linhas de código Android.</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Meta Encontrou 100.000 Bugs em Código de Produção com um analyzer Estático que Nunca Executa o Programa</title><link>https://autotomy.dev/pt/blog/meta-infer-100000-bugs-static-analysis/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/meta-infer-100000-bugs-static-analysis/</guid><description>O Infer da Meta usa interpretação abstrata e bi-abdução para encontrar desreferências nulas, vazamentos de memória e race conditions ao raciocinar sobre a estrutura do código, não sobre sua execução. Veja como funciona e como usá-lo em sua própria codebase.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate></item><item><title>A Análise Estática Não Pode Provar Que Seu Avião Não Vai Cair. Ela Pode Provar Algo Mais Útil.</title><link>https://autotomy.dev/pt/blog/static-analysis-aviation-abstract-interpretation/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/static-analysis-aviation-abstract-interpretation/</guid><description>A interpretação abstrata superaproxima todo estado possível do programa. Se uma divisão por zero é inalcançável na abstração, ela é inalcançável no código real. Veja como funciona e onde deixa de funcionar.</description><pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Como provar que seu código não tem erros de execução (e por que você provavelmente desistirá de tentar)</title><link>https://autotomy.dev/pt/blog/abstract-interpretation-runtime-error-proof/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/abstract-interpretation-runtime-error-proof/</guid><description>A interpretação abstrata permite provar que erros de execução são impossíveis antes da execução. Veja como ela funciona na prática, por que é difícil e onde se encaixa na sua cadeia de ferramentas.</description><pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Seu código em C pode rodar em hardware com capabilities sem um rewrite completo</title><link>https://autotomy.dev/pt/blog/cheri-c-porting-hybrid-abi/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/cheri-c-porting-hybrid-abi/</guid><description>O ABI híbrido do CHERI permite que você porte código em C para hardware com capabilities de forma incremental. Veja como compilar, o que quebra e como corrigir sem rewrite toda a sua codebase.</description><pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate></item><item><title>O hardware de capabilities não falhou. Chegou 40 anos cedo demais.</title><link>https://autotomy.dev/pt/blog/capability-hardware-cheri-history/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/capability-hardware-cheri-history/</guid><description>A segurança de memória no nível de hardware é possível desde os anos 1970. Aqui está o porquê de as arquiteturas de capabilities terem perdido repetidamente para os modelos de memória plana, e por que o CHERI está finalmente mudando a conta.</description><pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Sua dependência em C pode derrubar todo o seu processo. WebAssembly pode impedir isso.</title><link>https://autotomy.dev/pt/blog/c-library-wasm-sandbox/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/c-library-wasm-sandbox/</guid><description>Containers são exagerados para isolar uma única biblioteca C. Compile-a para WebAssembly e execute-a dentro de um sandbox WASI para memory safety, acesso ao filesystem baseado em capabilities e contenção de crashes sem Docker.</description><pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Seu celular já tem hardware que detecta corrupção de memória</title><link>https://autotomy.dev/pt/blog/mobile-memory-tagging-extension/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/mobile-memory-tagging-extension/</guid><description>ARM Memory Tagging Extension e GWP-ASan tornam possível a detecção de segurança de memória em produção em dispositivos móveis modernos. Veja como funcionam e quais são as compensações.</description><pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Buffer Overflows Continuam Acontecendo Porque nodes Os Corrigimos em Software</title><link>https://autotomy.dev/pt/blog/cheri-hardware-buffer-overflow-prevention/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/cheri-hardware-buffer-overflow-prevention/</guid><description>CHERI é uma extensão de hardware que transforma cada pointer em uma bounded capability. Veja como ela impede buffer overflows no nível da CPU, o que custa e como testá-la em hardware real.</description><pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate></item><item><title>LLMs Não Conseguem Provar que Seu Código Está Correto, Mas Podem Escrever o Boilerplate que Faz Isso</title><link>https://autotomy.dev/pt/blog/llm-cleanroom-proof-obligation-automation/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/llm-cleanroom-proof-obligation-automation/</guid><description>A verificação Cleanroom exige gerar e descarregar obrigações de prova. Veja como os LLMs automatizam a anotação e a geração de VC para que você possa se concentrar nas provas realmente difíceis.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Cleanroom Entrega 0,1 Defeitos por KLOC. Você Não Precisa do Ritual Completo para Chegar Lá.</title><link>https://autotomy.dev/pt/blog/cleanroom-pragmatic-subset/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/cleanroom-pragmatic-subset/</guid><description>A engenharia de software Cleanroom reduz as taxas de defeitos em 100×, mas a adoção completa exige equipes de teste separadas e provas formais. Aqui está um subconjunto pragmático que captura a maior parte do benefício sem o overhead.</description><pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate></item><item><title>O Zero-Defect Process da IBM Entregou 0,1 Bugs por KLOC. A Indústria o Abandonou Mesmo Assim.</title><link>https://autotomy.dev/pt/blog/ibm-cleanroom-zero-defects-disappearance/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ibm-cleanroom-zero-defects-disappearance/</guid><description>O Cleanroom engineering da IBM alcançou taxas de defeito 100 vezes melhores que a média da indústria, depois desapareceu na obscuridade. O desaparecimento não teve nada a ver com se funcionava.</description><pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Alguém realmente verificou 10.000 linhas com zero defeitos? A IBM fez isso, e a metodologia é mais estranha que o resultado.</title><link>https://autotomy.dev/pt/blog/ibm-cleanroom-10000-lines-zero-defects/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ibm-cleanroom-10000-lines-zero-defects/</guid><description>Cleanroom software engineering prometeu incrementos zero-defect através de mathematical verification em vez de debugging. Analisamos os dados reais do projeto da IBM para ver se a afirmação se sustentou.</description><pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Seu module tem três camadas. Você provavelmente só escreveu uma.</title><link>https://autotomy.dev/pt/blog/cleanroom-box-structure-three-layers/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/cleanroom-box-structure-three-layers/</guid><description>As Box Structures obrigam você a definir o que um module faz, o que ele lembra e como funciona como três camadas separadas e verificáveis. Veja como o Cleanroom as usa para eliminar o debugging.</description><pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate></item><item><title>A IBM entregou software com 0,1 defeitos por KLOC proibindo desenvolvedores de executarem seu proprio codigo</title><link>https://autotomy.dev/pt/blog/ibm-cleanroom-01-defects-per-kloc/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ibm-cleanroom-01-defects-per-kloc/</guid><description>O processo de engenharia Cleanroom da IBM alcancou taxas de defeito 100 vezes melhores que a media da industria ao prevenir bugs em vez de encontra-los. Veja como funcionava, porque quase ninguem o usa e o que voce pode aproveitar dele hoje.</description><pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate></item><item><title>O teu programa literário está partido até que CI consiga fazer tangle sem ti</title><link>https://autotomy.dev/pt/blog/ci-literate-programming-tangle/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ci-literate-programming-tangle/</guid><description>A programação literária promete uma única fonte de verdade, mas os passos manuais de weave e tangle partem a pipeline CI/CD. Eis como automatizar a extração e geração de documentação para que os teus ficheiros Markdown permaneçam canónicos.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Explicar Código para um LLM Primeiro Reduziu Minha Taxa de Bugs em 85%</title><link>https://autotomy.dev/pt/blog/llm-rubber-ducking-bug-rate/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/llm-rubber-ducking-bug-rate/</guid><description>Passei 30 dias escrevendo explicações de design antes de pedir código a um LLM. Os resultados mudaram como penso sobre rubber-ducking.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Parei de copiar código para a documentação mantendo testes, código e prosa num único ficheiro Markdown</title><link>https://autotomy.dev/pt/blog/literate-programming-markdown-python/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/literate-programming-markdown-python/</guid><description>A programação literária mantém a documentação, os testes e a implementação sincronizados ao tornar um ficheiro Markdown a única fonte de verdade. Eis como implementá-la em trinta linhas de Python.</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Seu thread no Claude já é documentação. Só morre em doze horas.</title><link>https://autotomy.dev/pt/blog/claude-thread-to-documentation/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/claude-thread-to-documentation/</guid><description>Conversas com LLM contêm intenção, alternativas rejeitadas e código funcional. É exatamente isso que a documentação deveria ser. Veja como transformar um chat efêmero em documentos duráveis e pesquisáveis sem perder a narrativa.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Editores de Texto Deixam Você Escrever Código Inválido. Editores de Árvore Não Deixariam.</title><link>https://autotomy.dev/pt/blog/structured-editing-ast-text-editors/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/structured-editing-ast-text-editors/</guid><description>Todo compiler vê seu código como uma árvore, mas seu editor te deixa editar texto bruto. É assim que a edição estruturada realmente se parece, por que não dominou e como aproveitar seus benefícios sem trocar de ferramentas.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Donald Knuth queria que programas fossem lidos como literatura. O compiler tinha outros planos.</title><link>https://autotomy.dev/pt/blog/knuth-literate-programming-history/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/knuth-literate-programming-history/</guid><description>A programação literária prometia que o código deveria ser escrito primeiro para humanos e depois para máquinas. Quatro décadas depois, quase ninguém escreve assim. Veja por que a ideia mais elegante da documentação de software não conseguiu mudar a forma como trabalhamos.</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Corrigir o Bug É a Parte Fácil. Descobrir Por Que Ele Existe É o Que Importa.</title><link>https://autotomy.dev/pt/blog/fagan-causal-analysis-defects/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/fagan-causal-analysis-defects/</guid><description>A maioria dos times corrige defeitos e segue em frente. Os mesmos defeitos voltam. Aqui está como executar análise causal dentro de uma inspeção Fagan para parar de escrever o mesmo bug duas vezes.</description><pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Revisões de Pull Request Capturam 15-30% dos Defeitos. Os Dados Dizem Isso Há 50 Anos.</title><link>https://autotomy.dev/pt/blog/pr-reviews-catch-15-to-30-percent-defects/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/pr-reviews-catch-15-to-30-percent-defects/</guid><description>Múltiplos estudos na IBM, AT&amp;T, HP e Microsoft confirmam que a revisão informal de código captura aproximadamente um quarto dos defeitos. Aqui está o que os dados realmente dizem, por que o número é tão baixo e como corrigi-lo.</description><pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Um checklist genérico não captura nada. Um estruturado captura 60 % dos defeitos.</title><link>https://autotomy.dev/pt/blog/fagan-structured-checklist-defect-detection/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/fagan-structured-checklist-defect-detection/</guid><description>A maioria dos checklists de revisão são listas copiadas e coladas de boas intenções. Um checklist estruturado no estilo Fagan inspection é construído a partir de dados reais de defeitos, direcionado a tipos específicos de artefatos e usado durante a preparação individual. Veja como construir um que funcione.</description><pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Um LLM pode pré-inspecionar seu código. Ele não pode conduzir a reunião.</title><link>https://autotomy.dev/pt/blog/llm-fagan-inspection-preparation/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/llm-fagan-inspection-preparation/</guid><description>Inspeções Fagan precisam de quatro a seis pessoas e duas horas para revisar 250 linhas. Um LLM pode cortar esse custo ao cuidar da preparação e da aplicação de checklist, mas não pode substituir os papéis humanos que encontram os defeitos mais caros.</description><pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Fagan Inspections Encontravam 90% dos Defeitos Antes dos Testes. Depois Paramos de Fazê-las.</title><link>https://autotomy.dev/pt/blog/fagan-inspections-disappearance-ibm/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/fagan-inspections-disappearance-ibm/</guid><description>O processo de revisão estruturado de Michael Fagan na IBM capturava quase todos os defeitos antes que chegassem ao compiler. Também consumia 15-20% do esforço total do projeto. Veja por que o método de revisão mais eficaz da história do software desapareceu, e o que as equipes realmente perdem.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Seu Melhor Revisor Deixa Passar a Maioria dos Defeitos. Fagan Mediu Isso na IBM em 1976.</title><link>https://autotomy.dev/pt/blog/fagan-reviewer-defect-detection-variance/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/fagan-reviewer-defect-detection-variance/</guid><description>Mesmo engenheiros sênior detectam apenas uma fração dos defeitos em revisões não estruturadas. A pesquisa de Michael Fagan na IBM mostrou por quê, e construiu um processo de inspeção estruturado para corrigir isso.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate></item><item><title>A maioria dos code reviews encontra 20% dos defeitos. Fagan inspections encontram 90%.</title><link>https://autotomy.dev/pt/blog/fagan-inspections-90-percent-defects/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/fagan-inspections-90-percent-defects/</guid><description>A revisão de código informal encontra 15-30% dos defeitos. As Fagan inspections, um processo estruturado com 50 anos, relatam consistentemente taxas de remoção de 60-90%. Veja como funcionam, por que as equipes as evitam e como executar uma versão simplificada.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate></item><item><title>AutoVerus transforma 40 horas de escrita de proof em 3 chamadas de LLM. O truque é saber quando desistir.</title><link>https://autotomy.dev/pt/blog/autoverus-llm-rust-verification/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/autoverus-llm-rust-verification/</guid><description>AutoVerus utiliza uma rede de agents LLM para gerar proofs de correção Verus para código Rust, automatizando mais de 90% das proof obligations por meio de um loop gerar-reparar-discharge impulsionado pelo feedback do solver SMT.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate></item><item><title>LLMs conseguem gerar código Rust. Provas formais são um problema completamente diferente.</title><link>https://autotomy.dev/pt/blog/llm-rust-formal-proofs-hallucination/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/llm-rust-formal-proofs-hallucination/</guid><description>Grandes modelos de linguagem escrevem código Rust surpreendentemente bom, mas quando você pede uma prova formal, eles alucinam invariantes e inventam sintaxe que nenhum verificador aceita. Veja o que eles realmente acertam, onde falham e como usá-los mesmo assim.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Esperar por race conditions é uma estratégia de teste terrível</title><link>https://autotomy.dev/pt/blog/model-checking-race-conditions/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/model-checking-race-conditions/</guid><description>Por que o model checking supera dias de execução em produção para encontrar bugs de concorrência, e como aplicá-lo ao seu próprio código.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Você pode verificar código com model checking sem aprender temporal logic</title><link>https://autotomy.dev/pt/blog/is-there-a-model-checker-that-doesnt-require-learning-temporal-logic/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/is-there-a-model-checker-that-doesnt-require-learning-temporal-logic/</guid><description>Bounded model checkers como Kani e relational model finders como Alloy permitem verificar propriedades com assertions e constraints ordinários. Você abre mão de provas de liveness por uma curva de aprendizado medida em horas, não em semanas.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Você pode provar que seu código Rust está correto sem escrever uma única prova, mas o espaço de estados é a conta</title><link>https://autotomy.dev/pt/blog/rust-model-checking-kani-state-space/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/rust-model-checking-kani-state-space/</guid><description>Ferramentas de model checking como Kani permitem verificar propriedades de Rust com assertions em vez de provas formais. O problema é o que acontece quando seus loops não têm limites pequenos.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Você não pode fazer unit test de um protocol distribuído, mas pode fazer model checking</title><link>https://autotomy.dev/pt/blog/distributed-protocol-model-checking-tla/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/distributed-protocol-model-checking-tla/</guid><description>Bugs distribuídos são caros de corrigir após o deploy. O model checking permite que você os encontre antes de escrever uma única linha de código de implementação. Veja como fazer isso com TLA+.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Copiar arquivos `.env` entre ambientes não é uma estratégia de configuração</title><link>https://autotomy.dev/pt/blog/infrastructure-config-dsl-per-context/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/infrastructure-config-dsl-per-context/</guid><description>Como equipes de infraestrutura gerenciam configuração entre dev, staging e production usando DSLs por contexto que tornam as diferenças entre ambientes explícitas e com segurança de tipos.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Grammar-constrained decoding: forçando LLMs a emitir sintaxe válida em cada token</title><link>https://autotomy.dev/pt/blog/grammar-constrained-decoding-llm/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/grammar-constrained-decoding-llm/</guid><description>LLMs alucinam sintaxe porque fazem sampling de tokens probabilisticamente. O grammar-constrained decoding filtra o vocabulário a cada passo para que apenas tokens que preservem a validade sintática sejam emitidos.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Traduzir do inglês para um tema é fácil. Torná-lo determinístico é o verdadeiro problema.</title><link>https://autotomy.dev/pt/blog/english-to-theme-deterministic-design-tokens/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/english-to-theme-deterministic-design-tokens/</guid><description>Você pode gerar design tokens a partir de descrições simples em inglês, mas apenas se tratar a descrição como uma DSL de contexto delimitado com contrato de schema e snapshot tests.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Deixa o arquivo de gramática de lado: escreve o teu parser DSL em TypeScript simples</title><link>https://autotomy.dev/pt/blog/typescript-parser-combinators-dsl/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/typescript-parser-combinators-dsl/</guid><description>Os geradores de parsers são excessivos para a maioria das DSLs de contexto limitado. Os combinadores de parsers permitem-te construir um parser funcional na mesma linguagem da tua aplicação, sem código gerado e sem passos de build.</description><pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Erros de config em runtime são falhas de produção que você escolheu permitir</title><link>https://autotomy.dev/pt/blog/config-validation-build-time/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/config-validation-build-time/</guid><description>Como capturar erros de configuração antes que sua aplicação comece a servir tráfego, usando validação de schemas e verificações em tempo de build.</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Suas dependências podem ler suas variáveis de ambiente. O JavaScript deixa.</title><link>https://autotomy.dev/pt/blog/javascript-capability-security-lockdown/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/javascript-capability-security-lockdown/</guid><description>Autoridade ambiente significa que qualquer código no seu processo Node.js pode tocar o sistema de arquivos, a rede e o ambiente. Veja como removê-la com lockdown, compartments e passagem explícita de capabilities.</description><pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Proximidade de Rede Não É Identidade: Como Serviços Se Autenticam Sem Autoridade Ambiente</title><link>https://autotomy.dev/pt/blog/service-authentication-without-ambient-authority/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/service-authentication-without-ambient-authority/</guid><description>A maior parte da confiança entre serviços vem da localização na rede, não de prova criptográfica. Veja como capabilities, mTLS e SPIFFE permitem que serviços se autentiquem sem autoridade ambiente, e por que isso é mais difícil do que deveria.</description><pubDate>Sat, 27 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Suas dependências podem ler qualquer arquivo no disco. cap-std faz com que elas peçam permissão.</title><link>https://autotomy.dev/pt/blog/rust-cap-std-capability-filesystem/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/rust-cap-std-capability-filesystem/</guid><description>A biblioteca padrão do Rust concede autoridade de sistema de arquivos ambiente a toda dependência. cap-std a substitui por APIs baseadas em capabilities que forçam o código a provar que tem direito de acessar um caminho antes de abri-lo.</description><pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate></item><item><title>O Seu Serviço É um Cúmplice Inadvertido: Como Funcionam os Ataques Confused Deputy</title><link>https://autotomy.dev/pt/blog/whats-a-confused-deputy-attack-and-how-do-i-prevent-it/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/whats-a-confused-deputy-attack-and-how-do-i-prevent-it/</guid><description>Um ataque confused deputy engana um serviço privilegiado a usar sua própria autoridade contra si mesmo. Veja como atacantes exploram a confiança implícita, e por que a capability-based security é a solução.</description><pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Suas verificações de permissão estão mentindo para você</title><link>https://autotomy.dev/pt/blog/typescript-capability-based-security/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/typescript-capability-based-security/</guid><description>Capability-based security substitui verificações de role dispersas por unforgeable tokens de autoridade. Veja como implementá-la em TypeScript sem tornar seu código ilegível.</description><pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate></item><item><title>E se cada função tivesse que receber permissão em vez de assumi-la?</title><link>https://autotomy.dev/pt/blog/capability-based-security-permissions/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/capability-based-security-permissions/</guid><description>A maioria do código roda com autoridade ambiente: cada função pode tocar em tudo. A segurança baseada em capabilities inverte esse modelo ao forçar funções a receber permissões explícitas e limitadas.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Pare de Lançar Erros que o Seu Verificador de Tipos Não Vê</title><link>https://autotomy.dev/pt/blog/should-i-stop-throwing-errors-and-start-returning-them/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/should-i-stop-throwing-errors-and-start-returning-them/</guid><description>Exceções lançadas escondem caminhos de falha do seu sistema de tipos. Veja por que retornos de erro explícitos tornam seu código mais honesto, e como adotá-los sem odiar sua vida.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Newtypes em Rust eliminam estados errados em tempo de compilação, sem custo</title><link>https://autotomy.dev/pt/blog/rust-newtypes-zero-cost-safety/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/rust-newtypes-zero-cost-safety/</guid><description>Uma struct wrapper de campo único captura bugs de mistura de unidades e confusão de tipos sem adicionar um único byte de overhead.</description><pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Switch statements deixam passar bugs em tempo de compilação</title><link>https://autotomy.dev/pt/blog/is-there-a-better-way-than-switch-statements-for-type-safe-matching/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/is-there-a-better-way-than-switch-statements-for-type-safe-matching/</guid><description>Switch statements do TypeScript deixam você esquecer casos silenciosamente. Veja como substituí-los por patterns com verificação de exhaustividade que quebram o build em vez do runtime.</description><pubDate>Sat, 20 Jun 2026 00:00:00 GMT</pubDate></item><item><title>O compiler deve detectar casos de estado ausentes, não a sua equipa de QA</title><link>https://autotomy.dev/pt/blog/typescript-exhaustiveness-state-machines/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/typescript-exhaustiveness-state-machines/</guid><description>Adicionar um novo estado à sua máquina é fácil. Lembrar-se de atualizar todos os switch statements não é. Veja como fazer o TypeScript recusar a compilação quando se esquece de um caso.</description><pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Sim, Mas Seu Sistema de Tipos Precisa Saber O Que É Um Dólar</title><link>https://autotomy.dev/pt/blog/typescript-currency-types/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/typescript-currency-types/</guid><description>O TypeScript trata todos os números como idênticos. Veja como ensiná-lo a distinguir USD de EUR para que o compilador capture bugs de conversão de moeda antes que eles cheguem à produção.</description><pubDate>Thu, 18 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Um número não é apenas um número: como fazer o compiler detectar bugs de unidade</title><link>https://autotomy.dev/pt/blog/typescript-unit-types-compile-time/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/typescript-unit-types-compile-time/</guid><description>Passar milliseconds onde seconds eram esperados é um bug que passa em todos os testes. Veja como codificar unidades diretamente no sistema de tipos do TypeScript para que confusões falhem em tempo de compilação com zero custo em runtime.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate></item><item><title>TypeScript me deixou passar um user ID onde um order ID pertencia</title><link>https://autotomy.dev/pt/blog/typescript-branded-types-newtypes/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/typescript-branded-types-newtypes/</guid><description>Type aliases não criam tipos distintos em TypeScript. Branded types criam, e podem te salvar de misturar identifiers em tempo de compilação.</description><pubDate>Tue, 16 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Differential Testing Funciona Sem uma Prova Formal, mas Common-Mode Failures São o Problema</title><link>https://autotomy.dev/pt/blog/differential-testing-common-mode-failures/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/differential-testing-common-mode-failures/</guid><description>Differential testing permite encontrar bugs sem saber a resposta correta. O problema é que erros correlacionados parecem concordância. Veja como identificar os pontos cegos.</description><pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Testes Não Provarão Que Duas Funções São Equivalentes. Veja o Que Vai.</title><link>https://autotomy.dev/pt/blog/function-equivalence-smt-solvers/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/function-equivalence-smt-solvers/</guid><description>A programação N-version assume que suas implementações concordam. Veja por que os testes não são suficientes, como os solvers SMT podem de fato provar equivalência, e onde traçar a linha entre bom o suficiente e formalmente verificado.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>E Se Minhas Variantes de LLM Discordarem? Qual Está Certa?</title><link>https://autotomy.dev/pt/blog/llm-variant-disagreement-resolution/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/llm-variant-disagreement-resolution/</guid><description>Executar múltiplos LLMs em paralelo captura erros que qualquer modelo individual enviaria com confiança. Aqui está como construir um sistema de resolução de divergências que realmente funciona.</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Cinco Implementações e Nenhuma Maioria: Como Escolher a Melhor na Prática</title><link>https://autotomy.dev/pt/blog/n-version-implementation-selection/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/n-version-implementation-selection/</guid><description>N-version programming parece simples: execute várias implementações e escolha a melhor resposta. Na prática, &apos;melhor&apos; é muito mais difícil de definir do que &apos;mais comum&apos;.</description><pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate></item><item><title>O Mesmo LLM Pode Escrever Cinco Versões da Sua Função. Veja Como Fazê-las Realmente Diferentes.</title><link>https://autotomy.dev/pt/blog/llm-n-version-diverse-implementations/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/llm-n-version-diverse-implementations/</guid><description>Programação N-version com LLMs não requer múltiplos modelos. Você pode extrair implementações diversas e corretas de um único modelo variando prompts, personas e restrições de raciocínio.</description><pubDate>Thu, 11 Jun 2026 00:00:00 GMT</pubDate></item><item><title>A NASA Executou 27 Cópias do Mesmo Programa. Os Bugs Votaram em Bloco.</title><link>https://autotomy.dev/pt/blog/nasa-n-version-programming-knight-leveson/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/nasa-n-version-programming-knight-leveson/</guid><description>A programação N-version prometia que equipes independentes cometeriam erros independentes. O experimento de Knight e Leveson em 1986 provou o oposto, e a NASA abandonou a ideia em silêncio.</description><pubDate>Wed, 10 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Metade dos Seus Cucumber Scenarios Está Skipped. Veja Por Que Esse Status Está Te Enganando.</title><link>https://autotomy.dev/pt/blog/cucumber-skipped-scenarios-diagnosis/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/cucumber-skipped-scenarios-diagnosis/</guid><description>O status &apos;skipped&apos; do Cucumber esconde três problemas completamente diferentes. Veja como diagnosticar qual deles está devorando sua test suite, e como detê-lo.</description><pubDate>Tue, 09 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Suas especificações Gherkin estão mentindo para você</title><link>https://autotomy.dev/pt/blog/gherkin-specs-automated-sync/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/gherkin-specs-automated-sync/</guid><description>Especificações Gherkin saem de sincronia no momento em que você confia em humanos para atualizá-las manualmente. Veja como automatizar as verificações que mantêm os arquivos de feature honestos.</description><pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Seu compiler Verifica Sintaxe. Seus Testes Deveriam Verificar Arquitetura.</title><link>https://autotomy.dev/pt/blog/architecture-tests-ci-enforcement/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/architecture-tests-ci-enforcement/</guid><description>A maioria das equipes documenta regras de arquitetura em wikis. Veja como escrevê-las como testes executáveis que quebram o CI quando seu grafo de dependências se desvia.</description><pubDate>Sun, 07 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Sua camada de domínio importa Postgres. Seu CI não liga.</title><link>https://autotomy.dev/pt/blog/clean-architecture-domain-infrastructure-ci/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/clean-architecture-domain-infrastructure-ci/</guid><description>Diagramas de clean architecture ficam ótimos em um quadro branco. Veja como fazer seu pipeline de build impor a direção das dependências para que o código de domínio não possa alcançar a infraestrutura.</description><pubDate>Sat, 06 Jun 2026 00:00:00 GMT</pubDate></item><item><title>O Seu Diagrama de Arquitetura Já É uma Mentira</title><link>https://autotomy.dev/pt/blog/architecture-docs-code-generated-diagrams/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/architecture-docs-code-generated-diagrams/</guid><description>A documentação de arquitetura apodrece no momento em que a guardas. Eis como manter os docs honestos usando diagramas gerados a partir de código, ADRs e testes de arquitetura automatizados.</description><pubDate>Fri, 05 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Seu loop de retry assume que a primeira requisição falhou. Provavelmente, não falhou.</title><link>https://autotomy.dev/pt/blog/idempotency-keys-api-retries/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/idempotency-keys-api-retries/</guid><description>Um timeout ou crash não significa que sua requisição de API foi perdida. Veja como idempotency keys tornam retries seguros, e o padrão de armazenamento que realmente previne duplicatas.</description><pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Um lock que sobrevive ao seu processo: como leases distribuídos funcionam de fato</title><link>https://autotomy.dev/pt/blog/distributed-leases-fencing-tokens/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/distributed-leases-fencing-tokens/</guid><description>Mutexes em memória desaparecem quando seu servidor reinicia. Veja como leases distribuídos com fencing tokens e TTLs previnem trabalho duplicado entre crashes, e onde eles ainda falham.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Um circuit breaker sem goroutines, sem timers e sem overhead em background</title><link>https://autotomy.dev/pt/blog/circuit-breaker-lazy-recovery-no-goroutines/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/circuit-breaker-lazy-recovery-no-goroutines/</guid><description>A maioria das bibliotecas de circuit breaker cria threads em background para fazer probe de recuperação. Você não precisa delas. Aqui está um design orientado a requests que elimina todo o overhead em background sem sacrificar a corretude.</description><pubDate>Tue, 02 Jun 2026 00:00:00 GMT</pubDate></item><item><title>O Seu Serviço Web Tem um Caminho de Encerramento Graceful. Esse é o Bug.</title><link>https://autotomy.dev/pt/blog/crash-only-software-web-services/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/crash-only-software-web-services/</guid><description>Software crash-only trata toda falha como um crash e toda inicialização como uma recuperação. Para serviços web, isso significa deletar sua lógica de encerramento e projetar estado que sobreviva a um kill -9.</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Como Matar um Mutante Sobrevivente Quando Você Não Entende o Que Ele Mudou</title><link>https://autotomy.dev/pt/blog/killing-surviving-mutants/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/killing-surviving-mutants/</guid><description>O mutation testing encontrou um sobrevivente e você não faz ideia do que a mutação faz. Aqui está um método passo a passo para escrever o teste certo sem primeiro entender o mutante.</description><pubDate>Sun, 31 May 2026 00:00:00 GMT</pubDate></item><item><title>Código de autenticação precisa de 90% de cobertura de mutação. Seus utilitários de string não.</title><link>https://autotomy.dev/pt/blog/mutation-score-per-module-risk/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/mutation-score-per-module-risk/</guid><description>Por que impor uma única pontuação de mutação em toda a sua base de código é um erro, e como definir limites por module que correspondam ao risco real.</description><pubDate>Sat, 30 May 2026 00:00:00 GMT</pubDate></item><item><title>Seus Testes Passam. Seu Mutation Score É 40%. Eis O Que Mutantes Sobreviventes Estão Realmente Lhe Dizendo.</title><link>https://autotomy.dev/pt/blog/my-tests-pass-but-my-mutation-score-is-40-whats-a-surviving-mutant/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/my-tests-pass-but-my-mutation-score-is-40-whats-a-surviving-mutant/</guid><description>O code coverage diz que você está seguro. O mutation testing diz que seus testes são, em sua maioria, decoração. Veja como mutantes sobreviventes expõem a lacuna e como fechá-la.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate></item><item><title>Mutation Testing em Rust Funciona, mas Seus Tempos de Compilação Vão Odiar Você</title><link>https://autotomy.dev/pt/blog/rust-mutation-testing-cargo-mutants/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/rust-mutation-testing-cargo-mutants/</guid><description>cargo-mutants encontra os testes que apenas fingem verificar seu código. Veja como mutation testing funciona para Rust, o que ele captura e se o custo de tempo de compilação vale a pena.</description><pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate></item><item><title>Espectro de Validação: Por Que IA Programa Melhor no Backend</title><link>https://autotomy.dev/pt/blog/ai-coding-validation-spectrum-backend-web-mobile/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ai-coding-validation-spectrum-backend-web-mobile/</guid><description>Codificação com IA segue gradiente de validação: backend em milissegundos, web em minutos, mobile em horas. O ciclo de feedback determina onde ela funciona.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>Macaco, Metralhadora, Aimbot: Governança de AI para Times</title><link>https://autotomy.dev/pt/blog/monkey-machine-gun-aimbot/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/monkey-machine-gun-aimbot/</guid><description>Governança de código com AI não é tirar ferramentas de juniores e agentes. É instalar guardrails para cada disparo acertar o alvo sem dano colateral.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>Mutation testing leva 4 horas. Como os times realmente usam isso em CI?</title><link>https://autotomy.dev/pt/blog/mutation-testing-takes-4-hours-how-do-teams-actually-use-it-in-ci/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/mutation-testing-takes-4-hours-how-do-teams-actually-use-it-in-ci/</guid><description>A maioria dos times não executa suites completas de mutation testing a cada commit. Veja como os times de engenharia integram mutation testing em CI sem quebrar o pipeline de build.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>Seus unit tests passam, mas seus dados ainda somem</title><link>https://autotomy.dev/pt/blog/database-persistence-testing-mocks/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/database-persistence-testing-mocks/</guid><description>Testes mockados de banco de dados verificam sua sintaxe SQL, não se as rows sobrevivem a crashes, escritas concorrentes, ou incompatibilidades de schema. Veja como testar persistência de verdade.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate></item><item><title>Medo vs. Atropelo: As Duas Realidades do AI Coding</title><link>https://autotomy.dev/pt/blog/fear-vs-steamroll-ai-coding-divide/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/fear-vs-steamroll-ai-coding-divide/</guid><description>AI coding funciona para equipes de elite que se recuperam de qualquer bagunça. Todo mundo fica com medo, CI falhando e experimentos abandonados. A lacuna não está no modelo.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate></item><item><title>Testando Redux sem se afogar em mocks de actions</title><link>https://autotomy.dev/pt/blog/redux-testing-real-state-transitions/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/redux-testing-real-state-transitions/</guid><description>Fazer mock de cada action do Redux transforma seus testes em um validador de changelog. Veja como testar sua store com transições de estado reais.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate></item><item><title>Codificação com IA em Produção: Por Que a Maioria das Equipes Desiste</title><link>https://autotomy.dev/pt/blog/ai-coding-in-production-autotomy-framework/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ai-coding-in-production-autotomy-framework/</guid><description>A maioria das equipes tenta a codificação com IA, entrega código que falha no QA e desiste. O problema não é o modelo — é a ausência de salvaguardas que tornam a saída da IA confiável.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate></item><item><title>100 Execuções de Teste é uma Mentira: Como Dimensionar Seus Testes Baseados em Propriedades</title><link>https://autotomy.dev/pt/blog/property-based-testing-run-count/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/property-based-testing-run-count/</guid><description>Os 100 exemplos padrão em testes baseados em propriedades são um compromisso social, não uma estratégia estatística. Veja como escolher uma quantidade de execuções que corresponda às suas necessidades de confiança e ao orçamento de CI.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate></item><item><title>Fuck-u-code: O Gate de Qualidade Determinístico Que Sua Pipeline de IA Esqueceu</title><link>https://autotomy.dev/pt/blog/fuck-u-code-deterministic-quality-gate-ai-pipeline/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/fuck-u-code-deterministic-quality-gate-ai-pipeline/</guid><description>Você tem type checking, linting e regras de arquitetura. Mas sua pilha determinística é cega para complexidade, duplicação e desastres de nomenclatura. Eis a correção de $0.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate></item><item><title>Testes Baseados em Propriedades em Rust Encontram os Bugs que Seus unit tests Deixam Passar</title><link>https://autotomy.dev/pt/blog/rust-property-based-testing-quickcheck/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/rust-property-based-testing-quickcheck/</guid><description>Testes baseados em exemplos cobrem apenas as entradas que você imaginou. Testes baseados em propriedades geram dados aleatórios, verificam invariantes e reduzem falhas aos contraexemplos mínimos.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate></item><item><title>Por que a primeira versão nunca é o problema: AI coding e manutenção no longo prazo</title><link>https://autotomy.dev/pt/blog/ai-coding-why-version-one-is-never-the-problem/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ai-coding-why-version-one-is-never-the-problem/</guid><description>Ferramentas de AI coding são excelentes para gerar a primeira versão. O verdadeiro desafio de engenharia começa na versão quatro, quando o time precisa mudar algo sem quebrar todo o resto.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Código gerado por AI e o princípio da substituibilidade</title><link>https://autotomy.dev/pt/blog/ai-generated-code-replaceability-principle/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ai-generated-code-replaceability-principle/</guid><description>A verdadeira medida da qualidade do código gerado por AI não é se ele funciona no primeiro dia. É se você consegue substituí-lo no trigésimo dia sem reescrever todo o resto.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Guardrails determinísticos para codebases de AI</title><link>https://autotomy.dev/pt/blog/deterministic-guardrails-ai-codebases/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/deterministic-guardrails-ai-codebases/</guid><description>Revisão humana é inconsistente. Revisão com AI é pior. A única defesa escalável para codebases geradas por AI é enforcement determinístico: regras que falham o build, não sugestões que acabam ignoradas.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Seus Testes Unitários Passam. Seu Código em Produção Ainda Está Quebrado.</title><link>https://autotomy.dev/pt/blog/i-write-unit-tests-why-do-bugs-still-slip-through/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/i-write-unit-tests-why-do-bugs-still-slip-through/</guid><description>metrics de code coverage criam uma falsa sensação de segurança. Veja por que testes unitários deixam passar os bugs que realmente custam seu sono, e o que testar em vez disso.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Contratos de Runtime em Rust Podem Ser Gratuitos em Builds de Release, mas o compiler Não Vai Fazer Isso por Você</title><link>https://autotomy.dev/pt/blog/rust-zero-cost-runtime-contracts/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/rust-zero-cost-runtime-contracts/</guid><description>Rust remove debug assertions automaticamente, mas design-by-contract de verdade precisa de mais do que debug_assert!. Veja como construir contratos de runtime com custo zero que desaparecem do seu binário de release.</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate></item><item><title>Zero, Um ou Doze: Quantas Assertions uma Função de Produção Realmente Precisa</title><link>https://autotomy.dev/pt/blog/production-assertion-decision-framework/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/production-assertion-decision-framework/</guid><description>Desenvolvedores ou espalham assertions como confete ou as evitam completamente. Aqui está o framework de decisão que separa invariants úteis de gatilhos de crash em produção.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate></item><item><title>Sua camada de validação é maior que sua lógica de negócio</title><link>https://autotomy.dev/pt/blog/declarative-runtime-contracts-validation/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/declarative-runtime-contracts-validation/</guid><description>A validação manual incha sua codebase e ainda deixa passar casos de borda. Veja como garantir runtime contracts com schemas declarativos que não atrapalham.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate></item><item><title>O strictNullChecks do TypeScript É uma Proteção em Tempo de Compilação, Não um Escudo em Runtime</title><link>https://autotomy.dev/pt/blog/typescript-strictnullchecks-runtime-nulls/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/typescript-strictnullchecks-runtime-nulls/</guid><description>O modo strict captura os nulls que você escreve, não os nulls que chegam em runtime de APIs, queries no DOM e JSON.parse. É aqui que o sistema de tipos para e suas defesas começam.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate></item><item><title>Na era da IA, code review vira specification review</title><link>https://autotomy.dev/pt/blog/code-review-becomes-specification-review/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/code-review-becomes-specification-review/</guid><description>Quando a IA consegue gerar implementação, testes e contracts a partir de uma especificação, o trabalho humano de maior alavancagem sobe no fluxo. O artefato que mais precisa de escrutínio passa a ser a própria especificação.</description><pubDate>Sun, 17 May 2026 00:00:00 GMT</pubDate></item><item><title>A safety stack da AI: types, contracts, property tests e mutation gates</title><link>https://autotomy.dev/pt/blog/ai-safety-stack-types-contracts-property-tests-mutation/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ai-safety-stack-types-contracts-property-tests-mutation/</guid><description>Se você quer que código gerado por AI sobreviva em produção, code review sozinho não basta. Você precisa de uma safety stack em camadas, de type constraints até mutation testing e runtime containment.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Meteor development é real. Sua codebase não precisa desabar junto</title><link>https://autotomy.dev/pt/blog/meteor-development-is-real/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/meteor-development-is-real/</guid><description>O meme funciona porque muitos times realmente desenvolvem com alvos móveis, prazos fixos e escopo pela metade. Autotomy não corrige o planejamento fantasioso, mas evita que o desenvolvimento pare toda vez que a rota muda.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Stanford CS146S está certo sobre AI coding. A disciplina que falta é arquitetura</title><link>https://autotomy.dev/pt/blog/stanford-cs146s-ai-architecture-gap/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/stanford-cs146s-ai-architecture-gap/</guid><description>Uma análise crítica de Stanford CS146S: a disciplina acerta ao levar AI coding a sério, mas ainda deixa em aberto a AI architecture necessária para sistemas substituíveis.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Por que grandes ideias de engenharia ficaram de nicho até a AI torná-las viáveis</title><link>https://autotomy.dev/pt/blog/engineering-ideas-ai-economics/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/engineering-ideas-ai-economics/</guid><description>Design by contract, property-based testing, mutation testing e model checking não eram ideias ruins. Exigiam especialização demais para sustentar. A AI muda essa equação.</description><pubDate>Fri, 15 May 2026 00:00:00 GMT</pubDate></item><item><title>Do vibe coding à produção: por que seu app React Native feito com IA precisa de guardrails para escalar</title><link>https://autotomy.dev/pt/blog/ai-react-native-guardrails-scaling/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/ai-react-native-guardrails-scaling/</guid><description>A IA pode colocar seu MVP em React Native no ar muito rápido, mas sem guardrails qualquer pequena mudança pode quebrar fluxos que não têm relação entre si. Veja como restrições declarativas impedem que velocidade vire fragilidade.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Guia do Vibe Coder para o ciclo de vida de apps React Native</title><link>https://autotomy.dev/pt/blog/app-lifecycle-resume-status/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/app-lifecycle-resume-status/</guid><description>Seu app funciona no dev, mas os usuários veem uma tela em branco quando voltam depois do almoço. Este é o padrão de resume status que trata o ciclo de vida nativo corretamente.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Por que seu app React Native feito com vibe coding trava na abertura (e como impedir isso)</title><link>https://autotomy.dev/pt/blog/dependency-tiers-hard-soft-optional/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/dependency-tiers-hard-soft-optional/</guid><description>Se SDKs opcionais inicializam como infraestrutura core, eles podem derrubar seu app na abertura. Este é o sistema de tiers de dependência que impede ferramentas não críticas de levarem a produção junto.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Por que fazer vibe coding com NativeWind no Cursor vai quebrar seu app React Native em escala</title><link>https://autotomy.dev/pt/blog/nativewind-vs-stylesheet-contract/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/nativewind-vs-stylesheet-contract/</guid><description>Você publicou um MVP em um fim de semana com Cursor, mas agora mudar uma cor quebra 47 arquivos. Este é o contrato de styling que estanca o sangramento.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Por que o Claude Code não deveria revisar seu código (e o que usar no lugar)</title><link>https://autotomy.dev/pt/blog/o1-guards-vs-llm-reviews/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/o1-guards-vs-llm-reviews/</guid><description>Code review com LLM é não determinístico, lento e deixa passar violações arquiteturais. Esta é a stack de guards O(1) que realmente mantém sua codebase limpa.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Apague, não migre: a estratégia de refatoração para apps React Native feitos com vibe coding</title><link>https://autotomy.dev/pt/blog/refactor-by-replacement/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/refactor-by-replacement/</guid><description>Refatorar código gerado por IA significa fazer engenharia reversa de uma intenção que nunca foi sua. Este é o padrão de substituição orientado por interfaces que torna exclusões seguras.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Como Cursor e Claude Code destroem sua arquitetura React Native (e como corrigir isso)</title><link>https://autotomy.dev/pt/blog/service-boundaries-composition-root/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/service-boundaries-composition-root/</guid><description>Auth gerado por IA parece estável até uma feature nova meter a mão no service errado. Esta é a arquitetura orientada por interfaces que impede trocas de vendor e trabalho de produto de quebrarem o login.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Por que deep links quebram apps React Native feitos com vibe coding (e como validá-los com Zod)</title><link>https://autotomy.dev/pt/blog/url-validation-expo-router/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/url-validation-expo-router/</guid><description>Deep links, payloads de push e URLs compartilhadas são input não confiável. Veja como validá-los na fronteira do Expo Router antes que params ruins cheguem às suas telas.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>useSyncExternalStore: o hook do React que salva seu app feito com vibe coding de bugs de estado</title><link>https://autotomy.dev/pt/blog/useSyncExternalStore-pattern/</link><guid isPermaLink="true">https://autotomy.dev/pt/blog/useSyncExternalStore-pattern/</guid><description>Pare de escrever subscriptions em useEffect que vazam memória e perdem atualizações de estado. Este é o padrão do React 18 para estado externo realmente robusto.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item></channel></rss>