@luanpdd/kit-mcp 1.21.0 → 1.26.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 (275) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +914 -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/audit-log-implementer.md +138 -0
  8. package/kit/agents/auditor-consistencia-isolamento.md +413 -0
  9. package/kit/agents/codebase-mapper.md +768 -768
  10. package/kit/agents/crm-pipeline-implementer.md +106 -0
  11. package/kit/agents/debugger.md +813 -772
  12. package/kit/agents/detector-tenant-quente.md +337 -0
  13. package/kit/agents/evolution-go-integrator.md +21 -0
  14. package/kit/agents/example-reviewer.md +21 -21
  15. package/kit/agents/executor.md +564 -523
  16. package/kit/agents/integration-checker.md +200 -200
  17. package/kit/agents/invite-flow-implementer.md +52 -0
  18. package/kit/agents/lgpd-compliance-auditor.md +89 -0
  19. package/kit/agents/multi-tenant-isolation-auditor.md +10 -0
  20. package/kit/agents/multi-tenant-rls-writer.md +78 -0
  21. package/kit/agents/nyquist-auditor.md +178 -178
  22. package/kit/agents/org-onboarding-implementer.md +21 -0
  23. package/kit/agents/phase-researcher.md +696 -696
  24. package/kit/agents/plan-checker.md +272 -272
  25. package/kit/agents/planner.md +922 -891
  26. package/kit/agents/project-researcher.md +652 -652
  27. package/kit/agents/research-synthesizer.md +245 -245
  28. package/kit/agents/roadmapper.md +677 -677
  29. package/kit/agents/supabase-architect.md +27 -0
  30. package/kit/agents/supabase-auth-bootstrapper.md +80 -0
  31. package/kit/agents/supabase-column-privileges-writer.md +399 -0
  32. package/kit/agents/supabase-migration-writer.md +141 -14
  33. package/kit/agents/supabase-rbac-implementer.md +392 -0
  34. package/kit/agents/supabase-rls-hardener.md +521 -0
  35. package/kit/agents/supabase-rls-writer.md +105 -9
  36. package/kit/agents/supabase-roles-implementer.md +355 -0
  37. package/kit/agents/super-admin-implementer.md +99 -0
  38. package/kit/agents/ui-auditor.md +437 -437
  39. package/kit/agents/ui-checker.md +302 -302
  40. package/kit/agents/ui-researcher.md +355 -355
  41. package/kit/agents/user-profiler.md +175 -175
  42. package/kit/agents/validador-evolucao-schema.md +335 -0
  43. package/kit/agents/verifier.md +728 -728
  44. package/kit/commands/adicionar-backlog.md +75 -75
  45. package/kit/commands/adicionar-fase.md +42 -42
  46. package/kit/commands/adicionar-tarefa.md +45 -45
  47. package/kit/commands/adicionar-testes.md +41 -41
  48. package/kit/commands/ajuda.md +21 -21
  49. package/kit/commands/atualizar.md +37 -37
  50. package/kit/commands/auditar-marco.md +179 -179
  51. package/kit/commands/auditar-uat.md +23 -23
  52. package/kit/commands/autonomo.md +40 -40
  53. package/kit/commands/branch-pr.md +24 -24
  54. package/kit/commands/concluir-marco.md +247 -247
  55. package/kit/commands/configuracoes.md +36 -36
  56. package/kit/commands/dados-distribuidos.md +188 -0
  57. package/kit/commands/definir-perfil.md +10 -10
  58. package/kit/commands/depurar.md +190 -190
  59. package/kit/commands/discutir-fase.md +131 -131
  60. package/kit/commands/entrar-discord.md +17 -17
  61. package/kit/commands/estatisticas.md +18 -18
  62. package/kit/commands/example-greeting.md +33 -33
  63. package/kit/commands/executar-fase.md +58 -58
  64. package/kit/commands/expresso.md +56 -56
  65. package/kit/commands/fase-ui.md +34 -34
  66. package/kit/commands/fazer.md +57 -57
  67. package/kit/commands/fio.md +125 -125
  68. package/kit/commands/fluxos-trabalho.md +64 -64
  69. package/kit/commands/forense.md +176 -176
  70. package/kit/commands/gerenciador.md +38 -38
  71. package/kit/commands/inserir-fase.md +31 -31
  72. package/kit/commands/limpeza.md +17 -17
  73. package/kit/commands/listar-hipoteses-fase.md +45 -45
  74. package/kit/commands/listar-workspaces.md +18 -18
  75. package/kit/commands/mapear-codebase.md +70 -70
  76. package/kit/commands/nota.md +33 -33
  77. package/kit/commands/novo-marco.md +43 -43
  78. package/kit/commands/novo-projeto.md +41 -41
  79. package/kit/commands/novo-workspace.md +43 -43
  80. package/kit/commands/pausar-trabalho.md +37 -37
  81. package/kit/commands/perfil-usuario.md +45 -45
  82. package/kit/commands/pesquisar-fase.md +195 -195
  83. package/kit/commands/planejar-fase.md +67 -67
  84. package/kit/commands/planejar-lacunas.md +33 -33
  85. package/kit/commands/plantar-ideia.md +25 -25
  86. package/kit/commands/progresso.md +24 -24
  87. package/kit/commands/proximo.md +30 -30
  88. package/kit/commands/publicar.md +490 -490
  89. package/kit/commands/rapido.md +35 -35
  90. package/kit/commands/reaplicar-patches.md +124 -124
  91. package/kit/commands/relatorio-sessao.md +19 -19
  92. package/kit/commands/remover-fase.md +31 -31
  93. package/kit/commands/remover-workspace.md +26 -26
  94. package/kit/commands/resumo-marco.md +50 -50
  95. package/kit/commands/retomar-trabalho.md +40 -40
  96. package/kit/commands/revisar-backlog.md +60 -60
  97. package/kit/commands/revisar-ui.md +32 -32
  98. package/kit/commands/revisar.md +37 -37
  99. package/kit/commands/saude.md +21 -21
  100. package/kit/commands/setup-notion.md +93 -93
  101. package/kit/commands/supabase.md +55 -8
  102. package/kit/commands/sync-main.md +68 -68
  103. package/kit/commands/validar-fase.md +35 -35
  104. package/kit/commands/verificar-tarefas.md +44 -44
  105. package/kit/commands/verificar-trabalho.md +64 -64
  106. package/kit/file-manifest.json +52 -32
  107. package/kit/framework/bin/lib/commands.cjs +959 -959
  108. package/kit/framework/bin/lib/config.cjs +442 -442
  109. package/kit/framework/bin/lib/core.cjs +1230 -1230
  110. package/kit/framework/bin/lib/frontmatter.cjs +336 -336
  111. package/kit/framework/bin/lib/init.cjs +1442 -1442
  112. package/kit/framework/bin/lib/milestone.cjs +252 -252
  113. package/kit/framework/bin/lib/model-profiles.cjs +68 -68
  114. package/kit/framework/bin/lib/phase.cjs +888 -888
  115. package/kit/framework/bin/lib/profile-output.cjs +952 -952
  116. package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
  117. package/kit/framework/bin/lib/roadmap.cjs +329 -329
  118. package/kit/framework/bin/lib/security.cjs +382 -382
  119. package/kit/framework/bin/lib/state.cjs +1031 -1031
  120. package/kit/framework/bin/lib/template.cjs +222 -222
  121. package/kit/framework/bin/lib/uat.cjs +282 -282
  122. package/kit/framework/bin/lib/verify.cjs +888 -888
  123. package/kit/framework/bin/lib/workstream.cjs +491 -491
  124. package/kit/framework/bin/tools.cjs +918 -918
  125. package/kit/framework/commands/workstreams.md +63 -63
  126. package/kit/framework/references/checkpoints.md +778 -778
  127. package/kit/framework/references/continuation-format.md +249 -249
  128. package/kit/framework/references/decimal-phase-calculation.md +64 -64
  129. package/kit/framework/references/git-integration.md +295 -295
  130. package/kit/framework/references/git-planning-commit.md +38 -38
  131. package/kit/framework/references/model-profile-resolution.md +36 -36
  132. package/kit/framework/references/model-profiles.md +139 -139
  133. package/kit/framework/references/phase-argument-parsing.md +61 -61
  134. package/kit/framework/references/planning-config.md +202 -202
  135. package/kit/framework/references/questioning.md +162 -162
  136. package/kit/framework/references/tdd.md +263 -263
  137. package/kit/framework/references/ui-brand.md +160 -160
  138. package/kit/framework/references/user-profiling.md +657 -657
  139. package/kit/framework/references/verification-patterns.md +612 -612
  140. package/kit/framework/references/workstream-flag.md +58 -58
  141. package/kit/framework/templates/DEBUG.md +164 -164
  142. package/kit/framework/templates/UAT.md +265 -265
  143. package/kit/framework/templates/UI-SPEC.md +100 -100
  144. package/kit/framework/templates/VALIDATION.md +76 -76
  145. package/kit/framework/templates/claude-md.md +122 -122
  146. package/kit/framework/templates/codebase/architecture.md +185 -185
  147. package/kit/framework/templates/codebase/concerns.md +205 -205
  148. package/kit/framework/templates/codebase/conventions.md +204 -204
  149. package/kit/framework/templates/codebase/integrations.md +192 -192
  150. package/kit/framework/templates/codebase/stack.md +158 -158
  151. package/kit/framework/templates/codebase/structure.md +199 -199
  152. package/kit/framework/templates/codebase/testing.md +301 -301
  153. package/kit/framework/templates/config.json +44 -44
  154. package/kit/framework/templates/context.md +352 -352
  155. package/kit/framework/templates/continue-here.md +78 -78
  156. package/kit/framework/templates/copilot-instructions.md +7 -7
  157. package/kit/framework/templates/debug-subagent-prompt.md +91 -91
  158. package/kit/framework/templates/dev-preferences.md +20 -20
  159. package/kit/framework/templates/discovery.md +146 -146
  160. package/kit/framework/templates/discussion-log.md +63 -63
  161. package/kit/framework/templates/milestone-archive.md +123 -123
  162. package/kit/framework/templates/milestone.md +115 -115
  163. package/kit/framework/templates/phase-prompt.md +610 -610
  164. package/kit/framework/templates/planner-subagent-prompt.md +117 -117
  165. package/kit/framework/templates/project.md +186 -186
  166. package/kit/framework/templates/requirements.md +231 -231
  167. package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
  168. package/kit/framework/templates/research-project/FEATURES.md +147 -147
  169. package/kit/framework/templates/research-project/PITFALLS.md +200 -200
  170. package/kit/framework/templates/research-project/STACK.md +120 -120
  171. package/kit/framework/templates/research-project/SUMMARY.md +170 -170
  172. package/kit/framework/templates/research.md +419 -419
  173. package/kit/framework/templates/retrospective.md +54 -54
  174. package/kit/framework/templates/roadmap.md +202 -202
  175. package/kit/framework/templates/state.md +176 -176
  176. package/kit/framework/templates/summary-complex.md +59 -59
  177. package/kit/framework/templates/summary-minimal.md +41 -41
  178. package/kit/framework/templates/summary-standard.md +48 -48
  179. package/kit/framework/templates/summary.md +209 -209
  180. package/kit/framework/templates/user-profile.md +146 -146
  181. package/kit/framework/templates/user-setup.md +256 -256
  182. package/kit/framework/templates/verification-report.md +258 -258
  183. package/kit/framework/workflows/add-phase.md +112 -112
  184. package/kit/framework/workflows/add-tests.md +351 -351
  185. package/kit/framework/workflows/add-todo.md +158 -158
  186. package/kit/framework/workflows/audit-milestone.md +340 -340
  187. package/kit/framework/workflows/audit-uat.md +109 -109
  188. package/kit/framework/workflows/autonomous.md +891 -891
  189. package/kit/framework/workflows/check-todos.md +177 -177
  190. package/kit/framework/workflows/cleanup.md +152 -152
  191. package/kit/framework/workflows/complete-milestone.md +696 -696
  192. package/kit/framework/workflows/diagnose-issues.md +231 -231
  193. package/kit/framework/workflows/discovery-phase.md +289 -289
  194. package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
  195. package/kit/framework/workflows/discuss-phase.md +784 -784
  196. package/kit/framework/workflows/do.md +104 -104
  197. package/kit/framework/workflows/execute-phase.md +838 -838
  198. package/kit/framework/workflows/execute-plan.md +510 -510
  199. package/kit/framework/workflows/fast.md +102 -102
  200. package/kit/framework/workflows/forensics.md +265 -265
  201. package/kit/framework/workflows/health.md +181 -181
  202. package/kit/framework/workflows/help.md +619 -619
  203. package/kit/framework/workflows/insert-phase.md +130 -130
  204. package/kit/framework/workflows/list-phase-assumptions.md +178 -178
  205. package/kit/framework/workflows/list-workspaces.md +56 -56
  206. package/kit/framework/workflows/manager.md +362 -362
  207. package/kit/framework/workflows/map-codebase.md +377 -377
  208. package/kit/framework/workflows/milestone-summary.md +223 -223
  209. package/kit/framework/workflows/new-milestone.md +486 -486
  210. package/kit/framework/workflows/new-project.md +1159 -1159
  211. package/kit/framework/workflows/new-workspace.md +237 -237
  212. package/kit/framework/workflows/next.md +97 -97
  213. package/kit/framework/workflows/node-repair.md +92 -92
  214. package/kit/framework/workflows/note.md +156 -156
  215. package/kit/framework/workflows/pause-work.md +176 -176
  216. package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
  217. package/kit/framework/workflows/plan-phase.md +765 -765
  218. package/kit/framework/workflows/plant-seed.md +169 -169
  219. package/kit/framework/workflows/pr-branch.md +129 -129
  220. package/kit/framework/workflows/profile-user.md +450 -450
  221. package/kit/framework/workflows/progress.md +507 -507
  222. package/kit/framework/workflows/quick.md +757 -757
  223. package/kit/framework/workflows/remove-phase.md +155 -155
  224. package/kit/framework/workflows/remove-workspace.md +90 -90
  225. package/kit/framework/workflows/research-phase.md +82 -82
  226. package/kit/framework/workflows/resume-project.md +326 -326
  227. package/kit/framework/workflows/review.md +228 -228
  228. package/kit/framework/workflows/session-report.md +146 -146
  229. package/kit/framework/workflows/settings.md +283 -283
  230. package/kit/framework/workflows/ship.md +228 -228
  231. package/kit/framework/workflows/stats.md +60 -60
  232. package/kit/framework/workflows/transition.md +671 -671
  233. package/kit/framework/workflows/ui-phase.md +302 -302
  234. package/kit/framework/workflows/ui-review.md +165 -165
  235. package/kit/framework/workflows/update.md +323 -323
  236. package/kit/framework/workflows/validate-phase.md +174 -174
  237. package/kit/framework/workflows/verify-phase.md +252 -252
  238. package/kit/framework/workflows/verify-work.md +637 -637
  239. package/kit/hooks/check-update.js +118 -118
  240. package/kit/hooks/context-monitor.js +163 -163
  241. package/kit/hooks/prompt-guard.js +103 -103
  242. package/kit/hooks/statusline.js +125 -125
  243. package/kit/hooks/workflow-guard.js +101 -101
  244. package/kit/settings.json +45 -45
  245. package/kit/skills/_shared-dados-distribuidos/glossary.md +224 -0
  246. package/kit/skills/_shared-supabase/glossary.md +27 -0
  247. package/kit/skills/armadilhas-sistemas-distribuidos/SKILL.md +447 -0
  248. package/kit/skills/audit-log-multi-tenant/SKILL.md +6 -0
  249. package/kit/skills/cascading-failures/SKILL.md +4 -0
  250. package/kit/skills/consistencia-leitura-replica/SKILL.md +385 -0
  251. package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +17 -0
  252. package/kit/skills/escolha-modelo-consistencia/SKILL.md +495 -0
  253. package/kit/skills/evolucao-schema-compativel/SKILL.md +448 -0
  254. package/kit/skills/example-skill/SKILL.md +42 -42
  255. package/kit/skills/multi-tenant-performance-scaling/SKILL.md +4 -0
  256. package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +4 -0
  257. package/kit/skills/postgres-isolamento-concorrencia/SKILL.md +552 -0
  258. package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +37 -0
  259. package/kit/skills/streams-eventos-cdc/SKILL.md +712 -0
  260. package/kit/skills/supabase-column-level-security/SKILL.md +426 -0
  261. package/kit/skills/supabase-cron-queues/SKILL.md +9 -0
  262. package/kit/skills/supabase-custom-claims-rbac/SKILL.md +472 -0
  263. package/kit/skills/supabase-database-functions/SKILL.md +85 -0
  264. package/kit/skills/supabase-migrations/SKILL.md +133 -11
  265. package/kit/skills/supabase-postgres-roles/SKILL.md +392 -0
  266. package/kit/skills/supabase-rls-defense-in-depth/SKILL.md +418 -0
  267. package/kit/skills/supabase-rls-policies/SKILL.md +462 -12
  268. package/kit/skills/super-admin-platform-pattern/SKILL.md +4 -0
  269. package/kit/skills/tenant-quente-mitigacao/SKILL.md +605 -0
  270. package/package.json +63 -63
  271. package/src/core/kit.js +216 -216
  272. package/src/core/reflect.js +247 -247
  273. package/src/core/reverse-sync.js +372 -372
  274. package/src/core/sync.js +418 -418
  275. 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>