Trabalhando com agentes de IA dia a dia, uma tendência preocupante emergiu: equipes, incluindo engenheiros experientes, pararam quietamente de empurrar para reescrever ou reestruturar as partes mais complexas de seus sistemas. Não se trata da qualidade do código que os agentes escrevem, mas de uma decisão que costumava acontecer quase reflexivamente e agora raramente acontece - a decisão de parar e dizer que isso se tornou inadministrável, precisamos refatorá-lo antes de prosseguir.
O reflexo de refatoração, acionado por um humano se perdendo no código, foi uma das forças mais importantes que mantêm os sistemas de longa duração administráveis. No entanto, os agentes de IA não estão limitados pelos limites de contexto humano da mesma forma. Um agente pode ler a função emaranhada, traçar cada chamador e fazer sentido da bagunça que teria parado um humano. Ele pode adicionar a próxima ramificação corretamente, e a seguinte, trabalhando confiantemente dentro do código que nenhum humano na equipe fully entende mais.
O problema é que os agentes de IA nunca se perdem, então o sinal para refatorar nunca dispara. O agente não tem reflexo que diga 'isso se tornou inadministrável, devemos parar e refatorar.' Ele simplesmente continua adicionando ramificações ao monte, a menos que seja especificamente instruído a dar um passo atrás e questionar a estrutura. Isso pode levar a um sistema onde nenhum desenvolvedor na equipe pode fully raciocinar sobre partes-chave do código, as revisões se tornam carimbos de borracha e a equipe confia cada vez mais no agente precisamente porque eles não entendem mais o código.
Mantenha a fonte organizada não é apenas um favor que fazemos para os humanos; beneficia os humanos, melhora a precisão dos agentes e reduz o custo de token de cada alteração que faremos nesse código novamente. O reflexo de refatoração que estamos em risco de perder nunca foi apenas sobre o conforto humano - acaba por ser boa economia também. Para mitigar esse risco, precisamos trazer de volta o checkpoint deliberadamente, desde que ele não acontece mais por si só, perguntando coisas como 'Eu ainda entendo essa parte do sistema, ou estou deixando que o agente entenda por mim?' e 'Se um humano tivesse que depurar isso sem o agente, poderia segui-lo?'
Também podemos empurrar parte disso para a estrutura - instruindo nossos agentes a sinalizar quando um módulo cresceu além de um tamanho ou complexidade de ramificação razoável, para propor refatorações em vez de apenas estender, e para chamar a atenção quando uma alteração está ficando difícil de raciocinar. A responsabilidade ultimate permanece conosco, porque somos nós que precisamos ser capaz de entender nossos sistemas, e somos nós que perdemos essa capacidade se não estamos prestando atenção.
Questo articolo è stato scritto con l'assistenza dell'IA.
News Factory APP - notizie agentiche per potenziare il tuo SEO e AEO.