chore(harness): isolate pi stage execution

This commit is contained in:
rikrdo
2026-08-15 09:51:25 +02:00
parent 546971280f
commit cf1c69fc8b
9 changed files with 205 additions and 24 deletions

View File

@@ -5,6 +5,14 @@ Los agentes **no** devuelven código en chat. Deben escribir a disco y responder
- `done -> <ruta>`
- `blocked -> <ruta>`
## Contexto mínimo por stage
Cada stage recibe solo:
1. Los archivos listados en `harness/workflow.stages.yml` como `input`.
2. El artefacto del stage anterior cuando el workflow lo declare.
3. La memoria Engram que el leader seleccione explícitamente para ese stage.
No se considera válido pasar todo el chat anterior como contexto operativo. Si un stage necesita más información, debe pedir una ruta o artefacto concreto y bloquear hasta tenerlo.
## Rutas estándar por feature
- `work/artifacts/<feature_id>/implementer.md`
- `work/artifacts/<feature_id>/reviewer.json`

View File

@@ -15,29 +15,54 @@ stages:
- name: design
owner: architect
optional: true
input:
- work/current.md
- spec/product.md
- spec/tech.md
- spec/acceptance.md
output:
- work/artifacts/<feature_id>/architect.md
- name: build
owner: implementer
input:
- work/current.md
- spec/product.md
- spec/tech.md
- spec/acceptance.md
- work/artifacts/<feature_id>/architect.md
output:
- work/artifacts/<feature_id>/implementer.md
- name: review_gate
owner: reviewer
required: true
input:
- work/current.md
- spec/acceptance.md
- work/artifacts/<feature_id>/implementer.md
output:
- work/artifacts/<feature_id>/reviewer.json
- name: security_gate
owner: security
required: true
input:
- work/current.md
- work/artifacts/<feature_id>/implementer.md
- work/artifacts/<feature_id>/reviewer.json
output:
- work/artifacts/<feature_id>/security.json
- name: qa_gate
owner: qa
required: true
input:
- work/current.md
- spec/acceptance.md
- work/artifacts/<feature_id>/implementer.md
- work/artifacts/<feature_id>/reviewer.json
- work/artifacts/<feature_id>/security.json
output:
- work/artifacts/<feature_id>/qa.json
@@ -45,12 +70,25 @@ stages:
owner: documenter
optional: true
when: docs/API/contracts/user-facing behavior changed
input:
- work/current.md
- work/artifacts/<feature_id>/implementer.md
- work/artifacts/<feature_id>/reviewer.json
- work/artifacts/<feature_id>/security.json
- work/artifacts/<feature_id>/qa.json
output:
- work/artifacts/<feature_id>/documenter.md
- name: close
owner: leader
required: true
input:
- work/current.md
- work/artifacts/<feature_id>/implementer.md
- work/artifacts/<feature_id>/reviewer.json
- work/artifacts/<feature_id>/security.json
- work/artifacts/<feature_id>/qa.json
- work/artifacts/<feature_id>/documenter.md
output:
- work/artifacts/<feature_id>/leader-close.json
- work/history.md