mirror of
https://github.com/proffesor-for-testing/agentic-qe.git
synced 2026-09-19 08:45:47 +08:00
fd2f37eaa0
Changes: - Fix README.md agent counts (48 QE agents = 41 main + 7 subagents) - Fix README.md skill counts (15 QE-specific skills) - Fix v3/README.md agent counts (47 → 48) - Fix init-wizard.ts hooks from 'npx @agentic-qe/v3' to 'npx agentic-qe' - Complete v2 → v2/ folder reorganization (54 items moved) - Update root package.json to point to v3 as main version Verified claims: - 48 QE agents (41 main + 7 TDD subagents) - 15 QE-specific skills - 12 DDD bounded contexts - ~5,600+ tests - HNSW, ReasoningBank, Queen Coordinator features exist Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
RuVector Docker Setup
This directory contains Docker Compose configurations for running RuVector as part of the Agentic QE Fleet.
Quick Start
1. Start RuVector (Production)
./scripts/ruvector-start.sh start
2. Start RuVector (Development)
./scripts/ruvector-start.sh start development
3. Check Status
./scripts/ruvector-start.sh status
4. View Logs
./scripts/ruvector-start.sh logs
5. Stop RuVector
./scripts/ruvector-start.sh stop
Configuration
Environment Variables
Create a .env file in the project root to customize settings:
# Data Paths
RUVECTOR_DATA_PATH=/custom/path/to/data
RUVECTOR_MODELS_PATH=/custom/path/to/models
# Performance Tuning
RUVECTOR_MAX_MEMORY_GB=8
RUVECTOR_CACHE_SIZE_MB=1024
# Learning Configuration
RUVECTOR_LORA_RANK=16
RUVECTOR_EWC_LAMBDA=0.5
Profiles
Production Profile (Default)
- Optimized for performance
- JSON logging
- Resource limits: 2-4GB RAM, 1-2 CPUs
- Ports: 8080 (REST), 9090 (gRPC)
Development Profile
- Debug logging enabled
- Text format logs for readability
- Profiling endpoint exposed (port 6060)
- More aggressive learning settings
- Separate data volumes
Architecture
Ports
| Port | Service | Description |
|---|---|---|
| 8080 | REST API | HTTP/JSON endpoints |
| 9090 | gRPC | High-performance RPC |
| 6060 | Profiling | Go pprof (dev only) |
Volumes
| Volume | Purpose | Path |
|---|---|---|
| ruvector-data | Vector storage | /data |
| ruvector-models | LoRA models | /models |
Health Checks
The container includes automatic health monitoring:
- Endpoint:
http://localhost:8080/health - Interval: 30 seconds
- Timeout: 10 seconds
- Retries: 3
- Start Period: 40 seconds
Advanced Usage
Manual Docker Compose Commands
# Start with specific profile
docker compose -f docker/docker-compose.ruvector.yml --profile production up -d
# View logs
docker compose -f docker/docker-compose.ruvector.yml logs -f
# Stop and remove volumes
docker compose -f docker/docker-compose.ruvector.yml down -v
Custom Configuration File
Mount a custom config file:
volumes:
- ./config/ruvector.yml:/app/config.yml:ro
Resource Limits
Adjust in docker-compose.ruvector.yml:
deploy:
resources:
limits:
cpus: '4.0'
memory: 8G
reservations:
cpus: '2.0'
memory: 4G
Integration with Agentic QE
1. Initialize AQE with RuVector
aqe init --vector-db ruvector --ruvector-url http://localhost:8080
2. Configure Agent Learning
# Enable self-learning for specific agent
aqe learn enable --agent qe-test-generator
# Set RuVector as backend
aqe config set learning.backend ruvector
3. Verify Integration
# Check RuVector connection
curl http://localhost:8080/health
# Test vector operations
curl -X POST http://localhost:8080/api/v1/vectors \
-H "Content-Type: application/json" \
-d '{"embedding": [0.1, 0.2, 0.3], "metadata": {"test": true}}'
Monitoring
Container Stats
docker stats agentic-qe-ruvector
Health Status
./scripts/ruvector-start.sh health
Logs Analysis
# Last 100 lines
./scripts/ruvector-start.sh logs 100
# Stream logs
./scripts/ruvector-start.sh logs follow
# Filter for errors
docker compose -f docker/docker-compose.ruvector.yml logs | grep ERROR
Troubleshooting
Container Won't Start
-
Check Docker is running:
docker info -
Check port availability:
lsof -i :8080 lsof -i :9090 -
View startup logs:
./scripts/ruvector-start.sh logs
Health Check Failing
-
Verify endpoint manually:
curl -v http://localhost:8080/health -
Check container logs:
./scripts/ruvector-start.sh logs 50 -
Restart container:
./scripts/ruvector-start.sh restart
Out of Memory
- Increase memory limit in
docker-compose.ruvector.yml - Reduce cache size:
RUVECTOR_CACHE_SIZE_MB=256 - Lower max memory:
RUVECTOR_MAX_MEMORY_GB=2
Permission Errors
Ensure data directories are writable:
chmod -R 755 ./data/ruvector ./data/ruvector-models
Performance Tuning
HNSW Index Optimization
environment:
RUVECTOR_HNSW_M: 64 # Higher = more accurate, more memory
RUVECTOR_HNSW_EF_CONSTRUCTION: 400 # Higher = slower build, better quality
RUVECTOR_HNSW_EF_SEARCH: 200 # Higher = slower search, more accurate
Learning Rate Tuning
environment:
RUVECTOR_LORA_RANK: 16 # Higher = more capacity, more memory
RUVECTOR_LORA_ALPHA: 32 # Scaling factor for LoRA updates
RUVECTOR_EWC_LAMBDA: 0.5 # Higher = more forgetting prevention
Backup and Recovery
Backup Data
# Stop container
./scripts/ruvector-start.sh stop
# Backup volumes
tar -czf ruvector-backup-$(date +%Y%m%d).tar.gz ./data/ruvector ./data/ruvector-models
# Restart
./scripts/ruvector-start.sh start
Restore Data
# Stop container
./scripts/ruvector-start.sh stop
# Restore from backup
tar -xzf ruvector-backup-20250101.tar.gz
# Restart
./scripts/ruvector-start.sh start
References
Support
For issues specific to:
- Docker setup: Check this README and container logs
- RuVector service: See RuVector docs
- AQE integration: See Phase 0.5 docs