atlas-workflow 0.9.1 → 0.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/README.md +5 -2
  2. package/VERSION +1 -1
  3. package/build/bump-version.mjs +6 -21
  4. package/build/cli/atlas-init.mjs +92 -5
  5. package/build/tests/classify-findings.test.mjs +20 -0
  6. package/build/tests/etapa3.test.mjs +161 -0
  7. package/build/tests/test_classify_findings.py +79 -0
  8. package/hosts/opencode/.opencode/agents/atlas-findings-repair.md +4 -0
  9. package/hosts/opencode/.opencode/agents/atlas-task-validator.md +18 -1
  10. package/hosts/opencode/.opencode/atlas/VERSION +1 -1
  11. package/hosts/opencode/.opencode/atlas/orchestrator/README.md +7 -5
  12. package/hosts/opencode/.opencode/atlas/orchestrator/commands/workflow.md +1 -1
  13. package/hosts/opencode/.opencode/atlas/orchestrator/references/host-adapters.md +13 -12
  14. package/hosts/opencode/.opencode/atlas/orchestrator/skills/atlas-workflow-orchestrator/SKILL.md +24 -17
  15. package/hosts/opencode/.opencode/atlas/packages/mcp-server/README.md +1 -1
  16. package/hosts/opencode/.opencode/atlas/packages/mcp-server/package.json +1 -1
  17. package/hosts/opencode/.opencode/atlas/packages/mcp-server/server.js +514 -20
  18. package/hosts/opencode/.opencode/atlas/packages/templates/BACKLOG_MESTRE_TEMPLATE.md +14 -3
  19. package/hosts/opencode/.opencode/atlas/packages/templates/PRD_TEMPLATE.md +2 -1
  20. package/hosts/opencode/.opencode/atlas/packages/templates/STATE_FILE_SCHEMA.md +25 -1
  21. package/hosts/opencode/.opencode/skills/_shared/references/stack-profiles.md +36 -0
  22. package/hosts/opencode/.opencode/skills/_shared/scripts/document_quality.mjs +252 -0
  23. package/hosts/opencode/.opencode/skills/atlas-backlog-generator/SKILL.md +7 -2
  24. package/hosts/opencode/.opencode/skills/atlas-direct-execute/SKILL.md +6 -2
  25. package/hosts/opencode/.opencode/skills/atlas-findings-repair/SKILL.md +11 -1
  26. package/hosts/opencode/.opencode/skills/atlas-plan-execute/SKILL.md +16 -2
  27. package/hosts/opencode/.opencode/skills/atlas-plan-handoff/SKILL.md +6 -4
  28. package/hosts/opencode/.opencode/skills/atlas-prd-interview/SKILL.md +7 -2
  29. package/hosts/opencode/.opencode/skills/atlas-slice-review/SKILL.md +37 -2
  30. package/hosts/opencode/.opencode/skills/atlas-slice-review/references/scenario-lenses.md +8 -0
  31. package/hosts/opencode/.opencode/skills/atlas-slice-review/scripts/classify_findings.mjs +60 -0
  32. package/hosts/opencode/.opencode/skills/atlas-slice-review/scripts/classify_findings.py +9 -41
  33. package/hosts/opencode/.opencode/skills/atlas-sprint-prd-generator/SKILL.md +7 -4
  34. package/hosts/opencode/.opencode/skills/atlas-task-validator/SKILL.md +29 -14
  35. package/hosts/opencode/.opencode/skills/atlas-workflow-orchestrator/SKILL.md +24 -17
  36. package/hosts/pi/.pi/agents/atlas-direct-execute.md +6 -2
  37. package/hosts/pi/.pi/agents/atlas-findings-repair.md +15 -1
  38. package/hosts/pi/.pi/agents/atlas-plan-execute.md +16 -2
  39. package/hosts/pi/.pi/agents/atlas-slice-review.md +37 -2
  40. package/hosts/pi/.pi/agents/atlas-task-validator.md +18 -1
  41. package/hosts/pi/atlas/VERSION +1 -1
  42. package/hosts/pi/atlas/orchestrator/README.md +7 -5
  43. package/hosts/pi/atlas/orchestrator/commands/workflow.md +1 -1
  44. package/hosts/pi/atlas/orchestrator/references/host-adapters.md +13 -12
  45. package/hosts/pi/atlas/orchestrator/skills/atlas-workflow-orchestrator/SKILL.md +24 -17
  46. package/hosts/pi/atlas/packages/mcp-server/README.md +1 -1
  47. package/hosts/pi/atlas/packages/mcp-server/package.json +1 -1
  48. package/hosts/pi/atlas/packages/mcp-server/server.js +514 -20
  49. package/hosts/pi/atlas/packages/templates/BACKLOG_MESTRE_TEMPLATE.md +14 -3
  50. package/hosts/pi/atlas/packages/templates/PRD_TEMPLATE.md +2 -1
  51. package/hosts/pi/atlas/packages/templates/STATE_FILE_SCHEMA.md +25 -1
  52. package/hosts/pi/skills/_shared/references/stack-profiles.md +36 -0
  53. package/hosts/pi/skills/_shared/scripts/document_quality.mjs +252 -0
  54. package/hosts/pi/skills/atlas-backlog-generator/SKILL.md +7 -2
  55. package/hosts/pi/skills/atlas-direct-execute/SKILL.md +6 -2
  56. package/hosts/pi/skills/atlas-findings-repair/SKILL.md +11 -1
  57. package/hosts/pi/skills/atlas-plan-execute/SKILL.md +16 -2
  58. package/hosts/pi/skills/atlas-plan-handoff/SKILL.md +6 -4
  59. package/hosts/pi/skills/atlas-prd-interview/SKILL.md +7 -2
  60. package/hosts/pi/skills/atlas-slice-review/SKILL.md +37 -2
  61. package/hosts/pi/skills/atlas-slice-review/references/scenario-lenses.md +8 -0
  62. package/hosts/pi/skills/atlas-slice-review/scripts/classify_findings.mjs +60 -0
  63. package/hosts/pi/skills/atlas-slice-review/scripts/classify_findings.py +9 -41
  64. package/hosts/pi/skills/atlas-sprint-prd-generator/SKILL.md +7 -4
  65. package/hosts/pi/skills/atlas-task-validator/SKILL.md +29 -14
  66. package/hosts/pi/skills/atlas-workflow-orchestrator/SKILL.md +24 -17
  67. package/hosts/zcode/.zcode-plugin/plugin.json +27 -0
  68. package/hosts/zcode/agents/atlas-direct-execute.md +31 -0
  69. package/hosts/zcode/agents/atlas-findings-repair.md +39 -0
  70. package/hosts/zcode/agents/atlas-plan-execute.md +33 -0
  71. package/hosts/zcode/agents/atlas-slice-review.md +27 -0
  72. package/hosts/zcode/agents/atlas-task-validator.md +138 -0
  73. package/hosts/zcode/packages/mcp-server/README.md +29 -0
  74. package/hosts/zcode/packages/mcp-server/VERSION +1 -0
  75. package/hosts/zcode/packages/mcp-server/package.json +15 -0
  76. package/hosts/zcode/packages/mcp-server/server.js +3897 -0
  77. package/hosts/zcode/packages/orchestrator/README.md +270 -0
  78. package/hosts/zcode/packages/orchestrator/commands/workflow.md +37 -0
  79. package/hosts/zcode/packages/orchestrator/defaults/paths.md +21 -0
  80. package/hosts/zcode/packages/orchestrator/references/host-adapters.md +106 -0
  81. package/hosts/zcode/packages/orchestrator/references/qa_s13_matrix.md +141 -0
  82. package/hosts/zcode/packages/orchestrator/references/subagent_dispatch.md +42 -0
  83. package/hosts/zcode/packages/orchestrator/skills/atlas-workflow-orchestrator/SKILL.md +391 -0
  84. package/hosts/zcode/packages/templates/BACKLOG_MESTRE_TEMPLATE.md +855 -0
  85. package/hosts/zcode/packages/templates/BOUNDARY_PRD_PLAN.md +93 -0
  86. package/hosts/zcode/packages/templates/PERGUNTAS_EM_ABERTO_TEMPLATE.md +139 -0
  87. package/hosts/zcode/packages/templates/PLAN_TEMPLATE.md +146 -0
  88. package/hosts/zcode/packages/templates/PRD_TEMPLATE.md +150 -0
  89. package/hosts/zcode/packages/templates/STATE_FILE_SCHEMA.md +56 -0
  90. package/hosts/zcode/skills/_shared/references/stack-profiles.md +36 -0
  91. package/hosts/zcode/skills/_shared/scripts/document_quality.mjs +252 -0
  92. package/hosts/zcode/skills/atlas-backlog-generator/SKILL.md +93 -0
  93. package/hosts/zcode/skills/atlas-backlog-generator/agents/openai.yaml +4 -0
  94. package/hosts/zcode/skills/atlas-direct-execute/SKILL.md +221 -0
  95. package/hosts/zcode/skills/atlas-direct-execute/agents/openai.yaml +7 -0
  96. package/hosts/zcode/skills/atlas-findings-repair/SKILL.md +158 -0
  97. package/hosts/zcode/skills/atlas-findings-repair/agents/openai.yaml +7 -0
  98. package/hosts/zcode/skills/atlas-plan-execute/SKILL.md +175 -0
  99. package/hosts/zcode/skills/atlas-plan-execute/agents/openai.yaml +7 -0
  100. package/hosts/zcode/skills/atlas-plan-execute/references/plan-contract.md +88 -0
  101. package/hosts/zcode/skills/atlas-plan-execute/references/quality-gates.md +60 -0
  102. package/hosts/zcode/skills/atlas-plan-execute/scripts/check_budget_state.py +96 -0
  103. package/hosts/zcode/skills/atlas-plan-execute/scripts/extract_plan_contract.py +191 -0
  104. package/hosts/zcode/skills/atlas-plan-execute/scripts/validate_gate_result.py +56 -0
  105. package/hosts/zcode/skills/atlas-plan-handoff/SKILL.md +183 -0
  106. package/hosts/zcode/skills/atlas-plan-handoff/agents/openai.yaml +7 -0
  107. package/hosts/zcode/skills/atlas-prd-interview/SKILL.md +82 -0
  108. package/hosts/zcode/skills/atlas-prd-interview/agents/openai.yaml +7 -0
  109. package/hosts/zcode/skills/atlas-slice-review/SKILL.md +156 -0
  110. package/hosts/zcode/skills/atlas-slice-review/agents/openai.yaml +4 -0
  111. package/hosts/zcode/skills/atlas-slice-review/references/review-contract.md +58 -0
  112. package/hosts/zcode/skills/atlas-slice-review/references/scenario-lenses.md +57 -0
  113. package/hosts/zcode/skills/atlas-slice-review/scripts/classify_findings.mjs +60 -0
  114. package/hosts/zcode/skills/atlas-slice-review/scripts/classify_findings.py +24 -0
  115. package/hosts/zcode/skills/atlas-slice-review/scripts/extract_review_slice.py +158 -0
  116. package/hosts/zcode/skills/atlas-sprint-prd-generator/SKILL.md +77 -0
  117. package/hosts/zcode/skills/atlas-sprint-prd-generator/agents/openai.yaml +7 -0
  118. package/hosts/zcode/skills/atlas-task-validator/SKILL.md +173 -0
  119. package/hosts/zcode/skills/atlas-task-validator/agents/openai.yaml +7 -0
  120. package/hosts/zcode/skills/atlas-workflow-orchestrator/SKILL.md +391 -0
  121. package/package.json +1 -1
  122. package/plugins/atlas-workflow-orchestrator/.codex/agents/atlas-findings-repair.toml +1 -1
  123. package/plugins/atlas-workflow-orchestrator/.codex/agents/atlas-task-validator.toml +1 -1
  124. package/plugins/atlas-workflow-orchestrator/.codex-plugin/plugin.json +1 -1
  125. package/plugins/atlas-workflow-orchestrator/VERSION +1 -1
  126. package/plugins/atlas-workflow-orchestrator/agents/atlas-findings-repair.md +4 -0
  127. package/plugins/atlas-workflow-orchestrator/agents/atlas-task-validator.md +18 -1
  128. package/plugins/atlas-workflow-orchestrator/orchestrator/README.md +7 -5
  129. package/plugins/atlas-workflow-orchestrator/orchestrator/commands/workflow.md +1 -1
  130. package/plugins/atlas-workflow-orchestrator/orchestrator/references/host-adapters.md +13 -12
  131. package/plugins/atlas-workflow-orchestrator/orchestrator/skills/atlas-workflow-orchestrator/SKILL.md +24 -17
  132. package/plugins/atlas-workflow-orchestrator/packages/mcp-server/README.md +1 -1
  133. package/plugins/atlas-workflow-orchestrator/packages/mcp-server/package.json +1 -1
  134. package/plugins/atlas-workflow-orchestrator/packages/mcp-server/server.js +514 -20
  135. package/plugins/atlas-workflow-orchestrator/packages/skills/_shared/references/stack-profiles.md +36 -0
  136. package/plugins/atlas-workflow-orchestrator/packages/skills/_shared/scripts/document_quality.mjs +252 -0
  137. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-backlog-generator/SKILL.md +7 -2
  138. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-direct-execute/SKILL.md +6 -2
  139. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-findings-repair/SKILL.md +11 -1
  140. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-plan-execute/SKILL.md +16 -2
  141. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-plan-handoff/SKILL.md +6 -4
  142. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-prd-interview/SKILL.md +7 -2
  143. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-slice-review/SKILL.md +37 -2
  144. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-slice-review/references/scenario-lenses.md +8 -0
  145. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-slice-review/scripts/classify_findings.mjs +60 -0
  146. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-slice-review/scripts/classify_findings.py +9 -41
  147. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-sprint-prd-generator/SKILL.md +7 -4
  148. package/plugins/atlas-workflow-orchestrator/packages/skills/atlas-task-validator/SKILL.md +29 -14
  149. package/plugins/atlas-workflow-orchestrator/packages/templates/BACKLOG_MESTRE_TEMPLATE.md +14 -3
  150. package/plugins/atlas-workflow-orchestrator/packages/templates/PRD_TEMPLATE.md +2 -1
  151. package/plugins/atlas-workflow-orchestrator/packages/templates/STATE_FILE_SCHEMA.md +25 -1
  152. package/plugins/atlas-workflow-orchestrator/skills/_shared/references/stack-profiles.md +36 -0
  153. package/plugins/atlas-workflow-orchestrator/skills/_shared/scripts/document_quality.mjs +252 -0
  154. package/plugins/atlas-workflow-orchestrator/skills/atlas-backlog-generator/SKILL.md +7 -2
  155. package/plugins/atlas-workflow-orchestrator/skills/atlas-direct-execute/SKILL.md +6 -2
  156. package/plugins/atlas-workflow-orchestrator/skills/atlas-findings-repair/SKILL.md +11 -1
  157. package/plugins/atlas-workflow-orchestrator/skills/atlas-plan-execute/SKILL.md +16 -2
  158. package/plugins/atlas-workflow-orchestrator/skills/atlas-plan-handoff/SKILL.md +6 -4
  159. package/plugins/atlas-workflow-orchestrator/skills/atlas-prd-interview/SKILL.md +7 -2
  160. package/plugins/atlas-workflow-orchestrator/skills/atlas-slice-review/SKILL.md +37 -2
  161. package/plugins/atlas-workflow-orchestrator/skills/atlas-slice-review/references/scenario-lenses.md +8 -0
  162. package/plugins/atlas-workflow-orchestrator/skills/atlas-slice-review/scripts/classify_findings.mjs +60 -0
  163. package/plugins/atlas-workflow-orchestrator/skills/atlas-slice-review/scripts/classify_findings.py +9 -41
  164. package/plugins/atlas-workflow-orchestrator/skills/atlas-sprint-prd-generator/SKILL.md +7 -4
  165. package/plugins/atlas-workflow-orchestrator/skills/atlas-task-validator/SKILL.md +29 -14
  166. package/plugins/atlas-workflow-orchestrator/skills/atlas-workflow-orchestrator/SKILL.md +24 -17
  167. package/plugins/atlas-workflow-orchestrator/templates/BACKLOG_MESTRE_TEMPLATE.md +14 -3
  168. package/plugins/atlas-workflow-orchestrator/templates/PRD_TEMPLATE.md +2 -1
  169. package/plugins/atlas-workflow-orchestrator/templates/STATE_FILE_SCHEMA.md +25 -1
