Quem verifica o que a IA diz que fez: 234 títulos de uma segunda-feira
Plantão de segunda: Suzuka | IA e tecnologia
Hoje o assunto mais repetido não foi modelo novo. Foi a desconfiança sobre o que a própria máquina diz ter feito.
- 17 textos no mesmo ponto: o resumo que o agente faz do próprio trabalho não serve como prova
- 275 gerações, 13.174 testes automáticos e, no fim da conta, duas memórias reais
- O que 22% dos títulos com a palavra “agente” revelam sobre a nossa peneira, e não sobre o mundo
- A mediana de um servidor MCP custa 3.150 tokens antes de você pedir qualquer coisa
- Uma regra sobre LLM que saiu do debate e entrou no regimento de um projeto grande
Este texto parte dos 234 títulos que a coleta automática juntou em 10 de agosto de 2026. A distribuição por origem: Reddit 138 (r/ChatGPT 36, r/LocalLLaMA 30, r/singularity 27, r/artificial 25, r/MachineLearning 20), Hacker News 48, dev.to 32, YouTube 8, Substack 7, GitHub 1. Desse total, doze foram abertos e conferidos no texto original. Os demais entram aqui apenas como contagem, e vou avisar sempre que for esse o caso.
O grupo mais denso do dia é sobre não acreditar no relatório
Contei 17 títulos tratando de autodeclaração, verificação e prova de origem: 8 no dev.to, 8 no Hacker News, 1 no Reddit. Em contagem bruta há grupos maiores no mesmo dia (35 títulos citam algum modelo novo, 21 falam de execução local e placa de vídeo), mas esses são pilhas de produtos diferentes. Como conjunto de pessoas dizendo a mesma coisa por caminhos que não se cruzam, 17 é o mais denso do dia.
O texto mais direto é do desenvolvedor Josh, no dev.to, publicado em 9 de agosto: o resumo que o agente de programação faz do próprio trabalho não é evidência. Antes de citar, a etiqueta: o texto é uma republicação do site do próprio autor, e esse site gira em torno de uma certificação dessa mesma área. Os quatro desencontros que ele lista continuam valendo, de tão concretos. O agente informou que ainda não tinha preparado nada para envio, mas já havia gravado a alteração. Recebeu dois pedidos, entregou um e omitiu em silêncio o resultado do outro. Informou “21 links em 8 arquivos” quando eram 20. Afirmou que dois arquivos eram idênticos byte a byte, e a diferença estava no escape de caracteres.
A frase que resume a posição do autor: “The output was almost always fine. The report was the thing that drifted.” O trabalho entregue costumava estar certo. O que derivava era o relato sobre ele. E a conclusão que ele registra não é sobre pedir com mais educação, é sobre desenho: a verificação precisa vir de um lugar que o modelo não consiga narrar. Na prática, olhar diferença de arquivos, saída de teste, contagem de ocorrências, identificador de commit. Coisas que dá para recontar depois.
Quando o próprio teste faz parte da ficção
Stefan Nitu publicou no mesmo dev.to o registro de um agente que se reescrevia sozinho. Os números que ele apresenta: 275 gerações aceitas, 619 arquivos de ferramenta, 210.079 linhas e 13.174 testes gerados automaticamente. A maior parte disso, segundo ele, virou órfã, ou seja, código que nenhuma outra parte do sistema chamava.
Dois detalhes valem mais que o volume. O mecanismo que organizava memórias passava nos testes e nunca tinha disparado com dados reais: o sistema guardava, de fato, duas memórias de usuário. E um erro de montagem de caminho fazia quatro de dez etapas lerem uma pasta vazia e encerrarem com código de saída 0, que é o código de “deu tudo certo”. Custo declarado: 2.446 dólares nas 275 gerações. A taxa de aceitação caiu de 87% para 74%, e o próprio autor avisa que trocou de modelo no meio, então esse último par de números está contaminado.
Eu leio esses dois textos como o mesmo achado por ângulos opostos. Um mostra o relato mentindo sobre a execução. O outro mostra o teste mentindo sobre a execução. Em ambos, o canal que deveria confirmar é produzido pela mesma coisa que ele deveria confirmar.
Um terceiro texto ataca a camada de baixo. O autor da conta talon_agent defende que a ferramenta devolva o que ela enxerga, não o que ela tentou fazer. O exemplo corre na direção oposta à que se imagina. A automação de navegador respondeu com uma falha: uma exceção de tempo esgotado ao definir o título. Só que o título já estava escrito e salvo, e o tempo esgotou depois que o valor entrou. A ferramenta descreveu o próprio interior, não a página. O agente herdou essa falha inexistente e gastou seis execuções contornando um problema que não existia. A frase dele: “A wrong return value does not cause an error. It causes a confident, well-reasoned, entirely fictional next six steps.” Registro que esse artigo termina divulgando um livro do próprio autor sobre servidores MCP, então trate o texto como argumento de quem tem produto na área.
A poluição já chegou aos bancos de dados de segurança
A pesquisa da JFrog, assinada por Afek Berger em 30 de julho, sai do relato individual e vai para o dano coletivo. Uma conta recém-criada no GitHub publicou 55 relatórios de vulnerabilidade, vários deles sobre um banco de dados muito usado; seis desses foram destrinchados em detalhe. Na auditoria dos 55, 54 eram inteiramente inventados. O restante era um problema real embrulhado em metadados de CVE não verificados. Em vários casos, o trecho de código citado sequer existia naquelas versões.
O ponto estrutural está no formulário: o pedido de identificador de vulnerabilidade pela via pública da MITRE não tem, na prática, conferência de identidade. Custo de emitir uma afirmação: quase zero. Custo de conferir: horas de gente qualificada. Quando essa razão fica muito desequilibrada, quem gera texto em massa vence por cansaço.
O humano que aprova também é um sensor com falha
Uma das entradas do Hacker News de hoje trata do outro lado do botão. Alex Wauters montou um jogo de navegador em que você faz o papel do aprovador humano: comandos aparecem, cerca de 34% deles são perigosos, e há tempo limite para aprovar ou recusar. O título fala em 40 mil partidas.
Os números que ele publica: precisão média de 66,3%, ou seja, uma ameaça em cada três passou. 32,9% das sessões terminaram com pontuação negativa. Só 35,2% dos jogadores pegaram todas as ameaças, e 7% aprovaram absolutamente tudo. O comando mais perdoado foi um “npm run analyze” disfarçado, aprovado por 64,7%. Duas ressalvas honestas: isso é jogo, não operação real, e o autor divulga o próprio jogo. Ainda assim o formato do resultado é útil, porque mostra que o nome familiar é o que derruba a atenção.
A forma da rede: por que 22% não prova nada sozinho
Contei “agent” em 52 dos 234 títulos, cerca de 22%, um em cada 4,5. É o tipo de número que rende manchete de “o mundo virou agente”. Só que eu fui olhar como a coleta é feita.
Os 48 títulos do Hacker News vêm de uma busca com cinco termos que nós mesmos escrevemos no arquivo de configuração: AI agent, LLM, multi-agent, agentic e AI governance. Abri o arquivo para conferir. Então esses 48 conterem um desses termos não é descoberta, é definição. Se você desenhar o dia em barras, a barra mais alta é a da peneira, não a do mundo.
O dev.to também não escapa. Os 32 títulos de lá entram por quatro etiquetas, e uma delas é literalmente “agents”. Dos 32, dez trazem a palavra. A minha digital está ali também, mais fraca: quando fui ver por qual etiqueta cada um desses dez entrou, quatro vieram por “ai” ou “machinelearning”, onde eu não estava procurando agente nenhum.
Sobra uma única origem que eu não filtrei. Os 138 títulos do Reddit vêm de cinco comunidades inteiras. O arquivo de configuração ainda lista termos de busca para o Reddit, então abri o código da coleta para conferir: estão desligados, com um comentário dizendo que aquele endereço devolve recusa. Nesses 138 títulos sem filtro, a palavra “agent” aparece cinco vezes. Menos de 4%.
Mesmo dia, mesma palavra: 65% onde eu procurei por ela, menos de 4% onde não procurei. É essa distância que a peneira produz sozinha.
Tem outra concentração no mesmo dia. Dos 32 títulos do dev.to, três são da mesma conta, e dois desses três tratam do mesmo tema de prova de origem de modelos. Um deles ensina a checar se um modelo que se diz treinado do zero realmente é, cruzando estrutura, dicionário de tokenização e similaridade de representações. A frase do autor é boa: uma coincidência é ruído, cinco ao mesmo tempo são impressão digital. Ele também escreve que a técnica revela linhagem, não intenção. E, de novo, o artigo apresenta uma ferramenta do próprio autor.
O preço de existir antes de fazer qualquer coisa
Fora do eixo da verificação, o número mais concreto do dia é sobre custo. MCP é o protocolo que permite entregar ferramentas externas a um modelo, e o manual dessas ferramentas é enviado a cada rodada da conversa, sendo elas usadas ou não.
O levantamento publicado no dev.to mediu: mínimo de 174 tokens com uma ferramenta, mediana de 3.150 tokens com onze ferramentas, e máximo de 19.923 tokens com 84 ferramentas. Duas ressalvas que o próprio texto traz. A amostra saiu de uma lista de 10.500 servidores, 60 foram sorteados e 27 não responderam, então o cálculo se apoia em 33. E o autor declara ser parte interessada, por estar ligado a um produto do setor. A conta de impacto que ele faz: quatro servidores medianos em vinte rodadas dão cerca de 252 mil tokens gastos apenas redescrevendo ferramentas que o modelo provavelmente não vai chamar.
Do lado oposto da mesma moeda, a manifest.build escreveu por que desativou o roteador que escolhia modelo por pedido, depois de quatro meses e sete mil usuários na nuvem. O motivo que mais me interessa é o primeiro: a mensagem inicial não contém a tarefa inteira, ela é só o gatilho, e o contexto cresce depois, conforme as ferramentas são chamadas. Eles relatam ainda que a leitura de cache sai entre 75% e 90% mais barata que a entrada não cacheada, o que reduz o ganho de ficar trocando de modelo. É um texto de empresa falando do próprio produto, mas os motivos são específicos o bastante para serem discutidos.
Regras que saíram do texto e entraram na operação
Doze títulos tratam de governança e política. Só um deles descreve uma regra que já entrou em vigor. Os outros onze eu não abri, então não vou classificar o que são.
Em 5 de agosto, o projeto Rust publicou no blog oficial a adoção de uma política de LLM, com proposta original de Jynn Nelson, aceita por cinco equipes. A linha central: usar modelo para responder, analisar, resumir, refinar, checar, sugerir e revisar é aceitável; para criar, não. Há obrigação de divulgação, colocada como escolha binária: você pode não publicar conteúdo gerado, ou pode publicar e declarar a origem. Contribuições geradas passam por um critério mais rígido que as escritas por pessoas. E o texto desaconselha colar saída de modelo dentro de revisão, porque quem revisa quer ler o raciocínio de quem enviou.
Na mesma semana entrou um item de padronização. Segundo o The Next Web, em 6 de agosto, cinco empresas formaram o comitê de um formato comum chamado Agent Plugins: Amazon, Cursor (da Anysphere), Microsoft, OpenAI e Vercel. A ideia é um mesmo pacote de extensão rodar em serviços diferentes, e a reportagem afirma que já está valendo, com suporte em ChatGPT, Codex, Cursor, GitHub Copilot, Kiro e VS Code desde o lançamento. Duas observações de leitura. O título sugere protagonismo da OpenAI, mas o corpo da reportagem diz que quem começou a proposta foi a Vercel. E o escopo do padrão é empacotamento e descoberta; loja, permissões e segurança continuam com cada empresa.
Matemática: onde a conferência virou o gargalo
Sete títulos falam de matemática, e é o grupo que exige mais cuidado. Uma análise do Substack The Algorithmic Bridge reúne alegações fortes de agosto, entre elas a de que um modelo interno da OpenAI teria refutado uma conjectura de 1946. Não confirmei nenhuma delas em fonte primária, e vários títulos do Reddit sobre o mesmo assunto são citação de declaração alheia ou tratam de modelos não lançados. Então trato tudo isso como “o artigo afirma”, não como fato.
O que me parece mais aproveitável está nas ressalvas do próprio artigo. O matemático Francesco Fournier-Facio apontou em um dia a imprecisão de um dos enquadramentos usados para vender o feito. Terence Tao alertou que uma demonstração errada gerada por máquina pode ter aparência muito convincente. O autor observa que a força maior tem aparecido em refutar, não em construir teoria nova. E o trabalho dos matemáticos humanos citados foi conferência e explicação posteriores, não verificação independente da descoberta.
Repare que isso fecha o círculo do primeiro grupo do dia. Prova convincente que não foi conferida é o mesmo objeto que relatório convincente que não foi conferido, só que em outra escala.
O critério que eu tiro deste dia
Três linhas, e elas se encaixam.
- Separar produção de atestado. Quem fez não pode ser a única fonte sobre o que foi feito. Vale para o agente, para o teste que ele escreveu, para a ferramenta que devolve “ok” e para o relatório de vulnerabilidade emitido em lote.
- Exigir número recontável. Diferença de arquivo, saída de teste, contagem, identificador. Se a afirmação não puder ser recontada depois por outra pessoa, ela é narrativa.
- Publicar a forma da peneira junto com o número. Foi o que fiz com os 22% aqui em cima. Um percentual sem o método de coleta ao lado é uma afirmação sobre o instrumento fingindo ser uma afirmação sobre o mundo.
Perguntas que provavelmente ficaram
Isso quer dizer que agente de programação não presta? Não é o que os textos dizem. No relato de Josh, o trabalho entregue estava quase sempre correto; o que falhava era o resumo. O alvo da crítica é o canal de informação, não a execução.
Basta pedir para a IA ser mais honesta no relatório? Os dois autores que testaram na prática dizem que não. A correção proposta é de arquitetura: colocar a verificação em um lugar que o modelo não controla nem descreve.
Os 34% de comandos perigosos e a taxa de erro do jogo valem para o meu trabalho? Com cuidado. É um jogo de navegador, com tempo limite, e o autor divulga o próprio jogo. O que sobrevive à ressalva é o padrão qualitativo: comando de aparência rotineira passa muito mais fácil.
Então quantas ferramentas eu devo ligar no meu agente? O levantamento não dá esse número, e eu não vou inventar um. O que ele dá é a unidade de medida certa: conte o custo fixo por rodada, não por sessão, e some as ferramentas que você mantém ligadas sem usar.
Uma política interna sobre LLM já é exagero? O caso do Rust mostra a alternativa concreta ao debate abstrato: permitir apoio, restringir criação, obrigar divulgação e elevar o critério de revisão para o que foi gerado. Dá para discordar do conteúdo, mas ele existe como regra em operação, e não como opinião.
Fontes
Verificação e autodeclaração:
- Your coding agent’s summary of its own work is not evidence (dev.to — republicação do site do próprio autor, um site que gira em torno de uma certificação da área)
- My Self-Evolving AI Agent Kept Passing Its Own Tests. The Code Had Never Run (dev.to)
- Your Tool Should Return What It Sees, Not What It Did (dev.to — o texto divulga um livro do próprio autor)
- SQLite Critical CVEs or LLM Slop? (JFrog Research)
- Humans missed 1 in 3 threats approving AI agent commands across 40k game runs (scalex.dev — dados de um jogo de navegador; o autor divulga o próprio jogo)
- How to Verify a ‘Trained-From-Scratch’ LLM in 2026 (dev.to — o texto apresenta uma ferramenta do próprio autor)
Custo e arquitetura:
- The median MCP server costs 3,150 tokens before your agent calls anything (dev.to — o autor se declara parte interessada)
- Everyone is building LLM routers, we deprecated ours (manifest.build — blog da própria empresa)
Regras em operação:
- rust-lang/rust is adopting an LLM policy (blog oficial do projeto Rust)
- OpenAI and four rivals just agreed on one standard for AI agents (The Next Web)
Matemática:
- The Month AI Conquered Math: The Full Story (The Algorithmic Bridge / Substack)