@maestro-ai/mcp-server 1.1.0 → 2.0.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 (821) hide show
  1. package/dist/adapters/skill-adapter.d.ts +57 -0
  2. package/dist/adapters/skill-adapter.d.ts.map +1 -0
  3. package/dist/adapters/skill-adapter.js +272 -0
  4. package/dist/adapters/skill-adapter.js.map +1 -0
  5. package/dist/content/rules/GEMINI.md +79 -27
  6. package/dist/content/rules/RULES.md +6 -0
  7. package/dist/content/skills/specialist-acessibilidade/MCP_INTEGRATION.md +698 -0
  8. package/dist/content/skills/specialist-acessibilidade/README.md +292 -0
  9. package/dist/content/skills/specialist-acessibilidade/SKILL.md +202 -0
  10. package/dist/content/skills/specialist-acessibilidade/mcp_functions/init_accessibility_audit.py +675 -0
  11. package/dist/content/skills/specialist-acessibilidade/mcp_functions/validate_wcag_compliance.py +587 -0
  12. package/dist/content/skills/specialist-acessibilidade/resources/checklists/accessibility-validation.md +457 -0
  13. package/dist/content/skills/specialist-acessibilidade/resources/examples/accessibility-examples.md +863 -0
  14. package/dist/content/skills/specialist-acessibilidade/resources/reference/wcag-guide.md +359 -0
  15. package/dist/content/skills/specialist-acessibilidade/resources/templates/checklist-acessibilidade.md +435 -0
  16. package/dist/content/skills/specialist-acessibilidade/resources/templates/relatorio-acessibilidade.md +490 -0
  17. package/dist/content/skills/specialist-analise-testes/MCP_INTEGRATION.md +569 -0
  18. package/dist/content/skills/specialist-analise-testes/README.md +42 -0
  19. package/dist/content/skills/specialist-analise-testes/SKILL.md +258 -0
  20. package/dist/content/skills/specialist-analise-testes/mcp_functions/README.md +794 -0
  21. package/dist/content/skills/specialist-analise-testes/resources/checklists/testing-validation.md +305 -0
  22. package/dist/content/skills/specialist-analise-testes/resources/examples/testing-examples.md +395 -0
  23. package/dist/content/skills/specialist-analise-testes/resources/reference/testing-guide.md +1024 -0
  24. package/dist/content/skills/specialist-arquitetura-avancada/MCP_INTEGRATION.md +440 -0
  25. package/dist/content/skills/specialist-arquitetura-avancada/README.md +298 -0
  26. package/dist/content/skills/specialist-arquitetura-avancada/SKILL.md +295 -0
  27. package/dist/content/skills/specialist-arquitetura-avancada/mcp_functions/README.md +573 -0
  28. package/dist/content/skills/specialist-arquitetura-avancada/resources/checklists/architecture-validation.md +385 -0
  29. package/dist/content/skills/specialist-arquitetura-avancada/resources/examples/architecture-examples.md +743 -0
  30. package/dist/content/skills/specialist-arquitetura-avancada/resources/reference/architecture-guide.md +680 -0
  31. package/dist/content/skills/specialist-arquitetura-avancada/resources/templates/bounded-context.md +333 -0
  32. package/dist/content/skills/specialist-arquitetura-avancada/resources/templates/cqrs-implementation.md +495 -0
  33. package/dist/content/skills/specialist-arquitetura-avancada/resources/templates/event-sourcing.md +571 -0
  34. package/dist/content/skills/specialist-arquitetura-avancada/resources/templates/microservices-strategy.md +647 -0
  35. package/dist/content/skills/specialist-arquitetura-software/MCP_INTEGRATION.md +483 -0
  36. package/dist/content/skills/specialist-arquitetura-software/README.md +306 -0
  37. package/dist/content/skills/specialist-arquitetura-software/SKILL.md +194 -0
  38. package/dist/content/skills/specialist-arquitetura-software/mcp_functions/init_architecture.py +137 -0
  39. package/dist/content/skills/specialist-arquitetura-software/mcp_functions/process_architecture.py +279 -0
  40. package/dist/content/skills/specialist-arquitetura-software/mcp_functions/validate_architecture.py +302 -0
  41. package/dist/content/skills/specialist-arquitetura-software/resources/checklists/architecture-validation.md +180 -0
  42. package/dist/content/skills/specialist-arquitetura-software/resources/examples/architecture-examples.md +239 -0
  43. package/dist/content/skills/specialist-arquitetura-software/resources/reference/architecture-guide.md +489 -0
  44. package/dist/content/skills/specialist-arquitetura-software/resources/templates/adr.md +61 -0
  45. package/dist/content/skills/specialist-arquitetura-software/resources/templates/arquitetura.md +192 -0
  46. package/dist/content/skills/specialist-arquitetura-software/resources/templates/slo-sli.md +153 -0
  47. package/dist/content/skills/specialist-banco-dados/MCP_INTEGRATION.md +390 -0
  48. package/dist/content/skills/specialist-banco-dados/README.md +323 -0
  49. package/dist/content/skills/specialist-banco-dados/SKILL.md +221 -0
  50. package/dist/content/skills/specialist-banco-dados/mcp_functions/init_database.py +720 -0
  51. package/dist/content/skills/specialist-banco-dados/mcp_functions/process_database.py +386 -0
  52. package/dist/content/skills/specialist-banco-dados/mcp_functions/validate_database.py +551 -0
  53. package/dist/content/skills/specialist-banco-dados/resources/checklists/database-validation.md +434 -0
  54. package/dist/content/skills/specialist-banco-dados/resources/examples/database-examples.md +857 -0
  55. package/dist/content/skills/specialist-banco-dados/resources/reference/database-guide.md +708 -0
  56. package/dist/content/skills/specialist-banco-dados/resources/templates/constraints.md +935 -0
  57. package/dist/content/skills/specialist-banco-dados/resources/templates/design-banco.md +509 -0
  58. package/dist/content/skills/specialist-banco-dados/resources/templates/indices.md +553 -0
  59. package/dist/content/skills/specialist-banco-dados/resources/templates/migracoes.md +777 -0
  60. package/dist/content/skills/specialist-contrato-api/MCP_INTEGRATION.md +152 -0
  61. package/dist/content/skills/specialist-contrato-api/README.md +183 -0
  62. package/dist/content/skills/specialist-contrato-api/SKILL.md +317 -0
  63. package/dist/content/skills/specialist-contrato-api/mcp_functions/README.md +17 -0
  64. package/dist/content/skills/specialist-contrato-api/resources/checklists/api-validation.md +44 -0
  65. package/dist/content/skills/specialist-contrato-api/resources/examples/api-examples.md +137 -0
  66. package/dist/content/skills/specialist-contrato-api/resources/reference/api-guide.md +96 -0
  67. package/dist/content/skills/specialist-contrato-api/resources/templates/contrato-api.md +165 -0
  68. package/dist/content/skills/specialist-dados-analytics-ia/MCP_INTEGRATION.md +398 -0
  69. package/dist/content/skills/specialist-dados-analytics-ia/README.md +224 -0
  70. package/dist/content/skills/specialist-dados-analytics-ia/SKILL.md +160 -0
  71. package/dist/content/skills/specialist-dados-analytics-ia/mcp_functions/generate_insights_dashboard.py +669 -0
  72. package/dist/content/skills/specialist-dados-analytics-ia/mcp_functions/init_analytics_pipeline.py +626 -0
  73. package/dist/content/skills/specialist-dados-analytics-ia/mcp_functions/validate_analytics_quality.py +772 -0
  74. package/dist/content/skills/specialist-dados-analytics-ia/resources/checklists/analytics-validation.md +519 -0
  75. package/dist/content/skills/specialist-dados-analytics-ia/resources/examples/analytics-examples.md +646 -0
  76. package/dist/content/skills/specialist-dados-analytics-ia/resources/reference/analytics-guide.md +1111 -0
  77. package/dist/content/skills/specialist-dados-analytics-ia/resources/templates/feature.md +419 -0
  78. package/dist/content/skills/specialist-dados-analytics-ia/resources/templates/requisitos.md +384 -0
  79. package/dist/content/skills/specialist-dados-analytics-ia/resources/templates/slo-sli.md +381 -0
  80. package/dist/content/skills/specialist-debugging-troubleshooting/MCP_INTEGRATION.md +340 -0
  81. package/dist/content/skills/specialist-debugging-troubleshooting/README.md +218 -0
  82. package/dist/content/skills/specialist-debugging-troubleshooting/SKILL.md +194 -0
  83. package/dist/content/skills/specialist-debugging-troubleshooting/resources/checklists/debugging-validation.md +319 -0
  84. package/dist/content/skills/specialist-debugging-troubleshooting/resources/examples/debugging-examples.md +480 -0
  85. package/dist/content/skills/specialist-debugging-troubleshooting/resources/prompts/analise-bugs.md +527 -0
  86. package/dist/content/skills/specialist-debugging-troubleshooting/resources/reference/debugging-guide.md +392 -0
  87. package/dist/content/skills/specialist-debugging-troubleshooting/resources/templates/bug-report.md +192 -0
  88. package/dist/content/skills/specialist-debugging-troubleshooting/resources/templates/post-mortem.md +241 -0
  89. package/dist/content/skills/specialist-debugging-troubleshooting/scripts/README.md +64 -0
  90. package/dist/content/skills/specialist-desenvolvimento-backend/MCP_INTEGRATION.md +98 -0
  91. package/dist/content/skills/specialist-desenvolvimento-backend/README.md +167 -0
  92. package/dist/content/skills/specialist-desenvolvimento-backend/SKILL.md +288 -0
  93. package/dist/content/skills/specialist-desenvolvimento-backend/mcp_functions/README.md +17 -0
  94. package/dist/content/skills/specialist-desenvolvimento-backend/resources/checklists/backend-validation.md +44 -0
  95. package/dist/content/skills/specialist-desenvolvimento-backend/resources/examples/backend-examples.md +109 -0
  96. package/dist/content/skills/specialist-desenvolvimento-backend/resources/reference/backend-guide.md +86 -0
  97. package/dist/content/skills/specialist-desenvolvimento-frontend/MCP_INTEGRATION.md +914 -0
  98. package/dist/content/skills/specialist-desenvolvimento-frontend/README.md +261 -0
  99. package/dist/content/skills/specialist-desenvolvimento-frontend/SKILL.md +220 -0
  100. package/dist/content/skills/specialist-desenvolvimento-frontend/mcp_functions/init_frontend.py +861 -0
  101. package/dist/content/skills/specialist-desenvolvimento-frontend/mcp_functions/process_frontend.py +1003 -0
  102. package/dist/content/skills/specialist-desenvolvimento-frontend/mcp_functions/validate_frontend.py +766 -0
  103. package/dist/content/skills/specialist-desenvolvimento-frontend/resources/checklists/frontend-validation.md +365 -0
  104. package/dist/content/skills/specialist-desenvolvimento-frontend/resources/examples/frontend-examples.md +1125 -0
  105. package/dist/content/skills/specialist-desenvolvimento-frontend/resources/reference/frontend-guide.md +1055 -0
  106. package/dist/content/skills/specialist-desenvolvimento-frontend/resources/templates/component-story.md +530 -0
  107. package/dist/content/skills/specialist-desenvolvimento-frontend/resources/templates/historia-frontend.md +243 -0
  108. package/dist/content/skills/specialist-desenvolvimento-frontend/resources/templates/ui-guidelines.md +725 -0
  109. package/dist/content/skills/specialist-desenvolvimento-mobile/MCP_INTEGRATION.md +87 -0
  110. package/dist/content/skills/specialist-desenvolvimento-mobile/README.md +149 -0
  111. package/dist/content/skills/specialist-desenvolvimento-mobile/SKILL.md +360 -0
  112. package/dist/content/skills/specialist-desenvolvimento-mobile/mcp_functions/README.md +17 -0
  113. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/checklists/mobile-validation.md +330 -0
  114. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/examples/mobile-examples.md +966 -0
  115. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/reference/android-guide.md +546 -0
  116. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/reference/flutter-guide.md +500 -0
  117. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/reference/ios-guide.md +518 -0
  118. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/reference/mobile-guide.md +76 -0
  119. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/reference/react-native-guide.md +659 -0
  120. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/templates/historia-mobile.md +284 -0
  121. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/templates/mobile-checklist.md +239 -0
  122. package/dist/content/skills/specialist-desenvolvimento-mobile/resources/templates/platform-selection.md +302 -0
  123. package/dist/content/skills/specialist-devops-infra/MCP_INTEGRATION.md +471 -0
  124. package/dist/content/skills/specialist-devops-infra/README.md +234 -0
  125. package/dist/content/skills/specialist-devops-infra/SKILL.md +162 -0
  126. package/dist/content/skills/specialist-devops-infra/mcp_functions/generate_ci_cd_pipeline.py +870 -0
  127. package/dist/content/skills/specialist-devops-infra/mcp_functions/init_infrastructure_structure.py +704 -0
  128. package/dist/content/skills/specialist-devops-infra/mcp_functions/validate_infrastructure_quality.py +745 -0
  129. package/dist/content/skills/specialist-devops-infra/resources/checklists/devops-validation.md +427 -0
  130. package/dist/content/skills/specialist-devops-infra/resources/examples/devops-examples.md +652 -0
  131. package/dist/content/skills/specialist-devops-infra/resources/reference/devops-guide.md +1244 -0
  132. package/dist/content/skills/specialist-devops-infra/resources/templates/ci-cd-pipeline.yml +40 -0
  133. package/dist/content/skills/specialist-documentacao-tecnica/MCP_INTEGRATION.md +797 -0
  134. package/dist/content/skills/specialist-documentacao-tecnica/README.md +304 -0
  135. package/dist/content/skills/specialist-documentacao-tecnica/SKILL.md +202 -0
  136. package/dist/content/skills/specialist-documentacao-tecnica/mcp_functions/init_documentation_structure.py +733 -0
  137. package/dist/content/skills/specialist-documentacao-tecnica/mcp_functions/process_documentation_for_publishing.py +888 -0
  138. package/dist/content/skills/specialist-documentacao-tecnica/mcp_functions/validate_documentation_quality.py +775 -0
  139. package/dist/content/skills/specialist-documentacao-tecnica/resources/checklists/documentation-validation.md +296 -0
  140. package/dist/content/skills/specialist-documentacao-tecnica/resources/examples/documentation-examples.md +515 -0
  141. package/dist/content/skills/specialist-documentacao-tecnica/resources/reference/documentation-guide.md +798 -0
  142. package/dist/content/skills/specialist-documentacao-tecnica/resources/templates/api-docs.md +619 -0
  143. package/dist/content/skills/specialist-documentacao-tecnica/resources/templates/design-doc.md +250 -0
  144. package/dist/content/skills/specialist-documentacao-tecnica/resources/templates/guia-tecnico.md +383 -0
  145. package/dist/content/skills/specialist-documentacao-tecnica/resources/templates/readme-template.md +462 -0
  146. package/dist/content/skills/specialist-engenharia-requisitos-ia/MCP_INTEGRATION.md +457 -0
  147. package/dist/content/skills/specialist-engenharia-requisitos-ia/README.md +295 -0
  148. package/dist/content/skills/specialist-engenharia-requisitos-ia/SKILL.md +214 -0
  149. package/dist/content/skills/specialist-engenharia-requisitos-ia/mcp_functions/init_requirements.py +152 -0
  150. package/dist/content/skills/specialist-engenharia-requisitos-ia/mcp_functions/process_requirements.py +445 -0
  151. package/dist/content/skills/specialist-engenharia-requisitos-ia/mcp_functions/validate_requirements.py +475 -0
  152. package/dist/content/skills/specialist-engenharia-requisitos-ia/resources/checklists/requirements-validation.md +258 -0
  153. package/dist/content/skills/specialist-engenharia-requisitos-ia/resources/examples/requirements-examples.md +316 -0
  154. package/dist/content/skills/specialist-engenharia-requisitos-ia/resources/reference/requirements-guide.md +651 -0
  155. package/dist/content/skills/specialist-engenharia-requisitos-ia/resources/templates/criterios-aceite.md +484 -0
  156. package/dist/content/skills/specialist-engenharia-requisitos-ia/resources/templates/matriz-rastreabilidade.md +246 -0
  157. package/dist/content/skills/specialist-engenharia-requisitos-ia/resources/templates/requisitos.md +244 -0
  158. package/dist/content/skills/specialist-exploracao-codebase/MCP_INTEGRATION.md +155 -0
  159. package/dist/content/skills/specialist-exploracao-codebase/README.md +320 -0
  160. package/dist/content/skills/specialist-exploracao-codebase/SKILL.md +194 -0
  161. package/dist/content/skills/specialist-exploracao-codebase/mcp_functions/README.md +39 -0
  162. package/dist/content/skills/specialist-exploracao-codebase/resources/checklists/exploration-validation.md +51 -0
  163. package/dist/content/skills/specialist-exploracao-codebase/resources/examples/exploration-examples.md +106 -0
  164. package/dist/content/skills/specialist-exploracao-codebase/resources/reference/exploration-guide.md +111 -0
  165. package/dist/content/skills/specialist-exploracao-codebase/resources/templates/codebase-map.md +129 -0
  166. package/dist/content/skills/specialist-exploracao-codebase/resources/templates/refactoring-plan.md +96 -0
  167. package/dist/content/skills/specialist-exploracao-codebase/resources/templates/technical-debt-report.md +69 -0
  168. package/dist/content/skills/specialist-gestao-produto/MCP_INTEGRATION.md +436 -0
  169. package/dist/content/skills/specialist-gestao-produto/README.md +202 -0
  170. package/dist/content/skills/specialist-gestao-produto/SKILL.md +174 -0
  171. package/dist/content/skills/specialist-gestao-produto/resources/checklists/prd-validation.md +165 -0
  172. package/dist/content/skills/specialist-gestao-produto/resources/examples/prd-examples.md +231 -0
  173. package/dist/content/skills/specialist-gestao-produto/resources/reference/product-guide.md +416 -0
  174. package/dist/content/skills/specialist-gestao-produto/resources/templates/PRD.md +212 -0
  175. package/dist/content/skills/specialist-gestao-produto/scripts/init_prd.py +170 -0
  176. package/dist/content/skills/specialist-gestao-produto/scripts/process_prd.py +388 -0
  177. package/dist/content/skills/specialist-gestao-produto/scripts/validate_prd.py +406 -0
  178. package/dist/content/skills/specialist-migracao-modernizacao/MCP_INTEGRATION.md +17 -0
  179. package/dist/content/skills/specialist-migracao-modernizacao/README.md +46 -0
  180. package/dist/content/skills/specialist-migracao-modernizacao/SKILL.md +485 -0
  181. package/dist/content/skills/specialist-migracao-modernizacao/mcp_functions/README.md +10 -0
  182. package/dist/content/skills/specialist-migracao-modernizacao/resources/checklists/migration-validation.md +23 -0
  183. package/dist/content/skills/specialist-migracao-modernizacao/resources/examples/migration-examples.md +30 -0
  184. package/dist/content/skills/specialist-migracao-modernizacao/resources/reference/migration-guide.md +27 -0
  185. package/dist/content/skills/specialist-migracao-modernizacao/resources/templates/migration-assessment.md +391 -0
  186. package/dist/content/skills/specialist-migracao-modernizacao/resources/templates/modernization-roadmap.md +479 -0
  187. package/dist/content/skills/specialist-migracao-modernizacao/resources/templates/risk-analysis.md +527 -0
  188. package/dist/content/skills/specialist-mobile-design-avancado/MCP_INTEGRATION.md +17 -0
  189. package/dist/content/skills/specialist-mobile-design-avancado/README.md +46 -0
  190. package/dist/content/skills/specialist-mobile-design-avancado/SKILL.md +567 -0
  191. package/dist/content/skills/specialist-mobile-design-avancado/mcp_functions/README.md +10 -0
  192. package/dist/content/skills/specialist-mobile-design-avancado/resources/checklists/design-validation.md +23 -0
  193. package/dist/content/skills/specialist-mobile-design-avancado/resources/examples/design-examples.md +46 -0
  194. package/dist/content/skills/specialist-mobile-design-avancado/resources/reference/design-guide.md +23 -0
  195. package/dist/content/skills/specialist-modelagem-dominio/MCP_INTEGRATION.md +336 -0
  196. package/dist/content/skills/specialist-modelagem-dominio/README.md +314 -0
  197. package/dist/content/skills/specialist-modelagem-dominio/SKILL.md +241 -0
  198. package/dist/content/skills/specialist-modelagem-dominio/mcp_functions/init_domain.py +479 -0
  199. package/dist/content/skills/specialist-modelagem-dominio/mcp_functions/process_domain.py +526 -0
  200. package/dist/content/skills/specialist-modelagem-dominio/mcp_functions/validate_domain.py +569 -0
  201. package/dist/content/skills/specialist-modelagem-dominio/resources/checklists/domain-validation.md +341 -0
  202. package/dist/content/skills/specialist-modelagem-dominio/resources/examples/domain-examples.md +505 -0
  203. package/dist/content/skills/specialist-modelagem-dominio/resources/reference/domain-guide.md +601 -0
  204. package/dist/content/skills/specialist-modelagem-dominio/resources/reference/domain-modeling-complete-guide.md +1126 -0
  205. package/dist/content/skills/specialist-modelagem-dominio/resources/templates/arquitetura-c4.md +477 -0
  206. package/dist/content/skills/specialist-modelagem-dominio/resources/templates/casos-uso.md +395 -0
  207. package/dist/content/skills/specialist-modelagem-dominio/resources/templates/entidades-relacionamentos.md +368 -0
  208. package/dist/content/skills/specialist-modelagem-dominio/resources/templates/modelo-dominio.md +311 -0
  209. package/dist/content/skills/specialist-observabilidade/SKILL.md +462 -0
  210. package/dist/content/skills/specialist-performance-escalabilidade/SKILL.md +329 -0
  211. package/dist/content/skills/specialist-plano-execucao-ia/MCP_INTEGRATION.md +371 -0
  212. package/dist/content/skills/specialist-plano-execucao-ia/README.md +194 -0
  213. package/dist/content/skills/specialist-plano-execucao-ia/SKILL.md +271 -0
  214. package/dist/content/skills/specialist-plano-execucao-ia/mcp_functions/README.md +38 -0
  215. package/dist/content/skills/specialist-plano-execucao-ia/resources/checklists/planning-validation.md +144 -0
  216. package/dist/content/skills/specialist-plano-execucao-ia/resources/examples/planning-examples.md +203 -0
  217. package/dist/content/skills/specialist-plano-execucao-ia/resources/reference/planning-guide.md +316 -0
  218. package/dist/content/skills/specialist-plano-execucao-ia/resources/templates/backlog.md +146 -0
  219. package/dist/content/skills/specialist-plano-execucao-ia/resources/templates/historia-backend.md +157 -0
  220. package/dist/content/skills/specialist-plano-execucao-ia/resources/templates/historia-frontend.md +116 -0
  221. package/dist/content/skills/specialist-plano-execucao-ia/resources/templates/historia-usuario.md +66 -0
  222. package/dist/content/skills/specialist-prototipagem-stitch/MCP_INTEGRATION.md +533 -0
  223. package/dist/content/skills/specialist-prototipagem-stitch/README.md +321 -0
  224. package/dist/content/skills/specialist-prototipagem-stitch/SKILL.md +194 -0
  225. package/dist/content/skills/specialist-prototipagem-stitch/mcp_functions/README.md +239 -0
  226. package/dist/content/skills/specialist-prototipagem-stitch/resources/checklists/stitch-validation.md +357 -0
  227. package/dist/content/skills/specialist-prototipagem-stitch/resources/examples/stitch-examples.md +372 -0
  228. package/dist/content/skills/specialist-prototipagem-stitch/resources/reference/stitch-guide.md +517 -0
  229. package/dist/content/skills/specialist-prototipagem-stitch/resources/templates/prompt-stitch.md +429 -0
  230. package/dist/content/skills/specialist-prototipagem-stitch/resources/templates/prototipo-stitch.md +317 -0
  231. package/dist/content/skills/specialist-seguranca-informacao/MCP_INTEGRATION.md +466 -0
  232. package/dist/content/skills/specialist-seguranca-informacao/README.md +245 -0
  233. package/dist/content/skills/specialist-seguranca-informacao/SKILL.md +343 -0
  234. package/dist/content/skills/specialist-seguranca-informacao/mcp_functions/init_security.py +405 -0
  235. package/dist/content/skills/specialist-seguranca-informacao/mcp_functions/process_security.py +611 -0
  236. package/dist/content/skills/specialist-seguranca-informacao/mcp_functions/validate_security.py +468 -0
  237. package/dist/content/skills/specialist-seguranca-informacao/resources/checklists/security-validation.md +368 -0
  238. package/dist/content/skills/specialist-seguranca-informacao/resources/examples/security-examples.md +358 -0
  239. package/dist/content/skills/specialist-seguranca-informacao/resources/reference/security-guide.md +757 -0
  240. package/dist/content/skills/specialist-seguranca-informacao/resources/templates/checklist-seguranca.md +383 -0
  241. package/dist/content/skills/specialist-seguranca-informacao/resources/templates/slo-sli.md +244 -0
  242. package/dist/content/skills/specialist-seguranca-informacao/resources/templates/threat-modeling.md +161 -0
  243. package/dist/content/skills/specialist-ux-design/MCP_INTEGRATION.md +294 -0
  244. package/dist/content/skills/specialist-ux-design/README.md +304 -0
  245. package/dist/content/skills/specialist-ux-design/SKILL.md +212 -0
  246. package/dist/content/skills/specialist-ux-design/mcp_functions/init_ux.py +126 -0
  247. package/dist/content/skills/specialist-ux-design/mcp_functions/process_ux.py +408 -0
  248. package/dist/content/skills/specialist-ux-design/mcp_functions/validate_ux.py +379 -0
  249. package/dist/content/skills/specialist-ux-design/resources/checklists/ux-validation.md +77 -0
  250. package/dist/content/skills/specialist-ux-design/resources/examples/ux-examples.md +161 -0
  251. package/dist/content/skills/specialist-ux-design/resources/reference/ux-guide.md +184 -0
  252. package/dist/content/skills/specialist-ux-design/resources/templates/design-doc.md +160 -0
  253. package/dist/content/skills/specialist-ux-design/resources/templates/jornada-usuario.md +126 -0
  254. package/dist/content/skills/specialist-ux-design/resources/templates/wireframes.md +155 -0
  255. package/dist/core/adr/ADRGenerator.d.ts +28 -0
  256. package/dist/core/adr/ADRGenerator.d.ts.map +1 -0
  257. package/dist/core/adr/ADRGenerator.js +63 -0
  258. package/dist/core/adr/ADRGenerator.js.map +1 -0
  259. package/dist/core/adr/index.d.ts +2 -0
  260. package/dist/core/adr/index.d.ts.map +1 -0
  261. package/dist/core/adr/index.js +2 -0
  262. package/dist/core/adr/index.js.map +1 -0
  263. package/dist/core/architecture/FitnessFunctions.d.ts +67 -0
  264. package/dist/core/architecture/FitnessFunctions.d.ts.map +1 -0
  265. package/dist/core/architecture/FitnessFunctions.js +292 -0
  266. package/dist/core/architecture/FitnessFunctions.js.map +1 -0
  267. package/dist/core/architecture/index.d.ts +3 -0
  268. package/dist/core/architecture/index.d.ts.map +1 -0
  269. package/dist/core/architecture/index.js +3 -0
  270. package/dist/core/architecture/index.js.map +1 -0
  271. package/dist/core/architecture/types.d.ts +42 -0
  272. package/dist/core/architecture/types.d.ts.map +1 -0
  273. package/dist/core/architecture/types.js +5 -0
  274. package/dist/core/architecture/types.js.map +1 -0
  275. package/dist/core/atam/ATAMAnalyzer.d.ts +19 -0
  276. package/dist/core/atam/ATAMAnalyzer.d.ts.map +1 -0
  277. package/dist/core/atam/ATAMAnalyzer.js +206 -0
  278. package/dist/core/atam/ATAMAnalyzer.js.map +1 -0
  279. package/dist/core/atam/ATAMReporter.d.ts +16 -0
  280. package/dist/core/atam/ATAMReporter.d.ts.map +1 -0
  281. package/dist/core/atam/ATAMReporter.js +175 -0
  282. package/dist/core/atam/ATAMReporter.js.map +1 -0
  283. package/dist/core/atam/QualityScenarios.d.ts +16 -0
  284. package/dist/core/atam/QualityScenarios.d.ts.map +1 -0
  285. package/dist/core/atam/QualityScenarios.js +149 -0
  286. package/dist/core/atam/QualityScenarios.js.map +1 -0
  287. package/dist/core/atam/RiskRegistry.d.ts +21 -0
  288. package/dist/core/atam/RiskRegistry.d.ts.map +1 -0
  289. package/dist/core/atam/RiskRegistry.js +83 -0
  290. package/dist/core/atam/RiskRegistry.js.map +1 -0
  291. package/dist/core/atam/index.d.ts +6 -0
  292. package/dist/core/atam/index.d.ts.map +1 -0
  293. package/dist/core/atam/index.js +6 -0
  294. package/dist/core/atam/index.js.map +1 -0
  295. package/dist/core/atam/types.d.ts +86 -0
  296. package/dist/core/atam/types.d.ts.map +1 -0
  297. package/dist/core/atam/types.js +5 -0
  298. package/dist/core/atam/types.js.map +1 -0
  299. package/dist/core/authority/AuthorityManager.d.ts +19 -0
  300. package/dist/core/authority/AuthorityManager.d.ts.map +1 -0
  301. package/dist/core/authority/AuthorityManager.js +66 -0
  302. package/dist/core/authority/AuthorityManager.js.map +1 -0
  303. package/dist/core/authority/index.d.ts +2 -0
  304. package/dist/core/authority/index.d.ts.map +1 -0
  305. package/dist/core/authority/index.js +2 -0
  306. package/dist/core/authority/index.js.map +1 -0
  307. package/dist/core/autofix/AutoFixEngine.d.ts +17 -0
  308. package/dist/core/autofix/AutoFixEngine.d.ts.map +1 -0
  309. package/dist/core/autofix/AutoFixEngine.js +46 -0
  310. package/dist/core/autofix/AutoFixEngine.js.map +1 -0
  311. package/dist/core/autofix/index.d.ts +2 -0
  312. package/dist/core/autofix/index.d.ts.map +1 -0
  313. package/dist/core/autofix/index.js +2 -0
  314. package/dist/core/autofix/index.js.map +1 -0
  315. package/dist/core/automation/AutoExecutor.d.ts +20 -0
  316. package/dist/core/automation/AutoExecutor.d.ts.map +1 -0
  317. package/dist/core/automation/AutoExecutor.js +38 -0
  318. package/dist/core/automation/AutoExecutor.js.map +1 -0
  319. package/dist/core/automation/index.d.ts +2 -0
  320. package/dist/core/automation/index.d.ts.map +1 -0
  321. package/dist/core/automation/index.js +2 -0
  322. package/dist/core/automation/index.js.map +1 -0
  323. package/dist/core/checkpoint/CheckpointManager.d.ts +43 -0
  324. package/dist/core/checkpoint/CheckpointManager.d.ts.map +1 -0
  325. package/dist/core/checkpoint/CheckpointManager.js +158 -0
  326. package/dist/core/checkpoint/CheckpointManager.js.map +1 -0
  327. package/dist/core/checkpoint/RollbackEngine.d.ts +31 -0
  328. package/dist/core/checkpoint/RollbackEngine.d.ts.map +1 -0
  329. package/dist/core/checkpoint/RollbackEngine.js +176 -0
  330. package/dist/core/checkpoint/RollbackEngine.js.map +1 -0
  331. package/dist/core/checkpoint/index.d.ts +4 -0
  332. package/dist/core/checkpoint/index.d.ts.map +1 -0
  333. package/dist/core/checkpoint/index.js +4 -0
  334. package/dist/core/checkpoint/index.js.map +1 -0
  335. package/dist/core/checkpoint/types.d.ts +33 -0
  336. package/dist/core/checkpoint/types.d.ts.map +1 -0
  337. package/dist/core/checkpoint/types.js +2 -0
  338. package/dist/core/checkpoint/types.js.map +1 -0
  339. package/dist/core/consistency/ConsistencyAnalyzer.d.ts +12 -0
  340. package/dist/core/consistency/ConsistencyAnalyzer.d.ts.map +1 -0
  341. package/dist/core/consistency/ConsistencyAnalyzer.js +79 -0
  342. package/dist/core/consistency/ConsistencyAnalyzer.js.map +1 -0
  343. package/dist/core/consistency/index.d.ts +3 -0
  344. package/dist/core/consistency/index.d.ts.map +1 -0
  345. package/dist/core/consistency/index.js +3 -0
  346. package/dist/core/consistency/index.js.map +1 -0
  347. package/dist/core/consistency/types.d.ts +43 -0
  348. package/dist/core/consistency/types.d.ts.map +1 -0
  349. package/dist/core/consistency/types.js +5 -0
  350. package/dist/core/consistency/types.js.map +1 -0
  351. package/dist/core/context/ContextDetector.d.ts +14 -0
  352. package/dist/core/context/ContextDetector.d.ts.map +1 -0
  353. package/dist/core/context/ContextDetector.js +58 -0
  354. package/dist/core/context/ContextDetector.js.map +1 -0
  355. package/dist/core/context/index.d.ts +3 -0
  356. package/dist/core/context/index.d.ts.map +1 -0
  357. package/dist/core/context/index.js +3 -0
  358. package/dist/core/context/index.js.map +1 -0
  359. package/dist/core/context/types.d.ts +41 -0
  360. package/dist/core/context/types.d.ts.map +1 -0
  361. package/dist/core/context/types.js +5 -0
  362. package/dist/core/context/types.js.map +1 -0
  363. package/dist/core/decision/AlternativeGenerator.d.ts +32 -0
  364. package/dist/core/decision/AlternativeGenerator.d.ts.map +1 -0
  365. package/dist/core/decision/AlternativeGenerator.js +155 -0
  366. package/dist/core/decision/AlternativeGenerator.js.map +1 -0
  367. package/dist/core/decision/ConfidenceCalculator.d.ts +42 -0
  368. package/dist/core/decision/ConfidenceCalculator.d.ts.map +1 -0
  369. package/dist/core/decision/ConfidenceCalculator.js +114 -0
  370. package/dist/core/decision/ConfidenceCalculator.js.map +1 -0
  371. package/dist/core/decision/DecisionEngine.d.ts +42 -0
  372. package/dist/core/decision/DecisionEngine.d.ts.map +1 -0
  373. package/dist/core/decision/DecisionEngine.js +144 -0
  374. package/dist/core/decision/DecisionEngine.js.map +1 -0
  375. package/dist/core/decision/DecisionMatrix.d.ts +29 -0
  376. package/dist/core/decision/DecisionMatrix.d.ts.map +1 -0
  377. package/dist/core/decision/DecisionMatrix.js +66 -0
  378. package/dist/core/decision/DecisionMatrix.js.map +1 -0
  379. package/dist/core/decision/index.d.ts +6 -0
  380. package/dist/core/decision/index.d.ts.map +1 -0
  381. package/dist/core/decision/index.js +6 -0
  382. package/dist/core/decision/index.js.map +1 -0
  383. package/dist/core/decision/types.d.ts +40 -0
  384. package/dist/core/decision/types.d.ts.map +1 -0
  385. package/dist/core/decision/types.js +5 -0
  386. package/dist/core/decision/types.js.map +1 -0
  387. package/dist/core/discovery/CodebaseDiscovery.d.ts +19 -0
  388. package/dist/core/discovery/CodebaseDiscovery.d.ts.map +1 -0
  389. package/dist/core/discovery/CodebaseDiscovery.js +83 -0
  390. package/dist/core/discovery/CodebaseDiscovery.js.map +1 -0
  391. package/dist/core/discovery/index.d.ts +2 -0
  392. package/dist/core/discovery/index.d.ts.map +1 -0
  393. package/dist/core/discovery/index.js +2 -0
  394. package/dist/core/discovery/index.js.map +1 -0
  395. package/dist/core/feedback/FeedbackLoop.d.ts +21 -0
  396. package/dist/core/feedback/FeedbackLoop.d.ts.map +1 -0
  397. package/dist/core/feedback/FeedbackLoop.js +45 -0
  398. package/dist/core/feedback/FeedbackLoop.js.map +1 -0
  399. package/dist/core/feedback/index.d.ts +2 -0
  400. package/dist/core/feedback/index.d.ts.map +1 -0
  401. package/dist/core/feedback/index.js +2 -0
  402. package/dist/core/feedback/index.js.map +1 -0
  403. package/dist/core/growth/GrowthProjector.d.ts +12 -0
  404. package/dist/core/growth/GrowthProjector.d.ts.map +1 -0
  405. package/dist/core/growth/GrowthProjector.js +93 -0
  406. package/dist/core/growth/GrowthProjector.js.map +1 -0
  407. package/dist/core/growth/index.d.ts +3 -0
  408. package/dist/core/growth/index.d.ts.map +1 -0
  409. package/dist/core/growth/index.js +3 -0
  410. package/dist/core/growth/index.js.map +1 -0
  411. package/dist/core/growth/types.d.ts +40 -0
  412. package/dist/core/growth/types.d.ts.map +1 -0
  413. package/dist/core/growth/types.js +5 -0
  414. package/dist/core/growth/types.js.map +1 -0
  415. package/dist/core/impact/ImpactAnalyzer.d.ts +22 -0
  416. package/dist/core/impact/ImpactAnalyzer.d.ts.map +1 -0
  417. package/dist/core/impact/ImpactAnalyzer.js +43 -0
  418. package/dist/core/impact/ImpactAnalyzer.js.map +1 -0
  419. package/dist/core/impact/index.d.ts +2 -0
  420. package/dist/core/impact/index.d.ts.map +1 -0
  421. package/dist/core/impact/index.js +2 -0
  422. package/dist/core/impact/index.js.map +1 -0
  423. package/dist/core/knowledge/ADRManager.d.ts +22 -0
  424. package/dist/core/knowledge/ADRManager.d.ts.map +1 -0
  425. package/dist/core/knowledge/ADRManager.js +82 -0
  426. package/dist/core/knowledge/ADRManager.js.map +1 -0
  427. package/dist/core/knowledge/ContextLoader.d.ts +18 -0
  428. package/dist/core/knowledge/ContextLoader.d.ts.map +1 -0
  429. package/dist/core/knowledge/ContextLoader.js +48 -0
  430. package/dist/core/knowledge/ContextLoader.js.map +1 -0
  431. package/dist/core/knowledge/KnowledgeBase.d.ts +35 -0
  432. package/dist/core/knowledge/KnowledgeBase.d.ts.map +1 -0
  433. package/dist/core/knowledge/KnowledgeBase.js +143 -0
  434. package/dist/core/knowledge/KnowledgeBase.js.map +1 -0
  435. package/dist/core/knowledge/PatternRegistry.d.ts +22 -0
  436. package/dist/core/knowledge/PatternRegistry.d.ts.map +1 -0
  437. package/dist/core/knowledge/PatternRegistry.js +56 -0
  438. package/dist/core/knowledge/PatternRegistry.js.map +1 -0
  439. package/dist/core/knowledge/index.d.ts +6 -0
  440. package/dist/core/knowledge/index.d.ts.map +1 -0
  441. package/dist/core/knowledge/index.js +6 -0
  442. package/dist/core/knowledge/index.js.map +1 -0
  443. package/dist/core/knowledge/types.d.ts +60 -0
  444. package/dist/core/knowledge/types.d.ts.map +1 -0
  445. package/dist/core/knowledge/types.js +2 -0
  446. package/dist/core/knowledge/types.js.map +1 -0
  447. package/dist/core/metrics/MetricsCollector.d.ts +21 -0
  448. package/dist/core/metrics/MetricsCollector.d.ts.map +1 -0
  449. package/dist/core/metrics/MetricsCollector.js +20 -0
  450. package/dist/core/metrics/MetricsCollector.js.map +1 -0
  451. package/dist/core/metrics/index.d.ts +2 -0
  452. package/dist/core/metrics/index.d.ts.map +1 -0
  453. package/dist/core/metrics/index.js +2 -0
  454. package/dist/core/metrics/index.js.map +1 -0
  455. package/dist/core/notification/NotificationManager.d.ts +20 -0
  456. package/dist/core/notification/NotificationManager.d.ts.map +1 -0
  457. package/dist/core/notification/NotificationManager.js +16 -0
  458. package/dist/core/notification/NotificationManager.js.map +1 -0
  459. package/dist/core/notification/index.d.ts +2 -0
  460. package/dist/core/notification/index.d.ts.map +1 -0
  461. package/dist/core/notification/index.js +2 -0
  462. package/dist/core/notification/index.js.map +1 -0
  463. package/dist/core/risk/RiskEvaluator.d.ts +11 -0
  464. package/dist/core/risk/RiskEvaluator.d.ts.map +1 -0
  465. package/dist/core/risk/RiskEvaluator.js +83 -0
  466. package/dist/core/risk/RiskEvaluator.js.map +1 -0
  467. package/dist/core/risk/index.d.ts +3 -0
  468. package/dist/core/risk/index.d.ts.map +1 -0
  469. package/dist/core/risk/index.js +3 -0
  470. package/dist/core/risk/index.js.map +1 -0
  471. package/dist/core/risk/types.d.ts +19 -0
  472. package/dist/core/risk/types.d.ts.map +1 -0
  473. package/dist/core/risk/types.js +2 -0
  474. package/dist/core/risk/types.js.map +1 -0
  475. package/dist/core/roadmap/RoadmapManager.d.ts +14 -0
  476. package/dist/core/roadmap/RoadmapManager.d.ts.map +1 -0
  477. package/dist/core/roadmap/RoadmapManager.js +81 -0
  478. package/dist/core/roadmap/RoadmapManager.js.map +1 -0
  479. package/dist/core/roadmap/index.d.ts +3 -0
  480. package/dist/core/roadmap/index.d.ts.map +1 -0
  481. package/dist/core/roadmap/index.js +3 -0
  482. package/dist/core/roadmap/index.js.map +1 -0
  483. package/dist/core/roadmap/types.d.ts +64 -0
  484. package/dist/core/roadmap/types.d.ts.map +1 -0
  485. package/dist/core/roadmap/types.js +5 -0
  486. package/dist/core/roadmap/types.js.map +1 -0
  487. package/dist/core/strangler/StranglerOrchestrator.d.ts +14 -0
  488. package/dist/core/strangler/StranglerOrchestrator.d.ts.map +1 -0
  489. package/dist/core/strangler/StranglerOrchestrator.js +87 -0
  490. package/dist/core/strangler/StranglerOrchestrator.js.map +1 -0
  491. package/dist/core/strangler/index.d.ts +3 -0
  492. package/dist/core/strangler/index.d.ts.map +1 -0
  493. package/dist/core/strangler/index.js +3 -0
  494. package/dist/core/strangler/index.js.map +1 -0
  495. package/dist/core/strangler/types.d.ts +70 -0
  496. package/dist/core/strangler/types.d.ts.map +1 -0
  497. package/dist/core/strangler/types.js +5 -0
  498. package/dist/core/strangler/types.js.map +1 -0
  499. package/dist/core/testing/TestRunner.d.ts +17 -0
  500. package/dist/core/testing/TestRunner.d.ts.map +1 -0
  501. package/dist/core/testing/TestRunner.js +22 -0
  502. package/dist/core/testing/TestRunner.js.map +1 -0
  503. package/dist/core/testing/index.d.ts +2 -0
  504. package/dist/core/testing/index.d.ts.map +1 -0
  505. package/dist/core/testing/index.js +2 -0
  506. package/dist/core/testing/index.js.map +1 -0
  507. package/dist/core/tradeoff/TradeoffAnalyzer.d.ts +24 -0
  508. package/dist/core/tradeoff/TradeoffAnalyzer.d.ts.map +1 -0
  509. package/dist/core/tradeoff/TradeoffAnalyzer.js +51 -0
  510. package/dist/core/tradeoff/TradeoffAnalyzer.js.map +1 -0
  511. package/dist/core/tradeoff/index.d.ts +2 -0
  512. package/dist/core/tradeoff/index.d.ts.map +1 -0
  513. package/dist/core/tradeoff/index.js +2 -0
  514. package/dist/core/tradeoff/index.js.map +1 -0
  515. package/dist/core/validation/DependencyValidator.d.ts +28 -0
  516. package/dist/core/validation/DependencyValidator.d.ts.map +1 -0
  517. package/dist/core/validation/DependencyValidator.js +188 -0
  518. package/dist/core/validation/DependencyValidator.js.map +1 -0
  519. package/dist/core/validation/SecurityValidator.d.ts +44 -0
  520. package/dist/core/validation/SecurityValidator.d.ts.map +1 -0
  521. package/dist/core/validation/SecurityValidator.js +248 -0
  522. package/dist/core/validation/SecurityValidator.js.map +1 -0
  523. package/dist/core/validation/ValidationPipeline.d.ts +62 -0
  524. package/dist/core/validation/ValidationPipeline.d.ts.map +1 -0
  525. package/dist/core/validation/ValidationPipeline.js +216 -0
  526. package/dist/core/validation/ValidationPipeline.js.map +1 -0
  527. package/dist/core/validation/index.d.ts +4 -0
  528. package/dist/core/validation/index.d.ts.map +1 -0
  529. package/dist/core/validation/index.js +4 -0
  530. package/dist/core/validation/index.js.map +1 -0
  531. package/dist/core/validation/layers/ArchitectureValidator.d.ts +21 -0
  532. package/dist/core/validation/layers/ArchitectureValidator.d.ts.map +1 -0
  533. package/dist/core/validation/layers/ArchitectureValidator.js +226 -0
  534. package/dist/core/validation/layers/ArchitectureValidator.js.map +1 -0
  535. package/dist/core/validation/layers/QualityValidator.d.ts +23 -0
  536. package/dist/core/validation/layers/QualityValidator.d.ts.map +1 -0
  537. package/dist/core/validation/layers/QualityValidator.js +259 -0
  538. package/dist/core/validation/layers/QualityValidator.js.map +1 -0
  539. package/dist/core/validation/layers/SecurityValidatorWrapper.d.ts +12 -0
  540. package/dist/core/validation/layers/SecurityValidatorWrapper.d.ts.map +1 -0
  541. package/dist/core/validation/layers/SecurityValidatorWrapper.js +54 -0
  542. package/dist/core/validation/layers/SecurityValidatorWrapper.js.map +1 -0
  543. package/dist/core/validation/layers/SemanticValidator.d.ts +21 -0
  544. package/dist/core/validation/layers/SemanticValidator.d.ts.map +1 -0
  545. package/dist/core/validation/layers/SemanticValidator.js +182 -0
  546. package/dist/core/validation/layers/SemanticValidator.js.map +1 -0
  547. package/dist/core/validation/layers/SyntacticValidator.d.ts +17 -0
  548. package/dist/core/validation/layers/SyntacticValidator.d.ts.map +1 -0
  549. package/dist/core/validation/layers/SyntacticValidator.js +194 -0
  550. package/dist/core/validation/layers/SyntacticValidator.js.map +1 -0
  551. package/dist/core/validation/types.d.ts +90 -0
  552. package/dist/core/validation/types.d.ts.map +1 -0
  553. package/dist/core/validation/types.js +24 -0
  554. package/dist/core/validation/types.js.map +1 -0
  555. package/dist/frontend-first/contract-generator.d.ts +47 -0
  556. package/dist/frontend-first/contract-generator.d.ts.map +1 -0
  557. package/dist/frontend-first/contract-generator.js +312 -0
  558. package/dist/frontend-first/contract-generator.js.map +1 -0
  559. package/dist/frontend-first/mock-generator.d.ts +23 -0
  560. package/dist/frontend-first/mock-generator.d.ts.map +1 -0
  561. package/dist/frontend-first/mock-generator.js +186 -0
  562. package/dist/frontend-first/mock-generator.js.map +1 -0
  563. package/dist/index.js +4 -4
  564. package/dist/index.js.map +1 -1
  565. package/dist/optimization/batch-prompts.d.ts +27 -0
  566. package/dist/optimization/batch-prompts.d.ts.map +1 -0
  567. package/dist/optimization/batch-prompts.js +178 -0
  568. package/dist/optimization/batch-prompts.js.map +1 -0
  569. package/dist/optimization/context-cache.d.ts +45 -0
  570. package/dist/optimization/context-cache.d.ts.map +1 -0
  571. package/dist/optimization/context-cache.js +149 -0
  572. package/dist/optimization/context-cache.js.map +1 -0
  573. package/dist/optimization/smart-validation.d.ts +43 -0
  574. package/dist/optimization/smart-validation.d.ts.map +1 -0
  575. package/dist/optimization/smart-validation.js +137 -0
  576. package/dist/optimization/smart-validation.js.map +1 -0
  577. package/dist/resources/index.d.ts.map +1 -1
  578. package/dist/resources/index.js +9 -9
  579. package/dist/resources/index.js.map +1 -1
  580. package/dist/stdio.js +189 -1
  581. package/dist/stdio.js.map +1 -1
  582. package/dist/tasks/task-manager.d.ts +30 -0
  583. package/dist/tasks/task-manager.d.ts.map +1 -0
  584. package/dist/tasks/task-manager.js +290 -0
  585. package/dist/tasks/task-manager.js.map +1 -0
  586. package/dist/tools/atualizar-tarefa.d.ts +17 -0
  587. package/dist/tools/atualizar-tarefa.d.ts.map +1 -0
  588. package/dist/tools/atualizar-tarefa.js +200 -0
  589. package/dist/tools/atualizar-tarefa.js.map +1 -0
  590. package/dist/tools/configurar-modo.d.ts +10 -0
  591. package/dist/tools/configurar-modo.d.ts.map +1 -0
  592. package/dist/tools/configurar-modo.js +121 -0
  593. package/dist/tools/configurar-modo.js.map +1 -0
  594. package/dist/tools/contexto.d.ts.map +1 -1
  595. package/dist/tools/contexto.js +35 -4
  596. package/dist/tools/contexto.js.map +1 -1
  597. package/dist/tools/criar-tarefa.d.ts +17 -0
  598. package/dist/tools/criar-tarefa.d.ts.map +1 -0
  599. package/dist/tools/criar-tarefa.js +132 -0
  600. package/dist/tools/criar-tarefa.js.map +1 -0
  601. package/dist/tools/fase1/checkpoint.tools.d.ts +150 -0
  602. package/dist/tools/fase1/checkpoint.tools.d.ts.map +1 -0
  603. package/dist/tools/fase1/checkpoint.tools.js +165 -0
  604. package/dist/tools/fase1/checkpoint.tools.js.map +1 -0
  605. package/dist/tools/fase1/knowledge.tools.d.ts +265 -0
  606. package/dist/tools/fase1/knowledge.tools.d.ts.map +1 -0
  607. package/dist/tools/fase1/knowledge.tools.js +209 -0
  608. package/dist/tools/fase1/knowledge.tools.js.map +1 -0
  609. package/dist/tools/fase1/misc.tools.d.ts +113 -0
  610. package/dist/tools/fase1/misc.tools.d.ts.map +1 -0
  611. package/dist/tools/fase1/misc.tools.js +99 -0
  612. package/dist/tools/fase1/misc.tools.js.map +1 -0
  613. package/dist/tools/fase1/validation.tools.d.ts +103 -0
  614. package/dist/tools/fase1/validation.tools.d.ts.map +1 -0
  615. package/dist/tools/fase1/validation.tools.js +174 -0
  616. package/dist/tools/fase1/validation.tools.js.map +1 -0
  617. package/dist/tools/gerar-contrato-api.d.ts +15 -0
  618. package/dist/tools/gerar-contrato-api.d.ts.map +1 -0
  619. package/dist/tools/gerar-contrato-api.js +216 -0
  620. package/dist/tools/gerar-contrato-api.js.map +1 -0
  621. package/dist/tools/iniciar-projeto.d.ts +12 -0
  622. package/dist/tools/iniciar-projeto.d.ts.map +1 -1
  623. package/dist/tools/iniciar-projeto.js +51 -17
  624. package/dist/tools/iniciar-projeto.js.map +1 -1
  625. package/dist/tools/listar-tarefas.d.ts +16 -0
  626. package/dist/tools/listar-tarefas.d.ts.map +1 -0
  627. package/dist/tools/listar-tarefas.js +215 -0
  628. package/dist/tools/listar-tarefas.js.map +1 -0
  629. package/dist/tools/phase2/architecture.tools.d.ts +37 -0
  630. package/dist/tools/phase2/architecture.tools.d.ts.map +1 -0
  631. package/dist/tools/phase2/architecture.tools.js +51 -0
  632. package/dist/tools/phase2/architecture.tools.js.map +1 -0
  633. package/dist/tools/phase2/decision.tools.d.ts +61 -0
  634. package/dist/tools/phase2/decision.tools.d.ts.map +1 -0
  635. package/dist/tools/phase2/decision.tools.js +69 -0
  636. package/dist/tools/phase2/decision.tools.js.map +1 -0
  637. package/dist/tools/phase2/index.d.ts +8 -0
  638. package/dist/tools/phase2/index.d.ts.map +1 -0
  639. package/dist/tools/phase2/index.js +16 -0
  640. package/dist/tools/phase2/index.js.map +1 -0
  641. package/dist/tools/phase2/validation.tools.d.ts +40 -0
  642. package/dist/tools/phase2/validation.tools.d.ts.map +1 -0
  643. package/dist/tools/phase2/validation.tools.js +43 -0
  644. package/dist/tools/phase2/validation.tools.js.map +1 -0
  645. package/dist/tools/phase3/atam.tools.d.ts +26 -0
  646. package/dist/tools/phase3/atam.tools.d.ts.map +1 -0
  647. package/dist/tools/phase3/atam.tools.js +48 -0
  648. package/dist/tools/phase3/atam.tools.js.map +1 -0
  649. package/dist/tools/phase3/consistency.tools.d.ts +15 -0
  650. package/dist/tools/phase3/consistency.tools.d.ts.map +1 -0
  651. package/dist/tools/phase3/consistency.tools.js +20 -0
  652. package/dist/tools/phase3/consistency.tools.js.map +1 -0
  653. package/dist/tools/phase3/context.tools.d.ts +25 -0
  654. package/dist/tools/phase3/context.tools.d.ts.map +1 -0
  655. package/dist/tools/phase3/context.tools.js +32 -0
  656. package/dist/tools/phase3/context.tools.js.map +1 -0
  657. package/dist/tools/phase3/growth.tools.d.ts +28 -0
  658. package/dist/tools/phase3/growth.tools.d.ts.map +1 -0
  659. package/dist/tools/phase3/growth.tools.js +32 -0
  660. package/dist/tools/phase3/growth.tools.js.map +1 -0
  661. package/dist/tools/phase3/index.d.ts +10 -0
  662. package/dist/tools/phase3/index.d.ts.map +1 -0
  663. package/dist/tools/phase3/index.js +10 -0
  664. package/dist/tools/phase3/index.js.map +1 -0
  665. package/dist/tools/phase3/roadmap.tools.d.ts +41 -0
  666. package/dist/tools/phase3/roadmap.tools.d.ts.map +1 -0
  667. package/dist/tools/phase3/roadmap.tools.js +44 -0
  668. package/dist/tools/phase3/roadmap.tools.js.map +1 -0
  669. package/dist/tools/phase3/strangler.tools.d.ts +37 -0
  670. package/dist/tools/phase3/strangler.tools.d.ts.map +1 -0
  671. package/dist/tools/phase3/strangler.tools.js +44 -0
  672. package/dist/tools/phase3/strangler.tools.js.map +1 -0
  673. package/dist/tools/proximo.d.ts.map +1 -1
  674. package/dist/tools/proximo.js +45 -8
  675. package/dist/tools/proximo.js.map +1 -1
  676. package/dist/tools/status.d.ts.map +1 -1
  677. package/dist/tools/status.js +28 -5
  678. package/dist/tools/status.js.map +1 -1
  679. package/dist/tools/validar-gate.d.ts.map +1 -1
  680. package/dist/tools/validar-gate.js +14 -0
  681. package/dist/tools/validar-gate.js.map +1 -1
  682. package/dist/types/config.d.ts +46 -0
  683. package/dist/types/config.d.ts.map +1 -0
  684. package/dist/types/config.js +162 -0
  685. package/dist/types/config.js.map +1 -0
  686. package/dist/types/index.d.ts +38 -0
  687. package/dist/types/index.d.ts.map +1 -1
  688. package/dist/types/index.js.map +1 -1
  689. package/dist/types/tasks.d.ts +100 -0
  690. package/dist/types/tasks.d.ts.map +1 -0
  691. package/dist/types/tasks.js +2 -0
  692. package/dist/types/tasks.js.map +1 -0
  693. package/dist/utils/__tests__/prompt-mapper.test.d.ts +2 -0
  694. package/dist/utils/__tests__/prompt-mapper.test.d.ts.map +1 -0
  695. package/dist/utils/__tests__/prompt-mapper.test.js +184 -0
  696. package/dist/utils/__tests__/prompt-mapper.test.js.map +1 -0
  697. package/dist/utils/content-injector.d.ts +1 -0
  698. package/dist/utils/content-injector.d.ts.map +1 -1
  699. package/dist/utils/content-injector.js +122 -2
  700. package/dist/utils/content-injector.js.map +1 -1
  701. package/dist/utils/files.d.ts +16 -16
  702. package/dist/utils/files.d.ts.map +1 -1
  703. package/dist/utils/files.js +59 -115
  704. package/dist/utils/files.js.map +1 -1
  705. package/dist/utils/history.d.ts +10 -0
  706. package/dist/utils/history.d.ts.map +1 -1
  707. package/dist/utils/history.js +12 -1
  708. package/dist/utils/history.js.map +1 -1
  709. package/dist/utils/prompt-mapper.d.ts +46 -0
  710. package/dist/utils/prompt-mapper.d.ts.map +1 -1
  711. package/dist/utils/prompt-mapper.js +100 -0
  712. package/dist/utils/prompt-mapper.js.map +1 -1
  713. package/package.json +5 -5
  714. package/dist/content/examples/Exemplo de Fluxo Completo com Java e Spring Boot.md +0 -250
  715. package/dist/content/examples/Exemplo de Fluxo Completo com Laravel e Filament.md +0 -278
  716. package/dist/content/examples/Exemplo de Fluxo Completo com Laravel e Livewire.md +0 -261
  717. package/dist/content/examples/Exemplo de Fluxo Completo com Node e NestJS.md +0 -258
  718. package/dist/content/guides/Cat/303/241logo de Stacks para Cloud Moderna.md" +0 -119
  719. package/dist/content/guides/Cat/303/241logo de Stacks para Hospedagem Compartilhada.md" +0 -147
  720. package/dist/content/guides/Checklist Mestre de Entrega.md +0 -68
  721. package/dist/content/guides/Gates de Qualidade.md +0 -209
  722. package/dist/content/guides/Guia de Adi/303/247/303/243o de Novas Funcionalidades.md" +0 -355
  723. package/dist/content/guides/Guia de Chaos Engineering.md +0 -267
  724. package/dist/content/guides/Guia de Estrat/303/251gias de Cache.md" +0 -352
  725. package/dist/content/guides/Guia de Migrations Zero-Downtime.md +0 -311
  726. package/dist/content/guides/Guia de Multi-tenancy.md +0 -368
  727. package/dist/content/guides/Guia de Otimiza/303/247/303/243o de Custos Cloud.md" +0 -195
  728. package/dist/content/guides/Guia de Refatora/303/247/303/243o de C/303/263digo Legado com IA.md" +0 -162
  729. package/dist/content/guides/Guia de SLOs e Error Budgets.md +0 -315
  730. package/dist/content/guides/M/303/251tricas de Efici/303/252ncia do Desenvolvimento com IA.md" +0 -93
  731. package/dist/content/guides/Rules base.md +0 -90
  732. package/dist/content/playbook/Playbook de Desenvolvimento com IA.md +0 -364
  733. package/dist/content/prompts/README.md +0 -203
  734. package/dist/content/prompts/acessibilidade/analise-acessibilidade.md +0 -257
  735. package/dist/content/prompts/apis/design-api-rest.md +0 -303
  736. package/dist/content/prompts/apis/idempotencia.md +0 -254
  737. package/dist/content/prompts/apis/versionamento.md +0 -313
  738. package/dist/content/prompts/arquitetura/arquitetura-c4-completo.md +0 -190
  739. package/dist/content/prompts/arquitetura/clean-architecture.md +0 -151
  740. package/dist/content/prompts/arquitetura/multi-tenancy.md +0 -235
  741. package/dist/content/prompts/database/migrations-zero-downtime.md +0 -192
  742. package/dist/content/prompts/database/otimizacao-queries.md +0 -296
  743. package/dist/content/prompts/desenvolvimento/code-review.md +0 -301
  744. package/dist/content/prompts/desenvolvimento/gerar-servico.md +0 -271
  745. package/dist/content/prompts/devops/docker-compose.md +0 -336
  746. package/dist/content/prompts/devops/feature-flags.md +0 -374
  747. package/dist/content/prompts/devops/kubernetes-deploy.md +0 -460
  748. package/dist/content/prompts/devops/pipeline-cicd.md +0 -358
  749. package/dist/content/prompts/devops/terraform-iac.md +0 -502
  750. package/dist/content/prompts/escalabilidade/analise-performance.md +0 -240
  751. package/dist/content/prompts/escalabilidade/analise-performance.txt +0 -94
  752. package/dist/content/prompts/escalabilidade/caching.md +0 -255
  753. package/dist/content/prompts/observabilidade/chaos-testing.md +0 -237
  754. package/dist/content/prompts/observabilidade/estrategia-observabilidade.md +0 -263
  755. package/dist/content/prompts/observabilidade/estrategia-observabilidade.txt +0 -134
  756. package/dist/content/prompts/observabilidade/slos.md +0 -215
  757. package/dist/content/prompts/produto/discovery-inicial.md +0 -203
  758. package/dist/content/prompts/produto/discovery-inicial.txt +0 -33
  759. package/dist/content/prompts/requisitos/refinar-requisitos.md +0 -232
  760. package/dist/content/prompts/requisitos/refinar-requisitos.txt +0 -40
  761. package/dist/content/prompts/seguranca/analise-seguranca.md +0 -243
  762. package/dist/content/prompts/seguranca/pentest-checklist.md +0 -333
  763. package/dist/content/prompts/seguranca/rate-limiting.md +0 -356
  764. package/dist/content/prompts/seguranca/revisao-lgpd.md +0 -227
  765. package/dist/content/prompts/seguranca/threat-modeling.md +0 -224
  766. package/dist/content/prompts/testes/contract-testing.md +0 -340
  767. package/dist/content/prompts/testes/gerar-testes-unitarios.md +0 -474
  768. package/dist/content/prompts/testes/testes-e2e.md +0 -460
  769. package/dist/content/prompts/testes/testes-integracao.md +0 -418
  770. package/dist/content/prompts/testes/testes-performance.md +0 -458
  771. package/dist/content/prompts/ux/gerar-ui-stitch.md +0 -151
  772. package/dist/content/specialists/Especialista em Acessibilidade.md +0 -266
  773. package/dist/content/specialists/Especialista em An/303/241lise de Testes.md" +0 -434
  774. package/dist/content/specialists/Especialista em Arquitetura Avan/303/247ada.md" +0 -358
  775. package/dist/content/specialists/Especialista em Arquitetura de Software.md +0 -177
  776. package/dist/content/specialists/Especialista em Banco de Dados.md +0 -260
  777. package/dist/content/specialists/Especialista em Contrato de API.md +0 -172
  778. package/dist/content/specialists/Especialista em Dados e Analytics com IA.md +0 -246
  779. package/dist/content/specialists/Especialista em Debugging e Troubleshooting.md +0 -191
  780. package/dist/content/specialists/Especialista em Desenvolvimento Frontend.md +0 -477
  781. package/dist/content/specialists/Especialista em Desenvolvimento Mobile.md +0 -241
  782. package/dist/content/specialists/Especialista em Desenvolvimento e Vibe Coding Estruturado.md +0 -417
  783. package/dist/content/specialists/Especialista em DevOps e Infraestrutura.md +0 -294
  784. package/dist/content/specialists/Especialista em Documenta/303/247/303/243o T/303/251cnica.md" +0 -227
  785. package/dist/content/specialists/Especialista em Engenharia de Requisitos com IA.md +0 -299
  786. package/dist/content/specialists/Especialista em Explora/303/247/303/243o de Codebase.md" +0 -179
  787. package/dist/content/specialists/Especialista em Gest/303/243o de Produto.md" +0 -179
  788. package/dist/content/specialists/Especialista em Migra/303/247/303/243o e Moderniza/303/247/303/243o.md" +0 -410
  789. package/dist/content/specialists/Especialista em Modelagem e Arquitetura de Dom/303/255nio com IA.md" +0 -248
  790. package/dist/content/specialists/Especialista em Observabilidade.md +0 -415
  791. package/dist/content/specialists/Especialista em Performance e Escalabilidade.md +0 -373
  792. package/dist/content/specialists/Especialista em Plano de Execu/303/247/303/243o com IA.md" +0 -341
  793. package/dist/content/specialists/Especialista em Prototipagem R/303/241pida com Google Stitch.md" +0 -419
  794. package/dist/content/specialists/Especialista em Seguran/303/247a da Informa/303/247/303/243o.md" +0 -508
  795. package/dist/content/specialists/Especialista em UX Design.md +0 -453
  796. package/dist/content/specialists/INDEX.md +0 -43
  797. package/dist/content/templates/PRD.md +0 -165
  798. package/dist/content/templates/README.md +0 -65
  799. package/dist/content/templates/adr.md +0 -103
  800. package/dist/content/templates/arquitetura.md +0 -279
  801. package/dist/content/templates/backlog.md +0 -185
  802. package/dist/content/templates/checklist-seguranca.md +0 -180
  803. package/dist/content/templates/contexto.md +0 -120
  804. package/dist/content/templates/criterios-aceite.md +0 -99
  805. package/dist/content/templates/design-banco.md +0 -270
  806. package/dist/content/templates/design-doc.md +0 -240
  807. package/dist/content/templates/feature.md +0 -88
  808. package/dist/content/templates/historia-backend.md +0 -84
  809. package/dist/content/templates/historia-frontend.md +0 -75
  810. package/dist/content/templates/historia-usuario.md +0 -125
  811. package/dist/content/templates/mapa-navegacao.md +0 -133
  812. package/dist/content/templates/matriz-rastreabilidade.md +0 -121
  813. package/dist/content/templates/modelo-dominio.md +0 -219
  814. package/dist/content/templates/plano-testes.md +0 -199
  815. package/dist/content/templates/prototipo-stitch.md +0 -138
  816. package/dist/content/templates/requisitos.md +0 -162
  817. package/dist/content/templates/slo-sli.md +0 -197
  818. /package/dist/content/{guides/Guia de Debugging com IA.md → skills/specialist-debugging-troubleshooting/resources/reference/debugging-ai-guide.md} +0 -0
  819. /package/dist/content/{prompts/arquitetura → skills/specialist-modelagem-dominio/resources/prompts}/ddd-bounded-contexts.md +0 -0
  820. /package/dist/content/{prompts/arquitetura → skills/specialist-modelagem-dominio/resources/prompts}/ddd-cqrs.md +0 -0
  821. /package/dist/content/{prompts/arquitetura → skills/specialist-modelagem-dominio/resources/prompts}/modelo-dominio.md +0 -0
