@luanpdd/kit-mcp 1.21.0 → 1.22.0

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 (253) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +648 -648
  3. package/kit/COMANDOS.md +138 -138
  4. package/kit/README.md +76 -52
  5. package/kit/agents/advisor-researcher.md +106 -106
  6. package/kit/agents/assumptions-analyzer.md +107 -107
  7. package/kit/agents/auditor-consistencia-isolamento.md +380 -0
  8. package/kit/agents/codebase-mapper.md +768 -768
  9. package/kit/agents/crm-pipeline-implementer.md +17 -0
  10. package/kit/agents/debugger.md +772 -772
  11. package/kit/agents/detector-tenant-quente.md +337 -0
  12. package/kit/agents/example-reviewer.md +21 -21
  13. package/kit/agents/executor.md +523 -523
  14. package/kit/agents/integration-checker.md +200 -200
  15. package/kit/agents/multi-tenant-isolation-auditor.md +10 -0
  16. package/kit/agents/nyquist-auditor.md +178 -178
  17. package/kit/agents/phase-researcher.md +696 -696
  18. package/kit/agents/plan-checker.md +272 -272
  19. package/kit/agents/planner.md +891 -891
  20. package/kit/agents/project-researcher.md +652 -652
  21. package/kit/agents/research-synthesizer.md +245 -245
  22. package/kit/agents/roadmapper.md +677 -677
  23. package/kit/agents/supabase-architect.md +10 -0
  24. package/kit/agents/supabase-migration-writer.md +12 -0
  25. package/kit/agents/ui-auditor.md +437 -437
  26. package/kit/agents/ui-checker.md +302 -302
  27. package/kit/agents/ui-researcher.md +355 -355
  28. package/kit/agents/user-profiler.md +175 -175
  29. package/kit/agents/validador-evolucao-schema.md +335 -0
  30. package/kit/agents/verifier.md +728 -728
  31. package/kit/commands/adicionar-backlog.md +75 -75
  32. package/kit/commands/adicionar-fase.md +42 -42
  33. package/kit/commands/adicionar-tarefa.md +45 -45
  34. package/kit/commands/adicionar-testes.md +41 -41
  35. package/kit/commands/ajuda.md +21 -21
  36. package/kit/commands/atualizar.md +37 -37
  37. package/kit/commands/auditar-marco.md +179 -179
  38. package/kit/commands/auditar-uat.md +23 -23
  39. package/kit/commands/autonomo.md +40 -40
  40. package/kit/commands/branch-pr.md +24 -24
  41. package/kit/commands/concluir-marco.md +247 -247
  42. package/kit/commands/configuracoes.md +36 -36
  43. package/kit/commands/dados-distribuidos.md +188 -0
  44. package/kit/commands/definir-perfil.md +10 -10
  45. package/kit/commands/depurar.md +190 -190
  46. package/kit/commands/discutir-fase.md +131 -131
  47. package/kit/commands/entrar-discord.md +17 -17
  48. package/kit/commands/estatisticas.md +18 -18
  49. package/kit/commands/example-greeting.md +33 -33
  50. package/kit/commands/executar-fase.md +58 -58
  51. package/kit/commands/expresso.md +56 -56
  52. package/kit/commands/fase-ui.md +34 -34
  53. package/kit/commands/fazer.md +57 -57
  54. package/kit/commands/fio.md +125 -125
  55. package/kit/commands/fluxos-trabalho.md +64 -64
  56. package/kit/commands/forense.md +176 -176
  57. package/kit/commands/gerenciador.md +38 -38
  58. package/kit/commands/inserir-fase.md +31 -31
  59. package/kit/commands/limpeza.md +17 -17
  60. package/kit/commands/listar-hipoteses-fase.md +45 -45
  61. package/kit/commands/listar-workspaces.md +18 -18
  62. package/kit/commands/mapear-codebase.md +70 -70
  63. package/kit/commands/nota.md +33 -33
  64. package/kit/commands/novo-marco.md +43 -43
  65. package/kit/commands/novo-projeto.md +41 -41
  66. package/kit/commands/novo-workspace.md +43 -43
  67. package/kit/commands/pausar-trabalho.md +37 -37
  68. package/kit/commands/perfil-usuario.md +45 -45
  69. package/kit/commands/pesquisar-fase.md +195 -195
  70. package/kit/commands/planejar-fase.md +67 -67
  71. package/kit/commands/planejar-lacunas.md +33 -33
  72. package/kit/commands/plantar-ideia.md +25 -25
  73. package/kit/commands/progresso.md +24 -24
  74. package/kit/commands/proximo.md +30 -30
  75. package/kit/commands/publicar.md +490 -490
  76. package/kit/commands/rapido.md +35 -35
  77. package/kit/commands/reaplicar-patches.md +124 -124
  78. package/kit/commands/relatorio-sessao.md +19 -19
  79. package/kit/commands/remover-fase.md +31 -31
  80. package/kit/commands/remover-workspace.md +26 -26
  81. package/kit/commands/resumo-marco.md +50 -50
  82. package/kit/commands/retomar-trabalho.md +40 -40
  83. package/kit/commands/revisar-backlog.md +60 -60
  84. package/kit/commands/revisar-ui.md +32 -32
  85. package/kit/commands/revisar.md +37 -37
  86. package/kit/commands/saude.md +21 -21
  87. package/kit/commands/setup-notion.md +93 -93
  88. package/kit/commands/sync-main.md +68 -68
  89. package/kit/commands/validar-fase.md +35 -35
  90. package/kit/commands/verificar-tarefas.md +44 -44
  91. package/kit/commands/verificar-trabalho.md +64 -64
  92. package/kit/file-manifest.json +27 -15
  93. package/kit/framework/bin/lib/commands.cjs +959 -959
  94. package/kit/framework/bin/lib/config.cjs +442 -442
  95. package/kit/framework/bin/lib/core.cjs +1230 -1230
  96. package/kit/framework/bin/lib/frontmatter.cjs +336 -336
  97. package/kit/framework/bin/lib/init.cjs +1442 -1442
  98. package/kit/framework/bin/lib/milestone.cjs +252 -252
  99. package/kit/framework/bin/lib/model-profiles.cjs +68 -68
  100. package/kit/framework/bin/lib/phase.cjs +888 -888
  101. package/kit/framework/bin/lib/profile-output.cjs +952 -952
  102. package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
  103. package/kit/framework/bin/lib/roadmap.cjs +329 -329
  104. package/kit/framework/bin/lib/security.cjs +382 -382
  105. package/kit/framework/bin/lib/state.cjs +1031 -1031
  106. package/kit/framework/bin/lib/template.cjs +222 -222
  107. package/kit/framework/bin/lib/uat.cjs +282 -282
  108. package/kit/framework/bin/lib/verify.cjs +888 -888
  109. package/kit/framework/bin/lib/workstream.cjs +491 -491
  110. package/kit/framework/bin/tools.cjs +918 -918
  111. package/kit/framework/commands/workstreams.md +63 -63
  112. package/kit/framework/references/checkpoints.md +778 -778
  113. package/kit/framework/references/continuation-format.md +249 -249
  114. package/kit/framework/references/decimal-phase-calculation.md +64 -64
  115. package/kit/framework/references/git-integration.md +295 -295
  116. package/kit/framework/references/git-planning-commit.md +38 -38
  117. package/kit/framework/references/model-profile-resolution.md +36 -36
  118. package/kit/framework/references/model-profiles.md +139 -139
  119. package/kit/framework/references/phase-argument-parsing.md +61 -61
  120. package/kit/framework/references/planning-config.md +202 -202
  121. package/kit/framework/references/questioning.md +162 -162
  122. package/kit/framework/references/tdd.md +263 -263
  123. package/kit/framework/references/ui-brand.md +160 -160
  124. package/kit/framework/references/user-profiling.md +657 -657
  125. package/kit/framework/references/verification-patterns.md +612 -612
  126. package/kit/framework/references/workstream-flag.md +58 -58
  127. package/kit/framework/templates/DEBUG.md +164 -164
  128. package/kit/framework/templates/UAT.md +265 -265
  129. package/kit/framework/templates/UI-SPEC.md +100 -100
  130. package/kit/framework/templates/VALIDATION.md +76 -76
  131. package/kit/framework/templates/claude-md.md +122 -122
  132. package/kit/framework/templates/codebase/architecture.md +185 -185
  133. package/kit/framework/templates/codebase/concerns.md +205 -205
  134. package/kit/framework/templates/codebase/conventions.md +204 -204
  135. package/kit/framework/templates/codebase/integrations.md +192 -192
  136. package/kit/framework/templates/codebase/stack.md +158 -158
  137. package/kit/framework/templates/codebase/structure.md +199 -199
  138. package/kit/framework/templates/codebase/testing.md +301 -301
  139. package/kit/framework/templates/config.json +44 -44
  140. package/kit/framework/templates/context.md +352 -352
  141. package/kit/framework/templates/continue-here.md +78 -78
  142. package/kit/framework/templates/copilot-instructions.md +7 -7
  143. package/kit/framework/templates/debug-subagent-prompt.md +91 -91
  144. package/kit/framework/templates/dev-preferences.md +20 -20
  145. package/kit/framework/templates/discovery.md +146 -146
  146. package/kit/framework/templates/discussion-log.md +63 -63
  147. package/kit/framework/templates/milestone-archive.md +123 -123
  148. package/kit/framework/templates/milestone.md +115 -115
  149. package/kit/framework/templates/phase-prompt.md +610 -610
  150. package/kit/framework/templates/planner-subagent-prompt.md +117 -117
  151. package/kit/framework/templates/project.md +186 -186
  152. package/kit/framework/templates/requirements.md +231 -231
  153. package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
  154. package/kit/framework/templates/research-project/FEATURES.md +147 -147
  155. package/kit/framework/templates/research-project/PITFALLS.md +200 -200
  156. package/kit/framework/templates/research-project/STACK.md +120 -120
  157. package/kit/framework/templates/research-project/SUMMARY.md +170 -170
  158. package/kit/framework/templates/research.md +419 -419
  159. package/kit/framework/templates/retrospective.md +54 -54
  160. package/kit/framework/templates/roadmap.md +202 -202
  161. package/kit/framework/templates/state.md +176 -176
  162. package/kit/framework/templates/summary-complex.md +59 -59
  163. package/kit/framework/templates/summary-minimal.md +41 -41
  164. package/kit/framework/templates/summary-standard.md +48 -48
  165. package/kit/framework/templates/summary.md +209 -209
  166. package/kit/framework/templates/user-profile.md +146 -146
  167. package/kit/framework/templates/user-setup.md +256 -256
  168. package/kit/framework/templates/verification-report.md +258 -258
  169. package/kit/framework/workflows/add-phase.md +112 -112
  170. package/kit/framework/workflows/add-tests.md +351 -351
  171. package/kit/framework/workflows/add-todo.md +158 -158
  172. package/kit/framework/workflows/audit-milestone.md +340 -340
  173. package/kit/framework/workflows/audit-uat.md +109 -109
  174. package/kit/framework/workflows/autonomous.md +891 -891
  175. package/kit/framework/workflows/check-todos.md +177 -177
  176. package/kit/framework/workflows/cleanup.md +152 -152
  177. package/kit/framework/workflows/complete-milestone.md +696 -696
  178. package/kit/framework/workflows/diagnose-issues.md +231 -231
  179. package/kit/framework/workflows/discovery-phase.md +289 -289
  180. package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
  181. package/kit/framework/workflows/discuss-phase.md +784 -784
  182. package/kit/framework/workflows/do.md +104 -104
  183. package/kit/framework/workflows/execute-phase.md +838 -838
  184. package/kit/framework/workflows/execute-plan.md +510 -510
  185. package/kit/framework/workflows/fast.md +102 -102
  186. package/kit/framework/workflows/forensics.md +265 -265
  187. package/kit/framework/workflows/health.md +181 -181
  188. package/kit/framework/workflows/help.md +619 -619
  189. package/kit/framework/workflows/insert-phase.md +130 -130
  190. package/kit/framework/workflows/list-phase-assumptions.md +178 -178
  191. package/kit/framework/workflows/list-workspaces.md +56 -56
  192. package/kit/framework/workflows/manager.md +362 -362
  193. package/kit/framework/workflows/map-codebase.md +377 -377
  194. package/kit/framework/workflows/milestone-summary.md +223 -223
  195. package/kit/framework/workflows/new-milestone.md +486 -486
  196. package/kit/framework/workflows/new-project.md +1159 -1159
  197. package/kit/framework/workflows/new-workspace.md +237 -237
  198. package/kit/framework/workflows/next.md +97 -97
  199. package/kit/framework/workflows/node-repair.md +92 -92
  200. package/kit/framework/workflows/note.md +156 -156
  201. package/kit/framework/workflows/pause-work.md +176 -176
  202. package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
  203. package/kit/framework/workflows/plan-phase.md +765 -765
  204. package/kit/framework/workflows/plant-seed.md +169 -169
  205. package/kit/framework/workflows/pr-branch.md +129 -129
  206. package/kit/framework/workflows/profile-user.md +450 -450
  207. package/kit/framework/workflows/progress.md +507 -507
  208. package/kit/framework/workflows/quick.md +757 -757
  209. package/kit/framework/workflows/remove-phase.md +155 -155
  210. package/kit/framework/workflows/remove-workspace.md +90 -90
  211. package/kit/framework/workflows/research-phase.md +82 -82
  212. package/kit/framework/workflows/resume-project.md +326 -326
  213. package/kit/framework/workflows/review.md +228 -228
  214. package/kit/framework/workflows/session-report.md +146 -146
  215. package/kit/framework/workflows/settings.md +283 -283
  216. package/kit/framework/workflows/ship.md +228 -228
  217. package/kit/framework/workflows/stats.md +60 -60
  218. package/kit/framework/workflows/transition.md +671 -671
  219. package/kit/framework/workflows/ui-phase.md +302 -302
  220. package/kit/framework/workflows/ui-review.md +165 -165
  221. package/kit/framework/workflows/update.md +323 -323
  222. package/kit/framework/workflows/validate-phase.md +174 -174
  223. package/kit/framework/workflows/verify-phase.md +252 -252
  224. package/kit/framework/workflows/verify-work.md +637 -637
  225. package/kit/hooks/check-update.js +118 -118
  226. package/kit/hooks/context-monitor.js +163 -163
  227. package/kit/hooks/prompt-guard.js +103 -103
  228. package/kit/hooks/statusline.js +125 -125
  229. package/kit/hooks/workflow-guard.js +101 -101
  230. package/kit/settings.json +45 -45
  231. package/kit/skills/_shared-dados-distribuidos/glossary.md +224 -0
  232. package/kit/skills/armadilhas-sistemas-distribuidos/SKILL.md +447 -0
  233. package/kit/skills/audit-log-multi-tenant/SKILL.md +6 -0
  234. package/kit/skills/cascading-failures/SKILL.md +4 -0
  235. package/kit/skills/consistencia-leitura-replica/SKILL.md +385 -0
  236. package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +17 -0
  237. package/kit/skills/escolha-modelo-consistencia/SKILL.md +495 -0
  238. package/kit/skills/evolucao-schema-compativel/SKILL.md +448 -0
  239. package/kit/skills/example-skill/SKILL.md +42 -42
  240. package/kit/skills/multi-tenant-performance-scaling/SKILL.md +4 -0
  241. package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +4 -0
  242. package/kit/skills/postgres-isolamento-concorrencia/SKILL.md +552 -0
  243. package/kit/skills/streams-eventos-cdc/SKILL.md +712 -0
  244. package/kit/skills/supabase-cron-queues/SKILL.md +9 -0
  245. package/kit/skills/supabase-migrations/SKILL.md +10 -0
  246. package/kit/skills/super-admin-platform-pattern/SKILL.md +4 -0
  247. package/kit/skills/tenant-quente-mitigacao/SKILL.md +605 -0
  248. package/package.json +63 -63
  249. package/src/core/kit.js +216 -216
  250. package/src/core/reflect.js +247 -247
  251. package/src/core/reverse-sync.js +372 -372
  252. package/src/core/sync.js +418 -418
  253. package/src/core/watch.js +121 -121
