{
  "id": "desenvolvimento-checklist-de-funcionalidade",
  "title": "Desenvolvimento — Checklist de funcionalidade",
  "description": "Checklist reutilizável para implementar qualquer funcionalidade ou regra do SGE.",
  "type": "checklist-template",
  "status": "maintained",
  "visibility": "public",
  "tags": [
    "sge/desenvolvimento",
    "sge/checklist"
  ],
  "related": [
    "backlog-e-decisoes",
    "fluxos-principais",
    "migrations"
  ],
  "sourceRefs": [],
  "authors": [],
  "updated": null,
  "diagram": null,
  "body": "Copie este bloco para a nota da fase ou da funcionalidade. Marque somente o que se aplica e justifique itens não aplicáveis.\n\n## Entendimento\n\n- [ ] Problema e regra descritos em linguagem simples.\n- [ ] Decisão registrada em [Backlog e decisões](doc:backlog-e-decisoes), quando necessário.\n- [ ] Fluxo e estados descritos em [Fluxos principais](doc:fluxos-principais) ou nota própria.\n\n## Dados\n\n- [ ] Entidades, campos, estados, FKs, índices e snapshots definidos.\n- [ ] [Migration](doc:migrations) criada e revisada.\n- [ ] Modelos, relacionamentos e casts implementados.\n- [ ] Casts e helpers existentes foram reutilizados ou a duplicação foi justificada.\n- [ ] Factory/seed criada, se aplicável.\n- [ ] `migrate` em banco limpo executado.\n- [ ] `migrate:rollback` testado quando a reversão for segura.\n\n## Comportamento\n\n- [ ] Action/Service ou regra de domínio implementada.\n- [ ] Validações de entrada e de transição implementadas.\n- [ ] Gate/Policy e matriz de vínculo implementados; sem permissões persistidas.\n- [ ] Escopo por usuário, vínculo e campus validado.\n- [ ] Interface implementada no contexto correto.\n- [ ] Activity Log e notificações avaliados.\n- [ ] Jobs, filas, idempotência e reprocessamento avaliados.\n- [ ] Concerns, Actions e Providers afetados foram documentados.\n\n## Qualidade e entrega\n\n- [ ] Testes unitários, feature e autorização criados.\n- [ ] Caminho feliz e caminhos de erro testados.\n- [ ] `./vendor/bin/sail composer run test` executado com sucesso.\n- [ ] Fluxo Mermaid e canvas atualizados quando necessário.\n- [ ] Documentação textual atualizada.\n- [ ] Commit preparado com descrição objetiva.\n\n## Definição de pronto\n\n- [ ] Fluxo principal funciona do início ao fim.\n- [ ] Usuário permitido e proibido foram testados.\n- [ ] Dados históricos não dependem somente de cadastros atuais.\n- [ ] E-mails/notificações previstos foram verificados no Mailpit.\n- [ ] Migration funciona em banco limpo.\n- [ ] Não há regra duplicada ou contraditória entre código e documentação.",
  "sections": [
    {
      "id": "entendimento",
      "level": 2,
      "title": "Entendimento",
      "text": "- [ ] Problema e regra descritos em linguagem simples. - [ ] Decisão registrada em [Backlog e decisões](doc:backlog-e-decisoes), quando necessário. - [ ] Fluxo e estados descritos em [Fluxos principais](doc:fluxos-principais) ou nota própria.",
      "line": 3
    },
    {
      "id": "dados",
      "level": 2,
      "title": "Dados",
      "text": "- [ ] Entidades, campos, estados, FKs, índices e snapshots definidos. - [ ] [Migration](doc:migrations) criada e revisada. - [ ] Modelos, relacionamentos e casts implementados. - [ ] Casts e helpers existentes foram reutilizados ou a duplicação foi justificada. - [ ] Factory/seed criada, se aplicável. - [ ] `migrate` em banco limpo executado. - [ ] `migrate:rollback` testado quando a reversão for segura.",
      "line": 9
    },
    {
      "id": "comportamento",
      "level": 2,
      "title": "Comportamento",
      "text": "- [ ] Action/Service ou regra de domínio implementada. - [ ] Validações de entrada e de transição implementadas. - [ ] Gate/Policy e matriz de vínculo implementados; sem permissões persistidas. - [ ] Escopo por usuário, vínculo e campus validado. - [ ] Interface implementada no contexto correto. - [ ] Activity Log e notificações avaliados. - [ ] Jobs, filas, idempotência e reprocessamento avaliados. - [ ] Concerns, Actions e Providers afetados foram documentados.",
      "line": 19
    },
    {
      "id": "qualidade-e-entrega",
      "level": 2,
      "title": "Qualidade e entrega",
      "text": "- [ ] Testes unitários, feature e autorização criados. - [ ] Caminho feliz e caminhos de erro testados. - [ ] `./vendor/bin/sail composer run test` executado com sucesso. - [ ] Fluxo Mermaid e canvas atualizados quando necessário. - [ ] Documentação textual atualizada. - [ ] Commit preparado com descrição objetiva.",
      "line": 30
    },
    {
      "id": "definicao-de-pronto",
      "level": 2,
      "title": "Definição de pronto",
      "text": "- [ ] Fluxo principal funciona do início ao fim. - [ ] Usuário permitido e proibido foram testados. - [ ] Dados históricos não dependem somente de cadastros atuais. - [ ] E-mails/notificações previstos foram verificados no Mailpit. - [ ] Migration funciona em banco limpo. - [ ] Não há regra duplicada ou contraditória entre código e documentação.",
      "line": 39
    }
  ],
  "sourcePath": "content/desenvolvimento-checklist-de-funcionalidade.md",
  "visuals": [],
  "apiVersion": 1
}
