feat: Orquestra - sequential orchestration runtime
- Context isolation: fresh Pi process per stage (run_stage.py) - Gate enforcement: blocks close without approved gates - Auto commit/push on feature close (close_feature.py) - Write restrictions: only allowed directories (ALLOWED_WRITE_DIRS) - Pi extension: orquestra-status with /orquestra-stage command - Documentation: context-handoff.md, updated README - Scripts: agent_status.py, verify.sh, install.sh updated
This commit is contained in:
22
AGENTS.md
22
AGENTS.md
@@ -1,19 +1,25 @@
|
||||
# AGENTS.md — Entry point del framework
|
||||
# AGENTS.md — Entrada de Orquestra
|
||||
|
||||
## Arranque obligatorio
|
||||
1. Leer `work/current.md`.
|
||||
2. Leer `backlog/features.json` y seleccionar **una** feature `pending`.
|
||||
3. Ejecutar `./scripts/verify.sh`.
|
||||
1. Ejecutar `./scripts/verify.sh`.
|
||||
2. Leer `work/current.md`.
|
||||
3. Leer `backlog/features.json` y seleccionar **una** feature `pending`.
|
||||
4. Seguir `harness/workflow.stages.yml` y `harness/agents.matrix.yml`.
|
||||
5. Actualizar estado visible con `python3 scripts/agent_status.py set ...` antes de cada stage.
|
||||
|
||||
## Reglas duras
|
||||
- Orquestra se ejecuta secuencialmente en Pi: no subagentes.
|
||||
- Para Pi limpio, arrancar con `./scripts/pi_orquestra.sh`, no con `pi` directo.
|
||||
- Una sola feature en `in_progress`.
|
||||
- Ningún agente pasa código por chat: todo va a `work/artifacts/<feature_id>/`.
|
||||
- Ningún rol pasa código por chat: todo va a `work/artifacts/<feature_id>/`.
|
||||
- `implementer` nunca marca `done`.
|
||||
- `done` requiere gates aprobados: `reviewer`, `security`, `qa`.
|
||||
- Si `verify.sh` falla, no se cierra la feature.
|
||||
- **Solo se puede escribir en carpetas permitidas**: `project/`, `tests/`, `work/`, `backlog/`, `spec/`, `harness/`, `scripts/`, `platforms/`, `docs/`. Cualquier otra escritura será bloqueada por la extensión `orquestra-status`.
|
||||
- **Al cerrar una feature, el leader ejecuta `scripts/close_feature.py <feature_id>`** que valida gates, actualiza el backlog y hace commit/push automáticamente.
|
||||
- **NUNCA editar `backlog/features.json` directamente**. Usar siempre `scripts/close_feature.py` para cerrar features.
|
||||
|
||||
## Reentrada (context loss)
|
||||
- Releer `work/current.md` y artefactos de la feature activa.
|
||||
## Reentrada
|
||||
- Releer `work/current.md`, `work/runtime-status.json` y artefactos de la feature activa.
|
||||
- Ejecutar `./scripts/verify.sh`.
|
||||
- Continuar desde “Próximo paso”.
|
||||
- Continuar desde el próximo stage pendiente.
|
||||
|
||||
Reference in New Issue
Block a user