Hurl impede a deriva do vibe coding

O muro dos 3 meses


Se o seu app feito com vibe coding colapsou depois de 3 meses, se você está enfrentando drift onde a IA sobrescreve a lógica existente, se quer proteger contratos de API contra mudanças de código — Hurl e ratchet são a solução.

Voce constroi um SaaS com vibe coding. No inicio e rapido. “Faca login” – 30 segundos. “Adicione pagamentos” – 2 minutos. Um MVP sai em 3 semanas.

Tres meses depois, coisas estranhas acontecem. A IA “arruma” a logica de pagamento e muda silenciosamente o calculo de desconto. Adicionar um novo endpoint quebra a autenticacao existente. Voce pede refatoracao e os nomes dos campos da API publica mudam, matando todos os clientes.

Isso se chama deriva logica – a IA modificando involuntariamente a logica de negocios existente. Bugs de regressao existem no desenvolvimento tradicional tambem. Mas a deriva logica e diferente. Mudancas que o desenvolvedor nao pretendeu acontecem sem que ele perceba, em toda a base de codigo. Porque cada prompt comeca em uma nova janela de contexto.


Deriva em numeros

Isso nao e sentimento. Ha dados.

O preco da velocidade e complexidade. Uma equipe da Carnegie Mellon comparou 807 repositorios GitHub antes e depois da adocao do Cursor (MSR 2026). No primeiro mes, adicoes de codigo aumentaram 3-5x. Dois meses depois a vantagem de velocidade desapareceu. O que restou foi aumento de 30% em avisos de analise estatica e aumento permanente de 41% na complexidade do codigo. Liu et al. (2026) analisaram 302,600 commits de AI em 6,299 repositorios e encontraram que divida tecnica nao resolvida saltou de algumas centenas no inicio de 2025 para mais de 110,000 em fevereiro de 2026.

Nao ficou mais rapido – ficou mais lento. A METR realizou um ensaio controlado randomizado com 16 desenvolvedores experientes de codigo aberto (2025). Em projetos que conheciam bem, o grupo usando ferramentas de IA levou 19% mais tempo. Mas os desenvolvedores perceberam melhoria de 20% na velocidade. A diferenca entre percepcao e realidade foi de 39pp.

Estabilidade colapsa em escala. Segundo o relatorio DORA do Google (2025), para cada 25% de aumento na adocao de IA, a estabilidade de entrega de software diminui 7,2%.

Realmente colapsou. Amazon obrigou ferramentas de codificacao com IA em toda a empresa em 2025 e implantou 21,000 agentes. No mesmo periodo, aproximadamente 30,000 funcionarios foram demitidos. A combinacao resultou em 4 incidentes Sev-1 em 90 dias. Em 5 de marco de 2026, uma queda de 6 horas causou perda estimada de 6,3 milhoes de pedidos.


“Faca TDD” nao e a resposta

O estudo TDAD (arxiv 2026) testou isso com precisao com Qwen3-Coder 30B em 100 instancias SWE-bench Verified.

CondicaoTaxa de regressao
Linha de base (sem instrucao de teste)6,08%
Instrucao procedimental “faca TDD”9,94% (pior)
Fornecer arquivos de teste afetados como contexto1,82% (reducao de 70%)

Nao uma instrucao de “como testar”, mas um contrato de “o que deve passar”.


Hurl: contratos em texto simples

Hurl aplica o principio de Design by Contract de Meyer (1992) ao limite HTTP. Declara requisicoes HTTP e respostas esperadas em texto simples. Mantido pela Orange, binario Rust sem dependencias, 18,7k estrelas no GitHub.

# Login bem-sucedido
POST http://localhost:8080/api/auth/login
{
  "email": "test@example.com",
  "password": "secret123"
}
HTTP 200
[Asserts]
jsonpath "$.token" exists
jsonpath "$.user.email" == "test@example.com"

# Acesso sem autenticacao retorna 401
GET http://localhost:8080/api/pages
HTTP 401

Dois contratos. Login deve retornar 200 com token, acesso nao autenticado deve retornar 401. Quando a IA “arruma” a logica de autenticacao e 401 vira 200, o commit e rejeitado.


Por que Hurl

Testes unitarios verificam funcoes internas – acoplados estruturalmente a implementacao. Hurl fica no limite HTTP. Declara apenas requisicoes e respostas. Naturalmente independente da implementacao.

Testes unitariosHurl
Alvo de verificacaoInterno de funcoesContrato HTTP
Na refatoracao por IAMudam juntosInalterados
Deteccao de derivaCondicionalNatural
Dependencia de estruturaAltaNenhuma

O que Hurl verifica nao e codigo mas comportamento.


Trava de catraca

Quando um teste Hurl passa, trava. Isso e a catraca. Um teste Hurl travado e ratchet code — codigo deterministico que torna irreversivel um contrato de API aprovado. O agente deve refatorar preservando todo o comportamento existente. Alinhado com a descoberta do TDAD – nao instrucao procedimental, mas contrato concreto.


Funciona em legado tambem

Passo 1: Capture comportamento atual em Hurl. Passo 2: Conecte ao CI. Passo 3: Agora esta seguro.

Nao e obra de fundacao mas reforco antissismico. Reforcar o predio sem fechar a loja.


Nao e o fim do vibe coding, mas sua evolucao

Karpathy declarou em fevereiro de 2026: “A era do vibe coding acabou.” O novo paradigma e engenharia agentica. Storey (2026) teorizou divida cognitiva e divida de intencao. Arquivo Hurl e a externalizacao da intencao.

Um arquivo Hurl e um contrato. Nao mude o modelo. Adicione um contrato.


Artigos relacionados


Referencias

Changelog

  • 2026-05-22: Versão inicial