Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .agents/rules/utf-rules.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ Você é um agente de IA atuando como equipe de execução. O usuário (aluno)

## 1. Fases Estritas do Spec-Driven Development (SDD)
- Você está proibido de pular etapas. O ciclo é: Entendimento -> Planejamento -> Execução -> Revisão.
- Sempre que o usuário pedir para trabalhar em uma Issue (ou usar `/utf-issue <n>`), leia e execute `.agents/workflows/utf-workflow.md`. A execução de cada tarefa do plano segue `.agents/workflows/ciclo-tarefa.md` (`/utf-task <n>`).
- Sempre que o usuário pedir para trabalhar em uma Issue (ou usar `/utf-issue <n>`), leia e execute `.agents/workflows/utf-issue.md`. A execução de cada tarefa do plano segue `.agents/workflows/utf-task.md` (`/utf-task <n>`).
- **PROIBIDO CODIFICAR CEDO:** Nunca gere código funcional (TypeScript, HTML, CSS, etc.) sem antes conduzir um brainstorming e ter os artefatos `spec.md` e `plan.md` salvos e aprovados explicitamente pelo usuário.

## 2. Limites do Ciclo (as duas rodadas)
Existem **dois contadores diferentes**, aninhados. Eles não se somam e não se substituem:

- **Rodada de TDD** — vive dentro do implementador. Se o mesmo teste falhar duas vezes seguidas pelo mesmo motivo, ele PARA e relata. Não tenta uma terceira abordagem.
- **Rodada de revisão** — vive no fluxo `ciclo-tarefa`. Uma rodada é uma passada inteira: implementar → revisar → triagem do usuário. Havendo apontamento aceito na segunda, o fluxo PARA e escala. **Não existe rodada 3.**
- **Rodada de revisão** — vive no fluxo `utf-task` (o ciclo da tarefa). Uma rodada é uma passada inteira: implementar → revisar → triagem do usuário. Havendo apontamento aceito na segunda, o fluxo PARA e escala. **Não existe rodada 3.**

Ao estourar qualquer um dos dois, PARE IMEDIATAMENTE e diga qual estourou: "Estourei o limite de 2 rodadas de TDD" ou "de revisão". Há algo errado com a premissa ou o contexto — quem analisa é o usuário. Não entre em loops de refatoração infinitos.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ usuário — Issue criada aparece para a turma e para o professor.

A criação do board é **manual** (a interface do Projects muda rápido e o
aluno precisa conhecê-la): oriente-o a criar um Project no repositório com as
colunas `Backlog`, `Ready`, `In Progress`, `Done`, e a adicionar as Issues
colunas `Backlog`, `Ready`, `In Progress`, `Blocked` e `Done` (a `Blocked` recebe a história pausada à espera de outra — guia, seção *Quando o ciclo não é linear*), e a adicionar as Issues
recém-criadas — `Must Have` primeiro no topo do `Backlog`.

Se o MCP/`gh` da sessão conseguir adicionar as Issues ao Project, ofereça
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ status: rascunho # rascunho | aprovada

**Passo 3: Execução (uma tarefa por vez)**
- A branch da história existe desde o Passo 1. Antes do primeiro código, confira que o `spec.md` (aprovado) e o `plan.md` estão commitados nela — é esse `git log` que prova que a especificação veio antes do código.
- Execute **uma tarefa por vez** através do fluxo `ciclo-tarefa` (`.agents/workflows/ciclo-tarefa.md`), que despacha o subagente **implementador** com contexto limpo e, depois dele, dois revisores distintos e somente-leitura: **revisor-conformidade** (diff × critérios de aceite da `spec.md`) e **revisor-codigo** (diff × `docs/architecture.md`).
- Execute **uma tarefa por vez** através do fluxo `utf-task` (`.agents/workflows/utf-task.md`), que despacha o subagente **implementador** com contexto limpo e, depois dele, dois revisores distintos e somente-leitura: **revisor-conformidade** (diff × critérios de aceite da `spec.md`) e **revisor-codigo** (diff × `docs/architecture.md`).
- **Você nunca revisa o código que você mesmo despachou.** Revisor é sempre outro agente, sem permissão de escrita. Auto-auditoria não conta como revisão: quem escreveu carrega os mesmos pontos cegos.
- Ao fim de cada tarefa, pare e devolva o controle ao usuário. Ele pede a próxima.

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
6 changes: 3 additions & 3 deletions .agents/workflows/tutor.md → .agents/workflows/utf-tutor.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: Despacha o agente tutor no modo certo — explicar uma tarefa já feita (número), as decisões da spec (spec) ou conduzir o simulado pré-PR (prova). O modo "antes" é despachado automaticamente pelo ciclo-tarefa.
description: Despacha o agente tutor no modo certo — explicar uma tarefa já feita (número), as decisões da spec (spec) ou conduzir o simulado pré-PR (prova). O modo "antes" é despachado automaticamente pelo fluxo utf-task.
---

