← Módulos
Agenda & ocupação
Live no VPSCRM-1: agenda médico+paciente com salas/equipamentos como recurso de 1ª classe + máquina de estados + dashboard de ocupação.
CRM (design 07/2026)
modules/agenda.pyInterface parcial no Persana✓ Entregue
- Migration 022: clinic_resources + physician_schedules + appointments (RLS FORCE)
- Máquina de estados marcado → confirmado → realizado | faltou | cancelado | remarcado (CHECK no banco + lógica pura)
- Conflito de janela por médico e por sala/equipamento (409); slots vizinhos não colidem
- Remarcação cria appointment novo linkado (remarcado_para); bloqueio de agenda sem paciente
- Ocupação: read-model por médico e por recurso (horas ocupadas, faltas, cancelamentos)
- Briefing ligado: proxima_consulta agora é viva no GET /briefing
- Eventos audit appointment.* (comparecimento alimenta metas CRM-5)
- Tela Tinta /agenda (timeline do dia + heatmap de ocupação por recurso + semana por médico)
- Ligada ao endpoint real quando logado (dia + ocupação + recursos via proxy /api/poc)
○ Falta
- Marcação/remarcação interativa na tela (escrita já existe via API)
- Smoke e2e com credenciais demo (criar usuário médico de avaliação no POC)