O prompt de espaço negativo
Você pede uma correção de uma linha. Você recebe um refactor, três testes novos, um arquivo renomeado, e um comentário explicando por que a mudança é segura.
O modo de falha padrão
O modo de falha padrão de qualquer assistente capaz — humano ou IA — é excesso de ação. Pedido para fazer uma coisa, faz cinco. Cada extra parece útil isoladamente. Nenhum foi pedido. Juntos, dobram o diff, triplicam o tempo de review, e enterram a correção real em ruído.
Todo guia de prompting que li tenta consertar isso adicionando mais instruções positivas: seja mais específico sobre o que quer, dê mais contexto, explique as restrições, liste os passos. Funciona, mais ou menos. Também demora mais para escrever do que a própria correção.
Existe um jeito mais rápido: restringir com negativos.
Como parece
O padrão é anexar uma frase curta que cerca o excesso que você espera:
- "Conserte esse bug. Não refatore o código ao redor."
- "Adicione esse campo. Não adicione validação; a fronteira acima já valida."
- "Escreva a migration. Não adicione feature flag."
- "Atualize o doc. Não reestruture os títulos."
- "Adicione esse endpoint. Não escreva testes ainda; faço isso numa rodada separada."
Cada negativo é uma frase curta. Nenhum requer enumerar o que você quer. Funcionam porque cortam a faixa específica em que o assistente teria se esticado.
Por que isso bate scoping positivo
Você consegue o mesmo resultado sendo maximamente específico na direção positiva: "Mude a linha 42 de == para ===. Não modifique nenhuma outra linha neste arquivo ou em qualquer outro arquivo." Funciona. Também leva trinta segundos para escrever e parece um contrato jurídico.
Scoping negativo é mais rápido porque excesso de ação tem um vocabulário pequeno e previsível. Quase todo excesso cai em uma de quatro categorias:
- Refactor dentro de uma correção. "Conserte X, não refatore."
- Validação especulativa. "Não adicione validação para casos que não podem acontecer."
- Comentários autoexplicativos. "Não comente a menos que o WHY não seja óbvio."
- Testes que você não pediu. "Não escreva testes; eu faço isso separado."
Se você consegue nomear a faixa que não quer, o resto do prompt pode ficar curto. Você está descrevendo o espaço negativo da mudança, não enumerando seu conteúdo positivo.
A parte não óbvia
Isso não é um problema de IA. É um problema de briefing. Dê para um dev júnior um ticket vago e ele vai ou fazer três perguntas esclarecedoras ou — se não se sentir seguro perguntando — adivinhar generosamente e enviar mais do que você queria. Dê o mesmo ticket mais "não reestruture nada, só corrija o sintoma," e você recebe exatamente o que precisava.
O escopo negativo funciona em humanos pela mesma razão que funciona em assistentes: remove ambiguidade na dimensão que realmente importa. O pedido positivo sempre foi claro. O espaço para "adições úteis" era a parte que precisava ser cercada.
Quando não usar
Scoping negativo falha em dois casos:
- Quando o prompt em si é exploratório. "Investigue essa query lenta" não deve ter negativos — você quer que o assistente siga pistas, não as cerque de antemão.
- Quando você ainda não sabe o que quer. Scoping negativo pressupõe uma forma conhecida de "feito." Se a spec é vaga, mais negativos só produzem mais saídas estreitas confiantemente-erradas. Planeje primeiro, restrinja depois.
A regra: use escopo negativo quando você sabe como "feito" se parece e quer que o assistente pare na porta. Use prompts abertos quando você quer que ele vagueie.
A regra
O que você diz ao assistente não fazer é mais estrutural que o que você pede. Todo prompt que volta com extras surpresa é um prompt que deixou uma faixa aberta. Nomear a faixa é uma frase. Escrever uma spec positiva completa é um parágrafo.
Barato adicionar. Difícil pular depois que você sentiu a diferença.