# ClientFlow v4.6.8 — Operational Safety Consolidation Esta versão consolida as proteções iniciadas em v4.6.5–v4.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: ```sql 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 ```bash PYTHONPATH=. python -m compileall app scripts tests PYTHONPATH=. pytest -q ```