O Harness, o SDD e o Vibe-Coding: uma abordagem de engenharia
Infraestrutura como contrato: o Harness contendo a entropia da automação Mover um software além da fase “mashup” exige substituir a intuição por uma governança de engenharia rígida. No cenário atual, onde agentes de IA escrevem linhas de código em segundos, o papel do engenheiro muda de forma drástica. Em operações orientadas por modelos de linguagem, o gargalo deixa de ser a velocidade de…
O Harness, o SDD e o Vibe-Coding: uma abordagem de engenharia
A automação de software está evoluindo rapidamente, com agentes de IA gerando linha de código em segundos. No entanto, esse progresso levanta novos desafios para os engenheiros de software. O papel do engenheiro muda de se confiar em intuição para garantir governança de engenharia rigorosa e controle de qualidade. O objetivo central é manter o sistema previsível, coerente e sustentável enquanto múltiplos ciclos de automação modificam e expandem a base de código de forma autônoma.
Um projeto estruturado foi realizado para testar essa abordagem, o Savage Worlds Dice Roller - uma extensão de navegador projetada para automatizar mecânicas de RPG no Google Meet. A ideia era rolar dados, enviar resultados no chat, controlar a iniciativa dos combatentes e sincronizar as rodadas. No entanto, o projeto se tornou um laboratório valioso para avaliar o impacto da Specification Driven Development (SDD), governança orientada por contratos, de um harness de validação local e do ecossistema github/spec-kit.
O desafio principal é evitar a "vibe coding", onde agentes de IA criam código plausível, mas estruturalmente insustentável. Eles operam sob a ilusão de plausibilidade local, ignorando a lógica do minimalismo arquitetônico e manutenibilidade de longo prazo. As regras de negócio bem estabelecidas e critérios objetivos de validação são essenciais para evitar esse ciclo de regressão silenciosa.
A escolha do Savage Worlds como motor de regras foi proposta, devido aos problemas complexos de modelagem matemática e gerenciamento de estado. A mecânica de dados é não linear, exigindo regras de Exploding Dice e cálculo de falhas críticas combinadas. O desafio legal de modelar um baralho completo de 54 cartas impulsiona a arquitetura para o controle de estados primitivos e persistência de descarte.
Para otimizar a eficiência e reduzir o tempo de feedback loop, foi adotado o Bun. Essa decisão permitiu validar o código localmente antes do commit, evitando decisões de design autônomas perigosas pelo agente de IA.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.