- Replace unavailable gpt-3.5-turbo with available gpt-oss_120b_128k-gpu model
- Model is confirmed available on LiteLLM API endpoint
- Maintains all prompt structure and JSON response requirements
- Use LEFT JOIN with IS NULL condition instead of NOT IN subquery
- Change GROUP_CONCAT separator from '\n' to ',' (MariaDB syntax)
- Query now successfully returns unprocessed conversations from Freescout DB
- Verified: returns 20 conversations with proper data structure
- Replace mysql-connector-python with PyMySQL driver for better MariaDB compatibility
- PyMySQL handles utf8mb4_0900_ai_ci collation properly without errors
- Update Dockerfile.sql-executor to install PyMySQL and psycopg2-binary
- Refactor sql-query-executor.py to use PyMySQL API (pymysql.connect, DictCursor)
- Verified sql-executor service with SELECT, INSERT, UPDATE operations on Freescout DB
- Add n8n workflow definitions: workflow-a-http.json and workflow-b-http.json
* Workflow A: Polls unprocessed conversations, analyzes with LiteLLM, saves suggestions
* Workflow B: Polls approved suggestions, executes Baramundi jobs or email replies
- Update compose.yaml with sql-executor service configuration and dependencies
All SQL operations now execute successfully against MariaDB 11.3.2
- Added etcd service for distributed coordination
- Added MinIO service for object storage
- Added Milvus v2.4.0 vector database (standalone mode)
- Added PostgreSQL 15-alpine for knowledge base
- All services include healthchecks
- Updated .env with POSTGRES_PASSWORD and MILVUS_API_URL