2.5 KiB
ClientFlow v4.9.28 — Reconciliação decisional e UI operacional
Esta versão constrói sobre a baseline estável v4.9.27.2 sem reintroduzir constraints únicas agressivas no arranque.
Objetivo
Transformar a reconciliação e a oportunidade numa experiência orientada à decisão:
- oportunidade = processo de compra comercial;
- documento Jasmin/Odoo = evidência/documento oficial ligado ao processo;
- task = próxima ação humana;
- reconciliação = decisão explícita sobre cada evidência.
Alterações principais
1. Reconciliation decision service
Novo ficheiro:
app/reconciliation_decision_service.py
Classifica itens e processos reconstruídos em buckets operacionais:
actionable -> ação recomendada
review -> requer revisão
historical -> histórico
ignored -> ignorado
resolved -> resolvido
A classificação é read-only e não cria constraints na base de dados.
2. Reconciliação com decisão explícita
A página /reconciliation passa a mostrar um resumo decisional:
Ação recomendada
Requer revisão
Histórico
Ignorados
Resolvidos
Cada item passa a mostrar também a decisão principal sugerida, por exemplo:
Ligar à oportunidade sugerida
Criar ou ligar oportunidade
Rever manualmente
Sem ação operacional
Foram adicionadas ações explícitas:
/reconciliation/{item_id}/needs-review
/reconciliation/processes/ignore
3. UI da oportunidade orientada à operação
A página da oportunidade passa a ter um bloco “Mapa operacional” com:
Cliente fiscal
Documento principal
Tasks
Decisão seguinte
As ações menos frequentes ficam em “Ações avançadas”.
4. Documentos Jasmin mais seguros
Quando a oportunidade já tem documento Jasmin atual, a UI deixa de apresentar “Associar e importar” como ação equivalente. Passa a mostrar “Substituir atual”, evitando duplicados acidentais.
O botão “Converter em fatura” só fica ativo se existir orçamento/pró-forma elegível.
5. Tasks com contexto reforçado
A task detail passa a repetir no painel de próxima ação os chips de fila, estado e prioridade para reforçar o contexto operacional.
Segurança de deploy
Esta versão mantém a regra da v4.9.27.2:
Não criar índice único forte no arranque sobre dados legados.
A consistência de “documento principal” é tratada pela aplicação e pela UI, não por constraint nova que possa bloquear o arranque.
Validação
203 passed