mirror of
https://github.com/hoshikawa2/compass_backoffice.git
synced 2026-07-09 22:04:20 +00:00
1.1 KiB
1.1 KiB
Correção: extração de CPF/CNPJ/protocolo em texto livre
Problema
Mensagem como:
consultar dados do cliente cpf 169.323.728-86
não preenchia BusinessContext.customer_key, porque o IdentityResolver do framework resolve campos estruturados do payload/contexto, mas não extraía identificadores digitados livremente no texto.
Ajuste
Adicionado:
app/identity_extraction.py
com extração defensiva de:
- CPF
- CNPJ
- MSISDN com rótulo explícito
- protocolo/chamado/reclamação/ticket
Integração
app/main.py agora enriquece o payload antes de chamar o IdentityResolver:
payload = enrich_payload_with_text_identity(req.payload or {})
app/agents/backoffice_agent.py também usa a extração como fallback antes de chamar tools MCP, garantindo que customer_key e protocol_id sejam preenchidos quando vierem no texto.
Exemplo
Entrada:
{
"message": "consultar dados do cliente cpf 169.323.728-86"
}
Contexto extraído:
{
"customer_key": "16932372886",
"cpf": "16932372886",
"document": "16932372886",
"document_type": "cpf"
}