Log de Atividades: Camada de Persistência e Orquestração SDR
Data: 19 de Abril de 2026
Contexto: Conclusão da infraestrutura de dados e início do motor de IA.
1. O que foi feito
- Camada de Persistência Finalizada (Beanie/MongoDB):
- Padronização de IDs: Migração para
UUIDem todos os modelos para garantir compatibilidade com sistemas externos. - Implementação de Repositórios: Criação das classes de acesso a dados para
Tenant,Professional,Service,CustomereAppointment. - Testes de Integração: Cobertura completa das operações CRUD e buscas especializadas utilizando
mongomock_motor.
- Padronização de IDs: Migração para
- Início da Orquestração SDR com LangGraph:
- Definição do
SDRState: Implementação doTypedDictpara gerenciar o estado da conversa, histórico e metadados de agendamento. - Estrutura Base do Grafo: Criação do arquivo
sdr_graph.pycom nós stub (router,booker,calendar_sync) para orquestração futura. - Exportação Centralizada: Configuração do
src/amon_claw/infrastructure/llm/agents/__init__.pypara facilitar o acesso ao grafo.
- Definição do
- Qualidade e Refatoração:
- Linting: Aplicação de regras do
ruffem todo o projeto. - Organização de Imports: Limpeza e ordenação de dependências para evitar circularidade.
- Linting: Aplicação de regras do
2. O que tem para fazer (Próximos Passos)
- Lógica dos Micro-Agentes: Implementar os nós reais do grafo utilizando
Pydantic AIpara chamadas de LLM estruturadas. - Ferramentas (Tools): Criar as ferramentas que permitirão aos agentes consultar os repositórios de dados (ex:
check_availability,list_services). - Roteamento Condicional: Desenhar a lógica de transição entre nós baseada na intenção do usuário (ex: dúvidas vs. agendamento direto).
- Integrações Externas: Configuração dos conectores para Google Calendar e Evolution API.
3. O que tem para melhorar
- Tratamento de Erros: Adicionar nós de erro (
Error Nodes) no grafo para lidar com falhas de API ou entradas inválidas de forma elegante. - Documentação Visual: Incluir diagramas Mermaid no PRD para facilitar a visualização do fluxo de estados do SDR.
- Otimização de Consultas: Refatorar a lógica de disponibilidade para minimizar chamadas repetitivas ao banco de dados durante um único turno de conversação.
Nota: Este log documenta a transição entre a fase de infraestrutura pura e o desenvolvimento das capacidades cognitivas do assistente.