Quebrar texto de propósito, não por acidente
Texto sujo chega na própria agenda dele. O formulário que sobrevive a um copiar e colar de uma planilha, a saída de OCR com uma letra perdida a cada terceira palavra, o ticket de suporte com as linhas fora de ordem — pipelines topam com tudo isso mais cedo ou mais tarde. Este fluxo caminha na direção contrária, de propósito: pega um texto limpo que você controla e o danifica das formas que você escolhe, para que um parser, um corretor ou um experimento de leitura seja julgado contra dano documentado e não acidental. A diferença para despedaçar um arquivo num editor é a reprodutibilidade — uma corrupção que dá para regenerar é um ativo de teste, e uma que não dá é só um arquivo quebrado.
Frases antes de palavras, palavras antes de caracteres
Trabalhe do grão grosso ao fino. As ferramentas de frase reestruturam — filtre o corpus até as frases de que o experimento precisa, remova as que carregam ruído para o material, duplique frases para um antes-e-depois lado a lado e inverta frases para construir material espelhado. As ferramentas de palavra perturbam em seguida o vocabulário e a ordem sem tocar a estrutura — filtre quais palavras o parser deve tolerar, duplique palavras para exercitar o tratamento de repetições, inverta palavras para material tipo palíndromo e troque pares adjacentes para dobrar a sintaxe conservando cada palavra. O ruído por caractere chega por último e imita o mundo físico — as letras inseridas fazem vezes de dedos errados, as removidas de traços perdidos e os símbolos limpos de sujeira de scanner. Pular níveis produz dano barulhento mas vazio; um material embaralhado duas vezes e salpicado de símbolos aleatórios não prova nada em particular.
Aleatório não significa sem prestação de contas
As ferramentas aleatórias variam entre execuções, e esse é justamente o ponto — mas a magnitude precisa continuar descritível. Inseridores devem aumentar a contagem de caracteres ou palavras numa quantidade anunciada de antemão, removedores reduzi-la na mesma medida, e um embaralhamento mudar a ordem e nada mais. Anote as configurações de cada passada, e quando um teste exigir material estável, gere a cópia danificada uma vez e arquive-a junto ao original em vez de regenerá-la a cada execução. A ferramenta parceira para tudo isso é o diff — comparar a saída mutada com o arquivo intacto transforma "eu quebrei" em "aqui está exatamente o que quebrou, de propósito e nesta intensidade".
Onde este fluxo termina
As operações daqui mudam conteúdo e ordem, nunca a limpeza — remover linhas vazias, ordenar uma lista ou envolver valores entre aspas pertence aos fluxos de limpeza de listas e de envoltório com prefixos e sufixos, que preparam texto em vez de danificá-lo. As estatísticas que descrevem o resultado — contagens de palavras, caracteres e frequência de padrões — vêm do fluxo de análise de texto, e o diff em si do fluxo de comparação de arquivos e dados. A forense de caracteres Unicode suspeitos pertence ao fluxo de depuração de emoji e caracteres. Respeite essas fronteiras e esta página continua sendo uma coisa só: a corrupção deliberada e documentada de um texto que começou limpo.