---
name: plano
description: Criar e gerenciar planos técnicos de implementação em ./PLANOS/pendente/ gerados por testers e executados por devs
scope: global
updatedAt: "2026-09-28"
---

# Skill: /plano (Gestão e Execução de Planos Técnicos)

Esta skill capacita o agente a atuar como ponte técnica entre o **Tester / QA** e o **Desenvolvedor**, formalizando demandas de homologação em planos de implementação completos na pasta `./PLANOS/pendente/` e executando-os deterministamente para posterior arquivamento em `./PLANOS/executado/`.

---

## 🎯 Gatilhos e Comandos

A skill é acionada por comandos iniciando com `/plano`:

```bash
# 1. Criação de novo plano técnico (Fase de Tester / Review)
/plano <instrução ou descrição da melhoria / bug>

# 2. Listagem da fila de planos
/plano listar

# 3. Execução de um plano existente (Fase de Desenvolvimento)
/plano executar <slug-ou-nome-do-arquivo>

# 4. Arquivamento manual de um plano já concluído
/plano arquivar <slug-ou-nome-do-arquivo>
```

---

## 🛠️ Procedimento Operacional: Criação de Plano (`/plano <instrução>`)

Quando invocado com uma instrução (ex.: `/plano corrigir validação do número do processo no formulário de denúncia`):

### 1. Obter Data e Gerar Slug
- Obtenha a data local atual no formato `YYYY-MM-DD`.
- Converta o tema principal da instrução em um slug sucinto em kebab-case (letras minúsculas e hífens, sem acentos ou caracteres especiais).
- Caminho alvo: `./PLANOS/pendente/YYYY-MM-DD-<slug>.md`.

### 2. Diagnóstico Técnico Pré-Implementação (Sem alterar código)
- **NÃO altere arquivos de código de produção nesta etapa.**
- Mapeie os pacotes afetados (`*-comuns`, `*-back`, `*-front`, `*-migracao`).
- Inspecione rapidamente arquivos relevantes com `view_file` ou `grep_search` para identificar a causa raiz, props, schemas Zod, rotas ou componentes envolvidos.
- Identifique o comportamento atual vs comportamento esperado.

### 3. Redigir e Persistir o Arquivo de Plano
- Garanta que o diretório `./PLANOS/pendente/` existe.
- Baseie-se no template canônico `.agent/DOCUMENTACAO/templates/plano.md.template`.
- Preencha o arquivo com:
  - **Frontmatter YAML:**
    ```yaml
    ---
    id: YYYY-MM-DD-<slug>
    titulo: "<Título claro e direto>"
    origem: "Revisão Tester / QA"
    data-criacao: "YYYY-MM-DD"
    data-execucao: null
    status: "pendente"
    prioridade: "media" # ou critica/alta/baixa
    tipo: "bug" # ou melhoria/feature/ux/refatoracao
    modulos-impactados:
      - <PACOTE-1>
      - <PACOTE-2>
    executor: null
    ---
    ```
  - **1. Objetivo & Contexto:** Descrição concisa da demanda e impacto de negócio.
  - **2. Diagnóstico Técnico & Evidências:** Comportamento observado vs esperado, repro steps e arquivos mapeados com links `[arquivo](file://...)`.
  - **3. Critérios de Aceite & Validação (DoD):** Checklist com caixas `- [ ]` contendo condições verificáveis de sucesso.
  - **4. Especificação Técnica & Passos de Implementação:** Roteiro prático para o desenvolvedor (schemas, backend, frontend, código sugerido).
  - **5. Plano de Verificação & Testes:** Testes automatizados (`typecheck`, `biome`) e roteiro manual/E2E com `agent-browser`.
  - **6. Histórico de Execução:** Cabeçalho reservado para preenchimento na conclusão.
- Salve o arquivo em `./PLANOS/pendente/YYYY-MM-DD-<slug>.md` usando `write_to_file`.

### 4. Resposta ao Usuário
- Informe o link do arquivo criado em `./PLANOS/pendente/`.
- Apresente um resumo sucinto dos módulos impactados e critérios de aceite.
- Sinalize que o plano está na fila e que o tester pode continuar a homologação criando novos planos ou solicitar a execução via `/plano executar <slug>`.

---

## 🛠️ Procedimento Operacional: Listagem (`/plano listar`)

1. Liste os arquivos existentes em `./PLANOS/pendente/` e `./PLANOS/executado/`.
2. Para cada arquivo, extraia título, data e prioridade do frontmatter.
3. Exiba uma tabela Markdown organizada:
   - **Planos Pendentes (Aguardando Dev)**
   - **Planos Executados (Concluídos)**

---

## 🛠️ Procedimento Operacional: Execução (`/plano executar <slug>`)

Quando invocado para implementar um plano existente:

### 1. Localização e Leitura
- Localize o arquivo em `./PLANOS/pendente/` correspondente ao slug fornecido.
- Leia o conteúdo integral com `view_file`.

### 2. Implementação Rigorosa
- Execute as mudanças solicitadas nos pacotes apropriados, seguindo:
  - `rules/diagnostico-antes-correcao.md`
  - `rules/literatura-tecnica-e-usabilidade.md`
  - `workflows/codigo-limpo.md` (limite de 250 linhas por arquivo, Dispatch Tables)
  - `rules/feedback-visivel.md` (feedback claro na UI e logs no backend)
  - `rules/fronteiras-monorepo.md` (não vazar dependências entre back e front)

### 3. Validação e Qualidade
- Execute checagens de integridade:
  - `biome check --write <arquivos-alterados>`
  - `bun run typecheck` ou `tsc --noEmit` (se aplicável ao pacote)
  - `sh .agent/verificar-linhas.sh`
- Valide os critérios de aceite definidos na Seção 3 do plano.

### 4. Transição para Executado
- Atualize o conteúdo do plano:
  - Frontmatter: `status: "executado"`, `data-execucao: "YYYY-MM-DD HH:mm"`, `executor: "<nome-ou-agente>"`.
  - Seção 6 (`Histórico de Execução`): registre arquivos modificados, resumo da solução e evidências de validação.
- Mova o arquivo de `./PLANOS/pendente/YYYY-MM-DD-<slug>.md` para `./PLANOS/executado/YYYY-MM-DD-<slug>.md` (usando `write_to_file` no destino e removendo da pasta pendente).
- Registre a ação em `memorias-ia/sessao-YYYY-MM-DD-<slug>.md` e indexe em `memorias-ia/historico-acoes.md`.
- Lembre-se: **nunca execute git commit na aplicação** (`rules/proibido-commit-ia.md`). Sugira a mensagem de commit para o usuário.

---

## 🛠️ Procedimento Operacional: Arquivamento (`/plano arquivar <slug>`)

1. Localize o arquivo em `./PLANOS/pendente/`.
2. Atualize o frontmatter para `status: "executado"` e registre a data.
3. Mova o arquivo para `./PLANOS/executado/`.
4. Notifique o usuário da conclusão do arquivamento.
