# ClientFlow v4.7 — Refactor UI e Centro de Trabalho do Operador ## Objetivo A v4.7 reorganiza a UI administrativa sem alterar regras de negócio, schema da base de dados ou fluxo Chatwoot/auto-complete. A versão parte da v4.6.8 e foca-se em manutenção, clareza para o operador e redução do ficheiro `app/admin_dashboard.py`. ## Modelo operacional - **Chatwoot** = conversa e inbox. - **Centro de trabalho / Operations** = trabalho diário do operador. - **Oportunidades** = contexto comercial e próxima ação. - **Admin** = diagnóstico técnico, outbox, eventos, runs e comunicações internas. ## Alterações principais ### Navegação O menu principal fica focado no operador: - Dashboard - Centro de trabalho - Oportunidades - Clientes - Produtos - Encomendas - Financeiro - Integrações As áreas técnicas passam para o grupo **Admin**: - Tasks - Comunicações - Outbox - Eventos - Runs - Filas - System health - Configuração As rotas antigas continuam disponíveis por URL direto. ### Estrutura de código Foram extraídos módulos para `app/admin_ui/`: - `styles.py` — CSS da UI admin. - `navigation.py` — modelo e renderização da navegação. - `layout.py` — shell HTML comum. - `components.py` — componentes reutilizáveis, incluindo KPI cards. `app/admin_dashboard.py` mantém as rotas públicas, mas perde CSS/layout/nav embutidos e fica significativamente menor. ### Oportunidades Os cards de oportunidade com tarefas pendentes passam a expor a intenção operacional: - **Concluir tarefa pendente** quando existe trabalho humano aberto. - **Ver oportunidade** quando não há tarefas pendentes. Isto aproxima a board do conceito de centro de trabalho. ### Sem migração A v4.7 não requer migração de base de dados. ## Validação ```bash PYTHONPATH=. python -m compileall app scripts tests PYTHONPATH=. pytest -q ``` ## Rollback Como não há migração de DB, o rollback é reposição do diretório anterior e restart do serviço. ```bash sudo systemctl restart clientflow-api ``` ## Atualização v4.7.2 — Rotas por domínio A v4.7.2 move o registo das rotas administrativas para módulos por domínio em `app/admin_ui/pages/`, mantendo os URLs existentes e sem alterar regras de negócio. Módulos principais: - `dashboard.py` — página inicial. - `operations.py` — centro de trabalho. - `opportunities.py` — oportunidades, documentos comerciais e ações comerciais. - `tasks.py` — listagem, detalhe e ações de tasks. - `customers.py`, `products.py`, `orders.py`, `finance.py`, `integrations.py`. - `communications.py`, `outbox.py`, `events.py`, `runs.py`, `queues.py`, `system.py` para áreas técnicas/admin. Esta alteração não requer migração de base de dados.