@@ -0,0 +1,188 @@
1
+ ---
2
+ name: dados-distribuidos
3
+ description: Orquestrador da Suíte DDIA Foundations — dispatch para agents (auditor-consistencia-isolamento, detector-tenant-quente, validador-evolucao-schema) com sinônimos PT/EN (ddia, dados, consistencia, replicacao, streams).
4
+ argument-hint: "<subcomando> [args...]"
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Bash
9
+ - Grep
10
+ - Glob
11
+ - Task
12
+ - AskUserQuestion
13
+ ---
14
+
15
+ <objective>
16
+ Orquestrador único da Suíte DDIA Foundations v1.22. Recebe um subcomando + args, faz dispatch via `Task(subagent_type=<ddia-agent>)` para o agent especializado correto. É o **único ponto de chain de agents da Suíte DDIA Foundations** — agents permanecem função pura (anti-pitfall A10 v1.8 herdado).
17
+
18
+ **Cross-Suite Invocation Pattern (herdado v1.21):** Agents da Suíte DDIA Foundations v1.22 **delegam para agents da Suíte Supabase v1.8 + Multi-Tenant v1.21** quando precisam materializar SQL, Edge Functions, RLS policies, audit logs. Padrão canônico:
19
+
20
+ - `auditor-consistencia-isolamento` → delega fix migration para `supabase-migration-writer` (v1.8) OU fix Edge Function para `supabase-edge-fn-writer` (v1.8)
21
+ - `detector-tenant-quente` → delega partitioning/dedicated schema para `supabase-migration-writer` (v1.8) + `b2b-saas-architect` (v1.21)
22
+ - `validador-evolucao-schema` → handoff bidirecional com `supabase-migration-writer` (v1.8 — invoca este validador ANTES de escrever migration arriscada)
23
+ - Subcomando `implementar-cdc` → carrega skill `streams-eventos-cdc` (v1.22) + delega Edge Function CDC para `supabase-edge-fn-writer` (v1.8)
24
+
25
+ **Cria/Atualiza:** o que cada agent invocado cria/atualiza (skills consultadas, audits gerados, vereditos retornados).
26
+
27
+ **Após:** o usuário tem o output do agent (audit report, veredito GO/NO-GO, ou Edge Function CDC scaffold).
28
+ </objective>
29
+
30
+ <execution_context>
31
+ Skills consultadas pelos agents (Suíte DDIA Foundations v1.22): `kit/skills/{evolucao-schema-compativel,consistencia-leitura-replica,tenant-quente-mitigacao,postgres-isolamento-concorrencia,armadilhas-sistemas-distribuidos,escolha-modelo-consistencia,streams-eventos-cdc}/SKILL.md` + `kit/skills/_shared-dados-distribuidos/glossary.md`.
32
+
33
+ Agents disponíveis (Suíte DDIA Foundations v1.22): `kit/agents/{auditor-consistencia-isolamento,detector-tenant-quente,validador-evolucao-schema}.md`.
34
+
35
+ Agents Suíte Supabase v1.8 invocados via cross-suite delegation: `supabase-migration-writer`, `supabase-edge-fn-writer`, `supabase-architect`.
36
+
37
+ Agents Suíte Multi-Tenant v1.21 invocados via cross-suite delegation: `b2b-saas-architect`, `multi-tenant-rls-writer`, `audit-log-implementer`.
38
+ </execution_context>
39
+
40
+ <context>
41
+ **Argumentos:** `$ARGUMENTS` — primeiro token é o subcomando; restante é passado para o agent como prompt.
42
+
43
+ **Subcomandos suportados (sinônimos PT-BR/EN):**
44
+
45
+ | Subcomando | Sinônimos | Agent dispatched | Skill carregada |
46
+ |---|---|---|---|
47
+ | `auditar-consistencia` | `consistencia`, `audit-consistency`, `auditar-race` | `auditor-consistencia-isolamento` | `postgres-isolamento-concorrencia`, `armadilhas-sistemas-distribuidos`, `escolha-modelo-consistencia`, `streams-eventos-cdc` |
48
+ | `auditar-tenant-quente` | `tenant-quente`, `hot-tenant`, `audit-tenant`, `tenant` | `detector-tenant-quente` | `tenant-quente-mitigacao` |
49
+ | `validar-evolucao-schema` | `validar-schema`, `validate-schema`, `evolution-check`, `validar-evolucao` | `validador-evolucao-schema` | `evolucao-schema-compativel` |
50
+ | `implementar-cdc` | `cdc`, `cdc-pipeline`, `streams`, `event-streaming` | (cross-suite) `supabase-edge-fn-writer` (v1.8) | `streams-eventos-cdc` (skill v1.22 carregada como contexto) |
51
+ | `help` | `ajuda`, `?` | exibe esta tabela inline | — |
52
+
53
+ **Aliases globais para o nome da suíte:** `dados-distribuidos`, `ddia`, `dados`, `consistencia`, `replicacao`, `streams` (todos roteiam para este orquestrador via `/dados-distribuidos`).
54
+
55
+ **Skills relacionadas (Suíte DDIA Foundations v1.22):**
56
+
57
+ | Skill | Capítulo DDIA | Quando usar |
58
+ |---|---|---|
59
+ | [`evolucao-schema-compativel`](../skills/evolucao-schema-compativel/SKILL.md) | Ch 4 (Encoding and Evolution) | Migrations com ALTER (NOT NULL, DROP, type narrow, default) |
60
+ | [`consistencia-leitura-replica`](../skills/consistencia-leitura-replica/SKILL.md) | Ch 5 (Replication) | Read replicas Supavisor, read-after-write, monotonic reads |
61
+ | [`tenant-quente-mitigacao`](../skills/tenant-quente-mitigacao/SKILL.md) | Ch 6 (Partitioning) | Multi-tenant skew, hot tenant, partitioning hash(org_id) |
62
+ | [`postgres-isolamento-concorrencia`](../skills/postgres-isolamento-concorrencia/SKILL.md) | Ch 7 (Transactions) | Lost update, write skew, isolation level Postgres |
63
+ | [`armadilhas-sistemas-distribuidos`](../skills/armadilhas-sistemas-distribuidos/SKILL.md) | Ch 8 (Distributed Systems Trouble) | Clock skew, network failure, partial failure |
64
+ | [`escolha-modelo-consistencia`](../skills/escolha-modelo-consistencia/SKILL.md) | Ch 9 (Consistency and Consensus) | Linearizabilidade, causal, eventual; uniqueness; CAP/PACELC |
65
+ | [`streams-eventos-cdc`](../skills/streams-eventos-cdc/SKILL.md) | Ch 11 (Stream Processing) | CDC, event sourcing, pgmq exactly-once, stream joins |
66
+
67
+ **Detect `supabase/config.toml`:** se presente, extrai `project_id` e passa como contexto para o agent (mesmo pattern de `/multi-tenant` v1.21 + `/supabase` v1.8).
68
+ </context>
69
+
70
+ <process>
71
+
72
+ ## 1. Parsear Subcomando
73
+
74
+ ```bash
75
+ SUBCMD=$(echo "$ARGUMENTS" | awk '{print $1}')
76
+ ARGS=$(echo "$ARGUMENTS" | cut -d' ' -f2-)
77
+ ```
78
+
79
+ **Se `$ARGUMENTS` for vazio ou `SUBCMD` for `help`/`ajuda`/`?`:** exibir tabela de subcomandos inline + exemplo de uso. Sair.
80
+
81
+ ## 2. Resolver Sinônimos
82
+
83
+ Mapear `SUBCMD` para agent name canônico:
84
+
85
+ ```text
86
+ auditar-consistencia, consistencia, audit-consistency, auditar-race → auditor-consistencia-isolamento
87
+ auditar-tenant-quente, tenant-quente, hot-tenant, audit-tenant, tenant → detector-tenant-quente
88
+ validar-evolucao-schema, validar-schema, validate-schema, validar-evolucao, evolution-check → validador-evolucao-schema
89
+ implementar-cdc, cdc, cdc-pipeline, streams, event-streaming → cross-suite: supabase-edge-fn-writer (v1.8)
90
+ ```
91
+
92
+ **Se subcomando não resolve:** exibir erro inline com lista de subcomandos válidos. Sair (fallback amigável).
93
+
94
+ ```text
95
+ ✗ Subcomando desconhecido: '<SUBCMD>'
96
+
97
+ Subcomandos válidos:
98
+ auditar-consistencia / consistencia → audita race conditions (6 detectores: lost update, write skew,
99
+ clock skew, UNIQUE app, cross-tenant lock, idempotência)
100
+ auditar-tenant-quente / tenant-quente → detecta outliers de tenant (queries/min, storage, conexões)
101
+ via mcp__supabase__execute_sql; thresholds 3×/10× P50
102
+ validar-evolucao-schema / validar-schema → valida migration SQL — veredito GO/NO-GO/NEEDS-REVIEW
103
+ + sugestão de migration safe quando NO-GO
104
+ implementar-cdc / cdc → scaffold de Edge Function CDC (wal2json + Realtime broadcast,
105
+ pglogical → Kafka, ou trigger-based) via supabase-edge-fn-writer
106
+ help / ajuda / ? → exibe esta tabela
107
+
108
+ Uso: /dados-distribuidos <subcomando> <args...>
109
+
110
+ Exemplos:
111
+ /dados-distribuidos auditar-consistencia "auditar supabase/migrations/ + supabase/functions/"
112
+ /dados-distribuidos auditar-tenant-quente "últimos 30 dias, top 5 tenants"
113
+ /dados-distribuidos validar-evolucao-schema supabase/migrations/20260510_add_priority.sql
114
+ /dados-distribuidos implementar-cdc "CDC para tabela leads via wal2json + Realtime broadcast"
115
+ /dados-distribuidos help
116
+
117
+ Aliases para o comando: /dados-distribuidos, /ddia, /dados, /consistencia, /replicacao, /streams
118
+ ```
119
+
120
+ ## 3. Detectar `supabase/config.toml`
121
+
122
+ ```bash
123
+ if [ -f supabase/config.toml ]; then
124
+ PROJECT_ID=$(grep -E '^project_id\s*=' supabase/config.toml | sed 's/.*= *"\(.*\)".*/\1/' | head -1)
125
+ fi
126
+ ```
127
+
128
+ Se presente, anexar `project_id=<value>` ao prompt do agent. Se ausente, agent funciona sem (modo offline para `auditar-tenant-quente`).
129
+
130
+ ## 4. Dispatch
131
+
132
+ Invocar `Task(subagent_type=<agent_name>, prompt=<built_prompt>)`.
133
+
134
+ **Prompt construído (template canônico):**
135
+
136
+ ```text
137
+ {ARGS}
138
+
139
+ {Se project_id detectado:}
140
+ project_id: {PROJECT_ID}
141
+
142
+ {Skill de contexto (carregada conforme subcomando):}
143
+ Skill canônica: kit/skills/<skill-name>/SKILL.md
144
+ ```
145
+
146
+ ### Subcomando-específico
147
+
148
+ **`auditar-consistencia`:** dispatch para `auditor-consistencia-isolamento`. Agent funciona offline (filesystem-only via Read/Grep/Glob). Sem necessidade de pre-question.
149
+
150
+ **`auditar-tenant-quente`:** dispatch para `detector-tenant-quente`. Agent requer MCP Supabase ativo para coleta live. Se MCP indisponível, agent declara modo offline-fallback (heurísticas estáticas apenas) — caller é avisado.
151
+
152
+ **`validar-evolucao-schema`:** dispatch para `validador-evolucao-schema`. Args devem incluir `migration_path` (arquivo `.sql`) OU `migration_sql` (SQL inline). Agent retorna veredito estruturado (GO/NO-GO/NEEDS-REVIEW) + sugestão de migration safe quando NO-GO.
153
+
154
+ **`implementar-cdc` (cross-suite):**
155
+
156
+ ```text
157
+ Esta é uma operação cross-suite — DDIA Foundations v1.22 → Supabase v1.8.
158
+
159
+ Passos:
160
+ 1. Carregar skill kit/skills/streams-eventos-cdc/SKILL.md como contexto canônico
161
+ 2. AskUserQuestion para escolher abordagem CDC:
162
+ - Opção 1: wal2json + Supabase Realtime broadcast (zero infra, baixa latência)
163
+ - Opção 2: pglogical → Kafka externo (warehousing, alta robustez)
164
+ - Opção 3: Trigger-based (custom logic, baixo throughput)
165
+ 3. Dispatch via Task(subagent_type="supabase-edge-fn-writer", prompt=<built>) com:
166
+ - Contexto: abordagem escolhida
167
+ - Skill: streams-eventos-cdc (referência canônica)
168
+ - Tabela alvo: <args fornecidos>
169
+ 4. Agent v1.8 escreve Edge Function Deno conforme abordagem (com idempotência via processed_events table)
170
+ ```
171
+
172
+ ## 5. Output
173
+
174
+ Output do agent é o output do command. Sem post-processing — agent já formata estruturado (audit report, veredito, ou Edge Function code).
175
+
176
+ </process>
177
+
178
+ <success_criteria>
179
+ - [ ] Subcomando resolvido para agent canônico (4 subcomandos × seus sinônimos)
180
+ - [ ] `project_id` extraído de `supabase/config.toml` se presente
181
+ - [ ] Subcomando `implementar-cdc` faz `AskUserQuestion` upfront sobre abordagem CDC (3 opções)
182
+ - [ ] Dispatch via `Task(subagent_type=...)` — único ponto de chain de agents da Suíte DDIA Foundations
183
+ - [ ] Subcomando inválido → mensagem clara com lista (fallback amigável)
184
+ - [ ] Subcomando `help`/`ajuda`/`?` → exibe tabela inline
185
+ - [ ] Args após subcomando passam transparentemente para o agent
186
+ - [ ] Cross-suite invocation documentada (agents v1.22 → agents v1.8 + v1.21)
187
+ - [ ] Tabela de skills relacionadas (7 skills) com link ATIVO para SKILL.md
188
+ </success_criteria>
@@ -1,12 +1,12 @@
1
- ---
2
- name: definir-perfil
3
- description: Altera o perfil de modelo para os agentes framework (quality/balanced/budget/inherit)
1
+ ---
2
+ name: definir-perfil
3
+ description: Altera o perfil de modelo para os agentes framework (quality/balanced/budget/inherit)
4
4
  argument-hint: "<perfil (quality|balanced|budget|inherit)>"
