# 2026-04-13 - Ativação da central de notificações em tarefas, chat, mailbox, metas e performance

## O que mudou
- Blindado o roteamento do target `Notifications` no `api_v3` em `includes/config/api_controller_overrides.php`, removendo a dependência implícita da ordem de varredura entre `Modules/Notifications` e `Modules/Social`.
- Expandido o catálogo em `src/Modules/Notifications/NotificationTypes.php` com novos tipos para `task_assigned`, `task_status_changed`, `mailbox_new_message`, `goal_alert`, `performance_badge_unlocked` e `performance_risk_detected`, permitindo preferências e canais por evento.
- Conectado `src/Modules/Tasks/Services/TasksService.php` ao módulo novo de notificações para avisar quando uma tarefa é atribuída, quando uma tarefa já nasce com responsável e quando o status muda.
- Conectado `src/Modules/Chat/Http/ChatController.php` para notificar os outros participantes quando uma mensagem é enviada, respeitando a área de destino (`cliente` ou `parceiro`) e apontando para a tela mais útil de leitura.
- Conectado `src/Modules/Mailbox/MailboxService.php` para avisar os usuários vinculados à conta quando o sync IMAP insere novas mensagens na mailbox.
- Integrado `src/Modules/Performance/Services/PerformanceService.php` com notificações de badges recém-conquistadas e risco de performance detectado quando o rebuild diário identifica entrada em estado crítico.
- Estendido `src/Modules/Metas/MetasService.php` com avaliação explícita de alertas baseados em `wpjy_metas_alerts`, incluindo resolução de destinatários por responsável, participantes e `recipients_json`.
- Atualizado `src/Modules/Metas/Http/MetasController.php` para permitir execução segura dos alertas por `progress` com `emit_alerts=1` ou pelo novo endpoint `alertsRun`.

## Observações
- Nesta etapa não foi necessário criar migration SQL, porque o trabalho reutilizou as tabelas já existentes da central de notificações e os cadastros de alertas de metas já presentes no banco.
- A execução de alertas de metas ficou explícita para evitar disparos duplicados em leituras normais de progresso; a emissão automática contínua pode ser ligada depois via cron/job dedicado.
- As notificações de risco em performance evitam repetição trivial usando a comparação com o snapshot do dia anterior antes de avisar sobre entrada em estado crítico.

## Validação
- `php -l includes/config/api_controller_overrides.php`
- `php -l src/Modules/Notifications/NotificationTypes.php`
- `php -l src/Modules/Tasks/Services/TasksService.php`
- `php -l src/Modules/Chat/Http/ChatController.php`
- `php -l src/Modules/Mailbox/MailboxService.php`
- `php -l src/Modules/Performance/Services/PerformanceService.php`
- `php -l src/Modules/Metas/MetasService.php`
- `php -l src/Modules/Metas/Http/MetasController.php`