# Fluxo do tutor
Expand All @@ -13,7 +13,7 @@ Argumento recebido: **$1**
| `$1` | Modo do tutor |
| --- | --- |
| um número (ex.: `3`) | `depois` — explica a tarefa 3, já implementada e aprovada |
| `antes <n>` | `antes` — explica a tarefa antes da implementação (normalmente quem chama isso é o ciclo-tarefa) |
| `antes <n>` | `antes` — explica a tarefa antes da implementação (normalmente quem chama isso é o fluxo utf-task) |
| `spec` | `spec` — explica as consequências técnicas da spec em rascunho |
| `prova` | `prova` — simulado interativo sobre o diff inteiro da branch |

Expand All @@ -24,7 +24,7 @@ Sem argumento, pergunte ao usuário qual modo ele quer.
1. Descubra a pasta `specs/<issue>-<slug>/` da branch atual.
2. Todo despacho leva os caminhos completos de `spec.md`, `plan.md` e `docs/architecture.md`, além do **modo**.
3. Conforme o modo, acrescente:
- **`depois`**: número e texto literal da tarefa, e o comando de diff. Encontre o commit da tarefa com `git log --oneline --grep "tarefa <n>"` (convenção de commit do ciclo-tarefa) e monte `git diff <sha>^..<sha>`. Se a tarefa tiver mais de um commit ou o commit não for encontrado, monte o intervalo à mão e confirme com o usuário antes de despachar.
- **`depois`**: número e texto literal da tarefa, e o comando de diff. Encontre o commit da tarefa com `git log --oneline --grep "tarefa <n>"` (convenção de commit do fluxo utf-task) e monte `git diff <sha>^..<sha>`. Se a tarefa tiver mais de um commit ou o commit não for encontrado, monte o intervalo à mão e confirme com o usuário antes de despachar.
- **`antes`**: número e texto literal da tarefa, e os critérios de aceite ligados a ela, transcritos.
- **`prova`**: o comando do diff completo da branch: `git diff develop..HEAD` (no Gitflow a feature branch nasce da `develop` — diff contra a `main` traria trabalho de outras histórias já integradas).

Expand Down
2 changes: 1 addition & 1 deletion .claude/agents/implementador.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: implementador
description: Implementa UMA tarefa do plan.md seguindo TDD, com contexto limpo. Use quando o fluxo ciclo-tarefa despachar a implementação de uma tarefa. Não revisa o próprio trabalho.
description: Implementa UMA tarefa do plan.md seguindo TDD, com contexto limpo. Use quando o fluxo utf-task despachar a implementação de uma tarefa. Não revisa o próprio trabalho.
tools: Read, Grep, Glob, Edit, Write, Bash
---

Expand Down
2 changes: 1 addition & 1 deletion .claude/commands/utf-architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera o docs/architecture.md por entrevista guiada a partir do prd.md — stack, projeto, testes, glossário técnico, diagrama ER e os padrões cobrados pelos IDs. Garante o que o /utf-setup exige. Roda depois do /utf-prd.
---

Leia `.agents/workflows/architecture.md` e execute-o integralmente.
Leia `.agents/workflows/utf-architecture.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .claude/commands/utf-backlog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Leva as stories Ready do prd.md para o GitHub — uma Issue por story (descrição só com o link para o PRD) e orientação do Kanban no Projects. Roda depois do /utf-prd, com aceite do professor. Exige MCP do GitHub ou gh autenticado.
---

Leia `.agents/workflows/backlog.md` e execute-o integralmente.
Leia `.agents/workflows/utf-backlog.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .claude/commands/utf-design.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Conduz as decisões de design da Fase 0 — framework CSS, tokens (docs/design-tokens.md), protótipo navegável, Mobile-First e identidade PWA. Roda depois do /utf-prd e antes do /utf-architecture.
---

Leia `.agents/workflows/design.md` e execute-o integralmente.
Leia `.agents/workflows/utf-design.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .claude/commands/utf-issue.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ description: Inicia o ciclo SDD completo de uma Issue — entendimento e brainst
argument-hint: <numero-da-issue>
---

Leia `.agents/workflows/utf-workflow.md` e execute-o integralmente.
Leia `.agents/workflows/utf-issue.md` e execute-o integralmente.

Issue a trabalhar: $1
2 changes: 1 addition & 1 deletion .claude/commands/utf-prd.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera o docs/prd.md por entrevista guiada — tema, glossário, atores, user stories com critérios verificáveis, regras de negócio e NFRs. Uma pergunta por vez; quem decide é o aluno. Roda antes do /utf-architecture.
---

Leia `.agents/workflows/prd.md` e execute-o integralmente.
Leia `.agents/workflows/utf-prd.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .claude/commands/utf-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera a estrutura inicial do projeto a partir do docs/architecture.md. Roda uma vez, antes da primeira Issue. Task de manutenção — sem spec.
---

