refactor: complete bootstrap of ARNES agent harness framework
- Add complete agent harness structure with 8 roles (leader, triager, architect, implementer, reviewer, security, qa, documenter) - Implement strict workflow with 9 stages and mandatory gates - Add comprehensive verification script and runtime status tracking - Create artifact-based evidence system with contracts and schemas - Add agent policy matrix with permissions and anti-cheat rules - Include test suite (44 tests passing) and CI-ready structure - Add documentation: README, HOWTO, CHECKPOINTS, templates - Configure model routing policies and token-aware task assignment - Add BDD/SDD specification guides and feature templates - Include starter pack for quick project onboarding All verification checks pass. Framework ready for production use.
This commit is contained in:
91
README.md
91
README.md
@@ -25,43 +25,48 @@ Permitir que agentes implementen features de forma autónoma **sin perder contro
|
||||
|
||||
---
|
||||
|
||||
## Matriz de agentes (6)
|
||||
## Matriz de agentes (8)
|
||||
|
||||
1. **leader**
|
||||
- Orquesta etapas y handoffs.
|
||||
- No implementa código de producto.
|
||||
- Da órdenes internas en English caveman.
|
||||
|
||||
2. **architect**
|
||||
2. **triager**
|
||||
- Convierte requests en tickets claros.
|
||||
- Escribe tickets en English caveman.
|
||||
|
||||
3. **architect**
|
||||
- Define/ajusta diseño técnico y contratos.
|
||||
- Puede editar documentación y diseño.
|
||||
|
||||
3. **implementer**
|
||||
- Implementa una sola feature + tests.
|
||||
4. **implementer**
|
||||
- Implementa feature + tests.
|
||||
- No puede aprobar ni cerrar.
|
||||
|
||||
4. **reviewer**
|
||||
- Revisión técnica vs arquitectura/convenios.
|
||||
- No edita código, solo aprueba/rechaza.
|
||||
5. **reviewer**
|
||||
- Gate técnico.
|
||||
|
||||
5. **security**
|
||||
- Gate de seguridad: secretos, dependencias, SAST básico, hardening checks.
|
||||
- No edita código.
|
||||
6. **security**
|
||||
- Gate de seguridad.
|
||||
|
||||
6. **qa**
|
||||
- Gate de calidad funcional: aceptación, integración/E2E, regresión.
|
||||
- No edita código.
|
||||
7. **qa**
|
||||
- Gate funcional.
|
||||
|
||||
8. **documenter**
|
||||
- Documenta fix/feature/bug y actualiza docs.
|
||||
|
||||
---
|
||||
|
||||
## Flujo de trabajo (pipeline)
|
||||
|
||||
1. `intake` (leader)
|
||||
2. `design` (architect)
|
||||
3. `build` (implementer)
|
||||
4. `review_gate` (reviewer) ✅
|
||||
5. `security_gate` (security) ✅
|
||||
6. `qa_gate` (qa) ✅
|
||||
7. `close` (leader)
|
||||
1. `triage_translate` (leader/triager)
|
||||
2. `intake` (leader)
|
||||
3. `design` (architect)
|
||||
4. `build` (implementer)
|
||||
5. `review_gate` (reviewer) ✅
|
||||
6. `security_gate` (security) ✅
|
||||
7. `qa_gate` (qa) ✅
|
||||
8. `documentation_gate` (documenter) ✅
|
||||
9. `close` (leader)
|
||||
|
||||
**Regla:** no hay `done` si cualquier gate falla.
|
||||
|
||||
@@ -77,9 +82,10 @@ Permitir que agentes implementen features de forma autónoma **sin perder contro
|
||||
### Evidencia obligatoria por etapa
|
||||
Cada agente escribe artefactos en disco:
|
||||
- `work/artifacts/<feature>/implementer.md`
|
||||
- `work/artifacts/<feature>/reviewer.md`
|
||||
- `work/artifacts/<feature>/security.md`
|
||||
- `work/artifacts/<feature>/qa.md`
|
||||
- `work/artifacts/<feature>/reviewer.json`
|
||||
- `work/artifacts/<feature>/security.json`
|
||||
- `work/artifacts/<feature>/qa.json`
|
||||
- `work/artifacts/<feature>/leader-close.json`
|
||||
|
||||
Respuesta de agente siempre: `done -> <ruta>` o `blocked -> <ruta>`.
|
||||
|
||||
@@ -125,6 +131,23 @@ Respuesta de agente siempre: `done -> <ruta>` o `blocked -> <ruta>`.
|
||||
|
||||
---
|
||||
|
||||
## Estado runtime visible
|
||||
|
||||
- Estado en tiempo real: `work/runtime-status.json`
|
||||
- CLI: `python3 scripts/agent_status.py show|set|reset`
|
||||
|
||||
## Overlays por proyecto (sin contaminar el core)
|
||||
|
||||
- Reglas locales: `AGENTS.local.md` (opcional)
|
||||
- Checks locales: `scripts/verify.local.sh` (opcional)
|
||||
- El template base sigue agnóstico.
|
||||
|
||||
## Lenguaje y modelos
|
||||
|
||||
- Política de lenguaje: `harness/policies/language.md` (English caveman interno)
|
||||
- Routing de modelos: `harness/models.profiles.yml`
|
||||
- Reglas de routing: `harness/policies/model-routing.md`
|
||||
|
||||
## Manejo de pérdidas de memoria (context loss)
|
||||
|
||||
Sí: el framework está diseñado para eso.
|
||||
@@ -161,10 +184,18 @@ El núcleo no cambia; solo el adaptador.
|
||||
|
||||
---
|
||||
|
||||
## Inicio rápido
|
||||
|
||||
- Ejecuta wizard: `./scripts/start.sh`
|
||||
- Crear ticket: `python3 scripts/new_ticket.py`
|
||||
- Guía breve: `HOWTO.md`
|
||||
- Starter pack: `starter-pack/README.md`
|
||||
- Adaptación del template: `TEMPLATE.md`
|
||||
- Manual Skeleton (uso + mejoras): `docs/skeleton-manual.md`
|
||||
|
||||
## Próximos pasos sugeridos
|
||||
|
||||
1. Definir `agents.matrix.yml` completo (permisos exactos por rutas).
|
||||
2. Definir `workflow.stages.yml` con transiciones válidas.
|
||||
3. Diseñar `features.json` con estados y criterios de aceptación.
|
||||
4. Especificar `scripts/verify.sh` (lint/test/security/qa gates).
|
||||
5. Crear adaptadores `platforms/pi` y `platforms/opencode`.
|
||||
1. Definir el backlog inicial del proyecto real.
|
||||
2. Configurar overlay opcional (`AGENTS.local.md`, `scripts/verify.local.sh`).
|
||||
3. Ejecutar `./scripts/verify.sh` y `python3 scripts/agent_status.py show`.
|
||||
4. Empezar la primera feature `pending` con pipeline completo.
|
||||
|
||||
Reference in New Issue
Block a user