# Orquestra Status Extension

Pi extension project-local que renderiza `work/runtime-status.json` y aplica el guard mínimo de escritura Orquestra.

## Muestra
- feature activa
- stage actual
- rol actual
- acción/estado
- siguiente rol
- checklist de artefactos por rol
- estado de gates
- último evento de timeline

## Ruta instalada
- `.pi/extensions/orquestra-status/index.ts`

Se lanza junto con `.pi/extensions/orquestra-web-fetch.ts` desde `scripts/pi_orquestra.sh`.

## Uso
1. Abrí `pi` en la raíz del proyecto instalado.
2. Si Pi ya estaba abierto, ejecutá `/reload`.
3. El widget aparece arriba del editor y el footer muestra estado compacto.
4. El widget refresca cada segundo.
5. Refresco manual: `/orquestra-status`.

## Guard de escritura

La extensión intercepta herramientas Pi built-in `write` y `edit`:
- bloquea archivos de producto/código en la raíz (`*.py`, `*.js`, `*.ts`, `*.go`, `*.rs`, `*.java`, `*.php`, `*.rb`); usá `project/`.
- bloquea escrituras en `project/` o `tests/` salvo que `work/runtime-status.json` tenga `feature_id`, `stage=build`, `agent=implementer` y `state=running`.
- bloquea paths que escapan la raíz del repo con `..`.

## Fuente de verdad
- `work/runtime-status.json`

Actualizar con:

```bash
python3 scripts/agent_status.py set ...
python3 scripts/agent_status.py reset
```
