Em quatro meses eu escrevi 670 questões de matemática para a plataforma. As regras que evitavam defeito existiam, mas viviam em conversas de chat e na minha memória. O console do banco tinha guardado tudo sem que ninguém planejasse: 506 comandos, com hora e resultado. Fui ler.
Acervo em 03/08/2026. Depois do lote novo são 739 questões ativas.
Cada questão passava por três modelos de IA diferentes, cada um com uma função. Um planejava o bloco. Outro escrevia as questões. Um terceiro revisava, de propósito um modelo diferente do que escreveu. Depois eu rodava o comando no banco e conferia na tela.
O fluxo existia e funcionava. O que não existia era registro: as regras que evitavam defeito viviam nas conversas, e cada conversa nova começava do zero.
As três inspeções do processo aconteciam depois da peça pronta. Nenhuma verificação durante a geração.
Os logos identificam as ferramentas usadas no processo. Não há vínculo, patrocínio ou endosso.
O editor que eu uso registra cada comando executado no banco: data, hora, o comando inteiro e quantas linhas afetou. Ninguém planejou isso como instrumentação. Mas é o rastro completo de como cada questão nasceu, foi corrigida ou descartada.
O instrumento é frágil. Em 04/08 o editor atualizou de versão e passou a escrever o log noutra pasta. A cópia congelada do estudo parou em 24/07. Se eu tivesse aceitado o primeiro resultado, teria concluído que a sessão nova não foi registrada.
Média do acervo: 81%. O lote novo entra na faixa, não acima dela.
Duas dessas não são defeito. Substituição integral e Classificação são trabalho planejado: troca deliberada de questão e mudança de taxonomia. Descontando as duas, o acerto sobe de 68,8% para 81%.
15 de maio, questão 454. O símbolo de "diferente" não renderizava. O registro fala sozinho:
Em catorze minutos, todas do mesmo desenho. Nenhuma tocou a matemática. É a questão mais retrabalhada do acervo inteiro.
A solução das 16:59 foi um contorno no dado, e virou regra em todos os prompts seguintes, por sete semanas. Até 04/07, quando uma linha entrou no código e resolveu a causa:
Defeito que reaparece em todo lote é candidato a correção no processo, não a mais uma linha na regra. Levei 50 dias para ver isso.
Evidências · questão id 454, 15/05, 7 comandos em 16 min · correção na causa em 04/07, commit b78b258 · id 305: 10 reescritas em 14 min, 30/04
Ao comparar o que estava escrito com o que o registro guardou, o padrão apareceu, e sempre na mesma direção.
"Nunca \text{} nas alternativas"
escopo declarado"Nunca usar \text{}"
escopo perdidoO escopo caiu na transcrição, e a regra passou a proibir o que está em produção. $\text{tg}(x)$ e $\text{sen}(x)$ são uso legítimo: itálico em nome de função é que seria errado.
"O comando \infty quebra a renderização, use unicode"
"Infinito sempre dentro do LaTeX: $+\infty$"
contextos diferentes"duas versões contraditórias da mesma regra"
chamado de reversãoAs duas frases estão no mesmo arquivo, as duas são instruções minhas. Não se contradizem. Falam de contextos diferentes: fora da fórmula, unicode; dentro, o comando.
Nas três vezes, a regra estava certa. Quem errou foi o registro, e sempre na mesma direção: tornando a regra mais absoluta do que ela era.
Nota de precisão · no terceiro caso (a regra permissiva que levou o gerador a aplicar escape duplo por segurança), o efeito está medido no banco, mas a citação original não pôde ser reconferida: o documento daquela versão não foi preservado. Relato com efeito verificado, não citação.
O processo tinha cinco etapas e três inspeções, todas depois da peça pronta. Escrevi as regras num só lugar, com escopo obrigatório em cada uma, e produzi um lote novo seguindo o que estava escrito. Cronometrado.
Cada regra passou a ter quatro campos obrigatórios:
"Onde vale" é o campo que faltava. Foi a ausência dele que fez três regras certas parecerem contraditórias. É o achado do bloco 04.
O gargalo nunca foi gerar a questão. Foi conferir na tela e atualizar o documento: 2 a 3 minutos por versão, cinco vezes.
Evidências · 70 questões, ids 863–932 · vazão 49,0 q/h (histórico: 53,4) · 0,19 correções por questão

\f como caractere de controle e comeu o começo. A alternativa D, que era texto puro, ficou perfeita. O defeito não é da questão, é do campo.
R$ dentro de um texto com fórmula. O cifrão do real abriu um delimitador de LaTeX e engoliu meia frase. Um caractere.

Que o processo melhorou. A série oscila e não sobe: 98 · 100 · 69 · 93 · 74 · 84 · 86 · 78 · 86. O lote novo (84%) fica acima da média e abaixo do melhor histórico (93%). Um lote não faz série.
Que lote menor dá melhor resultado. O lote de 210 tem n=1, foi o primeiro grande, e no mesmo dia dois assistentes rodaram em paralelo. Três variáveis confundidas.
Que o log viu tudo. Ele não vê correção feita no código, e não vê defeito interceptado antes de entrar no banco.
Um segundo lote, no público novo. O lote de 04/08 foi em terreno conhecido; o teste real é o fundamental, onde tudo é novo.
A taxa real de defeito na geração. O log só vê o que sobreviveu às inspeções. No lote novo, um defeito foi corrigido antes de entrar no banco e não aparece em lugar nenhum.
Quanto foi corrigido no código. Dois casos confirmados, nenhum dos dois gerou registro no banco.
Este estudo se corrigiu três vezes, e cada correção derrubou um número que eu já tinha escrito. O primeiro era 68,8% de acerto de primeira, com dois lotes catastróficos e uma boa história de aprendizado. Estava errado, e ficaria de pé se eu não tivesse ido conferir.
Não tenho anos de fábrica. Tenho um processo real que eu medi com instrumento próprio, e cujos números eu derrubei quando não se sustentaram. Documentar defeito impede que ele volte; mas só se a regra disser onde vale.