@@ -1,254 +0,0 @@
1
- # Prompt: Idempotência em APIs
2
-
3
- > **Prioridade**: 🔴 CRÍTICA
4
- > **Aplicável a**: Projetos Nível 2 (Médio) e Nível 3 (Complexo)
5
-
6
- ---
7
-
8
- ## Por que é Crítico?
9
-
10
- Sem idempotência, operações podem ser duplicadas em caso de:
11
- - Retry automático de clientes
12
- - Timeout de rede seguido de retry manual
13
- - Falha de conexão após processamento
14
-
15
- **Consequências em produção:**
16
- - Cobranças duplicadas em pagamentos
17
- - Pedidos duplicados em e-commerce
18
- - Criação de recursos duplicados
19
- - Inconsistência de dados
20
-
21
- ---
22
-
23
- ## Conceito
24
-
25
- > **Idempotência**: Uma operação que pode ser executada múltiplas vezes produzindo o mesmo resultado.
26
-
27
- | Método HTTP | Naturalmente Idempotente? |
28
- |-------------|---------------------------|
29
- | GET | ✅ Sim |
30
- | PUT | ✅ Sim (substitui recurso) |
31
- | DELETE | ✅ Sim (recurso já deletado = ok) |
32
- | POST | ❌ **Não** - Requer implementação |
33
- | PATCH | ⚠️ Depende da implementação |
34
-
35
- ---
36
-
37
- ## Prompt Base
38
-
39
- ```text
40
- Atue como arquiteto de APIs com foco em resiliência.
41
-
42
- Preciso implementar idempotência no seguinte endpoint:
43
- - Método: [POST/PATCH]
44
- - Rota: [ex: /api/v1/payments]
45
- - Operação: [ex: criar pagamento, processar pedido]
46
-
47
- Stack: [ex: Node.js + Express + Redis / Java + Spring + PostgreSQL]
48
-
49
- Gere uma implementação completa com:
50
-
51
- 1. **Estratégia de Idempotency Key**
52
- - Via header `Idempotency-Key`
53
- - Formato: UUID v4
54
- - Validação de formato
55
-
56
- 2. **Armazenamento de Estado**
57
- - Schema para Redis ou tabela em banco
58
- - Estados: PROCESSING, COMPLETED, FAILED
59
- - TTL apropriado (mínimo 24h)
60
-
61
- 3. **Fluxo de Processamento**
62
- - Verificar se key já existe
63
- - Se PROCESSING: retornar 409 Conflict
64
- - Se COMPLETED: retornar resposta cacheada
65
- - Se nova: processar e armazenar resultado
66
-
67
- 4. **Middleware/Interceptor**
68
- - Código reutilizável para decorar endpoints
69
-
70
- 5. **Testes**
71
- - Request normal (200)
72
- - Request duplicada (resposta cached)
73
- - Request durante processamento (409)
74
- - Request com key inválida (400)
75
-
76
- Inclua:
77
- - Código completo e comentado
78
- - Schema de armazenamento
79
- - Exemplos de uso
80
- ```
81
-
82
- ---
83
-
84
- ## Padrões Obrigatórios
85
-
86
- ### Header Padrão
87
-
88
- ```http
89
- POST /api/v1/orders HTTP/1.1
90
- Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000
91
- Content-Type: application/json
92
-
93
- {
94
- "product_id": "123",
95
- "quantity": 1
96
- }
97
- ```
98
-
99
- ### Respostas
100
-
101
- | Cenário | Status Code | Body |
102
- |---------|-------------|------|
103
- | Primeira execução com sucesso | 200/201 | Recurso criado |
104
- | Key já processada com sucesso | 200/201 | Resposta cacheada (idêntica) |
105
- | Key em processamento | 409 Conflict | `{"error": "Request already in progress"}` |
106
- | Key inválida/ausente | 400 Bad Request | `{"error": "Invalid Idempotency-Key"}` |
107
- | Primeira execução com erro | 4xx/5xx | Erro original (cachear também) |
108
-
109
- ### Schema Redis
110
-
111
- ```plaintext
112
- Key: idempotency:{idempotency_key}
113
- TTL: 86400 (24 horas)
114
- Value: {
115
- "status": "PROCESSING" | "COMPLETED" | "FAILED",
116
- "response_code": 201,
117
- "response_body": {...},
118
- "created_at": "2024-01-01T00:00:00Z"
119
- }
120
- ```
121
-
122
- ### Schema SQL (Alternativa)
123
-
124
- ```sql
125
- CREATE TABLE idempotency_keys (
126
- key VARCHAR(36) PRIMARY KEY,
127
- status VARCHAR(20) NOT NULL DEFAULT 'PROCESSING',
128
- response_code INT,
129
- response_body JSONB,
130
- created_at TIMESTAMP DEFAULT NOW(),
131
- updated_at TIMESTAMP DEFAULT NOW()
132
- );
133
-
134
- CREATE INDEX idx_idempotency_created ON idempotency_keys(created_at);
135
-
136
- -- Job para limpar keys antigas (> 24h)
137
- DELETE FROM idempotency_keys WHERE created_at < NOW() - INTERVAL '24 hours';
138
- ```
139
-
140
- ---
141
-
142
- ## Exemplo de Implementação (Node.js + Express + Redis)
143
-
144
- ```typescript
145
- import { Redis } from 'ioredis';
146
- import { Request, Response, NextFunction } from 'express';
147
-
148
- const redis = new Redis();
149
- const TTL_SECONDS = 86400; // 24 horas
150
-
151
- interface IdempotencyRecord {
152
- status: 'PROCESSING' | 'COMPLETED' | 'FAILED';
153
- responseCode?: number;
154
- responseBody?: any;
155
- createdAt: string;
156
- }
157
-
158
- export function idempotent() {
159
- return async (req: Request, res: Response, next: NextFunction) => {
160
- const idempotencyKey = req.headers['idempotency-key'] as string;
161
-
162
- // Validar presença e formato
163
- if (!idempotencyKey) {
164
- return res.status(400).json({ error: 'Idempotency-Key header required' });
165
- }
166
-
167
- const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
168
- if (!uuidRegex.test(idempotencyKey)) {
169
- return res.status(400).json({ error: 'Invalid Idempotency-Key format' });
170
- }
171
-
172
- const redisKey = `idempotency:${idempotencyKey}`;
173
-
174
- // Verificar se já existe
175
- const existing = await redis.get(redisKey);
176
-
177
- if (existing) {
178
- const record: IdempotencyRecord = JSON.parse(existing);
179
-
180
- if (record.status === 'PROCESSING') {
181
- return res.status(409).json({
182
- error: 'Request already in progress',
183
- idempotency_key: idempotencyKey
184
- });
185
- }
186
-
187
- // Retornar resposta cacheada
188
- return res.status(record.responseCode!).json(record.responseBody);
189
- }
190
-
191
- // Marcar como em processamento
192
- const processingRecord: IdempotencyRecord = {
193
- status: 'PROCESSING',
194
- createdAt: new Date().toISOString()
195
- };
196
-
197
- await redis.setex(redisKey, TTL_SECONDS, JSON.stringify(processingRecord));
198
-
199
- // Interceptar a resposta para cachear
200
- const originalJson = res.json.bind(res);
201
- res.json = (body: any) => {
202
- const completedRecord: IdempotencyRecord = {
203
- status: res.statusCode >= 400 ? 'FAILED' : 'COMPLETED',
204
- responseCode: res.statusCode,
205
- responseBody: body,
206
- createdAt: processingRecord.createdAt
207
- };
208
-
209
- redis.setex(redisKey, TTL_SECONDS, JSON.stringify(completedRecord));
210
-
211
- return originalJson(body);
212
- };
213
-
214
- next();
215
- };
216
- }
217
-
218
- // Uso no router
219
- app.post('/api/v1/orders', idempotent(), createOrderHandler);
220
- ```
221
-
222
- ---
223
-
224
- ## Prompt para Revisar Idempotência Existente
225
-
226
- ```text
227
- Tenho este endpoint que realiza operações que não podem ser duplicadas:
228
- [COLE O CÓDIGO DO ENDPOINT]
229
-
230
- Analise:
231
- 1. O endpoint é idempotente? Se não, por quê?
232
- 2. Quais operações podem causar problemas se duplicadas?
233
- 3. Sugira como adicionar idempotência mantendo compatibilidade.
234
- ```
235
-
236
- ---
237
-
238
- ## Checklist de Implementação
239
-
240
- - [ ] Header `Idempotency-Key` definido
241
- - [ ] Validação de formato (UUID v4)
242
- - [ ] Armazenamento de estado configurado (Redis/DB)
243
- - [ ] TTL mínimo de 24 horas
244
- - [ ] Tratamento de requisição em andamento (409)
245
- - [ ] Cache de resposta para requests duplicadas
246
- - [ ] Testes automatizados cobrindo todos os cenários
247
- - [ ] Documentação na OpenAPI/Swagger
248
-
249
- ---
250
-
251
- ## Referências
252
-
253
- - [Stripe - Idempotent Requests](https://stripe.com/docs/api/idempotent_requests)
254
- - [Idempotency Patterns](https://blog.bitsrc.io/design-patterns-for-microservices-idempotency/)
@@ -1,313 +0,0 @@
1
- # Prompt: Versionamento de APIs
2
-
3
- > **Prioridade**: 🟠 ALTA
4
- > **Aplicável a**: APIs públicas, integrações com terceiros, sistemas com múltiplos clientes
5
-
6
- ---
7
-
8
- ## Por que Versionar?
9
-
10
- - **Breaking changes** sem quebrar clientes existentes
11
- - **Deprecação gradual** de funcionalidades
12
- - **Múltiplas versões** em produção simultaneamente
13
- - **Contratos estáveis** para integradores
14
-
15
- ---
16
-
17
- ## Estratégias de Versionamento
18
-
19
- | Estratégia | Exemplo | Prós | Contras |
20
- |------------|---------|------|---------|
21
- | **URL Path** | `/v1/users` | Simples, cache-friendly | Mudança de URL |
22
- | **Query Param** | `/users?version=1` | Fácil de adicionar | Menos RESTful |
23
- | **Header** | `Accept: application/vnd.api.v1+json` | Não polui URL | Menos visível |
24
- | **Content Negotiation** | `Accept: application/vnd.company.v2+json` | Padrão HTTP | Mais complexo |
25
-
26
- ---
27
-
28
- ## Prompt Base: Estratégia de Versionamento
29
-
30
- ```text
31
- Atue como arquiteto de APIs.
32
-
33
- Estou criando uma API com as seguintes características:
34
- - Tipo: [REST/GraphQL]
35
- - Clientes: [internos/externos/públicos]
36
- - Frequência de breaking changes esperada: [alta/média/baixa]
37
- - Suporte simultâneo de versões: [ex. 2 versões, 6 meses]
38
-
39
- Recomende uma estratégia de versionamento considerando:
40
-
41
- 1. **Mecanismo de Versão**
42
- - URL path, header, query param, ou híbrido
43
- - Justificativa para o contexto
44
-
45
- 2. **Política de Deprecação**
46
- - Quanto tempo uma versão é suportada?
47
- - Como comunicar deprecação aos clientes?
48
- - Headers de deprecação
49
-
50
- 3. **O que constitui uma nova versão?**
51
- - Breaking vs non-breaking changes
52
- - Quando incrementar major/minor
53
-
54
- 4. **Implementação**
55
- - Estrutura de código para múltiplas versões
56
- - Como compartilhar lógica entre versões
57
- - Testes por versão
58
-
59
- 5. **Documentação**
60
- - OpenAPI por versão ou unificado?
61
- - Changelog entre versões
62
- ```
63
-
64
- ---
65
-
66
- ## Prompt: Implementar Versionamento
67
-
68
- ```text
69
- Tenho uma API existente que precisa de versionamento:
70
- [COLE ESTRUTURA DE ENDPOINTS ATUAL]
71
-
72
- Stack: [ex. Node.js + Express / Java + Spring]
73
-
74
- Estratégia escolhida: [URL Path / Header / etc]
75
-
76
- Gere:
77
- 1. Middleware/interceptor para roteamento de versões
78
- 2. Estrutura de pastas para organizar versões
79
- 3. Exemplo de endpoint com v1 e v2
80
- 4. Headers de deprecação (Sunset, Deprecation)
81
- 5. Testes para verificar compatibilidade
82
- ```
83
-
84
- ---
85
-
86
- ## Prompt: Migrar de v1 para v2
87
-
88
- ```text
89
- Tenho esta API v1:
90
- [COLE ENDPOINTS E SCHEMAS]
91
-
92
- Preciso criar v2 com estas mudanças:
93
- [DESCREVA BREAKING CHANGES]
94
-
95
- Gere:
96
- 1. API v2 com as mudanças
97
- 2. Estratégia de migração para clientes
98
- 3. Período de dual-support recomendado
99
- 4. Guia de migração para documentação
100
- 5. Headers para comunicar deprecação de v1
101
- ```
102
-
103
- ---
104
-
105
- ## Headers de Deprecação (RFC 8594)
106
-
107
- ```http
108
- HTTP/1.1 200 OK
109
- Deprecation: @1735689600
110
- Sunset: Sat, 01 Jan 2025 00:00:00 GMT
111
- Link: <https://api.example.com/docs/v2>; rel="successor-version"
112
- ```
113
-
114
- | Header | Significado |
115
- |--------|-------------|
116
- | `Deprecation` | Timestamp Unix de quando foi marcado como deprecated |
117
- | `Sunset` | Data após a qual não será mais disponível |
118
- | `Link: rel="successor-version"` | Link para nova versão |
119
-
120
- ---
121
-
122
- ## Exemplo: Versionamento por URL (Node.js + Express)
123
-
124
- ```typescript
125
- // src/app.ts
126
- import express from 'express';
127
- import v1Router from './routes/v1';
128
- import v2Router from './routes/v2';
129
-
130
- const app = express();
131
-
132
- // Versionamento por URL
133
- app.use('/api/v1', v1Router);
134
- app.use('/api/v2', v2Router);
135
-
136
- // Fallback para versão padrão
137
- app.use('/api', (req, res, next) => {
138
- res.redirect(301, `/api/v2${req.path}`);
139
- });
140
- ```
141
-
142
- ```typescript
143
- // src/routes/v1/users.ts
144
- router.get('/', async (req, res) => {
145
- const users = await userService.getAll();
146
-
147
- // v1: resposta com formato antigo
148
- res.json({
149
- data: users.map(u => ({
150
- id: u.id,
151
- name: u.full_name, // v1 usa "name"
152
- email: u.email
153
- }))
154
- });
155
- });
156
- ```
157
-
158
- ```typescript
159
- // src/routes/v2/users.ts
160
- router.get('/', async (req, res) => {
161
- const users = await userService.getAll();
162
-
163
- // v2: resposta com novo formato
164
- res.json({
165
- data: users.map(u => ({
166
- id: u.id,
167
- full_name: u.full_name, // v2 usa "full_name"
168
- email: u.email,
169
- profile: u.profile // v2 adiciona profile
170
- })),
171
- meta: {
172
- total: users.length,
173
- version: 'v2'
174
- }
175
- });
176
- });
177
- ```
178
-
179
- ---
180
-
181
- ## Exemplo: Versionamento por Header
182
-
183
- ```typescript
184
- // src/middleware/versioning.ts
185
- const VERSION_HEADER = 'X-API-Version';
186
- const DEFAULT_VERSION = '2';
187
-
188
- export function versionRouter(req, res, next) {
189
- const version = req.headers[VERSION_HEADER.toLowerCase()] || DEFAULT_VERSION;
190
-
191
- // Anexar versão ao request
192
- req.apiVersion = version;
193
-
194
- // Adicionar headers de resposta
195
- res.setHeader(VERSION_HEADER, version);
196
-
197
- if (version === '1') {
198
- res.setHeader('Deprecation', '@1704067200');
199
- res.setHeader('Sunset', 'Mon, 01 Jul 2024 00:00:00 GMT');
200
- }
201
-
202
- next();
203
- }
204
-
205
- // No controller
206
- export function getUsers(req, res) {
207
- const users = userService.getAll();
208
-
209
- if (req.apiVersion === '1') {
210
- return res.json(formatV1(users));
211
- }
212
-
213
- return res.json(formatV2(users));
214
- }
215
- ```
216
-
217
- ---
218
-
219
- ## Política de Breaking Changes
220
-
221
- ### O que é Breaking Change?
222
-
223
- | Tipo de Mudança | Breaking? | Ação |
224
- |-----------------|-----------|------|
225
- | Remover endpoint | ✅ Sim | Nova versão major |
226
- | Remover campo da resposta | ✅ Sim | Nova versão major |
227
- | Renomear campo | ✅ Sim | Nova versão major |
228
- | Alterar tipo de campo | ✅ Sim | Nova versão major |
229
- | Adicionar campo obrigatório no request | ✅ Sim | Nova versão major |
230
- | Adicionar campo opcional na resposta | ❌ Não | Versão atual |
231
- | Adicionar endpoint | ❌ Não | Versão atual |
232
- | Adicionar campo opcional no request | ❌ Não | Versão atual |
233
-
234
- ### Exemplo de Política
235
-
236
- ```markdown
237
- ## Política de Versionamento - API [NOME]
238
-
239
- ### Versões Suportadas
240
- - Máximo de 2 versões major em produção
241
- - Versão deprecated tem suporte por 6 meses após lançamento da próxima
242
- - Versão sunset é comunicada com 3 meses de antecedência
243
-
244
- ### Comunicação
245
- - Changelog público em /docs/changelog
246
- - Email para clientes cadastrados em mudanças major
247
- - Headers Deprecation e Sunset em respostas
248
-
249
- ### SLA de Deprecação
250
- 1. Anúncio: -6 meses do sunset
251
- 2. Deprecation header: -3 meses do sunset
252
- 3. Sunset: remoção completa
253
- ```
254
-
255
- ---
256
-
257
- ## Documentação Multi-Versão
258
-
259
- ### OpenAPI por Versão
260
-
261
- ```yaml
262
- # openapi-v1.yaml
263
- openapi: 3.0.0
264
- info:
265
- title: API v1 (Deprecated)
266
- version: 1.0.0
267
- x-deprecation-date: 2024-01-01
268
-
269
- # openapi-v2.yaml
270
- openapi: 3.0.0
271
- info:
272
- title: API v2 (Current)
273
- version: 2.0.0
274
- ```
275
-
276
- ### Changelog
277
-
278
- ```markdown
279
- # Changelog
280
-
281
- ## v2.0.0 (2024-01-15)
282
-
283
- ### Breaking Changes
284
- - `GET /users`: Campo `name` renomeado para `full_name`
285
- - `POST /users`: Campo `profile_url` agora é obrigatório
286
-
287
- ### Migração de v1 para v2
288
- 1. Substituir `name` por `full_name` em todas as requisições
289
- 2. Adicionar `profile_url` ao criar usuários
290
-
291
- ## v1.0.0 (2023-06-01)
292
- - Release inicial
293
- ```
294
-
295
- ---
296
-
297
- ## Checklist
298
-
299
- - [ ] Estratégia de versionamento definida e documentada
300
- - [ ] Política de breaking changes clara
301
- - [ ] Headers de deprecação implementados
302
- - [ ] Documentação separada por versão
303
- - [ ] Changelog atualizado
304
- - [ ] Testes para todas as versões ativas
305
- - [ ] Roteamento de versões testado
306
-
307
- ---
308
-
309
- ## Referências
310
-
311
- - [RFC 8594 - The Sunset HTTP Header](https://tools.ietf.org/html/rfc8594)
312
- - [API Versioning Best Practices](https://www.mnot.net/blog/2012/12/04/api-evolution)
313
- - [Stripe API Versioning](https://stripe.com/docs/api/versioning)