restore: Docker evolution test files for remote usage
Docker files restored for use on other machines with Docker/WSL2. Available test methods: 1. Docker (isolated environment): docker-compose -f docker/evolution-test/docker-compose.yml up evolution-feature 2. Local (bun runtime): docker/evolution-test/run-local-test.bat feature ./docker/evolution-test/run-local-test.sh feature Both methods provide: - Millisecond precision timing - Fitness score with 2 decimal places - JSONL logging to .kilo/logs/fitness-history.jsonl
This commit is contained in:
88
docker/evolution-test/docker-compose.yml
Normal file
88
docker/evolution-test/docker-compose.yml
Normal file
@@ -0,0 +1,88 @@
|
||||
# Evolution Test Containers
|
||||
# Run multiple workflow tests in parallel
|
||||
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
# Evolution test runner for feature workflow
|
||||
evolution-feature:
|
||||
build:
|
||||
context: ../..
|
||||
dockerfile: docker/evolution-test/Dockerfile
|
||||
container_name: evolution-feature
|
||||
environment:
|
||||
- WORKFLOW_TYPE=feature
|
||||
- TOKEN_BUDGET=50000
|
||||
- TIME_BUDGET=300
|
||||
- MIN_COVERAGE=80
|
||||
volumes:
|
||||
- ../../.kilo/logs:/app/.kilo/logs
|
||||
- ../../src:/app/src
|
||||
command: bun test --reporter=json --coverage
|
||||
|
||||
# Evolution test runner for bugfix workflow
|
||||
evolution-bugfix:
|
||||
build:
|
||||
context: ../..
|
||||
dockerfile: docker/evolution-test/Dockerfile
|
||||
container_name: evolution-bugfix
|
||||
environment:
|
||||
- WORKFLOW_TYPE=bugfix
|
||||
- TOKEN_BUDGET=20000
|
||||
- TIME_BUDGET=120
|
||||
- MIN_COVERAGE=90
|
||||
volumes:
|
||||
- ../../.kilo/logs:/app/.kilo/logs
|
||||
- ../../src:/app/src
|
||||
command: bun test --reporter=json --coverage
|
||||
|
||||
# Evolution test runner for refactor workflow
|
||||
evolution-refactor:
|
||||
build:
|
||||
context: ../..
|
||||
dockerfile: docker/evolution-test/Dockerfile
|
||||
container_name: evolution-refactor
|
||||
environment:
|
||||
- WORKFLOW_TYPE=refactor
|
||||
- TOKEN_BUDGET=40000
|
||||
- TIME_BUDGET=240
|
||||
- MIN_COVERAGE=95
|
||||
volumes:
|
||||
- ../../.kilo/logs:/app/.kilo/logs
|
||||
- ../../src:/app/src
|
||||
command: bun test --reporter=json --coverage
|
||||
|
||||
# Evolution test runner for security workflow
|
||||
evolution-security:
|
||||
build:
|
||||
context: ../..
|
||||
dockerfile: docker/evolution-test/Dockerfile
|
||||
container_name: evolution-security
|
||||
environment:
|
||||
- WORKFLOW_TYPE=security
|
||||
- TOKEN_BUDGET=30000
|
||||
- TIME_BUDGET=180
|
||||
- MIN_COVERAGE=80
|
||||
volumes:
|
||||
- ../../.kilo/logs:/app/.kilo/logs
|
||||
- ../../src:/app/src
|
||||
command: bun test --reporter=json --coverage
|
||||
|
||||
# Fitness aggregator - collects results from all containers
|
||||
fitness-aggregator:
|
||||
image: oven/bun:1
|
||||
container_name: fitness-aggregator
|
||||
depends_on:
|
||||
- evolution-feature
|
||||
- evolution-bugfix
|
||||
- evolution-refactor
|
||||
- evolution-security
|
||||
volumes:
|
||||
- ../../.kilo/logs:/app/.kilo/logs
|
||||
working_dir: /app
|
||||
command: |
|
||||
sh -c "
|
||||
echo 'Aggregating fitness scores...'
|
||||
cat .kilo/logs/fitness-history.jsonl | tail -4 > .kilo/logs/fitness-latest.jsonl
|
||||
echo 'Fitness aggregation complete.'
|
||||
"
|
||||
Reference in New Issue
Block a user