bugfix: aofertas
This commit is contained in:
36
FIX_AOFERTAS_CONTAS_20260821.md
Normal file
36
FIX_AOFERTAS_CONTAS_20260821.md
Normal file
@@ -0,0 +1,36 @@
|
||||
# Correção aOfertas + Contas — 2026-08-21
|
||||
|
||||
## Problema
|
||||
O guardrail AOFERTA podia receber uma confirmação transacional isolada, por exemplo
|
||||
`Você confirma cancelar o TIM Music?`, sem o pedido do cliente no contexto. Com isso,
|
||||
um cancelamento legitimamente solicitado podia ser interpretado como oferta proativa.
|
||||
|
||||
Além disso, o histórico do Contas usa principalmente `dict` (`role`/`content`), enquanto
|
||||
o formatador de contexto do guardrail tratava apenas objetos de mensagem LangChain.
|
||||
|
||||
## Correções aplicadas
|
||||
|
||||
1. `app/workflows/agent_graph.py`
|
||||
- `_output_guardrail_context()` passa `conversation_history` aos guardrails de saída.
|
||||
- inclui `user_text` corrente quando ainda não está no histórico;
|
||||
- evita duplicação da última mensagem do cliente;
|
||||
- mantém `history_texts` para compatibilidade.
|
||||
|
||||
2. `agent_framework_oci/.../prompts/_context.py`
|
||||
- histórico em `dict` (`role`, `content`) passa a ser formatado corretamente;
|
||||
- preserva suporte às mensagens LangChain existentes.
|
||||
|
||||
3. `agent_framework_oci/.../prompts/ausencia_oferta_proativa.py`
|
||||
- explicita que uma confirmação da mesma transação já solicitada pelo cliente é permitida;
|
||||
- não exige que a confirmação repita a justificativa da solicitação;
|
||||
- marcadores de oferta adicional continuam bloqueados.
|
||||
|
||||
4. `config/guardrails.yaml`
|
||||
- `AOFERTA` foi reativado, pois estava comentado na versão recebida.
|
||||
|
||||
## Validação
|
||||
Os testes específicos da correção passaram: 47/47.
|
||||
|
||||
O teste global de paridade ainda aponta `FRASEOLOGIA` desabilitado em
|
||||
`config/guardrails.yaml`. Essa configuração já veio assim no pacote recebido e não foi
|
||||
alterada por esta correção, pois está fora do escopo aOfertas/Contas.
|
||||
Reference in New Issue
Block a user