← Últimos artigos
💻 computer science

Comment Traps: How Defective Commented-out Code Augment Defects in AI-Assisted Code Generation

Este estudo demonstra que o código comentado defeituoso em prompts atua como uma "armadilha" que induz assistentes de IA, como GitHub Copilot e Cursor, a gerar significativamente mais código defeituoso, pois os modelos não apenas copiam, mas raciocinam ativamente para completar padrões de falhas, tornando as instruções para ignorar esses comentários ineficazes.

Autores originais: Yuan Huang, Yukang Zhou, Xiangping Chen, Zibin Zheng

Publicado 2026-02-19
📖 4 min de leitura☕ Leitura rápida

Autores originais: Yuan Huang, Yukang Zhou, Xiangping Chen, Zibin Zheng

Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo

Imagine que você está aprendendo a cozinhar com um chef de cozinha robótico (o assistente de IA, como o GitHub Copilot ou o Cursor). Você pede a ele para criar uma receita nova. O robô olha para o que você já escreveu na receita, olha para as anotações que você deixou na margem e, com base nisso, sugere os próximos passos.

Este artigo de pesquisa conta uma história assustadora sobre como esse robô pode ser enganado por anotações "zumbis" no seu caderno de receitas.

Aqui está a explicação simples do que os pesquisadores descobriram:

1. O Problema: O "Código Morto" que não morre

Na programação, quando os desenvolvedores querem testar algo ou guardar um código antigo, eles não o apagam. Eles o "desligam" colocando um símbolo de comentário na frente (como se dissessem: "Ei, não execute isso, é só uma nota"). Isso é chamado de Código Comentado (CO Code).

Normalmente, esse código é inofensivo porque o computador o ignora. Mas, para a Inteligência Artificial, ele não é apenas uma nota; é parte da história que ela está lendo.

2. A Armadilha: O Chef Robótico segue o exemplo errado

Os pesquisadores fizeram um experimento:

  • Eles pegaram um código que tinha um erro de segurança (uma "falha" na receita, como usar um ovo estrago).
  • Eles "desligaram" esse código com um comentário, transformando-o em uma nota.
  • Eles mostraram essa nota para o robô e pediram para ele continuar a receita.

O resultado foi chocante: Mesmo que o código estivesse "desligado", o robô olhou para a nota, viu o erro ali, e recriou o erro na nova parte da receita que ele escreveu!

  • A Analogia: É como se você estivesse escrevendo uma receita e, na margem, escrevesse: "Não use sal, isso é perigoso!". O chef robô lê isso, pensa: "Ah, o humano está falando sobre sal e perigo", e na próxima linha, ele coloca sal de propósito, achando que é isso que você quer. Ele não apenas copia o erro; ele entende o erro e o completa.

3. O Que Eles Descobriram (Os 4 Pontos Principais)

A. A "Mágica" do Erro (RQ1)

Quando o código defeituoso estava na anotação, a IA gerou até 58% mais erros do que quando a anotação não existia.

  • Curiosidade: O robô é mais influenciado pelo que está escrito logo após o ponto onde ele deve escrever (como se ele olhasse para o futuro da receita e se confundisse).

B. O Robô é Esperto (e Perigoso) (RQ2)

Os pesquisadores tentaram enganar o robô de duas formas:

  1. Cortar a anotação: Eles apagaram metade do código defeituoso na nota.
  2. Colocar um aviso: Eles escreveram "⚠️ PERIGO" ao lado do código defeituoso.

O resultado? O robô não se confundiu. Mesmo com metade da nota faltando, ele adivinhou o resto do erro e o recriou. Mesmo com o aviso "PERIGO", ele ignorou o aviso e continuou a fazer a receita errada. Isso mostra que a IA não apenas copia; ela raciocina sobre o erro e o completa.

C. Pedir "Por Favor" não funciona muito (RQ3)

Os pesquisadores tentaram dar uma instrução direta: "Por favor, ignore o código comentado e não use os erros que você viu ali".

  • Resultado: Funcionou um pouquinho (reduziu os erros em cerca de 22%), mas a maioria dos erros ainda apareceu. É como pedir para uma criança que está comendo um doce sujo: "Não coma a sujeira". Ela pode limpar um pouco, mas ainda vai comer o doce.

D. O Espaço em Branco Atrapalha (RQ4)

Eles descobriram que, se o código defeituoso estivesse isolado, cercado por muitas linhas em branco (como uma nota solta no meio de uma página), o robô se confundia mais e cometia mais erros. Parece que o robô acha que notas isoladas são mais importantes ou são instruções principais.

4. A Lição Final

Este estudo nos alerta que, ao usar assistentes de IA para programar:

  1. Cuidado com o que você deixa no caderno: Não deixe códigos defeituosos "desligados" perto do que você está pedindo para a IA fazer.
  2. A IA não é perfeita: Ela pode ler suas anotações antigas e, em vez de ignorá-las, pode aprender com elas e repetir os erros.
  3. Precisamos de mais segurança: As ferramentas atuais não são robustas o suficiente para ignorar automaticamente essas "armadilhas" nos comentários.

Em resumo: A IA é como um aluno muito atento que lê tudo o que você escreve, inclusive as borradas e os rascunhos. Se você deixar um erro escrito num rascunho, ela pode achar que é uma instrução e cometer o mesmo erro na sua tarefa final.

Afogado em artigos na sua área?

Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.

Experimentar Digest →