Metodologia de limpeza: regras, padrões e limites
O que o limpador local faz
O limpador local do HumanFlow transforma texto com regras determinísticas de caracteres e padrões. Com a mesma entrada, o mesmo conjunto de regras habilitadas e as mesmas opções de travessão, o mecanismo produz a mesma saída e a mesma lista ordenada de alterações; ele não pede a um modelo de linguagem que infira o sentido. Cada alteração registra o ID e a categoria da regra, os intervalos de origem e saída, o valor removido, o valor de substituição, informações Unicode relevantes e se a regra é considerada destrutiva.
Os padrões seguros visam artefatos de formatação que normalmente não expressam palavras: controles ocultos compatíveis, espaços inseparáveis, tabulações, espaços horizontais repetidos, espaços no fim da linha e linhas em branco em excesso. Regras opcionais podem alterar Markdown ou pontuação e, por isso, começam desativadas no limpador geral de texto com IA.
Registro de regras
Os padrões desta tabela vêm do registro de regras do mecanismo. Predefinições de página podem substituí-los; os padrões efetivos da página inicial e das ferramentas especializadas em cada localidade aparecem na tabela inserida abaixo.
| ID da regra | Padrão do mecanismo | Risco | Comportamento implementado |
|---|---|---|---|
hidden-unicode | Ativada | Mais segura, ainda requer revisão | Remove controles C0/C1 compatíveis, caracteres de largura zero, marcas direcionais, word joiner e BOM; preserva quebras de linha comuns e tabulações. |
normalize-nbsp | Ativada | Mais segura, ainda requer revisão | Substitui U+00A0 NO-BREAK SPACE por U+0020 SPACE. |
normalize-tabs | Ativada | Mais segura, ainda requer revisão | Substitui caracteres de tabulação por espaços comuns. |
collapse-spaces | Ativada | Mais segura, ainda requer revisão | Reduz sequências de espaços horizontais repetidos ou NBSP a um espaço comum. |
trim-trailing-whitespace | Ativada | Mais segura, ainda requer revisão | Remove espaços e tabulações no fim das linhas. |
collapse-blank-lines | Ativada | Mais segura, ainda requer revisão | Reduz sequências com mais de uma linha em branco a uma linha em branco. |
remove-markdown-headings | Desativada | Destrutiva | Remove os sinais de cerquilha no início de títulos Markdown, preservando o texto do título. |
remove-markdown-emphasis | Desativada | Destrutiva | Remove marcadores de ênfase com asteriscos. |
remove-markdown-code-fences | Desativada | Destrutiva | Remove linhas de cercas de código com três crases, preservando o conteúdo cercado. |
remove-markdown-links | Desativada | Destrutiva | Substitui um link Markdown em linha pelo texto âncora visível e descarta o destino. |
normalize-smart-quotes | Desativada | Destrutiva | Substitui aspas tipográficas simples e duplas por aspas ASCII. |
replace-em-dash | Desativada | Destrutiva | Substitui U+2014 pelo hífen, espaço, ponto ou saída vazia selecionados. |
replace-en-dash | Desativada | Destrutiva | Substitui U+2013 de forma independente pela saída selecionada. |
“Mais segura” não significa adequada a todos os documentos. Tabulações e espaços repetidos podem representar recuo de código ou alinhamento de tabelas; conectores de largura zero e marcas direcionais podem ter significado em textos multilíngues. Cada regra pode ser selecionada separadamente, e Desfazer restaura a entrada original mantida no estado do navegador.
Sobreposições e ordem das alterações
O mecanismo primeiro reúne edições propostas sobre o texto original, ordena-as pela posição de origem e prioridade da regra e rejeita edições de prioridade inferior que se sobreponham. Em seguida, constrói a saída da esquerda para a direita e registra os intervalos de saída após cada substituição aceita. Isso impede que várias regras habilitadas editem duas vezes o mesmo trecho de origem e mantém estáveis os intervalos de origem para revisão.
Por exemplo, uma sequência de espaços inseparáveis pode corresponder tanto à regra de espaços repetidos quanto à regra de NBSP individual. O mecanismo aceita a substituição da sequência, de prioridade mais alta, e ignora as substituições sobrepostas de caracteres individuais. Assim, relata uma transformação para esse trecho de origem, em vez de alterações contraditórias.
Exemplos reproduzíveis
O corpus de testes do repositório inclui entrada vazia, prosa limpa, Unicode misto, Markdown, pontuação, texto multilíngue, código, JSON e um documento determinístico extenso. Outros exemplos verificam intervalos exatos de origem e saída, identificação nomeada de U+200B, normalização de tabulação, preservação do conteúdo de cercas de código, preservação do texto âncora de links Markdown e cada predefinição de ferramenta especializada.
Um exemplo mínimo é A[U+200B]B[U+00A0]C. Com os padrões seguros, a saída esperada é AB C. Uma frase limpa com aspas tipográficas e travessão permanece idêntica byte a byte porque as regras de pontuação estão desativadas. Um título Markdown também permanece intacto com os padrões seguros; o removedor específico de formatação habilita deliberadamente sua predefinição Markdown.
Políticas de ferramentas especializadas
As quatro ferramentas específicas compartilham o mesmo mecanismo em vez de reimplementar transformações:
- Remover formatação do ChatGPT habilita regras Markdown e de espaços e inclui tratamento de cercas de código e links.
- Removedor de caracteres invisíveis oferece apenas regras de Unicode oculto e NBSP, com evidências de pontos de código.
- Removedor de travessão oferece controles independentes para travessão e meia-risca e começa com a substituição do travessão por hífen selecionada.
- Corrigir espaçamento de IA oferece regras para NBSP, tabulações, espaços repetidos, espaços no fim da linha e linhas em branco.
Os testes automatizados de política exigem quatro assinaturas distintas de regras padrão, conteúdo exclusivo suficiente, um exemplo específico por página e uma alteração de saída ao processar o exemplo de cada predefinição. Isso evita publicar quatro ferramentas que só mudam o texto.
Limite de privacidade
A limpeza local é executada no navegador; um teste do código proíbe solicitações fetch com texto e ações de servidor no componente cliente. A lista permitida de eventos de análise contém apenas regras e totais agregados. O humanizador de IA é outro recurso e pode encaminhar o texto enviado pelo servidor a um provedor de modelos configurado. O verificador de padrões de escrita também funciona localmente, mas oferece sinais heurísticos, não conclusões de autoria. Consulte a privacidade do produto.
Limitações
O limpador não consegue determinar se um texto foi escrito por uma pessoa ou por um modelo. Não pode prometer remover marcas d’água estatísticas, melhorar posições em buscas, contornar detectores de IA ou preservar o sentido após toda alteração opcional de pontuação ou Markdown. Ele reconhece apenas os padrões documentados aqui. Markdown aninhado, sintaxe complexa de links, marcação personalizada, estilos de rich text e metadados de área de transferência específicos de aplicativos podem ficar fora desses padrões.
Valide código, JSON, tabelas, texto bidirecional e a composição tipográfica específica do idioma no aplicativo de destino. Diferenças visíveis e saída determinística permitem a revisão, mas não a substituem.
Versão e política de alterações
A versão atual do esquema do mecanismo de formatação local é 1. IDs de regras são valores estáveis de API usados por predefinições de página, listas permitidas de análise, testes e conteúdo de governança. Uma mudança de comportamento deve atualizar as expectativas dos testes e esta metodologia na mesma versão. Novas regras destrutivas devem começar desativadas. Remover ou renomear uma regra exige migração explícita, pois políticas salvas e registros centralizados de SEO podem referenciar esse ID.
Esta metodologia foi revisada pela última vez em relação à implementação do repositório em 2026-09-05. Datas futuras de revisão devem refletir uma auditoria real do código e da configuração, não um carimbo de data gerado automaticamente.
Regras padrão efetivas por página
A tabela reflete a configuração salva das páginas localizadas. O registro do mecanismo ativa seis regras de formatação e desativa sete regras de Markdown e pontuação; as predefinições de página podem substituí-las.
| Predefinição da página | IDs de regras ativas por padrão |
|---|---|
| Início | trim-trailing-whitespace, collapse-blank-lines |
| Remover formatação de IA | normalize-nbsp, normalize-tabs, collapse-spaces, trim-trailing-whitespace, collapse-blank-lines, remove-markdown-headings, remove-markdown-emphasis, remove-markdown-code-fences, remove-markdown-links |
| Remover caracteres invisíveis | Nenhuma |
| Remover travessão | replace-em-dash |
| Corrigir espaços de IA | normalize-nbsp, normalize-tabs, collapse-spaces, trim-trailing-whitespace, collapse-blank-lines |