# ClientFlow v4926.8 — UI maintenance actions

Esta versão consolida as correções v4926.6/v4926.7 e adiciona ações de manutenção diretamente na UI da oportunidade.

## Incluído

### 1. Reimportar detalhes Jasmin pela UI

No painel **Documentos Jasmin** foi adicionado o botão:

- `Reimportar detalhes`

A ação chama:

- `POST /opportunities/{opportunity_id}/jasmin/reimport-details`

E executa o mesmo motor validado pelo script de backfill:

- documentos comerciais
- linhas do documento
- produtos/linhas da oportunidade
- valor total da oportunidade
- product_interest

A importação é idempotente e atualiza linhas já existentes com preço zero.

### 2. Serviço reutilizável de backfill Jasmin

Novo módulo:

- `app/jasmin_backfill_service.py`

Função principal:

- `backfill_jasmin_opportunity_details_async(...)`

O objetivo é deixar de depender apenas do terminal para corrigir oportunidades antigas criadas a partir de reconciliação Jasmin.

### 3. Limpeza de identidade fiscal inválida pela UI

No bloco técnico de identidade extraída foi adicionado o botão:

- `Limpar identidade inválida`

A ação chama:

- `POST /opportunities/{opportunity_id}/email-identity/cleanup-invalid`

E remove/corrige estado antigo causado por tokens inválidos como:

- `pt`
- `com`
- `net`
- `www`
- domínios isolados

### 4. Serviço reutilizável de cleanup de identidade

Novo módulo:

- `app/email_identity_cleanup_service.py`

Função principal:

- `cleanup_invalid_email_identity_state(...)`

Rejeita sugestões inválidas e corrige `email_identity_extractions.company_mentions` quando já estavam guardadas antes dos filtros novos.

## Como testar

### Reimportar Jasmin pela UI

1. Abrir uma oportunidade com documento Jasmin.
2. Ir ao painel **Documentos Jasmin**.
3. Clicar **Reimportar detalhes**.
4. Confirmar que documentos, produtos e valor ficam preenchidos.

### Limpar identidade fiscal antiga

1. Abrir uma oportunidade com identidade antiga inválida.
2. Ir ao painel técnico.
3. Clicar **Limpar identidade inválida**.
4. Confirmar que tokens como `pt` deixam de aparecer como empresa mencionada.
