A catraca da complexidade dos agentes de IA: por que 90% de cobertura de testes é obrigatório
(x.com/garrytan)A catraca da complexidade na era da codificação com IA (Complexity Ratchet) - resumo do ensaio de Garry Tan
Este é um texto que organiza a experiência de Garry Tan (CEO da Y Combinator) ao criar, no último ano, dois projetos open source junto com agentes de IA (Claude Code, Codex etc.), em um longo ensaio compartilhado no X. Segundo ele, cerca de 970 mil linhas de código e a maior parte de 665 arquivos de teste foram escritas por IA, enquanto ele operava simultaneamente 15 sessões de agentes. A partir desse processo, ele afirma que o antigo axioma da engenharia de software de que “velocidade e qualidade são mutuamente excludentes” foi quebrado, e apresenta como mecanismo central o conceito de “catraca da complexidade (Complexity Ratchet)”.
Conceitos centrais
- O que é uma catraca (Ratchet): uma metáfora para um mecanismo dentado que só se move em uma direção, significando uma estrutura que faz a qualidade da base de código avançar sem retroceder.
- Três acúmulos: em cada sessão de programação com agentes, três elementos se acumulam na base de código: testes (o que está certo), documentação (por que aquela decisão foi tomada) e resultados de avaliação (a linha de base da qualidade).
- Uso da janela de contexto: como o agente de IA lê esses três elementos na sessão seguinte, ele não pode quebrar os testes, ignorar a documentação ou reduzir a pontuação das avaliações.
Diferenças em relação ao método tradicional
- Mudança no modelo de erro: nos últimos 50 anos, a engenharia de software criou processos complexos como code review, QA e staging com base na premissa de que “erros são fatais e devem ser prevenidos”; agora, porém, a maioria dos erros pode ser diagnosticada e corrigida pelo agente no turno seguinte.
- Expansão do limite de complexidade: o teto da complexidade dos sistemas deixou de ser “a quantidade que uma equipe consegue manter na cabeça” e passou a ser “uma pessoa e os agentes com toda a base de código carregada no contexto”.
- Persistência da memória institucional: pessoas saem da empresa por desligamento ou burnout, mas o conhecimento preservado em testes e documentação pode ser recuperado novamente por qualquer modelo, em qualquer momento.
O significado de 90% de cobertura de testes
- Curva de qualidade não linear: segundo um estudo de Capers Jones com mais de 10 mil projetos, abaixo de 70% de cobertura a taxa de remoção de defeitos fica em 65~75%, mas entre 85~95% existe um “ponto de inflexão” em que ela salta para 92~97%.
- Precedente da indústria aeronáutica: o padrão de software aeronáutico DO-178C exige cobertura MC/DC para sistemas Level A (críticos), com o objetivo de alcançar uma taxa de remoção de defeitos superior a 99%.
- A IA quebrou a barreira de custo: completar os 20% finais de cobertura era um trabalho entediante e caro para humanos, mas agentes não sentem fadiga e podem escrever indefinidamente testes de edge cases até de madrugada.
Casos reais apresentados pelo autor
- Melhoria na precisão de extração do GBrain: em mais de 100 mil extrações de crenças, um problema que confundia em 35% dos casos “quem fez aquela afirmação” foi fixado com 17 testes, de modo que nenhuma versão posterior possa cair abaixo desse nível.
- Testes TTY do Superpowers: o agente de IA que pulava a revisão interativa foi diretamente monitorado e bloqueado com a funcionalidade de pseudo-terminal do Bun, transformando em teste até mesmo um requisito não tradicional como “a IA realmente conversou?”.
Vantagens e limitações
- Vantagens: mesmo que contribuidores externos não entendam todo o sistema, é possível fazer merge de PRs com segurança se os testes passarem, reduzindo a barreira de entrada para colaboração.
- Limitações: erros que destroem estado (migrações erradas de banco de dados, violações de segurança, vazamentos de privacidade) continuam sendo fatais, e cerca de 10% dos pontos de integração e da infraestrutura são intrinsecamente difíceis de testar.
- Resposta à objeção: à crítica de que “quem escreve bons testes também costuma projetar boa arquitetura”, ele enfatiza que o núcleo da catraca não é a pessoa, mas a rede de segurança do turno seguinte.
A principal mensagem que o autor quer transmitir é que o verdadeiro valor da programação com IA não está em “codificar mais rápido”, mas em ter tornado gratuito um nível de verificação que até agora era abandonado por ser caro demais. A cobertura de testes de 90%, que por 50 anos foi praticamente um privilégio dos setores de aviação e saúde, agora pode se tornar parte da rotina de uma única pessoa, e isso elevaria dramaticamente o teto de complexidade do software que um único desenvolvedor consegue construir. Ainda assim, o próprio texto também funciona como divulgação dos seus projetos open source (Superpowers, GBrain), e algumas citações estatísticas (por exemplo, GPT-5.5) exigem verificação, o que faz dele um texto que pede leitura crítica.
Ainda não há comentários.