Protocolo de Modo de Batalha no Coliseu
O comando /battle ativa uma arena adversarial entre duas implementações concorrentes, em vez de depender das escolhas de código de um único agente.
Arquitetura da Arena
[Prompt do Usuário]
│
┌────────────────┴────────────────┐
▼ ▼
[Braço Alfa Competidor] [Braço Beta Competidor]
Workspace: 'branch' (Braço A) Workspace: 'branch' (Braço B)
│ │
└────────────────┬────────────────┘
│
▼
[Árbitro / Crítico do Coliseu]
Função: critic@colosseum
(Falsificador Adversarial + Benchmark)
│
▼
[Vencedor Coroado & Mesclagem]
Rotina de Execução
Quando o usuário invoca /battle:
Passo 1: Bifurcação dos Braços Concorrentes
Crie dois subagentes rivais simultaneamente em worktrees git isolados usando Workspace='branch':
- Braço Alfa Competidor:
{ "TypeName": "self", "Role": "Braço Alfa Competidor", "Workspace": "branch", "Prompt": "Projete e implemente a Abordagem A para o objetivo do usuário. Otimize para segurança, correção e abstração limpa." } - Braço Beta Competidor:
{ "TypeName": "self", "Role": "Braço Beta Competidor", "Workspace": "branch", "Prompt": "Projete e implemente uma Abordagem B alternativa para o objetivo do usuário. Otimize para complexidade mínima, taxa de transferência e objetividade." }
Passo 2: Auditoria do Árbitro do Coliseu (critic@colosseum)
Assim que ambos os braços concluírem suas implementações:
- Despache um agente árbitro adversarial:
{ "TypeName": "self", "Role": "critic@colosseum", "Workspace": "inherit", "Prompt": "Compare o Braço Alfa e o Braço Beta. Execute fuzzing, testes de limites, ataques a casos extremos e benchmarks empíricos em ambos os ramos. Identifique falhas ocultas, sobrecarga de memória e modos de falha não tratados." } - O árbitro executa ambas as suítes de teste de forma headless e registra métricas concretas de aprovação/reprovação.
Passo 3: Coroação do Vencedor
- Revise o veredito do árbitro.
- Faça um fast-forward / mescle o ramo vencedor no workspace principal.
- Elimine o ramo perdedor e apresente ao usuário o placar comparativo completo.