Pular para conteúdo

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 UUID em 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, Customer e Appointment.
    • Testes de Integração: Cobertura completa das operações CRUD e buscas especializadas utilizando mongomock_motor.
  • Início da Orquestração SDR com LangGraph:
    • Definição do SDRState: Implementação do TypedDict para gerenciar o estado da conversa, histórico e metadados de agendamento.
    • Estrutura Base do Grafo: Criação do arquivo sdr_graph.py com nós stub (router, booker, calendar_sync) para orquestração futura.
    • Exportação Centralizada: Configuração do src/amon_claw/infrastructure/llm/agents/__init__.py para facilitar o acesso ao grafo.
  • Qualidade e Refatoração:
    • Linting: Aplicação de regras do ruff em todo o projeto.
    • Organização de Imports: Limpeza e ordenação de dependências para evitar circularidade.

2. O que tem para fazer (Próximos Passos)

  • Lógica dos Micro-Agentes: Implementar os nós reais do grafo utilizando Pydantic AI para 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.