ai-code-battle/cmd/acb-evolver
jedarden f4352c6304 feat(evolver): add workflow completion polling to promoter
Per plan §10.8 (deployment pipeline) and §9.8 (Argo Workflows):

- Add waitForWorkflowCompletion() that polls Argo Workflow API
- Add getWorkflowStatus() to fetch workflow phase/status
- Update Promote() to wait for workflow completion before inserting bot record
- Update Promote() to wait for K8s deployment readiness (waitForDeployment)
- Update triggerArgoWorkflow() to return workflow name for polling
- Add acb-evolved-bot-deploy-workflowtemplate.yml to manifests

The promotion flow now:
1. Writes bot source to bots/evolved/<bot_name>/
2. Commits and pushes source to git
3. Triggers Argo WorkflowTemplate
4. Waits for workflow completion (build + manifest commit)
5. Waits for K8s deployment to be ready
6. Inserts bot record into bots table
7. Updates programs table with bot_id/bot_name

This ensures evolved bots have running containers before being marked active.
2026-04-22 17:46:33 -04:00
..
internal feat(evolver): add workflow completion polling to promoter 2026-04-22 17:46:33 -04:00
Dockerfile feat(acb-evolver): add Dockerfile for evolver container with multi-language runtime support 2026-04-21 08:41:10 -04:00
main.go feat(evolver): expand MAP-Elites from 2-D to 4-D grid per §10.2 2026-04-22 15:44:39 -04:00
run.go feat: add Prometheus metrics instrumentation across services 2026-04-22 16:16:03 -04:00