bugfix reconciliation extractor
This commit is contained in:
15
docs/FIX_CONTESTATION_RELATIONAL_RESOLUTION_20260907.md
Normal file
15
docs/FIX_CONTESTATION_RELATIONAL_RESOLUTION_20260907.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# Correção — resolução relacional de contestação
|
||||
|
||||
## Regra
|
||||
|
||||
`resolved_value` representa um valor efetivamente resolvido/validado para o `subject` da transação.
|
||||
Um valor apenas informado pelo usuário é `candidate_value` até a pré-validação autoritativa confirmar a relação `subject + valor` contra a evidência da fatura.
|
||||
|
||||
## Invariantes
|
||||
|
||||
1. Um valor divergente não é promovido a `resolved_value`.
|
||||
2. Se o mesmo subject aparece com vários valores na fatura, o subject sozinho não escolhe um valor arbitrário.
|
||||
3. Se dois produtos diferentes têm o mesmo valor, o valor não substitui um subject já identificado por evidência mais forte do usuário.
|
||||
4. Quando a pré-validação rejeita um parâmetro, ela pode declarar `clear_fields` para invalidar derivados dependentes; o framework aplica essa lista sem conhecer semântica de domínio.
|
||||
5. A extração do turno atual ocorre antes da reconciliação. A reconciliação pode canonicalizar o candidato, mas não apagá-lo antes da pré-validação.
|
||||
6. Somente uma validação relacional bem-sucedida promove o candidato a `resolved_value`.
|
||||
19
docs/FIX_RECONCILIACAO_REWORK_MINIMO_20260907.md
Normal file
19
docs/FIX_RECONCILIACAO_REWORK_MINIMO_20260907.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# Rework mínimo da reconciliação temporal — 2026-09-07
|
||||
|
||||
## Princípios
|
||||
|
||||
1. Extração do turno atual é uma etapa curta, sem histórico.
|
||||
2. Reconciliação temporal só roda se required fields continuarem faltando.
|
||||
3. Candidate estrutural só existe quando há um único evidence block ancorado por parâmetro conhecido.
|
||||
4. Candidate estrutural nunca é resolved; exige pre-validation configurada.
|
||||
5. Não existe fallback baseado apenas em uma fala histórica única.
|
||||
6. A pre-validation/CVAL é a autoridade para canonicalização e relação subject+valor.
|
||||
7. Intent shift genérico não encerra transação ativa; abandono explícito pode encerrar e rerotear.
|
||||
|
||||
## Cenário 08
|
||||
|
||||
Mensagem atual -> valor 14.99 (current-only extraction) -> histórico ancorado -> candidate subject -> CVAL -> subject canônico -> confirmação.
|
||||
|
||||
## Cenário 16
|
||||
|
||||
Subject preservado -> valor 25.50 candidato -> CVAL rejeita relação -> valor continua pendente -> valor 19.99 -> CVAL valida relação -> confirmação. Uma fala como "isso mesmo, pode cancelar" permanece na transação; abandono explícito como "esquece isso, quero ver minha fatura" pode rerotear.
|
||||
Reference in New Issue
Block a user