Testing & Verification
Relevant source files
The following files were used as context for generating this wiki page:
Testing and verification in the Promethean Conduit project encompasses a multi-layered strategy involving automated health monitoring, agent-based testing protocols, and manual verification procedures. The system utilizes specialized Webpack plugins to track compilation health in real-time while maintaining a structured communication channel between autonomous testing agents to ensure feature integrity during deployment.
The scope of verification includes backend API availability, frontend build success, and the status of third-party integrations such as Together.ai and MongoDB. This is facilitated through a centralized state file, test_result.md, which serves as the primary ledger for task tracking and inter-agent communication.
Sources: test_result.md:1-10, frontend/plugins/health-check/webpack-health-plugin.js:4-15
Agent-Based Testing Protocol
The project implements a coordinated testing workflow between a main_agent and a testing_agent. This protocol is designed to delegate verification tasks and maintain a persistent history of feature status.
Communication and State Management
Central to this protocol is the test_result.md file, which stores the testing state in YAML format. The main_agent is responsible for updating this file with implementation details before delegating to the testing_agent.
Sources: test_result.md:14-25, test_result.md:52-60
Testing Data Structure
The verification state is tracked using a specific schema that categorizes tasks by domain (frontend/backend) and tracks their reliability over time.
| Field | Type | Description |
|---|---|---|
task | String | Name of the feature or unit being tested. |
implemented | Boolean | Whether the code has been written. |
working | Boolean/NA | Current verification status of the task. |
stuck_count | Integer | Number of times a task has failed verification. |
needs_retesting | Boolean | Flag indicating a task requires new verification. |
status_history | List | Log of status changes, including the agent and comments. |
Sources: test_result.md:27-50
Automated Health Monitoring
Automated verification is integrated directly into the frontend development and build process via the Health Check system. This system monitors the Webpack compilation lifecycle and exposes metrics through dedicated endpoints.
Webpack Health Plugin
The WebpackHealthPlugin tracks the internal state of the build process, capturing errors, warnings, and timing statistics.
Health Endpoints
The system exposes several API endpoints to allow external monitoring tools (like Kubernetes or load balancers) to verify the application's readiness and liveness.
GET /health: Returns a detailed JSON object containing uptime, memory usage, and Webpack statistics.GET /health/ready: A readiness check that returns a 200 status only if Webpack has successfully compiled.GET /health/live: A simple liveness check to confirm the server process is running.GET /health/errors: Provides specific details on current compilation errors and warnings.
Sources: frontend/plugins/health-check/health-endpoints.js:34-110
Deployment Verification
Post-deployment verification ensures that the environment is correctly configured and all services are communicating. The DEPLOYMENT_GUIDE.md provides a checklist for manual and automated verification.
Verification Checklist
- API Connectivity: Verifying the
TOGETHER_API_KEYusingcurlagainst the provider's endpoint. - Database Access: Testing MongoDB or Supabase connectivity using Python scripts to list database names.
- Frontend Integration: Checking the browser console for CORS errors and verifying the
REACT_APP_BACKEND_URLconfiguration. - Admin Access: Confirming the admin panel is accessible using the
ADMIN_SECRET.
Sources: DEPLOYMENT_GUIDE.md:210-240, KEYS_AND_CREDENTIALS.md:130-150
Build Verification Scripts
The frontend provides standard scripts for build-time verification, managed via craco.
| Script | Command | Purpose |
|---|---|---|
| Start | npm start | Runs development mode with interactive linting. |
| Test | npm test | Launches the test runner in interactive watch mode. |
| Build | npm run build | Verifies production bundling and minification. |
Sources: frontend/package.json:86-90, frontend/README.md:15-30
Conclusion
The testing and verification system of EVI3_0 is a hybrid architecture combining persistent state tracking in test_result.md for agent-led verification with real-time health monitoring integrated into the craco build pipeline. This ensures that both the development state and the runtime health of the Promethean Conduit are continuously validated across different environments.