---
name: scope
description: Validação de scope que verifica se o trabalho está dentro do spec e detecta scope creep.
---

# /scope v1.0 - Validacao de Scope

Check rapido: "o trabalho que estou a fazer esta dentro do que combinámos?"

---

## Comandos

| Comando | Funcao |
|---------|--------|
| `/scope` | Check rapido (1-3 linhas) |
| `/scope detail` | Analise detalhada com mapeamento ficheiros-scope |

---

## Protocolos

### `/scope` (check rapido)

```
1. Procurar SPEC.md:
   - Directorio actual, depois pais (max 5 niveis)
   - Parar em /media/ealmeida/Dados/Dev ou /media/ealmeida/Dados
2. SE nao encontrado:
   "Sem SPEC.md. A trabalhar sem contrato de scope."
   PARAR.
3. SE encontrado mas nao aprovado:
   "Spec em draft (nao aprovado). Tratando como guia."
4. Parse SPEC.md:
   - Items "Faz" (scope in)
   - Items "Nao Faz" (scope out)
5. Analisar trabalho recente:
   a. Se git repo:
      - git diff --stat (uncommitted changes)
      - git diff --stat HEAD~3..HEAD (ultimos 3 commits)
   b. Se nao git: ficheiros modificados nas ultimas 2h (via stat)
6. Classificar cada ficheiro modificado:
   - Corresponde a item do scope -> OK
   - Mencionado em "Nao Faz" -> ALERTA
   - Nao mencionado -> WARN (potencial creep)
7. Output rapido:

   SE tudo OK:
   "Dentro do spec. X/Y scope items em progresso."

   SE ha alertas:
   "SCOPE ALERT: [N] ficheiros modificados fora do spec."
   "  - [ficheiro1]: nao mencionado no spec"
   "  - [ficheiro2]: esta em 'Nao Faz'"
   "Considere /spec update ou criar novo spec."
```

### `/scope detail`

```
1. Executar tudo de /scope
2. ADICIONAR mapeamento detalhado:

   ---
   ## Scope Detail: [titulo do spec]

   ### Mapeamento Scope -> Ficheiros

   | Scope Item | Ficheiros Associados | Status |
   |-----------|---------------------|--------|
   | Item 1 | a.php, b.js | Em progresso |
   | Item 2 | - | Nao iniciado |

   ### Ficheiros Fora do Scope

   | Ficheiro | Tipo Alteracao | Possivel Motivo |
   |----------|---------------|-----------------|
   | c.css | Modificado | Refactoring nao planeado? |
   | d.php | Novo | Feature nova? |

   ### Criterios de Aceitacao

   | Criterio | Verificavel? | Estado |
   |----------|-------------|--------|
   | DADO X QUANDO Y ENTAO Z | Sim | Pendente |

   ### Recomendacao
   - [O que fazer com o trabalho fora do scope]
   - [Criar novo spec? Actualizar existente? Reverter?]
   ---
```

---

## Regras

1. `/scope` deve ser RAPIDO (segundos, nao minutos)
2. Nao modificar nenhum ficheiro - apenas leitura e analise
3. Ser factual - reportar o que ve, nao julgar
4. Scope creep nao e mau por si - e mau quando nao e detectado
5. Sugerir solucoes (update spec, criar novo) nao apenas reportar problemas

---

## Healing Log

Registo de erros conhecidos e como evitá-los. Lido automaticamente antes de executar.

```jsonl
{"date":"","issue":"","fix":"","source":"user|auto"}
```

*Adicionar nova linha após cada erro corrigido.*
