RESUMO:
Substituição do listener de Email (IMAP) por Bot do Telegram.
Correções de conectividade Ollama e timeout para inferência CPU.
ALTERAÇÕES:
1. NOVA INTEGRAÇÃO TELEGRAM:
- Criado src/clients/telegram_client.py (TelegramListener)
- Autenticação por ID de usuário (whitelist)
- Comandos /start e processamento de mensagens de texto
- Integração com Dispatcher para tickets via chat
2. CORREÇÕES OLLAMA:
- OLLAMA_BASE_URL: localhost -> ollama (Docker network)
- Timeout aumentado: 120s -> 300s (CPU inference lenta)
- Contexto Specialist reduzido: 8192 -> 4096 tokens
3. HOMOLOGATION:
- Substituído check de Email por check de Telegram
- Usa httpx para validar token via /getMe
4. MOCK FINANCIAL CLIENT:
- Adicionado get_tenant_by_email() method
- Domínio 'telegram' adicionado ao tenant iT Guys
5. DATABASE CONNECTION:
- URL-encode de credenciais no DSN (caracteres especiais)
PORQUE FOI FEITA ESSA ALTERAÇÃO?
- Email/IMAP: Problemas persistentes de autenticação com Exchange
- Telegram: Interface mais ágil para testes controlados
- Timeout: Modelo 8B em 4 cores CPU estourava 120s
QUAIS TESTES FORAM FEITOS?
- Homologação completa: 7/7 checks passando
- Teste direto OllamaClient.generate_triage(): OK
- Teste direto OllamaClient.generate_specialist(): OK
- Teste TriageAgent.process_ticket(): OK
- Teste via Telegram Bot: Mensagens recebidas e processadas
A ALTERAÇÃO GEROU NOVO TESTE?
Não. Scripts de debug criados em src/verification/ são auxiliares.
Pipeline existente (pytest) continua válido.
Porque foi feita essa alteração?
- Nova funcionalidade: Implementação da base de arquitetura de dados para o Agente Arthur (Suporte Técnico N2)
- Criados módulos: models (TenantContext, AuditLog), database (PostgreSQL), security (SecretsManager, DLP), clients (MockFinancial)
Quais testes foram feitos?
- 45 testes unitários com pytest
- Testes de modelos Pydantic (9 testes)
- Testes de DLP filter para CPF, CNPJ, senhas (15 testes)
- Testes de SecretsManager para Docker Secrets (11 testes)
- Testes de MockFinancialClient para resolução de tenants (10 testes)
A alteração gerou um novo teste que precisa ser implementado no pipeline?
- Sim. Os testes em tests/ devem ser adicionados ao pipeline CI/CD com pytest.
Porque foi feita essa alteração?
Limpeza total do código legado do chatbot (Chainlit/CrewAI) para iniciar o desenvolvimento do Agente de Classificação Bancária via API, conforme novo PRD. Ajuste de dependências e infraestrutura.
Quais testes foram feitos?
Validação manual da estrutura de diretórios e arquivos de configuração restantes.
A alteração gerou um novo teste que precisa ser implementado no pipeline de testes?
Não.
- Added Neo4j service to docker-compose for relationship graph management.
- Updated requirements.txt to include Neo4j dependency.
- Enhanced MemoryWrapper to support hybrid search using vector and graph data.
- Introduced optional parameters for relationship extraction in memory save and search tools.
- Updated README.md to reflect new hybrid memory capabilities and Neo4j configuration.