@maestro-ai/mcp-server 1.0.0 → 1.0.1

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 (440) hide show
  1. package/README.md +266 -227
  2. package/dist/content/design-system/README.md +231 -231
  3. package/dist/content/design-system/indexes/README.md +211 -211
  4. package/dist/content/design-system/indexes/colors-index.md +156 -156
  5. package/dist/content/design-system/indexes/quick-search.md +111 -111
  6. package/dist/content/design-system/indexes/stacks-index.md +341 -341
  7. package/dist/content/examples/Exemplo de Fluxo Completo com Java e Spring Boot.md +249 -249
  8. package/dist/content/examples/Exemplo de Fluxo Completo com Laravel e Filament.md +277 -277
  9. package/dist/content/examples/Exemplo de Fluxo Completo com Laravel e Livewire.md +260 -260
  10. package/dist/content/examples/Exemplo de Fluxo Completo com Node e NestJS.md +257 -257
  11. package/dist/content/guides/Cat/303/241logo de Stacks para Cloud Moderna.md" +119 -119
  12. package/dist/content/guides/Cat/303/241logo de Stacks para Hospedagem Compartilhada.md" +147 -147
  13. package/dist/content/guides/Checklist Mestre de Entrega.md +68 -68
  14. package/dist/content/guides/Gates de Qualidade.md +209 -209
  15. package/dist/content/guides/Guia de Adi/303/247/303/243o de Novas Funcionalidades.md" +355 -355
  16. package/dist/content/guides/Guia de Chaos Engineering.md +267 -267
  17. package/dist/content/guides/Guia de Debugging com IA.md +135 -135
  18. package/dist/content/guides/Guia de Estrat/303/251gias de Cache.md" +352 -352
  19. package/dist/content/guides/Guia de Migrations Zero-Downtime.md +311 -311
  20. package/dist/content/guides/Guia de Multi-tenancy.md +368 -368
  21. package/dist/content/guides/Guia de Otimiza/303/247/303/243o de Custos Cloud.md" +195 -195
  22. package/dist/content/guides/Guia de Refatora/303/247/303/243o de C/303/263digo Legado com IA.md" +162 -162
  23. package/dist/content/guides/Guia de SLOs e Error Budgets.md +315 -315
  24. package/dist/content/guides/M/303/251tricas de Efici/303/252ncia do Desenvolvimento com IA.md" +93 -93
  25. package/dist/content/guides/Rules base.md +90 -90
  26. package/dist/content/playbook/Playbook de Desenvolvimento com IA.md +364 -364
  27. package/dist/content/prompts/README.md +203 -203
  28. package/dist/content/prompts/acessibilidade/analise-acessibilidade.md +257 -257
  29. package/dist/content/prompts/apis/design-api-rest.md +303 -303
  30. package/dist/content/prompts/apis/idempotencia.md +254 -254
  31. package/dist/content/prompts/apis/versionamento.md +313 -313
  32. package/dist/content/prompts/arquitetura/arquitetura-c4-completo.md +190 -190
  33. package/dist/content/prompts/arquitetura/clean-architecture.md +151 -151
  34. package/dist/content/prompts/arquitetura/ddd-bounded-contexts.md +183 -183
  35. package/dist/content/prompts/arquitetura/ddd-cqrs.md +176 -176
  36. package/dist/content/prompts/arquitetura/modelo-dominio.md +207 -207
  37. package/dist/content/prompts/arquitetura/multi-tenancy.md +235 -235
  38. package/dist/content/prompts/database/migrations-zero-downtime.md +192 -192
  39. package/dist/content/prompts/database/otimizacao-queries.md +296 -296
  40. package/dist/content/prompts/desenvolvimento/code-review.md +301 -301
  41. package/dist/content/prompts/desenvolvimento/gerar-servico.md +271 -271
  42. package/dist/content/prompts/devops/docker-compose.md +336 -336
  43. package/dist/content/prompts/devops/feature-flags.md +374 -374
  44. package/dist/content/prompts/devops/kubernetes-deploy.md +460 -460
  45. package/dist/content/prompts/devops/pipeline-cicd.md +358 -358
  46. package/dist/content/prompts/devops/terraform-iac.md +502 -502
  47. package/dist/content/prompts/escalabilidade/analise-performance.md +240 -240
  48. package/dist/content/prompts/escalabilidade/analise-performance.txt +94 -94
  49. package/dist/content/prompts/escalabilidade/caching.md +255 -255
  50. package/dist/content/prompts/observabilidade/chaos-testing.md +237 -237
  51. package/dist/content/prompts/observabilidade/estrategia-observabilidade.md +263 -263
  52. package/dist/content/prompts/observabilidade/estrategia-observabilidade.txt +134 -134
  53. package/dist/content/prompts/observabilidade/slos.md +215 -215
  54. package/dist/content/prompts/produto/discovery-inicial.md +203 -203
  55. package/dist/content/prompts/produto/discovery-inicial.txt +33 -33
  56. package/dist/content/prompts/requisitos/refinar-requisitos.md +232 -232
  57. package/dist/content/prompts/requisitos/refinar-requisitos.txt +40 -40
  58. package/dist/content/prompts/seguranca/analise-seguranca.md +243 -243
  59. package/dist/content/prompts/seguranca/pentest-checklist.md +333 -333
  60. package/dist/content/prompts/seguranca/rate-limiting.md +356 -356
  61. package/dist/content/prompts/seguranca/revisao-lgpd.md +227 -227
  62. package/dist/content/prompts/seguranca/threat-modeling.md +224 -224
  63. package/dist/content/prompts/testes/contract-testing.md +340 -340
  64. package/dist/content/prompts/testes/gerar-testes-unitarios.md +474 -474
  65. package/dist/content/prompts/testes/testes-e2e.md +460 -460
  66. package/dist/content/prompts/testes/testes-integracao.md +418 -418
  67. package/dist/content/prompts/testes/testes-performance.md +458 -458
  68. package/dist/content/prompts/ux/gerar-ui-stitch.md +151 -151
  69. package/dist/content/rules/RULES.md +835 -835
  70. package/dist/content/rules/adapters/copilot.md +10 -10
  71. package/dist/content/rules/adapters/cursor.md +10 -10
  72. package/dist/content/rules/adapters/gemini.md +13 -13
  73. package/dist/content/rules/adapters/windsurf.md +10 -10
  74. package/dist/content/specialists/Especialista em Acessibilidade.md +266 -266
  75. package/dist/content/specialists/Especialista em An/303/241lise de Testes.md" +434 -434
  76. package/dist/content/specialists/Especialista em Arquitetura Avan/303/247ada.md" +358 -358
  77. package/dist/content/specialists/Especialista em Arquitetura de Software.md +177 -177
  78. package/dist/content/specialists/Especialista em Banco de Dados.md +260 -260
  79. package/dist/content/specialists/Especialista em Contrato de API.md +172 -172
  80. package/dist/content/specialists/Especialista em Dados e Analytics com IA.md +246 -246
  81. package/dist/content/specialists/Especialista em Debugging e Troubleshooting.md +191 -191
  82. package/dist/content/specialists/Especialista em Desenvolvimento Frontend.md +477 -477
  83. package/dist/content/specialists/Especialista em Desenvolvimento Mobile.md +241 -241
  84. package/dist/content/specialists/Especialista em Desenvolvimento e Vibe Coding Estruturado.md +417 -417
  85. package/dist/content/specialists/Especialista em DevOps e Infraestrutura.md +294 -294
  86. package/dist/content/specialists/Especialista em Documenta/303/247/303/243o T/303/251cnica.md" +227 -227
  87. package/dist/content/specialists/Especialista em Engenharia de Requisitos com IA.md +299 -299
  88. package/dist/content/specialists/Especialista em Explora/303/247/303/243o de Codebase.md" +179 -179
  89. package/dist/content/specialists/Especialista em Gest/303/243o de Produto.md" +179 -179
  90. package/dist/content/specialists/Especialista em Migra/303/247/303/243o e Moderniza/303/247/303/243o.md" +410 -410
  91. package/dist/content/specialists/Especialista em Modelagem e Arquitetura de Dom/303/255nio com IA.md" +248 -248
  92. package/dist/content/specialists/Especialista em Observabilidade.md +415 -415
  93. package/dist/content/specialists/Especialista em Performance e Escalabilidade.md +373 -373
  94. package/dist/content/specialists/Especialista em Plano de Execu/303/247/303/243o com IA.md" +341 -341
  95. package/dist/content/specialists/Especialista em Prototipagem R/303/241pida com Google Stitch.md" +419 -419
  96. package/dist/content/specialists/Especialista em Seguran/303/247a da Informa/303/247/303/243o.md" +508 -508
  97. package/dist/content/specialists/Especialista em UX Design.md +453 -453
  98. package/dist/content/specialists/INDEX.md +43 -43
  99. package/dist/content/templates/PRD.md +165 -165
  100. package/dist/content/templates/README.md +65 -65
  101. package/dist/content/templates/adr.md +103 -103
  102. package/dist/content/templates/arquitetura.md +279 -279
  103. package/dist/content/templates/backlog.md +185 -185
  104. package/dist/content/templates/checklist-seguranca.md +180 -180
  105. package/dist/content/templates/contexto.md +120 -120
  106. package/dist/content/templates/criterios-aceite.md +99 -99
  107. package/dist/content/templates/design-banco.md +270 -270
  108. package/dist/content/templates/design-doc.md +240 -240
  109. package/dist/content/templates/feature.md +88 -88
  110. package/dist/content/templates/historia-backend.md +84 -84
  111. package/dist/content/templates/historia-frontend.md +75 -75
  112. package/dist/content/templates/historia-usuario.md +125 -125
  113. package/dist/content/templates/mapa-navegacao.md +133 -133
  114. package/dist/content/templates/matriz-rastreabilidade.md +121 -121
  115. package/dist/content/templates/modelo-dominio.md +219 -219
  116. package/dist/content/templates/plano-testes.md +199 -199
  117. package/dist/content/templates/prototipo-stitch.md +138 -138
  118. package/dist/content/templates/requisitos.md +162 -162
  119. package/dist/content/templates/slo-sli.md +197 -197
  120. package/dist/content/workflows/README-MCP.md +363 -363
  121. package/dist/content/workflows/mcp-debug.md +506 -506
  122. package/dist/content/workflows/mcp-feature.md +385 -385
  123. package/dist/content/workflows/mcp-gate.md +413 -413
  124. package/dist/content/workflows/mcp-next.md +388 -388
  125. package/dist/content/workflows/mcp-refactor.md +600 -600
  126. package/dist/content/workflows/mcp-start.md +304 -304
  127. package/dist/content/workflows/mcp-status.md +400 -400
  128. package/dist/gates/tiers.test.js +14 -14
  129. package/dist/index.js +133 -133
  130. package/dist/resources/index.js +61 -61
  131. package/dist/stdio.js +39 -32
  132. package/dist/stdio.js.map +1 -1
  133. package/dist/tools/analise/performance.js +23 -23
  134. package/dist/tools/analise/qualidade.js +23 -23
  135. package/dist/tools/analise/relatorio.js +24 -24
  136. package/dist/tools/analise/seguranca.js +28 -28
  137. package/dist/tools/aprovar-gate.js +81 -81
  138. package/dist/tools/atualizar-codebase.js +18 -18
  139. package/dist/tools/avaliar-entregavel.js +18 -18
  140. package/dist/tools/carregar-projeto.js +103 -103
  141. package/dist/tools/classificar.js +36 -36
  142. package/dist/tools/confirmar-classificacao.js +36 -36
  143. package/dist/tools/confirmar-stitch.js +75 -75
  144. package/dist/tools/contexto.js +56 -56
  145. package/dist/tools/fluxos-alternativos.js +98 -98
  146. package/dist/tools/implementar-historia.js +63 -63
  147. package/dist/tools/iniciar-projeto.js +174 -174
  148. package/dist/tools/proximo.js +239 -239
  149. package/dist/tools/salvar.js +59 -59
  150. package/dist/tools/status.js +76 -76
  151. package/dist/tools/validar-gate.js +35 -35
  152. package/dist/types/response.js +11 -11
  153. package/dist/utils/instructions.js +48 -48
  154. package/dist/utils/prompt-mapper.js +16 -16
  155. package/dist/utils/system-md.js +33 -33
  156. package/package.json +67 -67
  157. package/dist/content/content/design-system/README.md +0 -231
  158. package/dist/content/content/design-system/data/charts.csv +0 -26
  159. package/dist/content/content/design-system/data/colors.csv +0 -97
  160. package/dist/content/content/design-system/data/icons.csv +0 -101
  161. package/dist/content/content/design-system/data/landing.csv +0 -31
  162. package/dist/content/content/design-system/data/products.csv +0 -97
  163. package/dist/content/content/design-system/data/prompts.csv +0 -24
  164. package/dist/content/content/design-system/data/react-performance.csv +0 -45
  165. package/dist/content/content/design-system/data/styles.csv +0 -59
  166. package/dist/content/content/design-system/data/typography.csv +0 -58
  167. package/dist/content/content/design-system/data/ui-reasoning.csv +0 -101
  168. package/dist/content/content/design-system/data/ux-guidelines.csv +0 -100
  169. package/dist/content/content/design-system/data/web-interface.csv +0 -31
  170. package/dist/content/content/design-system/indexes/README.md +0 -211
  171. package/dist/content/content/design-system/indexes/colors-index.md +0 -156
  172. package/dist/content/content/design-system/indexes/quick-search.md +0 -111
  173. package/dist/content/content/design-system/indexes/stacks-index.md +0 -341
  174. package/dist/content/content/design-system/stacks/flutter.csv +0 -53
  175. package/dist/content/content/design-system/stacks/html-tailwind.csv +0 -56
  176. package/dist/content/content/design-system/stacks/jetpack-compose.csv +0 -53
  177. package/dist/content/content/design-system/stacks/nextjs.csv +0 -53
  178. package/dist/content/content/design-system/stacks/nuxt-ui.csv +0 -51
  179. package/dist/content/content/design-system/stacks/nuxtjs.csv +0 -59
  180. package/dist/content/content/design-system/stacks/react-native.csv +0 -52
  181. package/dist/content/content/design-system/stacks/react.csv +0 -54
  182. package/dist/content/content/design-system/stacks/shadcn.csv +0 -61
  183. package/dist/content/content/design-system/stacks/svelte.csv +0 -54
  184. package/dist/content/content/design-system/stacks/swiftui.csv +0 -51
  185. package/dist/content/content/design-system/stacks/vue.csv +0 -50
  186. package/dist/content/content/examples/Exemplo de Fluxo Completo com Java e Spring Boot.md +0 -250
  187. package/dist/content/content/examples/Exemplo de Fluxo Completo com Laravel e Filament.md +0 -278
  188. package/dist/content/content/examples/Exemplo de Fluxo Completo com Laravel e Livewire.md +0 -261
  189. package/dist/content/content/examples/Exemplo de Fluxo Completo com Node e NestJS.md +0 -258
  190. package/dist/content/content/guides/Cat/303/241logo de Stacks para Cloud Moderna.md" +0 -119
  191. package/dist/content/content/guides/Cat/303/241logo de Stacks para Hospedagem Compartilhada.md" +0 -147
  192. package/dist/content/content/guides/Checklist Mestre de Entrega.md +0 -68
  193. package/dist/content/content/guides/Gates de Qualidade.md +0 -209
  194. package/dist/content/content/guides/Guia de Adi/303/247/303/243o de Novas Funcionalidades.md" +0 -355
  195. package/dist/content/content/guides/Guia de Chaos Engineering.md +0 -267
  196. package/dist/content/content/guides/Guia de Debugging com IA.md +0 -135
  197. package/dist/content/content/guides/Guia de Estrat/303/251gias de Cache.md" +0 -352
  198. package/dist/content/content/guides/Guia de Migrations Zero-Downtime.md +0 -311
  199. package/dist/content/content/guides/Guia de Multi-tenancy.md +0 -368
  200. package/dist/content/content/guides/Guia de Otimiza/303/247/303/243o de Custos Cloud.md" +0 -195
  201. package/dist/content/content/guides/Guia de Refatora/303/247/303/243o de C/303/263digo Legado com IA.md" +0 -162
  202. package/dist/content/content/guides/Guia de SLOs e Error Budgets.md +0 -315
  203. package/dist/content/content/guides/M/303/251tricas de Efici/303/252ncia do Desenvolvimento com IA.md" +0 -93
  204. package/dist/content/content/guides/Rules base.md +0 -90
  205. package/dist/content/content/playbook/Playbook de Desenvolvimento com IA.md +0 -364
  206. package/dist/content/content/prompts/README.md +0 -203
  207. package/dist/content/content/prompts/acessibilidade/analise-acessibilidade.md +0 -257
  208. package/dist/content/content/prompts/apis/design-api-rest.md +0 -303
  209. package/dist/content/content/prompts/apis/idempotencia.md +0 -254
  210. package/dist/content/content/prompts/apis/versionamento.md +0 -313
  211. package/dist/content/content/prompts/arquitetura/arquitetura-c4-completo.md +0 -190
  212. package/dist/content/content/prompts/arquitetura/clean-architecture.md +0 -151
  213. package/dist/content/content/prompts/arquitetura/ddd-bounded-contexts.md +0 -183
  214. package/dist/content/content/prompts/arquitetura/ddd-cqrs.md +0 -176
  215. package/dist/content/content/prompts/arquitetura/modelo-dominio.md +0 -207
  216. package/dist/content/content/prompts/arquitetura/multi-tenancy.md +0 -235
  217. package/dist/content/content/prompts/database/migrations-zero-downtime.md +0 -192
  218. package/dist/content/content/prompts/database/otimizacao-queries.md +0 -296
  219. package/dist/content/content/prompts/desenvolvimento/code-review.md +0 -301
  220. package/dist/content/content/prompts/desenvolvimento/gerar-servico.md +0 -271
  221. package/dist/content/content/prompts/devops/docker-compose.md +0 -336
  222. package/dist/content/content/prompts/devops/feature-flags.md +0 -374
  223. package/dist/content/content/prompts/devops/kubernetes-deploy.md +0 -460
  224. package/dist/content/content/prompts/devops/pipeline-cicd.md +0 -358
  225. package/dist/content/content/prompts/devops/terraform-iac.md +0 -502
  226. package/dist/content/content/prompts/escalabilidade/analise-performance.md +0 -240
  227. package/dist/content/content/prompts/escalabilidade/analise-performance.txt +0 -94
  228. package/dist/content/content/prompts/escalabilidade/caching.md +0 -255
  229. package/dist/content/content/prompts/observabilidade/chaos-testing.md +0 -237
  230. package/dist/content/content/prompts/observabilidade/estrategia-observabilidade.md +0 -263
  231. package/dist/content/content/prompts/observabilidade/estrategia-observabilidade.txt +0 -134
  232. package/dist/content/content/prompts/observabilidade/slos.md +0 -215
  233. package/dist/content/content/prompts/produto/discovery-inicial.md +0 -203
  234. package/dist/content/content/prompts/produto/discovery-inicial.txt +0 -33
  235. package/dist/content/content/prompts/requisitos/refinar-requisitos.md +0 -232
  236. package/dist/content/content/prompts/requisitos/refinar-requisitos.txt +0 -40
  237. package/dist/content/content/prompts/seguranca/analise-seguranca.md +0 -243
  238. package/dist/content/content/prompts/seguranca/pentest-checklist.md +0 -333
  239. package/dist/content/content/prompts/seguranca/rate-limiting.md +0 -356
  240. package/dist/content/content/prompts/seguranca/revisao-lgpd.md +0 -227
  241. package/dist/content/content/prompts/seguranca/threat-modeling.md +0 -224
  242. package/dist/content/content/prompts/testes/contract-testing.md +0 -340
  243. package/dist/content/content/prompts/testes/gerar-testes-unitarios.md +0 -474
  244. package/dist/content/content/prompts/testes/testes-e2e.md +0 -460
  245. package/dist/content/content/prompts/testes/testes-integracao.md +0 -418
  246. package/dist/content/content/prompts/testes/testes-performance.md +0 -458
  247. package/dist/content/content/prompts/ux/gerar-ui-stitch.md +0 -151
  248. package/dist/content/content/rules/GEMINI.md +0 -841
  249. package/dist/content/content/rules/RULES.md +0 -835
  250. package/dist/content/content/rules/adapters/copilot.md +0 -10
  251. package/dist/content/content/rules/adapters/cursor.md +0 -10
  252. package/dist/content/content/rules/adapters/gemini.md +0 -13
  253. package/dist/content/content/rules/adapters/windsurf.md +0 -10
  254. package/dist/content/content/skills/api-patterns/SKILL.md +0 -81
  255. package/dist/content/content/skills/api-patterns/api-style.md +0 -42
  256. package/dist/content/content/skills/api-patterns/auth.md +0 -24
  257. package/dist/content/content/skills/api-patterns/documentation.md +0 -26
  258. package/dist/content/content/skills/api-patterns/graphql.md +0 -41
  259. package/dist/content/content/skills/api-patterns/rate-limiting.md +0 -31
  260. package/dist/content/content/skills/api-patterns/response.md +0 -37
  261. package/dist/content/content/skills/api-patterns/rest.md +0 -40
  262. package/dist/content/content/skills/api-patterns/scripts/api_validator.py +0 -211
  263. package/dist/content/content/skills/api-patterns/security-testing.md +0 -122
  264. package/dist/content/content/skills/api-patterns/trpc.md +0 -41
  265. package/dist/content/content/skills/api-patterns/versioning.md +0 -22
  266. package/dist/content/content/skills/app-builder/SKILL.md +0 -75
  267. package/dist/content/content/skills/app-builder/agent-coordination.md +0 -71
  268. package/dist/content/content/skills/app-builder/feature-building.md +0 -53
  269. package/dist/content/content/skills/app-builder/project-detection.md +0 -34
  270. package/dist/content/content/skills/app-builder/scaffolding.md +0 -118
  271. package/dist/content/content/skills/app-builder/tech-stack.md +0 -40
  272. package/dist/content/content/skills/app-builder/templates/SKILL.md +0 -39
  273. package/dist/content/content/skills/app-builder/templates/astro-static/TEMPLATE.md +0 -76
  274. package/dist/content/content/skills/app-builder/templates/chrome-extension/TEMPLATE.md +0 -92
  275. package/dist/content/content/skills/app-builder/templates/cli-tool/TEMPLATE.md +0 -88
  276. package/dist/content/content/skills/app-builder/templates/electron-desktop/TEMPLATE.md +0 -88
  277. package/dist/content/content/skills/app-builder/templates/express-api/TEMPLATE.md +0 -83
  278. package/dist/content/content/skills/app-builder/templates/flutter-app/TEMPLATE.md +0 -90
  279. package/dist/content/content/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +0 -90
  280. package/dist/content/content/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +0 -82
  281. package/dist/content/content/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +0 -100
  282. package/dist/content/content/skills/app-builder/templates/nextjs-static/TEMPLATE.md +0 -106
  283. package/dist/content/content/skills/app-builder/templates/nuxt-app/TEMPLATE.md +0 -101
  284. package/dist/content/content/skills/app-builder/templates/python-fastapi/TEMPLATE.md +0 -83
  285. package/dist/content/content/skills/app-builder/templates/react-native-app/TEMPLATE.md +0 -93
  286. package/dist/content/content/skills/architecture/SKILL.md +0 -55
  287. package/dist/content/content/skills/architecture/context-discovery.md +0 -43
  288. package/dist/content/content/skills/architecture/examples.md +0 -94
  289. package/dist/content/content/skills/architecture/pattern-selection.md +0 -68
  290. package/dist/content/content/skills/architecture/patterns-reference.md +0 -50
  291. package/dist/content/content/skills/architecture/trade-off-analysis.md +0 -77
  292. package/dist/content/content/skills/bash-linux/SKILL.md +0 -199
  293. package/dist/content/content/skills/behavioral-modes/SKILL.md +0 -242
  294. package/dist/content/content/skills/brainstorming/SKILL.md +0 -163
  295. package/dist/content/content/skills/brainstorming/dynamic-questioning.md +0 -350
  296. package/dist/content/content/skills/clean-code/SKILL.md +0 -201
  297. package/dist/content/content/skills/code-review-checklist/SKILL.md +0 -109
  298. package/dist/content/content/skills/database-design/SKILL.md +0 -52
  299. package/dist/content/content/skills/database-design/database-selection.md +0 -43
  300. package/dist/content/content/skills/database-design/indexing.md +0 -39
  301. package/dist/content/content/skills/database-design/migrations.md +0 -48
  302. package/dist/content/content/skills/database-design/optimization.md +0 -36
  303. package/dist/content/content/skills/database-design/orm-selection.md +0 -30
  304. package/dist/content/content/skills/database-design/schema-design.md +0 -56
  305. package/dist/content/content/skills/database-design/scripts/schema_validator.py +0 -172
  306. package/dist/content/content/skills/deployment-procedures/SKILL.md +0 -241
  307. package/dist/content/content/skills/doc.md +0 -177
  308. package/dist/content/content/skills/documentation-templates/SKILL.md +0 -194
  309. package/dist/content/content/skills/frontend-design/SKILL.md +0 -396
  310. package/dist/content/content/skills/frontend-design/animation-guide.md +0 -331
  311. package/dist/content/content/skills/frontend-design/color-system.md +0 -311
  312. package/dist/content/content/skills/frontend-design/decision-trees.md +0 -418
  313. package/dist/content/content/skills/frontend-design/motion-graphics.md +0 -306
  314. package/dist/content/content/skills/frontend-design/scripts/accessibility_checker.py +0 -183
  315. package/dist/content/content/skills/frontend-design/scripts/ux_audit.py +0 -722
  316. package/dist/content/content/skills/frontend-design/typography-system.md +0 -345
  317. package/dist/content/content/skills/frontend-design/ux-psychology.md +0 -541
  318. package/dist/content/content/skills/frontend-design/visual-effects.md +0 -383
  319. package/dist/content/content/skills/game-development/2d-games/SKILL.md +0 -119
  320. package/dist/content/content/skills/game-development/3d-games/SKILL.md +0 -135
  321. package/dist/content/content/skills/game-development/SKILL.md +0 -167
  322. package/dist/content/content/skills/game-development/game-art/SKILL.md +0 -185
  323. package/dist/content/content/skills/game-development/game-audio/SKILL.md +0 -190
  324. package/dist/content/content/skills/game-development/game-design/SKILL.md +0 -129
  325. package/dist/content/content/skills/game-development/mobile-games/SKILL.md +0 -108
  326. package/dist/content/content/skills/game-development/multiplayer/SKILL.md +0 -132
  327. package/dist/content/content/skills/game-development/pc-games/SKILL.md +0 -144
  328. package/dist/content/content/skills/game-development/vr-ar/SKILL.md +0 -123
  329. package/dist/content/content/skills/game-development/web-games/SKILL.md +0 -150
  330. package/dist/content/content/skills/geo-fundamentals/SKILL.md +0 -156
  331. package/dist/content/content/skills/geo-fundamentals/scripts/geo_checker.py +0 -289
  332. package/dist/content/content/skills/i18n-localization/SKILL.md +0 -154
  333. package/dist/content/content/skills/i18n-localization/scripts/i18n_checker.py +0 -241
  334. package/dist/content/content/skills/intelligent-routing/SKILL.md +0 -334
  335. package/dist/content/content/skills/lint-and-validate/SKILL.md +0 -45
  336. package/dist/content/content/skills/lint-and-validate/scripts/lint_runner.py +0 -172
  337. package/dist/content/content/skills/lint-and-validate/scripts/type_coverage.py +0 -173
  338. package/dist/content/content/skills/mcp-builder/SKILL.md +0 -176
  339. package/dist/content/content/skills/mobile-design/SKILL.md +0 -394
  340. package/dist/content/content/skills/mobile-design/decision-trees.md +0 -516
  341. package/dist/content/content/skills/mobile-design/mobile-backend.md +0 -491
  342. package/dist/content/content/skills/mobile-design/mobile-color-system.md +0 -420
  343. package/dist/content/content/skills/mobile-design/mobile-debugging.md +0 -122
  344. package/dist/content/content/skills/mobile-design/mobile-design-thinking.md +0 -357
  345. package/dist/content/content/skills/mobile-design/mobile-navigation.md +0 -458
  346. package/dist/content/content/skills/mobile-design/mobile-performance.md +0 -767
  347. package/dist/content/content/skills/mobile-design/mobile-testing.md +0 -356
  348. package/dist/content/content/skills/mobile-design/mobile-typography.md +0 -433
  349. package/dist/content/content/skills/mobile-design/platform-android.md +0 -666
  350. package/dist/content/content/skills/mobile-design/platform-ios.md +0 -561
  351. package/dist/content/content/skills/mobile-design/scripts/mobile_audit.py +0 -670
  352. package/dist/content/content/skills/mobile-design/touch-psychology.md +0 -537
  353. package/dist/content/content/skills/nextjs-best-practices/SKILL.md +0 -203
  354. package/dist/content/content/skills/nodejs-best-practices/SKILL.md +0 -333
  355. package/dist/content/content/skills/parallel-agents/SKILL.md +0 -175
  356. package/dist/content/content/skills/performance-profiling/SKILL.md +0 -143
  357. package/dist/content/content/skills/performance-profiling/scripts/lighthouse_audit.py +0 -76
  358. package/dist/content/content/skills/plan-writing/SKILL.md +0 -152
  359. package/dist/content/content/skills/powershell-windows/SKILL.md +0 -167
  360. package/dist/content/content/skills/python-patterns/SKILL.md +0 -441
  361. package/dist/content/content/skills/react-patterns/SKILL.md +0 -198
  362. package/dist/content/content/skills/red-team-tactics/SKILL.md +0 -199
  363. package/dist/content/content/skills/seo-fundamentals/SKILL.md +0 -129
  364. package/dist/content/content/skills/seo-fundamentals/scripts/seo_checker.py +0 -219
  365. package/dist/content/content/skills/server-management/SKILL.md +0 -161
  366. package/dist/content/content/skills/systematic-debugging/SKILL.md +0 -109
  367. package/dist/content/content/skills/tailwind-patterns/SKILL.md +0 -269
  368. package/dist/content/content/skills/tdd-workflow/SKILL.md +0 -149
  369. package/dist/content/content/skills/testing-patterns/SKILL.md +0 -178
  370. package/dist/content/content/skills/testing-patterns/scripts/test_runner.py +0 -219
  371. package/dist/content/content/skills/vulnerability-scanner/SKILL.md +0 -276
  372. package/dist/content/content/skills/vulnerability-scanner/checklists.md +0 -121
  373. package/dist/content/content/skills/vulnerability-scanner/scripts/security_scan.py +0 -458
  374. package/dist/content/content/skills/webapp-testing/SKILL.md +0 -187
  375. package/dist/content/content/skills/webapp-testing/scripts/playwright_runner.py +0 -173
  376. package/dist/content/content/specialists/Especialista em Acessibilidade.md +0 -266
  377. package/dist/content/content/specialists/Especialista em An/303/241lise de Testes.md" +0 -434
  378. package/dist/content/content/specialists/Especialista em Arquitetura Avan/303/247ada.md" +0 -358
  379. package/dist/content/content/specialists/Especialista em Arquitetura de Software.md +0 -177
  380. package/dist/content/content/specialists/Especialista em Banco de Dados.md +0 -260
  381. package/dist/content/content/specialists/Especialista em Contrato de API.md +0 -172
  382. package/dist/content/content/specialists/Especialista em Dados e Analytics com IA.md +0 -246
  383. package/dist/content/content/specialists/Especialista em Debugging e Troubleshooting.md +0 -191
  384. package/dist/content/content/specialists/Especialista em Desenvolvimento Frontend.md +0 -477
  385. package/dist/content/content/specialists/Especialista em Desenvolvimento Mobile.md +0 -241
  386. package/dist/content/content/specialists/Especialista em Desenvolvimento e Vibe Coding Estruturado.md +0 -417
  387. package/dist/content/content/specialists/Especialista em DevOps e Infraestrutura.md +0 -294
  388. package/dist/content/content/specialists/Especialista em Documenta/303/247/303/243o T/303/251cnica.md" +0 -227
  389. package/dist/content/content/specialists/Especialista em Engenharia de Requisitos com IA.md +0 -299
  390. package/dist/content/content/specialists/Especialista em Explora/303/247/303/243o de Codebase.md" +0 -179
  391. package/dist/content/content/specialists/Especialista em Gest/303/243o de Produto.md" +0 -179
  392. package/dist/content/content/specialists/Especialista em Migra/303/247/303/243o e Moderniza/303/247/303/243o.md" +0 -410
  393. package/dist/content/content/specialists/Especialista em Modelagem e Arquitetura de Dom/303/255nio com IA.md" +0 -248
  394. package/dist/content/content/specialists/Especialista em Observabilidade.md +0 -415
  395. package/dist/content/content/specialists/Especialista em Performance e Escalabilidade.md +0 -373
  396. package/dist/content/content/specialists/Especialista em Plano de Execu/303/247/303/243o com IA.md" +0 -341
  397. package/dist/content/content/specialists/Especialista em Prototipagem R/303/241pida com Google Stitch.md" +0 -419
  398. package/dist/content/content/specialists/Especialista em Seguran/303/247a da Informa/303/247/303/243o.md" +0 -508
  399. package/dist/content/content/specialists/Especialista em UX Design.md +0 -453
  400. package/dist/content/content/specialists/INDEX.md +0 -43
  401. package/dist/content/content/templates/PRD.md +0 -165
  402. package/dist/content/content/templates/README.md +0 -65
  403. package/dist/content/content/templates/adr.md +0 -103
  404. package/dist/content/content/templates/arquitetura.md +0 -279
  405. package/dist/content/content/templates/backlog.md +0 -185
  406. package/dist/content/content/templates/checklist-seguranca.md +0 -180
  407. package/dist/content/content/templates/contexto.md +0 -120
  408. package/dist/content/content/templates/criterios-aceite.md +0 -99
  409. package/dist/content/content/templates/design-banco.md +0 -270
  410. package/dist/content/content/templates/design-doc.md +0 -240
  411. package/dist/content/content/templates/feature.md +0 -88
  412. package/dist/content/content/templates/historia-backend.md +0 -84
  413. package/dist/content/content/templates/historia-frontend.md +0 -75
  414. package/dist/content/content/templates/historia-usuario.md +0 -125
  415. package/dist/content/content/templates/mapa-navegacao.md +0 -133
  416. package/dist/content/content/templates/matriz-rastreabilidade.md +0 -121
  417. package/dist/content/content/templates/modelo-dominio.md +0 -219
  418. package/dist/content/content/templates/plano-testes.md +0 -199
  419. package/dist/content/content/templates/prototipo-stitch.md +0 -138
  420. package/dist/content/content/templates/requisitos.md +0 -162
  421. package/dist/content/content/templates/slo-sli.md +0 -197
  422. package/dist/content/content/workflows/README-MCP.md +0 -363
  423. package/dist/content/content/workflows/brainstorm.md +0 -113
  424. package/dist/content/content/workflows/create.md +0 -59
  425. package/dist/content/content/workflows/debug.md +0 -103
  426. package/dist/content/content/workflows/deploy.md +0 -176
  427. package/dist/content/content/workflows/enhance.md +0 -63
  428. package/dist/content/content/workflows/mcp-debug.md +0 -506
  429. package/dist/content/content/workflows/mcp-feature.md +0 -385
  430. package/dist/content/content/workflows/mcp-gate.md +0 -413
  431. package/dist/content/content/workflows/mcp-next.md +0 -388
  432. package/dist/content/content/workflows/mcp-refactor.md +0 -600
  433. package/dist/content/content/workflows/mcp-start.md +0 -304
  434. package/dist/content/content/workflows/mcp-status.md +0 -400
  435. package/dist/content/content/workflows/orchestrate.md +0 -237
  436. package/dist/content/content/workflows/plan.md +0 -89
  437. package/dist/content/content/workflows/preview.md +0 -81
  438. package/dist/content/content/workflows/status.md +0 -86
  439. package/dist/content/content/workflows/test.md +0 -144
  440. package/dist/content/content/workflows/ui-ux-pro-max.md +0 -296