Leia `.agents/workflows/setup.md` e execute-o integralmente.
Leia `.agents/workflows/utf-setup.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .claude/commands/utf-task.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ description: Executa UMA tarefa do plan.md com implementador de contexto limpo,
argument-hint: [numero-da-tarefa]
---

Leia `.agents/workflows/ciclo-tarefa.md` e execute-o integralmente.
Leia `.agents/workflows/utf-task.md` e execute-o integralmente.

Tarefa a executar: $1 (se vazio, a primeira pendente do `plan.md` — o workflow explica como resolver)
2 changes: 1 addition & 1 deletion .claude/commands/utf-tutor.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ description: Chama o agente tutor — /utf-tutor <n> explica a tarefa n já impl
argument-hint: <n | antes <n> | spec | prova>
---

Leia `.agents/workflows/tutor.md` e execute-o integralmente.
Leia `.agents/workflows/utf-tutor.md` e execute-o integralmente.

Argumento: $ARGUMENTS
2 changes: 1 addition & 1 deletion .cursor/commands/utf-architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera o docs/architecture.md por entrevista guiada — stack, projeto, testes, glossário técnico e diagrama ER. Roda depois do /utf-design.
---

Leia `.agents/workflows/architecture.md` e execute-o integralmente.
Leia `.agents/workflows/utf-architecture.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .cursor/commands/utf-backlog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Leva as stories Ready do prd.md para o GitHub — uma Issue por story e orientação do Kanban. Exige gh autenticado ou MCP do GitHub.
---

Leia `.agents/workflows/backlog.md` e execute-o integralmente.
Leia `.agents/workflows/utf-backlog.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .cursor/commands/utf-design.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Conduz as decisões de design da Fase 0 — framework CSS, tokens (docs/design-tokens.md), protótipo navegável, Mobile-First e identidade PWA. Roda depois do /utf-prd e antes do /utf-architecture.
---

Leia `.agents/workflows/design.md` e execute-o integralmente.
Leia `.agents/workflows/utf-design.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .cursor/commands/utf-issue.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
description: Inicia o ciclo SDD completo de uma Issue — brainstorming, spec.md, plan.md e execução tarefa a tarefa.
---

Leia `.agents/workflows/utf-workflow.md` e execute-o integralmente.
Leia `.agents/workflows/utf-issue.md` e execute-o integralmente.

Issue a trabalhar: o valor que o usuário escreveu depois do comando.
2 changes: 1 addition & 1 deletion .cursor/commands/utf-prd.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera o docs/prd.md por entrevista guiada — tema, glossário, atores, user stories, regras de negócio e NFRs. Roda antes do /utf-design.
---

Leia `.agents/workflows/prd.md` e execute-o integralmente.
Leia `.agents/workflows/utf-prd.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .cursor/commands/utf-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera a estrutura inicial do projeto a partir do docs/architecture.md. Roda uma vez, antes da primeira Issue. Task de manutenção — sem spec.
---

Leia `.agents/workflows/setup.md` e execute-o integralmente.
Leia `.agents/workflows/utf-setup.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .cursor/commands/utf-task.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
description: Executa UMA tarefa do plan.md com implementador de contexto limpo, dois revisores somente-leitura e limite de 2 rodadas de revisão. Sem número, pega a próxima pendente.
---

Leia `.agents/workflows/ciclo-tarefa.md` e execute-o integralmente.
Leia `.agents/workflows/utf-task.md` e execute-o integralmente.

Tarefa a executar: o valor que o usuário escreveu depois do comando.
2 changes: 1 addition & 1 deletion .cursor/commands/utf-tutor.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
description: Chama o agente tutor: <n> explica a tarefa já implementada; antes <n> explica antes de implementar; spec explica a spec em rascunho; prova conduz o simulado pré-PR.
---

Leia `.agents/workflows/tutor.md` e execute-o integralmente.
Leia `.agents/workflows/utf-tutor.md` e execute-o integralmente.

Argumento: o valor que o usuário escreveu depois do comando.
2 changes: 1 addition & 1 deletion .opencode/command/utf-architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera o docs/architecture.md por entrevista guiada — stack, projeto, testes, glossário técnico e diagrama ER. Roda depois do /utf-design.
---

