-
-
Notifications
You must be signed in to change notification settings - Fork 18
Open
Labels
enhancementNew feature or requestNew feature or requestphase-2Phase 2 implementation tasksPhase 2 implementation taskspriority: highImportant, do soonImportant, do soontest-serverTest Server componentTest Server component
Description
Phase 2: Test Server & Multi-Agent Coordination
📋 Overview
Build a framework-agnostic Test Server that coordinates test execution across multiple agents, preparing the foundation for Phase 4's multi-agent support.
Status: Phase 1 complete ✅ | Multi-framework support complete ✅
Goal: Enable safe concurrent development by coordinating test execution
🎯 Objectives
- Test Server - HTTP API that queues and executes tests sequentially
- Framework-Agnostic Design - Works with all 15+ supported frameworks
- Agent Coordination - Prevents test conflicts when multiple agents run
- Enhanced Agent Runner - Integration with Test Server
- Preparation for Multi-Agent - Foundation for Phase 4
🔑 Why Phase 2 is Critical
Problem: When multiple agents finish work simultaneously, they all try to run tests at once:
- Only one test process can run per project at a time
- Parallel test execution causes resource conflicts
- Results can interfere with each other
Solution: Test Server acts as a coordinator:
Agent 1 ──┐
Agent 2 ──┼──> Test Server (Queue) ──> Single Test Process
Agent 3 ──┘ (Async API) (Sequential)
📦 Components to Implement
1. Test Server (scripts/test-server.py)
API Endpoints:
POST /test/submit- Submit test jobGET /test/status/<job_id>- Check statusGET /test/results/<job_id>- Get resultsGET /health- Health checkGET /queue- View queue
2. Enhanced Agent Runner
- Submit tests to server instead of running directly
- Poll for results
- Retry logic
- Only create PR if tests pass
3. Systemd Service
systemd/test-server.service- Auto-restart, logging
4. Multi-Framework Support
Works with all 15+ frameworks via presets
✅ Acceptance Criteria
- Test Server runs as systemd service
- Queues and executes tests sequentially
- Works with 4+ frameworks (Godot, React, Django, Rust)
- Agent runner integrates with server
- PRs only created if tests pass
- Complete documentation
📝 Implementation Plan
Week 1: Core Server (Flask API, queue, execution)
Week 2: Integration (agent-runner, multi-framework testing, docs)
Estimated: 2 weeks full-time, 3-4 weeks part-time
Complexity: Medium-High
Priority: High (Required for Phase 4)
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestphase-2Phase 2 implementation tasksPhase 2 implementation taskspriority: highImportant, do soonImportant, do soontest-serverTest Server componentTest Server component