@@ -1,491 +0,0 @@
1
- # Mobile Backend Patterns
2
-
3
- > **This file covers backend/API patterns SPECIFIC to mobile clients.**
4
- > Generic backend patterns are in `nodejs-best-practices` and `api-patterns`.
5
- > **Mobile backend is NOT the same as web backend. Different constraints, different patterns.**
6
-
7
- ---
8
-
9
- ## 🧠 MOBILE BACKEND MINDSET
10
-
11
- ```
12
- Mobile clients are DIFFERENT from web clients:
13
- ├── Unreliable network (2G, subway, elevator)
14
- ├── Battery constraints (minimize wake-ups)
15
- ├── Limited storage (can't cache everything)
16
- ├── Interrupted sessions (calls, notifications)
17
- ├── Diverse devices (old phones to flagships)
18
- └── Binary updates are slow (App Store review)
19
- ```
20
-
21
- **Your backend must compensate for ALL of these.**
22
-
23
- ---
24
-
25
- ## 🚫 AI MOBILE BACKEND ANTI-PATTERNS
26
-
27
- ### These are common AI mistakes when building mobile backends:
28
-
29
- | ❌ AI Default | Why It's Wrong | ✅ Mobile-Correct |
30
- |---------------|----------------|-------------------|
31
- | Same API for web and mobile | Mobile needs compact responses | Separate mobile endpoints OR field selection |
32
- | Full object responses | Wastes bandwidth, battery | Partial responses, pagination |
33
- | No offline consideration | App crashes without network | Offline-first design, sync queues |
34
- | WebSocket for everything | Battery drain | Push notifications + polling fallback |
35
- | No app versioning | Can't force updates, breaking changes | Version headers, minimum version check |
36
- | Generic error messages | Users can't fix issues | Mobile-specific error codes + recovery actions |
37
- | Session-based auth | Mobile apps restart | Token-based with refresh |
38
- | Ignore device info | Can't debug issues | Device ID, app version in headers |
39
-
40
- ---
41
-
42
- ## 1. Push Notifications
43
-
44
- ### Platform Architecture
45
-
46
- ```
47
- ┌─────────────────────────────────────────────────────────────────┐
48
- │ YOUR BACKEND │
49
- ├─────────────────────────────────────────────────────────────────┤
50
- │ │ │
51
- │ ┌──────────┴──────────┐ │
52
- │ ▼ ▼ │
53
- │ ┌─────────────────┐ ┌─────────────────┐ │
54
- │ │ FCM (Google) │ │ APNs (Apple) │ │
55
- │ │ Firebase │ │ Direct or FCM │ │
56
- │ └────────┬────────┘ └────────┬────────┘ │
57
- │ │ │ │
58
- │ ▼ ▼ │
59
- │ ┌─────────────────┐ ┌─────────────────┐ │
60
- │ │ Android Device │ │ iOS Device │ │
61
- │ └─────────────────┘ └─────────────────┘ │
62
- └─────────────────────────────────────────────────────────────────┘
63
- ```
64
-
65
- ### Push Types
66
-
67
- | Type | Use Case | User Sees |
68
- |------|----------|-----------|
69
- | **Display** | New message, order update | Notification banner |
70
- | **Silent** | Background sync, content update | Nothing (background) |
71
- | **Data** | Custom handling by app | Depends on app logic |
72
-
73
- ### Anti-Patterns
74
-
75
- | ❌ NEVER | ✅ ALWAYS |
76
- |----------|----------|
77
- | Send sensitive data in push | Push says "New message", app fetches content |
78
- | Overload with pushes | Batch, dedupe, respect quiet hours |
79
- | Same message to all | Segment by user preference, timezone |
80
- | Ignore failed tokens | Clean up invalid tokens regularly |
81
- | Skip APNs for iOS | FCM alone doesn't guarantee iOS delivery |
82
-
83
- ### Token Management
84
-
85
- ```
86
- TOKEN LIFECYCLE:
87
- ├── App registers → Get token → Send to backend
88
- ├── Token can change → App must re-register on start
89
- ├── Token expires → Clean from database
90
- ├── User uninstalls → Token becomes invalid (detect via error)
91
- └── Multiple devices → Store multiple tokens per user
92
- ```
93
-
94
- ---
95
-
96
- ## 2. Offline Sync & Conflict Resolution
97
-
98
- ### Sync Strategy Selection
99
-
100
- ```
101
- WHAT TYPE OF DATA?
102
-
103
- ├── Read-only (news, catalog)
104
- │ └── Simple cache + TTL
105
- │ └── ETag/Last-Modified for invalidation
106
-
107
- ├── User-owned (notes, todos)
108
- │ └── Last-write-wins (simple)
109
- │ └── Or timestamp-based merge
110
-
111
- ├── Collaborative (shared docs)
112
- │ └── CRDT or OT required
113
- │ └── Consider Firebase/Supabase
114
-
115
- └── Critical (payments, inventory)
116
- └── Server is source of truth
117
- └── Optimistic UI + server confirmation
118
- ```
119
-
120
- ### Conflict Resolution Strategies
121
-
122
- | Strategy | How It Works | Best For |
123
- |----------|--------------|----------|
124
- | **Last-write-wins** | Latest timestamp overwrites | Simple data, single user |
125
- | **Server-wins** | Server always authoritative | Critical transactions |
126
- | **Client-wins** | Offline changes prioritized | Offline-heavy apps |
127
- | **Merge** | Combine changes field-by-field | Documents, rich content |
128
- | **CRDT** | Mathematically conflict-free | Real-time collaboration |
129
-
130
- ### Sync Queue Pattern
131
-
132
- ```
133
- CLIENT SIDE:
134
- ├── User makes change → Write to local DB
135
- ├── Add to sync queue → { action, data, timestamp, retries }
136
- ├── Network available → Process queue FIFO
137
- ├── Success → Remove from queue
138
- ├── Failure → Retry with backoff (max 5 retries)
139
- └── Conflict → Apply resolution strategy
140
-
141
- SERVER SIDE:
142
- ├── Accept change with client timestamp
143
- ├── Compare with server version
144
- ├── Apply conflict resolution
145
- ├── Return merged state
146
- └── Client updates local with server response
147
- ```
148
-
149
- ---
150
-
151
- ## 3. Mobile API Optimization
152
-
153
- ### Response Size Reduction
154
-
155
- | Technique | Savings | Implementation |
156
- |-----------|---------|----------------|
157
- | **Field selection** | 30-70% | `?fields=id,name,thumbnail` |
158
- | **Compression** | 60-80% | gzip/brotli (automatic) |
159
- | **Pagination** | Varies | Cursor-based for mobile |
160
- | **Image variants** | 50-90% | `/image?w=200&q=80` |
161
- | **Delta sync** | 80-95% | Only changed records since timestamp |
162
-
163
- ### Pagination: Cursor vs Offset
164
-
165
- ```
166
- OFFSET (Bad for mobile):
167
- ├── Page 1: OFFSET 0 LIMIT 20
168
- ├── Page 2: OFFSET 20 LIMIT 20
169
- ├── Problem: New item added → duplicates!
170
- └── Problem: Large offset = slow query
171
-
172
- CURSOR (Good for mobile):
173
- ├── First: ?limit=20
174
- ├── Next: ?limit=20&after=cursor_abc123
175
- ├── Cursor = encoded (id + sort values)
176
- ├── No duplicates on data changes
177
- └── Consistent performance
178
- ```
179
-
180
- ### Batch Requests
181
-
182
- ```
183
- Instead of:
184
- GET /users/1
185
- GET /users/2
186
- GET /users/3
187
- (3 round trips, 3x latency)
188
-
189
- Use:
190
- POST /batch
191
- { requests: [
192
- { method: "GET", path: "/users/1" },
193
- { method: "GET", path: "/users/2" },
194
- { method: "GET", path: "/users/3" }
195
- ]}
196
- (1 round trip)
197
- ```
198
-
199
- ---
200
-
201
- ## 4. App Versioning
202
-
203
- ### Version Check Endpoint
204
-
205
- ```
206
- GET /api/app-config
207
- Headers:
208
- X-App-Version: 2.1.0
209
- X-Platform: ios
210
- X-Device-ID: abc123
211
-
212
- Response:
213
- {
214
- "minimum_version": "2.0.0",
215
- "latest_version": "2.3.0",
216
- "force_update": false,
217
- "update_url": "https://apps.apple.com/...",
218
- "feature_flags": {
219
- "new_player": true,
220
- "dark_mode": true
221
- },
222
- "maintenance": false,
223
- "maintenance_message": null
224
- }
225
- ```
226
-
227
- ### Version Comparison Logic
228
-
229
- ```
230
- CLIENT VERSION vs MINIMUM VERSION:
231
- ├── client >= minimum → Continue normally
232
- ├── client < minimum → Show force update screen
233
- │ └── Block app usage until updated
234
- └── client < latest → Show optional update prompt
235
-
236
- FEATURE FLAGS:
237
- ├── Enable/disable features without app update
238
- ├── A/B testing by version/device
239
- └── Gradual rollout (10% → 50% → 100%)
240
- ```
241
-
242
- ---
243
-
244
- ## 5. Authentication for Mobile
245
-
246
- ### Token Strategy
247
-
248
- ```
249
- ACCESS TOKEN:
250
- ├── Short-lived (15 min - 1 hour)
251
- ├── Stored in memory (not persistent)
252
- ├── Used for API requests
253
- └── Refresh when expired
254
-
255
- REFRESH TOKEN:
256
- ├── Long-lived (30-90 days)
257
- ├── Stored in SecureStore/Keychain
258
- ├── Used only to get new access token
259
- └── Rotate on each use (security)
260
-
261
- DEVICE TOKEN:
262
- ├── Identifies this device
263
- ├── Allows "log out all devices"
264
- ├── Stored alongside refresh token
265
- └── Server tracks active devices
266
- ```
267
-
268
- ### Silent Re-authentication
269
-
270
- ```
271
- REQUEST FLOW:
272
- ├── Make request with access token
273
- ├── 401 Unauthorized?
274
- │ ├── Have refresh token?
275
- │ │ ├── Yes → Call /auth/refresh
276
- │ │ │ ├── Success → Retry original request
277
- │ │ │ └── Failure → Force logout
278
- │ │ └── No → Force logout
279
- │ └── Token just expired (not invalid)
280
- │ └── Auto-refresh, user doesn't notice
281
- └── Success → Continue
282
- ```
283
-
284
- ---
285
-
286
- ## 6. Error Handling for Mobile
287
-
288
- ### Mobile-Specific Error Format
289
-
290
- ```json
291
- {
292
- "error": {
293
- "code": "PAYMENT_DECLINED",
294
- "message": "Your payment was declined",
295
- "user_message": "Please check your card details or try another payment method",
296
- "action": {
297
- "type": "navigate",
298
- "destination": "payment_methods"
299
- },
300
- "retry": {
301
- "allowed": true,
302
- "after_seconds": 5
303
- }
304
- }
305
- }
306
- ```
307
-
308
- ### Error Categories
309
-
310
- | Code Range | Category | Mobile Handling |
311
- |------------|----------|-----------------|
312
- | 400-499 | Client error | Show message, user action needed |
313
- | 401 | Auth expired | Silent refresh or re-login |
314
- | 403 | Forbidden | Show upgrade/permission screen |
315
- | 404 | Not found | Remove from local cache |
316
- | 409 | Conflict | Show sync conflict UI |
317
- | 429 | Rate limit | Retry after header, backoff |
318
- | 500-599 | Server error | Retry with backoff, show "try later" |
319
- | Network | No connection | Use cached data, queue for sync |
320
-
321
- ---
322
-
323
- ## 7. Media & Binary Handling
324
-
325
- ### Image Optimization
326
-
327
- ```
328
- CLIENT REQUEST:
329
- GET /images/{id}?w=400&h=300&q=80&format=webp
330
-
331
- SERVER RESPONSE:
332
- ├── Resize on-the-fly OR use CDN
333
- ├── WebP for Android (smaller)
334
- ├── HEIC for iOS 14+ (if supported)
335
- ├── JPEG fallback
336
- └── Cache-Control: max-age=31536000
337
- ```
338
-
339
- ### Chunked Upload (Large Files)
340
-
341
- ```
342
- UPLOAD FLOW:
343
- 1. POST /uploads/init
344
- { filename, size, mime_type }
345
- → { upload_id, chunk_size }
346
-
347
- 2. PUT /uploads/{upload_id}/chunks/{n}
348
- → Upload each chunk (1-5 MB)
349
- → Can resume if interrupted
350
-
351
- 3. POST /uploads/{upload_id}/complete
352
- → Server assembles chunks
353
- → Return final file URL
354
- ```
355
-
356
- ### Streaming Audio/Video
357
-
358
- ```
359
- REQUIREMENTS:
360
- ├── HLS (HTTP Live Streaming) for iOS
361
- ├── DASH or HLS for Android
362
- ├── Multiple quality levels (adaptive bitrate)
363
- ├── Range request support (seeking)
364
- └── Offline download chunks
365
-
366
- ENDPOINTS:
367
- GET /media/{id}/manifest.m3u8 → HLS manifest
368
- GET /media/{id}/segment_{n}.ts → Video segment
369
- GET /media/{id}/download → Full file for offline
370
- ```
371
-
372
- ---
373
-
374
- ## 8. Security for Mobile
375
-
376
- ### Device Attestation
377
-
378
- ```
379
- VERIFY REAL DEVICE (not emulator/bot):
380
- ├── iOS: DeviceCheck API
381
- │ └── Server verifies with Apple
382
- ├── Android: Play Integrity API (replaces SafetyNet)
383
- │ └── Server verifies with Google
384
- └── Fail closed: Reject if attestation fails
385
- ```
386
-
387
- ### Request Signing
388
-
389
- ```
390
- CLIENT:
391
- ├── Create signature = HMAC(timestamp + path + body, secret)
392
- ├── Send: X-Signature: {signature}
393
- ├── Send: X-Timestamp: {timestamp}
394
- └── Send: X-Device-ID: {device_id}
395
-
396
- SERVER:
397
- ├── Validate timestamp (within 5 minutes)
398
- ├── Recreate signature with same inputs
399
- ├── Compare signatures
400
- └── Reject if mismatch (tampering detected)
401
- ```
402
-
403
- ### Rate Limiting
404
-
405
- ```
406
- MOBILE-SPECIFIC LIMITS:
407
- ├── Per device (X-Device-ID)
408
- ├── Per user (after auth)
409
- ├── Per endpoint (stricter for sensitive)
410
- └── Sliding window preferred
411
-
412
- HEADERS:
413
- X-RateLimit-Limit: 100
414
- X-RateLimit-Remaining: 95
415
- X-RateLimit-Reset: 1609459200
416
- Retry-After: 60 (when 429)
417
- ```
418
-
419
- ---
420
-
421
- ## 9. Monitoring & Analytics
422
-
423
- ### Required Headers from Mobile
424
-
425
- ```
426
- Every mobile request should include:
427
- ├── X-App-Version: 2.1.0
428
- ├── X-Platform: ios | android
429
- ├── X-OS-Version: 17.0
430
- ├── X-Device-Model: iPhone15,2
431
- ├── X-Device-ID: uuid (persistent)
432
- ├── X-Request-ID: uuid (per request, for tracing)
433
- ├── Accept-Language: tr-TR
434
- └── X-Timezone: Europe/Istanbul
435
- ```
436
-
437
- ### What to Log
438
-
439
- ```
440
- FOR EACH REQUEST:
441
- ├── All headers above
442
- ├── Endpoint, method, status
443
- ├── Response time
444
- ├── Error details (if any)
445
- └── User ID (if authenticated)
446
-
447
- ALERTS:
448
- ├── Error rate > 5% per version
449
- ├── P95 latency > 2 seconds
450
- ├── Specific version crash spike
451
- ├── Auth failure spike (attack?)
452
- └── Push delivery failure spike
453
- ```
454
-
455
- ---
456
-
457
- ## 📝 MOBILE BACKEND CHECKLIST
458
-
459
- ### Before API Design
460
- - [ ] Identified mobile-specific requirements?
461
- - [ ] Planned offline behavior?
462
- - [ ] Designed sync strategy?
463
- - [ ] Considered bandwidth constraints?
464
-
465
- ### For Every Endpoint
466
- - [ ] Response as small as possible?
467
- - [ ] Pagination cursor-based?
468
- - [ ] Proper caching headers?
469
- - [ ] Mobile error format with actions?
470
-
471
- ### Authentication
472
- - [ ] Token refresh implemented?
473
- - [ ] Silent re-auth flow?
474
- - [ ] Multi-device logout?
475
- - [ ] Secure token storage guidance?
476
-
477
- ### Push Notifications
478
- - [ ] FCM + APNs configured?
479
- - [ ] Token lifecycle managed?
480
- - [ ] Silent vs display push defined?
481
- - [ ] Sensitive data NOT in push payload?
482
-
483
- ### Release
484
- - [ ] Version check endpoint ready?
485
- - [ ] Feature flags configured?
486
- - [ ] Force update mechanism?
487
- - [ ] Monitoring headers required?
488
-
489
- ---
490
-
491
- > **Remember:** Mobile backend must be resilient to bad networks, respect battery life, and handle interrupted sessions gracefully. The client cannot be trusted, but it also cannot be hung up—provide offline capabilities and clear error recovery paths.