5
- model: haiku
6
- allowed-tools:
7
- - Bash
8
- ---
9
-
10
- Mostrar a seguinte saída ao usuário verbatim, sem comentários adicionais:
11
-
5
+ model: haiku
6
+ allowed-tools:
7
+ - Bash
8
+ ---
9
+
10
+ Mostrar a seguinte saída ao usuário verbatim, sem comentários adicionais:
11
+
12
12
  !`node "./.claude/framework/bin/tools.cjs" config-set-model-profile $ARGUMENTS --raw`
@@ -1,190 +1,190 @@
1
- ---
2
- name: depurar
3
- description: Depuração sistemática com estado persistente entre resets de contexto
4
- argument-hint: "[descrição do problema]"
5
- allowed-tools:
6
- - Read
7
- - Bash
8
- - Task
9
- - AskUserQuestion
10
- ---
11
-
12
- <objective>
13
- Depurar problemas usando o método científico com isolamento de subagente.
14
-
15
- **Papel do orquestrador:** Coletar sintomas, invocar agente debugger, tratar checkpoints, invocar continuações.
16
-
17
- **Por que subagente:** Investigação consome contexto rapidamente (ler arquivos, formar hipóteses, testar). Contexto fresco de 200k por investigação. Contexto principal permanece enxuto para interação com o usuário.
18
- </objective>
19
-
20
- <available_agent_types>
21
- Tipos de subagente framework válidos (usar nomes exatos — não usar 'general-purpose'):
22
- - debugger — Diagnostica e corrige problemas
23
- - schema-checker — Pré-validação de SQL (FK, JOIN, INSERT) contra schema real via Supabase MCP. Use quando o bug envolve migration que falhou em apply ou suspeita de drift entre comentário do dev e schema real.
24
- </available_agent_types>
25
-
26
- <supabase_pre_check>
27
- ## Triagem rápida — bug envolve SQL/Supabase?
28
-
29
- Se o $ARGUMENTS ou sintomas mencionam algum destes patterns, faça **pre-validação com `schema-checker`** ANTES de invocar o `debugger` genérico:
30
-
31
- | Sintoma | Razão |
32
- |---|---|
33
- | "migration falhou em apply" | `schema-checker` valida FKs/colunas/tabelas — sintoma comum é referência a coluna/tabela inexistente |
34
- | "RLS quebrou query" ou "query lenta após RLS" | Provavelmente `auth.uid()` sem `(select)` wrapper; veja skill `supabase-rls-policies` |
35
- | "Edge Function quebrou em deploy" | Provavelmente bare specifier ou import sem versão; veja skill `supabase-edge-functions` |
36
- | "user_metadata em policy" | Privilege escalation; veja skill `supabase-rls-policies` (REGRA absoluta) |
37
- | "service_role exposto" | Vazamento via `NEXT_PUBLIC_*`; veja skill `supabase-auth-ssr` |
38
-
39
- Se aplicável: invoque `Task(subagent_type=schema-checker, prompt=...)` primeiro. Se schema-checker retorna GO mas o bug persiste, então invoque o `debugger`.
40
- </supabase_pre_check>
41
-
42
- <context>
43
- Problema do usuário: $ARGUMENTS
44
-
45
- Verificar sessões ativas:
46
- ```bash
47
- ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5
48
- ```
49
- </context>
50
-
51
- <process>
52
-
53
- ## 0. Inicializar Contexto
54
-
55
- ```bash
56
- INIT=$(node "./.claude/framework/bin/tools.cjs" state load)
57
- if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
58
- ```
59
-
60
- Extrair `commit_docs` do JSON de init. Resolver modelo do depurador:
61
- ```bash
62
- debugger_model=$(node "./.claude/framework/bin/tools.cjs" resolve-model debugger --raw)
63
- ```
64
-
65
- ## 1. Verificar Sessões Ativas
66
-
67
- Se existirem sessões ativas E sem $ARGUMENTS:
68
- - Listar sessões com status, hipótese, próxima ação
69
- - Usuário escolhe número para retomar OU descreve novo problema
70
-
71
- Se $ARGUMENTS fornecido OU usuário descreve novo problema:
72
- - Continuar para coleta de sintomas
73
-
74
- ## 2. Coletar Sintomas (se novo problema)
75
-
76
- Usar AskUserQuestion para cada:
77
-
78
- 1. **Comportamento esperado** - O que deveria acontecer?
79
- 2. **Comportamento atual** - O que acontece em vez disso?
80
- 3. **Mensagens de erro** - Algum erro? (colar ou descrever)
81
- 4. **Cronologia** - Quando isso começou? Já funcionou?
82
- 5. **Reprodução** - Como você aciona o problema?
83
-
84
- Após todos coletados, confirmar pronto para investigar.
85
-
86
- ## 3. Invocar Agente debugger
87
-
88
- Preencher prompt e invocar:
89
-
90
- ```markdown
91
- <objective>
92
- Investigar problema: {slug}
93
-
94
- **Resumo:** {trigger}
95
- </objective>
96
-
97
- <symptoms>
98
- expected: {expected}
99
- actual: {actual}
100
- errors: {errors}
101
- reproduction: {reproduction}
102
- timeline: {timeline}
103
- </symptoms>
104
-
105
- <mode>
106
- symptoms_prefilled: true
107
- goal: find_and_fix
108
- </mode>
109
-
110
- <debug_file>
111
- Criar: .planning/debug/{slug}.md
112
- </debug_file>
113
- ```
114
-
115
- ```
116
- Task(
117
- prompt=filled_prompt,
118
- subagent_type="debugger",
119
- model="{debugger_model}",
120
- description="Depurar {slug}"
121
- )
122
- ```
123
-
124
- ## 4. Tratar Retorno do Agente
125
-
126
- **Se `## CAUSA RAIZ ENCONTRADA`:**
127
- - Exibir causa raiz e resumo de evidências
128
- - Oferecer opções:
129
- - "Corrigir agora" - invocar subagente de correção
130
- - "Planejar correção" - sugerir /planejar-fase --gaps
131
- - "Correção manual" - concluído
132
-
133
- **Se `## CHECKPOINT ATINGIDO`:**
134
- - Apresentar detalhes do checkpoint ao usuário
135
- - Obter resposta do usuário
136
- - Se tipo de checkpoint for `human-verify`:
137
- - Se usuário confirmar corrigido: continuar para o agente finalizar/resolver/arquivar
138
- - Se usuário reportar problemas: continuar para o agente retornar à investigação/correção
139
- - Invocar agente de continuação (ver passo 5)
140
-
141
- **Se `## INVESTIGAÇÃO INCONCLUSIVA`:**
142
- - Mostrar o que foi verificado e eliminado
143
- - Oferecer opções:
144
- - "Continuar investigando" - invocar novo agente com contexto adicional
145
- - "Investigação manual" - concluído
146
- - "Adicionar mais contexto" - coletar mais sintomas, invocar novamente
147
-
148
- ## 5. Invocar Agente de Continuação (Após Checkpoint)
149
-
150
- Quando usuário responde ao checkpoint, invocar agente fresco:
151
-
152
- ```markdown
153
- <objective>
154
- Continuar depuração de {slug}. Evidências estão no arquivo de depuração.
155
- </objective>
156
-
157
- <prior_state>
158
- <files_to_read>
159
- - .planning/debug/{slug}.md (Estado da sessão de depuração)
160
- </files_to_read>
161
- </prior_state>
162
-
163
- <checkpoint_response>
164
- **Tipo:** {checkpoint_type}
165
- **Resposta:** {user_response}
166
- </checkpoint_response>
167
-
168
- <mode>
169
- goal: find_and_fix
170
- </mode>
171
- ```
172
-
173
- ```
174
- Task(
175
- prompt=continuation_prompt,
176
- subagent_type="debugger",
177
- model="{debugger_model}",
178
- description="Continuar depuração {slug}"
179
- )
180
- ```
181
-
182
- </process>
183
-
184
- <success_criteria>
185
- - [ ] Sessões ativas verificadas
186
- - [ ] Sintomas coletados (se novo)
187
- - [ ] debugger invocado com contexto
188
- - [ ] Checkpoints tratados corretamente
189
- - [ ] Causa raiz confirmada antes de corrigir
190
- </success_criteria>
1
+ ---
2
+ name: depurar
3
+ description: Depuração sistemática com estado persistente entre resets de contexto
4
+ argument-hint: "[descrição do problema]"
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ - Task
9
+ - AskUserQuestion
10
+ ---
11
+
12
+ <objective>
13
+ Depurar problemas usando o método científico com isolamento de subagente.
14
+
15
+ **Papel do orquestrador:** Coletar sintomas, invocar agente debugger, tratar checkpoints, invocar continuações.
16
+
17
+ **Por que subagente:** Investigação consome contexto rapidamente (ler arquivos, formar hipóteses, testar). Contexto fresco de 200k por investigação. Contexto principal permanece enxuto para interação com o usuário.
18
+ </objective>
19
+
20
+ <available_agent_types>
21
+ Tipos de subagente framework válidos (usar nomes exatos — não usar 'general-purpose'):
22
+ - debugger — Diagnostica e corrige problemas
23
+ - schema-checker — Pré-validação de SQL (FK, JOIN, INSERT) contra schema real via Supabase MCP. Use quando o bug envolve migration que falhou em apply ou suspeita de drift entre comentário do dev e schema real.
24
+ </available_agent_types>
25
+
26
+ <supabase_pre_check>
27
+ ## Triagem rápida — bug envolve SQL/Supabase?
28
+
29
+ Se o $ARGUMENTS ou sintomas mencionam algum destes patterns, faça **pre-validação com `schema-checker`** ANTES de invocar o `debugger` genérico:
30
+
31
+ | Sintoma | Razão |
32
+ |---|---|
33
+ | "migration falhou em apply" | `schema-checker` valida FKs/colunas/tabelas — sintoma comum é referência a coluna/tabela inexistente |
34
+ | "RLS quebrou query" ou "query lenta após RLS" | Provavelmente `auth.uid()` sem `(select)` wrapper; veja skill `supabase-rls-policies` |
35
+ | "Edge Function quebrou em deploy" | Provavelmente bare specifier ou import sem versão; veja skill `supabase-edge-functions` |
36
+ | "user_metadata em policy" | Privilege escalation; veja skill `supabase-rls-policies` (REGRA absoluta) |
37
+ | "service_role exposto" | Vazamento via `NEXT_PUBLIC_*`; veja skill `supabase-auth-ssr` |
38
+
39
+ Se aplicável: invoque `Task(subagent_type=schema-checker, prompt=...)` primeiro. Se schema-checker retorna GO mas o bug persiste, então invoque o `debugger`.
40
+ </supabase_pre_check>
41
+
42
+ <context>
43
+ Problema do usuário: $ARGUMENTS
44
+
45
+ Verificar sessões ativas:
46
+ ```bash
47
+ ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5
48
+ ```
49
+ </context>
50
+
51
+ <process>
52
+
53
+ ## 0. Inicializar Contexto
54
+
55
+ ```bash
56
+ INIT=$(node "./.claude/framework/bin/tools.cjs" state load)
57
+ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
58
+ ```
59
+
60
+ Extrair `commit_docs` do JSON de init. Resolver modelo do depurador:
61
+ ```bash
62
+ debugger_model=$(node "./.claude/framework/bin/tools.cjs" resolve-model debugger --raw)
63
+ ```
64
+
65
+ ## 1. Verificar Sessões Ativas
66
+
67
+ Se existirem sessões ativas E sem $ARGUMENTS:
68
+ - Listar sessões com status, hipótese, próxima ação
69
+ - Usuário escolhe número para retomar OU descreve novo problema
70
+
71
+ Se $ARGUMENTS fornecido OU usuário descreve novo problema:
72
+ - Continuar para coleta de sintomas
73
+
74
+ ## 2. Coletar Sintomas (se novo problema)
75
+
76
+ Usar AskUserQuestion para cada:
77
+
78
+ 1. **Comportamento esperado** - O que deveria acontecer?
79
+ 2. **Comportamento atual** - O que acontece em vez disso?
80
+ 3. **Mensagens de erro** - Algum erro? (colar ou descrever)
81
+ 4. **Cronologia** - Quando isso começou? Já funcionou?
82
+ 5. **Reprodução** - Como você aciona o problema?
83
+
84
+ Após todos coletados, confirmar pronto para investigar.
85
+
86
+ ## 3. Invocar Agente debugger
87
+
88
+ Preencher prompt e invocar:
89
+
90
+ ```markdown
91
+ <objective>
92
+ Investigar problema: {slug}
93
+
94
+ **Resumo:** {trigger}
95
+ </objective>
96
+
97
+ <symptoms>
98
+ expected: {expected}
99
+ actual: {actual}
100
+ errors: {errors}
101
+ reproduction: {reproduction}
102
+ timeline: {timeline}
103
+ </symptoms>
104
+
105
+ <mode>
106
+ symptoms_prefilled: true
107
+ goal: find_and_fix
108
+ </mode>
109
+
110
+ <debug_file>
111
+ Criar: .planning/debug/{slug}.md
112
+ </debug_file>
113
+ ```
114
+
115
+ ```
116
+ Task(
117
+ prompt=filled_prompt,
118
+ subagent_type="debugger",
119
+ model="{debugger_model}",
120
+ description="Depurar {slug}"
121
+ )
122
+ ```
123
+
124
+ ## 4. Tratar Retorno do Agente
125
+
126
+ **Se `## CAUSA RAIZ ENCONTRADA`:**
127
+ - Exibir causa raiz e resumo de evidências
128
+ - Oferecer opções:
129
+ - "Corrigir agora" - invocar subagente de correção
130
+ - "Planejar correção" - sugerir /planejar-fase --gaps
131
+ - "Correção manual" - concluído
132
+
133
+ **Se `## CHECKPOINT ATINGIDO`:**
134
+ - Apresentar detalhes do checkpoint ao usuário
135
+ - Obter resposta do usuário
136
+ - Se tipo de checkpoint for `human-verify`:
137
+ - Se usuário confirmar corrigido: continuar para o agente finalizar/resolver/arquivar
138
+ - Se usuário reportar problemas: continuar para o agente retornar à investigação/correção
139
+ - Invocar agente de continuação (ver passo 5)
140
+
141
+ **Se `## INVESTIGAÇÃO INCONCLUSIVA`:**
142
+ - Mostrar o que foi verificado e eliminado
143
+ - Oferecer opções:
144
+ - "Continuar investigando" - invocar novo agente com contexto adicional
145
+ - "Investigação manual" - concluído
146
+ - "Adicionar mais contexto" - coletar mais sintomas, invocar novamente
147
+
148
+ ## 5. Invocar Agente de Continuação (Após Checkpoint)
149
+
150
+ Quando usuário responde ao checkpoint, invocar agente fresco:
151
+
152
+ ```markdown
153
+ <objective>
154
+ Continuar depuração de {slug}. Evidências estão no arquivo de depuração.
155
+ </objective>
156
+
157
+ <prior_state>
158
+ <files_to_read>
159
+ - .planning/debug/{slug}.md (Estado da sessão de depuração)
160
+ </files_to_read>
161
+ </prior_state>
162
+
163
+ <checkpoint_response>
164
+ **Tipo:** {checkpoint_type}
165
+ **Resposta:** {user_response}
166
+ </checkpoint_response>
167
+
168
+ <mode>
169
+ goal: find_and_fix
170
+ </mode>
171
+ ```
172
+
173
+ ```
174
+ Task(
175
+ prompt=continuation_prompt,
176
+ subagent_type="debugger",
177
+ model="{debugger_model}",
178
+ description="Continuar depuração {slug}"
179
+ )
180
+ ```
181
+
182
+ </process>
183
+
184
+ <success_criteria>
185
+ - [ ] Sessões ativas verificadas
186
+ - [ ] Sintomas coletados (se novo)
187
+ - [ ] debugger invocado com contexto
188
+ - [ ] Checkpoints tratados corretamente
189
+ - [ ] Causa raiz confirmada antes de corrigir
190
+ </success_criteria>