Leia `.agents/workflows/architecture.md` e execute-o integralmente.
Leia `.agents/workflows/utf-architecture.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .opencode/command/utf-backlog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Leva as stories Ready do prd.md para o GitHub — uma Issue por story e orientação do Kanban. Exige gh autenticado ou MCP do GitHub.
---

Leia `.agents/workflows/backlog.md` e execute-o integralmente.
Leia `.agents/workflows/utf-backlog.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .opencode/command/utf-design.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Conduz as decisões de design da Fase 0 — framework CSS, tokens (docs/design-tokens.md), protótipo navegável, Mobile-First e identidade PWA. Roda depois do /utf-prd e antes do /utf-architecture.
---

Leia `.agents/workflows/design.md` e execute-o integralmente.
Leia `.agents/workflows/utf-design.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .opencode/command/utf-issue.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
description: Inicia o ciclo SDD completo de uma Issue — brainstorming, spec.md, plan.md e execução tarefa a tarefa.
---

Leia `.agents/workflows/utf-workflow.md` e execute-o integralmente.
Leia `.agents/workflows/utf-issue.md` e execute-o integralmente.

Issue a trabalhar: $ARGUMENTS
2 changes: 1 addition & 1 deletion .opencode/command/utf-prd.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera o docs/prd.md por entrevista guiada — tema, glossário, atores, user stories, regras de negócio e NFRs. Roda antes do /utf-design.
---

Leia `.agents/workflows/prd.md` e execute-o integralmente.
Leia `.agents/workflows/utf-prd.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .opencode/command/utf-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
description: Gera a estrutura inicial do projeto a partir do docs/architecture.md. Roda uma vez, antes da primeira Issue. Task de manutenção — sem spec.
---

Leia `.agents/workflows/setup.md` e execute-o integralmente.
Leia `.agents/workflows/utf-setup.md` e execute-o integralmente.
2 changes: 1 addition & 1 deletion .opencode/command/utf-task.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
description: Executa UMA tarefa do plan.md com implementador de contexto limpo, dois revisores somente-leitura e limite de 2 rodadas de revisão. Sem número, pega a próxima pendente.
---

Leia `.agents/workflows/ciclo-tarefa.md` e execute-o integralmente.
Leia `.agents/workflows/utf-task.md` e execute-o integralmente.

Tarefa a executar: $ARGUMENTS
2 changes: 1 addition & 1 deletion .opencode/command/utf-tutor.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
description: Chama o agente tutor: <n> explica a tarefa já implementada; antes <n> explica antes de implementar; spec explica a spec em rascunho; prova conduz o simulado pré-PR.
---

Leia `.agents/workflows/tutor.md` e execute-o integralmente.
Leia `.agents/workflows/utf-tutor.md` e execute-o integralmente.

Argumento: $ARGUMENTS
9 changes: 4 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,15 +59,14 @@ O que é **norma inegociável** deste repositório são os cinco portões humano

## 🛑 O Portão de Entendimento (Regras de Pull Request)

Se o Pull Request for a primeira vez que você olha o código, o método falhou. Todo PR que altera código em `apps/` passa por uma verificação rígida antes de ser mesclado.
Se o Pull Request for a primeira vez que você olha o código, o método falhou. Todo PR passa por uma verificação automática antes de ser mesclado, e ela confere **uma regra só**:

**O PR será REPROVADO se:**
**O PR será REPROVADO se** a descrição não contiver a seção _"O que este PR faz e por quê"_ preenchida por você com pelo menos **400 caracteres** (não cole o _diff_ nem a saída da IA; explique com suas palavras). Vale para **todos** os PRs, inclusive os de manutenção.

1. Não atualizar nenhum arquivo em `docs/` ou `specs/`.
2. A descrição não contiver a seção _"O que este PR faz e por quê"_ preenchida por você com pelo menos 400 caracteres (Não cole o _diff_ nem a saída da IA; explique com suas palavras).
A documentação anda junto do código, mas quem cobra isso não é o CI: PR de história que muda comportamento atualiza `docs/` e `specs/` no mesmo commit — é o **auditor-final** (antes do PR) e o colega que revisa que conferem.

**Exceção (Manutenção puramente técnica):**
Se a mudança não afeta o produto (ex: atualizar versão, refatorar código, arrumar formatação), você não precisa criar um `spec.md`. Abra o PR direto e aplique a etiqueta `manutencao`.
Se a mudança não afeta o produto (ex: atualizar versão, refatorar código, arrumar formatação), você não precisa criar um `spec.md`. Abra o PR direto e aplique a etiqueta `manutencao` — a explicação de 400 caracteres continua valendo.

---

Expand Down
2 changes: 1 addition & 1 deletion docs/architecture.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# 🛠️ Architecture / Software Design Document (SSD)
# 🛠️ Architecture / SSD

**Projeto:** [nome]
**Versão:** 0.0.0 · esqueleto — preencha via `/utf-architecture`
Expand Down
Loading