Files
clientflow_backend/docs/CLIENTFLOW_V468_OPERATIONAL_SAFETY_CONSOLIDATION.md
2026-06-09 22:55:58 +01:00

1.5 KiB
Raw Blame History

ClientFlow v4.6.8 — Operational Safety Consolidation

Esta versão consolida as proteções iniciadas em v4.6.5v4.6.7 e prepara o caminho para v4.7/v4.8.

1. Auto-complete com política hard-deny

Mesmo que CHATWOOT_AUTO_COMPLETE_ACTION_CODES seja configurado manualmente, estas ações não são fechadas por mensagem outgoing:

  • CONFIRM_PAYMENT
  • CONFIRM_PAYMENT_AND_PREPARE_SHIPMENT
  • MARK_NO_INTEREST
  • REVIEW_MANUALLY
  • PREPARE_ORDER
  • CREATE_SHIPMENT
  • REMOVE_FROM_LIST

O default fica limitado a ações em que responder no Chatwoot é a execução da tarefa:

  • SEND_INFO
  • SEND_QUOTE
  • SEND_PROFORMA
  • SEND_INVOICE
  • SUPPORT

2. Outbox com claim transacional

scripts/process_outbox.py passa a usar claim_pending_outbox().

O worker marca linhas como processing dentro da mesma transação, usando:

FOR UPDATE SKIP LOCKED

Isto reduz o risco de dois workers processarem a mesma ação externa.

3. Health operacional

/api/internal/system/health passa a expor métricas operacionais:

  • tasks pendentes
  • tasks concluídas nas últimas 24h
  • auto-completes nas últimas 24h
  • tasks com oportunidade ambígua
  • outbox em processing
  • outbox processing stale
  • outbox failed/blocked
  • configuração efetiva do auto-complete Chatwoot

4. Navegação mais limpa

/tasks continua disponível para diagnóstico/listagem, mas sai da navegação principal. A entrada diária recomendada é /operations.

Validação

PYTHONPATH=. python -m compileall app scripts tests
PYTHONPATH=. pytest -q