@@ -0,0 +1,855 @@
1
+ # Backlog mestre — [NOME_DO_PROJETO_OU_FEATURE]
2
+
3
+ Plano macro de desenvolvimento de **[NOME_DO_PROJETO_OU_FEATURE]**. Este arquivo organiza **fases de entrega**, **sprints executáveis**, decisões de sequência, gates e critérios de aceite. Ele não substitui visão de produto, specs técnicas, contratos backend, documentação de arquitetura ou decisões formais aprovadas.
4
+
5
+ Este backlog funciona como **índice e fonte de estado das sprints**. O detalhe de cada sprint vive no **PRD específico da sprint** (`PRD_TEMPLATE.md`), nunca duplicado aqui. As fases (seções 9 a 15) são um **catálogo de tasks-modelo** reutilizável que alimenta as sprints — não são execução direta.
6
+
7
+ Use este template como base para qualquer roadmap/backlog mestre. Substitua todos os placeholders entre colchetes antes de considerar o documento pronto.
8
+
9
+ ---
10
+
11
+ ## 1. Precedência documental
12
+
13
+ Quando houver conflito, seguir esta ordem:
14
+
15
+ 1. **Decisões formais aprovadas**: [link/arquivo]
16
+ 2. **Visão de produto / PRD macro / requisitos**: [link/arquivo]
17
+ 3. **Specs técnicas / contratos backend / OpenAPI**: [link/arquivo]
18
+ 4. **PRD da sprint corrente** (`PRD_S<NN>_*.md`): [link/arquivo]
19
+ 5. **Guia geral da feature/projeto**: [link/arquivo]
20
+ 6. **Este backlog mestre**
21
+ 7. **Notas exploratórias, checklists e rascunhos**: [link/arquivo]
22
+
23
+ Observações:
24
+
25
+ - Este backlog organiza execução e estado; não cria regra de negócio sozinho.
26
+ - Qualquer mudança de produto deve atualizar primeiro a fonte canônica de produto.
27
+ - Qualquer mudança de contrato deve atualizar primeiro a spec/contrato canônico.
28
+ - Detalhe de execução de uma sprint mora no PRD dela; o backlog só aponta e registra status.
29
+
30
+ ---
31
+
32
+ ## 2. Objetivo do backlog
33
+
34
+ Descrever em fases e sprints tudo que precisa ser descoberto, especificado, implementado, validado e publicado para entregar **[RESULTADO_FINAL_ESPERADO]**.
35
+
36
+ ### Resultado esperado
37
+
38
+ - [ ] [Resultado principal 1]
39
+ - [ ] [Resultado principal 2]
40
+ - [ ] [Resultado principal 3]
41
+
42
+ ### Fora do escopo
43
+
44
+ - [ ] [Item explicitamente fora do escopo 1]
45
+ - [ ] [Item explicitamente fora do escopo 2]
46
+ - [ ] [Item explicitamente fora do escopo 3]
47
+
48
+ ---
49
+
50
+ ## 3. Princípios do backlog
51
+
52
+ 1. **Fase só avança com critério de pronto verde.**
53
+ 2. **Sprint só inicia com Definition of Ready verde** (ver seção 6).
54
+ 3. **Sprint só fecha com Definition of Done verde** (ver seção 6).
55
+ 4. **Contrato antes da implementação quando houver integração.**
56
+ 5. **Produto antes de arquitetura quando houver ambiguidade de regra.**
57
+ 6. **Backend/infra antes do app quando o app depender de fonte real.**
58
+ 7. **Sem mock como verdade de negócio.** Mocks apoiam desenvolvimento; contrato real prevalece.
59
+ 8. **Sem regressão de fluxo existente.** Toda sprint que toca área já entregue deve preservar comportamento atual ou listar mudança aprovada.
60
+ 9. **Estados de erro são parte da entrega.** Sucesso sem falha/empty/loading/retry não fecha sprint.
61
+ 10. **Observabilidade e suporte não ficam para depois.** Logs, métricas e runbook entram nas sprints certas.
62
+ 11. **Documentação acompanha decisão real.** Toda descoberta que muda escopo, contrato ou UX atualiza docs no mesmo ciclo.
63
+ 12. **Critério de aceite precisa ser verificável.** Evitar critérios subjetivos sem evidência.
64
+ 13. **Sprint pequena e vertical.** Cada sprint é uma fatia entregável e testável; se ficar grande demais, quebra (ver seção 6).
65
+
66
+ ---
67
+
68
+ ## 4. Estado inicial
69
+
70
+ - [ ] Documento de visão/requisitos existe e está atualizado.
71
+ - [ ] Guia geral da feature/projeto existe.
72
+ - [ ] Contratos necessários estão identificados.
73
+ - [ ] Dependências externas estão mapeadas.
74
+ - [ ] Riscos principais estão listados.
75
+ - [ ] Ambiente de desenvolvimento/homologação está definido.
76
+ - [ ] Donos/responsáveis por decisões críticas estão definidos.
77
+
78
+ ### Status atual
79
+
80
+ | Área | Status | Observação |
81
+ |---|---|---|
82
+ | Produto | [VERDE/AMARELO/VERMELHO] | [observação] |
83
+ | UX/UI | [VERDE/AMARELO/VERMELHO] | [observação] |
84
+ | Backend/API | [VERDE/AMARELO/VERMELHO] | [observação] |
85
+ | Front-end/App | [VERDE/AMARELO/VERMELHO] | [observação] |
86
+ | Infra/DevOps | [VERDE/AMARELO/VERMELHO] | [observação] |
87
+ | QA/Homologação | [VERDE/AMARELO/VERMELHO] | [observação] |
88
+ | Segurança/Compliance | [VERDE/AMARELO/VERMELHO] | [observação] |
89
+
90
+ ---
91
+
92
+ ## 5. Mapa de dependências
93
+
94
+ ### Dependências internas
95
+
96
+ - [ ] [Feature/módulo interno 1]
97
+ - [ ] [Feature/módulo interno 2]
98
+ - [ ] [Serviço/pacote interno 3]
99
+
100
+ ### Dependências externas
101
+
102
+ - [ ] [Fornecedor/API/serviço externo 1]
103
+ - [ ] [Fornecedor/API/serviço externo 2]
104
+ - [ ] [Conta/ambiente/acesso externo 3]
105
+
106
+ ### Decisões bloqueantes
107
+
108
+ | ID | Decisão | Bloqueia | Dono | Status |
109
+ |---|---|---|---|---|
110
+ | D1 | [decisão] | [sprint/fase/task] | [pessoa/time] | [pendente/decidido] |
111
+ | D2 | [decisão] | [sprint/fase/task] | [pessoa/time] | [pendente/decidido] |
112
+
113
+ ---
114
+
115
+ ## 6. Modelo de sprint
116
+
117
+ Regras que governam toda sprint deste backlog. Definidas uma vez, valem para todas — não repetir por sprint.
118
+
119
+ ### 6.1 O que é uma sprint aqui
120
+
121
+ Uma sprint é uma **fatia vertical entregável e testável** de valor: pequena, com objetivo único, critério de aceite verificável e PRD próprio. Não é um período de tempo fixo; é uma unidade de entrega.
122
+
123
+ ### 6.2 Convenção de nomenclatura
124
+
125
+ - ID: `S<NN>` (`S01`, `S02`, …, `S30`). Zero à esquerda para ordenação estável.
126
+ - Quebra de sprint grande: `S<NN>a`, `S<NN>b`, `S<NN>c`.
127
+ - PRD da sprint: `PRD_S<NN>_<slug>.md`, gerado a partir de `PRD_TEMPLATE.md` (template intocável).
128
+ - Cada sprint aponta para exatamente um PRD. O PRD é a fonte de detalhe; o backlog é índice + estado.
129
+
130
+ ### 6.3 Tamanho e quebra
131
+
132
+ - Medida de tamanho é **task, não tempo**. Uma sprint bem definida e documentada pode ser executada em um dia; o que limita é a quantidade de tasks, não a duração.
133
+ - Limite: **6 a 8 tasks** por sprint.
134
+ - Se ao planejar ela passar de 8 tasks → quebrar em `S<NN>a/b/c` antes de iniciar.
135
+ - Preferir mais sprints curtas a poucas sprints longas. Sprint longa esconde risco e atrasa feedback.
136
+ - Sinal de quebra: mais de um objetivo, mais de uma camada não-trivial, ou critério de aceite com "e" demais.
137
+
138
+ ### 6.4 Estados de sprint
139
+
140
+ `backlog → ready → doing → review → done`
141
+ Estado lateral: `blocked` (registrar bloqueador e dono).
142
+
143
+ | Estado | Significa |
144
+ |---|---|
145
+ | backlog | Sprint identificada, ainda sem PRD pronto ou sem DoR. |
146
+ | ready | DoR verde. Pode iniciar. |
147
+ | doing | Em implementação. |
148
+ | review | Código pronto, em revisão/QA/evidência. |
149
+ | done | DoD verde. Fechada. |
150
+ | blocked | Parada por dependência/decisão. Tem dono e ação. |
151
+
152
+ ### 6.5 Definition of Ready (DoR) — vale para toda sprint
153
+
154
+ - [ ] PRD da sprint criado a partir do `PRD_TEMPLATE.md` e aprovado.
155
+ - [ ] Objetivo único e claro.
156
+ - [ ] Contrato/spec necessário existe (ou explicitamente mockado com aprovação).
157
+ - [ ] Dependências de sprints anteriores satisfeitas (ver seção 8).
158
+ - [ ] Critérios de aceite verificáveis definidos no PRD.
159
+ - [ ] Sem decisão bloqueante pendente.
160
+
161
+ ### 6.6 Definition of Done (DoD) — vale para toda sprint
162
+
163
+ - [ ] Critérios de aceite do PRD verdes.
164
+ - [ ] Loading/empty/error/success cobertos quando aplicável.
165
+ - [ ] Sem regressão em fluxo existente (ou mudança aprovada e registrada).
166
+ - [ ] Testes definidos no PRD passando.
167
+ - [ ] Observabilidade/documentação da sprint atualizadas quando aplicável.
168
+ - [ ] Evidência registrada.
169
+ - [ ] Status atualizado para `done` na seção 7.
170
+
171
+ ---
172
+
173
+ ## 7. Registro de sprints
174
+
175
+ Núcleo do backlog. Uma linha por sprint. Atualizar status aqui é a principal forma de manter o backlog vivo. Detalhe completo sempre no PRD apontado.
176
+
177
+ | ID | Sprint | Fase-fonte | Objetivo (1 linha) | MoSCoW | Ganho | Esforço | Prioridade | PRD | Depende de | Estado | Gate |
178
+ |---|---|---|---|---|---|---|---|---|---|---|---|
179
+ | S01 | [nome] | F0 | [objetivo curto] | Must | Alto | Baixo | P0 | `PRD_S01_[slug].md` | — | backlog | — |
180
+ | S02 | [nome] | F1 | [objetivo curto] | Must | Alto | Médio | P0 | `PRD_S02_[slug].md` | S01 | backlog | — |
181
+ | S03 | [nome] | F1 | [objetivo curto] | Should | Médio | Baixo | P1 | `PRD_S03_[slug].md` | S01 | backlog | — |
182
+ | S04 | [nome] | F2 | [objetivo curto] | Must | Alto | Alto | P1 | `PRD_S04_[slug].md` | S02,S03 | backlog | — |
183
+ | … | … | … | … | … | … | … | … | … | … | … | … |
184
+
185
+ Legenda:
186
+ - **Fase-fonte**: fase do catálogo (seções 9-15) de onde as tasks-modelo desta sprint vêm.
187
+ - **MoSCoW**: `Must`, `Should`, `Could` ou `Won't now` (ver seção 8.3).
188
+ - **Ganho**: valor, desbloqueio ou redução de risco esperada (`alto`, `médio`, `baixo`).
189
+ - **Esforço**: esforço relativo para concluir a sprint (`baixo`, `médio`, `alto`).
190
+ - **Prioridade**: `P0`, `P1`, `P2` ou `P3`, definida pela matriz da seção 8.3.
191
+ - **PRD**: arquivo do PRD da sprint. Enquanto não existir, manter `[pendente]`.
192
+ - **Depende de**: IDs de sprints que precisam estar `done` antes desta entrar em `ready`.
193
+ - **Gate**: `✅` quando a sprint passou o gate de sequência aplicável (ver seção 17); senão `—`.
194
+
195
+ ---
196
+
197
+ ## 8. Sequência e progresso
198
+
199
+ ### 8.1 Grafo de dependência entre sprints
200
+
201
+ Sequência real de execução (sprint → sprint). Atualizar quando dependências mudarem.
202
+
203
+ ```mermaid
204
+ graph TD
205
+ S01 --> S02
206
+ S01 --> S03
207
+ S02 --> S04
208
+ S03 --> S04
209
+ %% [adicionar arestas conforme seção 7]
210
+ ```
211
+
212
+ ### 8.2 Progresso por fase
213
+
214
+ Contagem simples de sprints fechadas por fase. Substitui a sensação de "fase gigante sem fim".
215
+
216
+ | Fase | Sprints | Done | Em curso | Restante |
217
+ |---|---|---|---|---|
218
+ | F0 — Descoberta | [n] | [x] | [y] | [z] |
219
+ | F1 — Especificação/contrato | [n] | [x] | [y] | [z] |
220
+ | F2 — Backend/infra | [n] | [x] | [y] | [z] |
221
+ | F3 — Front-end/app | [n] | [x] | [y] | [z] |
222
+ | F4 — Edge/hardening | [n] | [x] | [y] | [z] |
223
+ | F5 — QA/homologação | [n] | [x] | [y] | [z] |
224
+ | F6 — Produção/rollout | [n] | [x] | [y] | [z] |
225
+ | **Total** | **[N]** | **[X]** | **[Y]** | **[Z]** |
226
+
227
+ ### 8.3 Priorização — MoSCoW e esforço x ganho
228
+
229
+ Esta regra define como escolher a próxima sprint sem depender de preferência subjetiva. A ordem final respeita sempre: dependências, Definition of Ready, MoSCoW, esforço x ganho e risco.
230
+
231
+ #### Classificação MoSCoW
232
+
233
+ | Classe | Significa | Regra de uso |
234
+ |---|---|---|
235
+ | Must | Obrigatório para o resultado final, segurança, contrato, compliance ou desbloqueio de outras sprints. | Sem isto, a entrega não pode ser considerada válida. |
236
+ | Should | Importante para qualidade, adoção ou robustez, mas contornável temporariamente. | Pode ficar depois de um Must se não bloquear fluxo crítico. |
237
+ | Could | Melhoria desejável, otimização ou refinamento. | Fazer apenas após Must/Should críticos ou quando esforço for baixo. |
238
+ | Won't now | Fora do ciclo atual. | Registrar para evitar reabrir discussão sem nova decisão. |
239
+
240
+ Regras:
241
+
242
+ - Todo item `Must` precisa ter critério de aceite verificável no PRD da sprint.
243
+ - Um `Must` sem dependência pronta permanece bloqueado; não pula a fila por urgência verbal.
244
+ - `Should` pode virar `Must` somente com decisão registrada na seção 18.
245
+ - `Could` não deve atrasar sprint `Must` ou `Should` já pronta.
246
+ - `Won't now` não entra em sprint executável do ciclo atual.
247
+
248
+ #### Matriz esforço x ganho
249
+
250
+ | Ganho | Esforço | Prioridade sugerida | Decisão padrão |
251
+ |---|---|---|---|
252
+ | Alto | Baixo | P0 | Fazer primeiro, se DoR estiver verde. |
253
+ | Alto | Médio | P0/P1 | Fazer cedo; quebrar se esconder risco. |
254
+ | Alto | Alto | P1 | Planejar, reduzir escopo ou quebrar em sprints menores. |
255
+ | Médio | Baixo | P1 | Fazer quando desbloquear progresso ou reduzir risco. |
256
+ | Médio | Médio | P2 | Fazer após Must/P1 críticos. |
257
+ | Médio | Alto | P2/P3 | Reavaliar escopo antes de iniciar. |
258
+ | Baixo | Baixo | P2 | Fazer se for rápido e não competir com fluxo crítico. |
259
+ | Baixo | Médio | P3 | Adiar salvo dependência clara. |
260
+ | Baixo | Alto | P3 | Adiar, remover ou transformar em `Won't now`. |
261
+
262
+ #### Regra para escolher a próxima sprint
263
+
264
+ 1. Filtrar sprints com dependências satisfeitas.
265
+ 2. Filtrar sprints com DoR verde ou com ação clara para ficar `ready`.
266
+ 3. Priorizar `Must` antes de `Should`, `Should` antes de `Could`.
267
+ 4. Dentro da mesma classe MoSCoW, priorizar maior ganho e menor esforço.
268
+ 5. Em empate, priorizar a sprint que reduz maior risco ou desbloqueia mais sprints futuras.
269
+ 6. Registrar a escolhida na seção 20 com motivo explícito.
270
+
271
+ ---
272
+
273
+ ## 9. Catálogo — Fase 0 — Descoberta e fechamento de premissas
274
+
275
+ > As seções 9 a 15 são **catálogo de tasks-modelo**. Cada sprint na seção 7 referencia a fase-fonte e puxa daqui as tasks que precisa. Não executar direto destas listas; transformar em sprints com PRD.
276
+
277
+ Objetivo: eliminar ambiguidades que impedem especificação, contrato ou planejamento seguro.
278
+
279
+ ### Tasks-modelo
280
+
281
+ - [ ] **F0-A1 — Consolidar fontes canônicas**
282
+ - [ ] Localizar documentos existentes.
283
+ - [ ] Marcar documentos obsoletos.
284
+ - [ ] Definir ordem de precedência.
285
+ - [ ] Registrar links no topo deste backlog.
286
+
287
+ - [ ] **F0-A2 — Mapear stakeholders e donos de decisão**
288
+ - [ ] Produto.
289
+ - [ ] Design/UX.
290
+ - [ ] Backend.
291
+ - [ ] Front-end.
292
+ - [ ] QA.
293
+ - [ ] Segurança/compliance.
294
+ - [ ] Fornecedor externo, se houver.
295
+
296
+ - [ ] **F0-A3 — Levantar requisitos funcionais**
297
+ - [ ] Fluxo feliz.
298
+ - [ ] Fluxos alternativos.
299
+ - [ ] Permissões/papéis.
300
+ - [ ] Estados vazios.
301
+ - [ ] Estados de erro.
302
+ - [ ] Regras de negócio.
303
+
304
+ - [ ] **F0-A4 — Levantar requisitos não funcionais**
305
+ - [ ] Performance.
306
+ - [ ] Segurança.
307
+ - [ ] Privacidade/PII.
308
+ - [ ] Auditoria.
309
+ - [ ] Observabilidade.
310
+ - [ ] Disponibilidade.
311
+ - [ ] Escalabilidade.
312
+
313
+ - [ ] **F0-A5 — Mapear riscos e perguntas abertas**
314
+ - [ ] Riscos técnicos.
315
+ - [ ] Riscos de produto.
316
+ - [ ] Riscos de prazo/escopo.
317
+ - [ ] Riscos regulatórios.
318
+ - [ ] Riscos de dependência externa.
319
+ - [ ] Perguntas bloqueantes.
320
+ - [ ] Perguntas não bloqueantes.
321
+
322
+ ### Critério de saída da fase
323
+
324
+ - [ ] Fontes canônicas identificadas.
325
+ - [ ] Perguntas bloqueantes têm dono e prazo/ação.
326
+ - [ ] Requisitos principais estão registrados.
327
+ - [ ] Riscos principais têm mitigação inicial.
328
+ - [ ] Go/no-go para especificação emitido.
329
+
330
+ ---
331
+
332
+ ## 10. Catálogo — Fase 1 — Especificação e contrato
333
+
334
+ Objetivo: transformar premissas em contrato executável para produto, design, backend, front-end e QA.
335
+
336
+ ### Tasks-modelo
337
+
338
+ - [ ] **F1-A1 — Especificação funcional**
339
+ - [ ] Descrever jornada principal.
340
+ - [ ] Descrever jornadas alternativas.
341
+ - [ ] Descrever estados de erro.
342
+ - [ ] Descrever permissões.
343
+ - [ ] Descrever regras de negócio.
344
+ - [ ] Definir eventos importantes.
345
+
346
+ - [ ] **F1-A2 — Especificação UX/UI**
347
+ - [ ] Mapear telas/componentes.
348
+ - [ ] Definir estados: loading, empty, error, success.
349
+ - [ ] Definir ações primárias/secundárias.
350
+ - [ ] Definir mensagens ao usuário.
351
+ - [ ] Definir comportamento responsivo.
352
+ - [ ] Definir acessibilidade mínima.
353
+
354
+ - [ ] **F1-A3 — Contrato backend/API**
355
+ - [ ] Definir endpoints.
356
+ - [ ] Definir requests.
357
+ - [ ] Definir responses.
358
+ - [ ] Definir status/enums.
359
+ - [ ] Definir payload padrão de erro.
360
+ - [ ] Definir paginação, se aplicável.
361
+ - [ ] Definir idempotência, se aplicável.
362
+ - [ ] Definir autenticação/autorização.
363
+
364
+ - [ ] **F1-A4 — Modelo de domínio**
365
+ - [ ] Entidades.
366
+ - [ ] Value Objects.
367
+ - [ ] Enums.
368
+ - [ ] Invariantes.
369
+ - [ ] Transições de estado.
370
+ - [ ] Campos monetários em centavos, se aplicável.
371
+ - [ ] Datas em ISO 8601 UTC, se aplicável.
372
+
373
+ - [ ] **F1-A5 — Estratégia de mocks/seeds**
374
+ - [ ] Mock de sucesso.
375
+ - [ ] Mock de vazio.
376
+ - [ ] Mock de erro recuperável.
377
+ - [ ] Mock de erro final.
378
+ - [ ] Mock de permissão negada.
379
+ - [ ] Seeds de backend, se aplicável.
380
+
381
+ - [ ] **F1-A6 — Matriz de aceite e QA**
382
+ - [ ] Cenários de teste funcionais.
383
+ - [ ] Cenários de regressão.
384
+ - [ ] Cenários de segurança.
385
+ - [ ] Cenários de integração externa.
386
+ - [ ] Critérios de evidência.
387
+
388
+ ### Critério de saída da fase
389
+
390
+ - [ ] Spec funcional aprovada.
391
+ - [ ] UX/UI definido o suficiente para implementação.
392
+ - [ ] Contrato backend/API aprovado.
393
+ - [ ] Modelo de domínio sem ambiguidades críticas.
394
+ - [ ] QA consegue derivar cenários sem inferência.
395
+ - [ ] Go/no-go para implementação emitido.
396
+
397
+ ---
398
+
399
+ ## 11. Catálogo — Fase 2 — Backend / infraestrutura / persistência
400
+
401
+ Objetivo: entregar fonte de verdade, persistência, integrações e contrato consumível.
402
+
403
+ ### Tasks-modelo
404
+
405
+ - [ ] **F2-A1 — Estrutura de dados**
406
+ - [ ] Criar/alterar tabelas/coleções.
407
+ - [ ] Definir índices.
408
+ - [ ] Definir constraints.
409
+ - [ ] Definir auditoria.
410
+ - [ ] Definir migrações rollback-safe quando possível.
411
+
412
+ - [ ] **F2-A2 — Segurança de dados**
413
+ - [ ] Autenticação.
414
+ - [ ] Autorização/RLS/policies.
415
+ - [ ] Proteção contra acesso cross-tenant.
416
+ - [ ] Proteção de PII.
417
+ - [ ] Logs sem segredos.
418
+
419
+ - [ ] **F2-A3 — APIs/RPCs/funções**
420
+ - [ ] Implementar endpoints.
421
+ - [ ] Validar payloads.
422
+ - [ ] Padronizar erros.
423
+ - [ ] Garantir idempotência, se aplicável.
424
+ - [ ] Garantir transações, se aplicável.
425
+
426
+ - [ ] **F2-A4 — Integrações externas**
427
+ - [ ] Cliente externo.
428
+ - [ ] Auth/credenciais.
429
+ - [ ] Timeouts/retries.
430
+ - [ ] Webhooks/callbacks.
431
+ - [ ] Persistência de eventos.
432
+ - [ ] Conciliação/reprocessamento.
433
+
434
+ - [ ] **F2-A5 — Observabilidade backend**
435
+ - [ ] Logs estruturados.
436
+ - [ ] Métricas.
437
+ - [ ] Alertas.
438
+ - [ ] Correlação por request/event ID.
439
+ - [ ] Runbook inicial.
440
+
441
+ - [ ] **F2-A6 — Seeds/mocks de backend**
442
+ - [ ] Massa mínima de sucesso.
443
+ - [ ] Massa de erro.
444
+ - [ ] Massa de permissão.
445
+ - [ ] Massa de edge cases.
446
+
447
+ ### Critério de saída da fase
448
+
449
+ - [ ] Backend expõe contrato aprovado.
450
+ - [ ] Persistência cobre estados necessários.
451
+ - [ ] Segurança/autorização validada.
452
+ - [ ] Integrações externas funcionam em ambiente definido.
453
+ - [ ] Erros seguem contrato.
454
+ - [ ] Observabilidade mínima pronta.
455
+ - [ ] Front-end pode consumir backend sem mock como fonte de verdade.
456
+
457
+ ---
458
+
459
+ ## 12. Catálogo — Fase 3 — Front-end / app / experiência principal
460
+
461
+ Objetivo: implementar a experiência do usuário consumindo contrato aprovado.
462
+
463
+ ### Tasks-modelo
464
+
465
+ - [ ] **F3-A1 — Domain/front contract**
466
+ - [ ] Criar/ajustar Entities.
467
+ - [ ] Criar/ajustar Value Objects.
468
+ - [ ] Criar/ajustar Enums.
469
+ - [ ] Garantir parsing explícito.
470
+ - [ ] Garantir nomes alinhados ao backend.
471
+
472
+ - [ ] **F3-A2 — Data layer**
473
+ - [ ] DTOs.
474
+ - [ ] Mappers.
475
+ - [ ] Datasource.
476
+ - [ ] Repository.
477
+ - [ ] Tratamento de erros.
478
+ - [ ] Cache/local storage, se aplicável.
479
+
480
+ - [ ] **F3-A3 — Service/store/orquestração**
481
+ - [ ] Service quando houver estado compartilhado/reuso.
482
+ - [ ] Store com estados persistentes.
483
+ - [ ] Loading, empty, error, success.
484
+ - [ ] Retry.
485
+ - [ ] Regras de navegação.
486
+ - [ ] Sem `BuildContext` na Store.
487
+
488
+ - [ ] **F3-A4 — UI principal**
489
+ - [ ] Página/tela principal.
490
+ - [ ] Componentes reutilizáveis.
491
+ - [ ] Responsividade.
492
+ - [ ] Acessibilidade mínima.
493
+ - [ ] Textos/i18n.
494
+ - [ ] Design system.
495
+
496
+ - [ ] **F3-A5 — Navegação e retomada**
497
+ - [ ] Rotas.
498
+ - [ ] Deep links, se aplicável.
499
+ - [ ] Retorno de resultado por rota, se aplicável.
500
+ - [ ] Recovery após refresh/fechamento, se aplicável.
501
+ - [ ] Guardas de acesso, se aplicável.
502
+
503
+ - [ ] **F3-A6 — Compatibilidade/regressão**
504
+ - [ ] Fluxos existentes preservados.
505
+ - [ ] Estados antigos continuam parseando.
506
+ - [ ] Feature flag, se aplicável.
507
+ - [ ] Fallback quando backend não suporta recurso.
508
+
509
+ ### Critério de saída da fase
510
+
511
+ - [ ] Fluxo feliz funciona ponta-a-ponta no app.
512
+ - [ ] Loading/empty/error/success implementados.
513
+ - [ ] Retry funciona nos erros recuperáveis.
514
+ - [ ] Navegação usa padrão do projeto.
515
+ - [ ] UI respeita design system.
516
+ - [ ] Não há regressão nos fluxos existentes.
517
+ - [ ] App consome contrato real ou mock contratual aprovado.
518
+
519
+ ---
520
+
521
+ ## 13. Catálogo — Fase 4 — Edge cases, hardening e estados avançados
522
+
523
+ Objetivo: transformar fluxo funcional em produto robusto.
524
+
525
+ ### Tasks-modelo
526
+
527
+ - [ ] **F4-A1 — Edge cases funcionais**
528
+ - [ ] Estado parcial.
529
+ - [ ] Estado expirado.
530
+ - [ ] Estado cancelado.
531
+ - [ ] Estado recusado.
532
+ - [ ] Estado inconsistente recuperável.
533
+ - [ ] Duplicidade/idempotência.
534
+
535
+ - [ ] **F4-A2 — Falhas técnicas**
536
+ - [ ] Sem internet.
537
+ - [ ] Timeout.
538
+ - [ ] 4xx.
539
+ - [ ] 5xx.
540
+ - [ ] Payload inválido.
541
+ - [ ] Backend fora do ar.
542
+ - [ ] Dependência externa fora do ar.
543
+
544
+ - [ ] **F4-A3 — Recuperação e continuidade**
545
+ - [ ] Retomar fluxo após fechar app.
546
+ - [ ] Retomar por rota direta/deep link.
547
+ - [ ] Limpar cache após sucesso.
548
+ - [ ] Evitar duplicidade por clique múltiplo.
549
+ - [ ] Reprocessar quando permitido.
550
+
551
+ - [ ] **F4-A4 — Segurança/abuso**
552
+ - [ ] Rate limit, se aplicável.
553
+ - [ ] Anti-replay/idempotência.
554
+ - [ ] Não exposição de PII.
555
+ - [ ] Não exposição de segredo.
556
+ - [ ] Permissão negada bem tratada.
557
+
558
+ - [ ] **F4-A5 — Observabilidade no front**
559
+ - [ ] Eventos analytics, se aplicável.
560
+ - [ ] Logs/client breadcrumbs, se aplicável.
561
+ - [ ] Métricas de conversão/erro.
562
+ - [ ] Correlação com backend quando possível.
563
+
564
+ ### Critério de saída da fase
565
+
566
+ - [ ] Edge cases principais cobertos.
567
+ - [ ] Falhas técnicas têm UX compreensível.
568
+ - [ ] Recovery não cria duplicidade.
569
+ - [ ] Segurança básica validada.
570
+ - [ ] Observabilidade suficiente para suporte.
571
+
572
+ ---
573
+
574
+ ## 14. Catálogo — Fase 5 — QA, homologação e evidências
575
+
576
+ Objetivo: validar qualidade, regressão e aderência ao contrato antes de produção.
577
+
578
+ ### Tasks-modelo
579
+
580
+ - [ ] **F5-A1 — Matriz de cenários**
581
+ - [ ] Fluxo feliz.
582
+ - [ ] Fluxos alternativos.
583
+ - [ ] Erros recuperáveis.
584
+ - [ ] Erros finais.
585
+ - [ ] Permissão negada.
586
+ - [ ] Regressão de fluxos existentes.
587
+ - [ ] Integração externa.
588
+
589
+ - [ ] **F5-A2 — Testes automatizados**
590
+ - [ ] Unitários de domínio.
591
+ - [ ] Unitários de DTO/mapper.
592
+ - [ ] Unitários de service/store.
593
+ - [ ] Widget/component tests.
594
+ - [ ] Integração/smoke quando viável.
595
+
596
+ - [ ] **F5-A3 — Testes manuais guiados**
597
+ - [ ] Checklist por papel/perfil.
598
+ - [ ] Checklist por plataforma.
599
+ - [ ] Checklist por ambiente.
600
+ - [ ] Evidências com prints/logs seguros.
601
+
602
+ - [ ] **F5-A4 — Homologação externa**
603
+ - [ ] Executar runbook do fornecedor, se houver.
604
+ - [ ] Registrar divergências.
605
+ - [ ] Corrigir bloqueadores.
606
+ - [ ] Obter aprovação formal quando necessário.
607
+
608
+ - [ ] **F5-A5 — Go/no-go**
609
+ - [ ] Produto aprova UX.
610
+ - [ ] Engenharia aprova estabilidade.
611
+ - [ ] QA aprova matriz crítica.
612
+ - [ ] Segurança aprova riscos.
613
+ - [ ] Suporte/ops aprova runbook.
614
+
615
+ ### Critério de saída da fase
616
+
617
+ - [ ] Matriz crítica validada.
618
+ - [ ] Regressão validada.
619
+ - [ ] Evidências registradas.
620
+ - [ ] Bloqueadores zerados ou formalmente aceitos.
621
+ - [ ] Go/no-go de produção registrado.
622
+
623
+ ---
624
+
625
+ ## 15. Catálogo — Fase 6 — Produção, rollout e operação
626
+
627
+ Objetivo: liberar com controle, observabilidade e suporte.
628
+
629
+ ### Tasks-modelo
630
+
631
+ - [ ] **F6-A1 — Preparação de produção**
632
+ - [ ] Variáveis/segredos configurados.
633
+ - [ ] URLs/webhooks produção configurados.
634
+ - [ ] Feature flags configuradas.
635
+ - [ ] Migrações aplicadas.
636
+ - [ ] Rollback definido.
637
+ - [ ] Monitoramento ativo.
638
+
639
+ - [ ] **F6-A2 — Rollout controlado**
640
+ - [ ] Liberar internamente.
641
+ - [ ] Liberar para grupo piloto.
642
+ - [ ] Monitorar erros/conversão.
643
+ - [ ] Ampliar gradualmente.
644
+ - [ ] Pausar se métrica crítica degradar.
645
+
646
+ - [ ] **F6-A3 — Suporte operacional**
647
+ - [ ] Runbook de incidentes.
648
+ - [ ] FAQ interna.
649
+ - [ ] Procedimento de conciliação/manual fix.
650
+ - [ ] Canal de suporte definido.
651
+ - [ ] Owner de operação definido.
652
+
653
+ - [ ] **F6-A4 — Pós-rollout**
654
+ - [ ] Revisar métricas.
655
+ - [ ] Revisar feedback de usuários.
656
+ - [ ] Corrigir fricções.
657
+ - [ ] Atualizar documentação final.
658
+ - [ ] Encerrar ou abrir próximos incrementos.
659
+
660
+ ### Critério de saída da fase
661
+
662
+ - [ ] Produção liberada com controle.
663
+ - [ ] Primeiros usos reais validados.
664
+ - [ ] Monitoramento sem anomalia crítica.
665
+ - [ ] Suporte consegue operar incidentes.
666
+ - [ ] Documentação final sincronizada.
667
+
668
+ ---
669
+
670
+ ## 16. Trilhas transversais
671
+
672
+ Verificações que cruzam várias sprints. Não viram sprint sozinhas; entram como critério dentro das sprints relevantes.
673
+
674
+ ### Produto
675
+
676
+ - [ ] Regras de negócio atualizadas.
677
+ - [ ] Escopo explícito.
678
+ - [ ] Métricas de sucesso definidas.
679
+ - [ ] Critérios de aceite aprovados.
680
+
681
+ ### UX/UI
682
+
683
+ - [ ] Fluxos desenhados.
684
+ - [ ] Estados obrigatórios definidos.
685
+ - [ ] Copy revisada.
686
+ - [ ] Acessibilidade mínima.
687
+ - [ ] Responsividade.
688
+
689
+ ### Backend/API
690
+
691
+ - [ ] Contrato versionado.
692
+ - [ ] Erros padronizados.
693
+ - [ ] Segurança/autorização.
694
+ - [ ] Observabilidade.
695
+ - [ ] Seeds/mocks.
696
+
697
+ ### Front-end/App
698
+
699
+ - [ ] Domain/data/presentation/DI completos.
700
+ - [ ] Estados persistentes corretos.
701
+ - [ ] Navegação padronizada.
702
+ - [ ] Design system respeitado.
703
+ - [ ] Regressões cobertas.
704
+
705
+ ### QA
706
+
707
+ - [ ] Matriz de cenários.
708
+ - [ ] Testes automatizados definidos.
709
+ - [ ] Testes manuais guiados.
710
+ - [ ] Evidências registradas.
711
+
712
+ ### Segurança/Compliance
713
+
714
+ - [ ] Sem segredos no client.
715
+ - [ ] Sem PII em logs.
716
+ - [ ] Permissões validadas.
717
+ - [ ] Auditoria quando aplicável.
718
+ - [ ] LGPD/compliance quando aplicável.
719
+
720
+ ### DevOps/Operação
721
+
722
+ - [ ] Ambientes definidos.
723
+ - [ ] Feature flags.
724
+ - [ ] Rollback.
725
+ - [ ] Monitoramento.
726
+ - [ ] Runbook.
727
+
728
+ ### Documentação
729
+
730
+ - [ ] Guia geral atualizado.
731
+ - [ ] Specs atualizadas.
732
+ - [ ] Backlog e registro de sprints atualizados.
733
+ - [ ] PRDs de sprint sincronizados com decisões reais.
734
+ - [ ] Decisões registradas.
735
+ - [ ] Docs obsoletas marcadas/removidas conforme regra do projeto.
736
+
737
+ ---
738
+
739
+ ## 17. Gates de sequência
740
+
741
+ ### Gate de fase — antes de iniciar sprints de implementação
742
+
743
+ - [ ] Fase 0 concluída ou pendências não bloqueantes formalmente aceitas.
744
+ - [ ] Fase 1 aprovada.
745
+ - [ ] Contrato backend/API aprovado, se aplicável.
746
+ - [ ] UX mínima definida.
747
+ - [ ] Critérios de aceite verificáveis.
748
+ - [ ] Riscos críticos com mitigação.
749
+ - [ ] Plano de QA definido.
750
+
751
+ ### Gate de sprint — antes de marcar `done`
752
+
753
+ - [ ] DoD da seção 6.6 verde.
754
+ - [ ] Dependências da seção 7 respeitadas.
755
+ - [ ] Sem regressão em sprints anteriores.
756
+
757
+ ### Gate de produção — antes de liberar
758
+
759
+ - [ ] Sprints da Fase 5 concluídas.
760
+ - [ ] Go/no-go registrado.
761
+ - [ ] Monitoramento ativo.
762
+ - [ ] Rollback definido.
763
+ - [ ] Runbook pronto.
764
+ - [ ] Suporte informado.
765
+
766
+ ---
767
+
768
+ ## 18. Registro de decisões
769
+
770
+ | ID | Data | Decisão | Motivo | Impacto | Dono |
771
+ |---|---|---|---|---|---|
772
+ | DEC-001 | [AAAA-MM-DD] | [decisão] | [motivo] | [impacto] | [dono] |
773
+ | DEC-002 | [AAAA-MM-DD] | [decisão] | [motivo] | [impacto] | [dono] |
774
+
775
+ ---
776
+
777
+ ## 19. Registro de riscos
778
+
779
+ | ID | Risco | Probabilidade | Impacto | Mitigação | Status |
780
+ |---|---|---|---|---|---|
781
+ | R1 | [risco] | [baixa/média/alta] | [baixo/médio/alto] | [mitigação] | [aberto/mitigado] |
782
+ | R2 | [risco] | [baixa/média/alta] | [baixo/médio/alto] | [mitigação] | [aberto/mitigado] |
783
+
784
+ ---
785
+
786
+ ## 20. Próxima sprint executável
787
+
788
+ Próxima sprint: **[S<NN> — Nome]**
789
+
790
+ PRD: `PRD_S<NN>_[slug].md` — [estado: pendente/criado/aprovado]
791
+
792
+ Motivo:
793
+
794
+ - [Motivo 1]
795
+ - [Motivo 2]
796
+ - [Motivo 3]
797
+
798
+ Justificativa de priorização:
799
+
800
+ - MoSCoW: [Must/Should/Could/Won't now]
801
+ - Ganho: [alto/médio/baixo]
802
+ - Esforço: [baixo/médio/alto]
803
+ - Prioridade: [P0/P1/P2/P3]
804
+ - Dependências satisfeitas: [sim/não — quais faltam]
805
+
806
+ Ações imediatas:
807
+
808
+ - [ ] [Ação imediata 1]
809
+ - [ ] [Ação imediata 2]
810
+ - [ ] [Ação imediata 3]
811
+
812
+ ---
813
+
814
+ ## 21. Registro de alterações
815
+
816
+ Registro append-only de atualizações deste backlog. Não substitui decisões da seção 18.
817
+
818
+ | Data | IDs afetados | Alteração | Motivo / fonte |
819
+ |---|---|---|---|
820
+ | [AAAA-MM-DD] | [SNN/DEC-N/RN] | [resumo objetivo] | [pedido, PRD, contrato ou código] |
821
+
822
+ ---
823
+
824
+ ## 22. Como usar este template
825
+
826
+ ### Setup inicial
827
+
828
+ 1. Duplicar este arquivo para o diretório do projeto/feature.
829
+ 2. Substituir `[NOME_DO_PROJETO_OU_FEATURE]` e todos os placeholders.
830
+ 3. Preencher seções 1-5 (precedência, objetivo, dependências).
831
+ 4. Limite de tamanho de sprint já fixado em 6-8 tasks (seção 6.3); ajustar só se for decisão consciente do projeto.
832
+
833
+ ### Decompor em sprints
834
+
835
+ 5. Percorrer o catálogo (seções 9-15) e identificar fatias verticais entregáveis.
836
+ 6. Para cada fatia, criar uma linha na seção 7 com ID `S<NN>`, objetivo e fase-fonte.
837
+ 7. Classificar cada sprint com MoSCoW, ganho, esforço e prioridade usando a seção 8.3.
838
+ 8. Quebrar qualquer sprint que passe do limite (seção 6.3) em `S<NN>a/b/c`.
839
+ 9. Preferir muitas sprints curtas a poucas longas — para app complexo, planejar 30+ em vez de 10.
840
+ 10. Mapear dependências entre sprints na seção 8.1.
841
+
842
+ ### Executar
843
+
844
+ 11. Antes de iniciar uma sprint: criar o `PRD_S<NN>_*.md` a partir do `PRD_TEMPLATE.md` (template intocável) e validar a DoR (seção 6.5).
845
+ 12. Escolher a próxima sprint pela regra da seção 8.3 e registrar a decisão na seção 20.
846
+ 13. Trabalhar com o PRD da sprint como fonte de detalhe. O backlog não recebe detalhe de execução.
847
+ 14. Atualizar o estado da sprint na seção 7 a cada transição (`backlog → ready → doing → review → done`).
848
+ 15. Ao fechar: validar a DoD (seção 6.6), registrar evidência, atualizar progresso na seção 8.2.
849
+
850
+ ### Manter vivo
851
+
852
+ 16. Toda decisão que muda escopo, contrato ou sequência atualiza: fonte canônica → PRD afetado → este backlog.
853
+ 17. Em updates, preservar IDs, sprints `done`, decisões fechadas e itens não relacionados; bloquear ciclos, enums inválidos e placeholders acidentais.
854
+ 18. Registrar decisões na seção 18, riscos na seção 19 e cada update no registro append-only da seção 21.
855
+ 19. Manter o registro de sprints (seção 7) e o progresso (seção 8.2) como fonte de estado do projeto.