Bug crítico – Falha na aplicação do motor de regras de categorização automática

Estou registrando novamente um bug relacionado ao mecanismo de regras de categorização automática, pois o problema persiste e continua impactando diretamente a confiabilidade da automação.

Atualmente, o sistema reconhece a existência de determinada regra de categorização — inclusive bloqueando a criação de uma nova regra com os mesmos critérios por violação de unicidade — o que demonstra que a regra está corretamente persistida na base de dados. No entanto, o motor de categorização não está aplicando essa regra às novas transações importadas.

No caso específico, existe uma regra ativa configurada com o critério “Descrição contém PAYGO”, associada à categoria “Alimentos e bebidas”. A regra foi criada corretamente, permanece visível no painel de gerenciamento e o sistema confirma sua existência ao impedir a criação de outra regra idêntica. Contudo, transações recentes cuja descrição contém “PAYGO” continuam sendo classificadas como “Saúde e bem-estar”, contrariando explicitamente o critério definido pelo usuário.

Esse comportamento evidencia uma dissociação entre a camada de persistência das regras (rule storage) e o pipeline de processamento responsável pela categorização das transações. A interface indica que a regra existe e está ativa, porém o mecanismo de avaliação não a aplica durante o processamento das novas entradas.

Tecnicamente, o cenário sugere uma falha na integração entre o rule engine e o fluxo de ingestão/importação das transações. Entre as hipóteses técnicas plausíveis estão:

  • As regras estão sendo armazenadas corretamente, porém não estão sendo consultadas no momento da execução do motor de categorização.

  • Existe conflito de precedência entre regras definidas pelo usuário e o algoritmo de categorização padrão, com possível sobrescrita posterior.

  • O motor de categorização pode estar sendo executado antes do carregamento ou sincronização das regras personalizadas.

  • Pode haver falha na normalização da string da descrição (case sensitivity, trim, encoding, caracteres invisíveis ou variações textuais).

  • O processo de importação não está disparando reavaliação das regras já existentes.

  • Pode existir job assíncrono de recategorização que esteja sobrescrevendo a classificação aplicada pela regra.

O comportamento esperado é determinístico: regras ativas definidas pelo usuário devem ter precedência sobre qualquer categorização automática padrão e devem ser aplicadas de forma consistente a todas as transações que satisfaçam o critério estabelecido.

Adicionalmente, caso haja conflito ou impossibilidade de aplicação, o sistema deveria fornecer feedback explícito ao usuário, ao invés de aparentar funcionamento normal enquanto ignora silenciosamente a regra configurada.

O problema é recorrente, ocorre com diversas transações e não apenas com o caso citado. Isso obriga recategorização manual constante, gera retrabalho e compromete significativamente a confiança no mecanismo de automação.

Solicito, portanto, verificação detalhada da integração entre:

  • camada de persistência das regras (rule storage layer);

  • engine de avaliação das regras (rule engine);

  • fluxo de ingestão/importação de transações;

  • ordem de execução do processamento automático;

  • lógica de precedência entre regras do usuário e categorização padrão;

  • eventuais processos assíncronos de recategorização.

Adicionalmente, seria altamente recomendável disponibilizar um mecanismo de reprocessamento manual das regras para transações já importadas, permitindo reaplicar as regras vigentes em lote, caso o motor não esteja aplicando corretamente no momento da ingestão.

A funcionalidade de regras automáticas é essencial para organização financeira eficiente. No estado atual, não está operando de maneira confiável nem determinística, o que compromete sua utilidade prática.

Votantes
Status

Clint Review

Quadro
🐞

Bug

Data

Há 15 dias

Autor

annaeduarda

Inscrever-se na postagem

Ser notificado por email quando houver alterações.