theus-cli 0.2.82 → 0.2.84

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 (738) hide show
  1. package/README.md +5 -3
  2. package/bin/theus.js +101 -0
  3. package/package.json +14 -121
  4. package/assets/brand-official/v1.0/logo/theus-lockup-negative-official.png +0 -0
  5. package/assets/brand-official/v1.0/logo/theus-lockup-primary-dark-official.png +0 -0
  6. package/assets/fonts/satoshi/satoshi-300.woff2 +0 -0
  7. package/assets/fonts/satoshi/satoshi-400.woff2 +0 -0
  8. package/assets/fonts/satoshi/satoshi-500.woff2 +0 -0
  9. package/assets/fonts/satoshi/satoshi-700.woff2 +0 -0
  10. package/assets/fonts/satoshi/satoshi-900.woff2 +0 -0
  11. package/bin/theus +0 -30
  12. package/cli.js +0 -508127
  13. package/vendor/theus-arsenal/.arsenal-nombres-ola2.json +0 -6
  14. package/vendor/theus-arsenal/.arsenal-nombres-ola3.json +0 -72
  15. package/vendor/theus-arsenal/.mailmap +0 -2
  16. package/vendor/theus-arsenal/.theus-plugin/marketplace.json +0 -25
  17. package/vendor/theus-arsenal/.theus-plugin/plugin.json +0 -20
  18. package/vendor/theus-arsenal/AUTHORS.md +0 -8
  19. package/vendor/theus-arsenal/CLEANROOM_REPLACEMENT_PLAN.md +0 -11
  20. package/vendor/theus-arsenal/LICENSE +0 -26
  21. package/vendor/theus-arsenal/PROVENANCE.md +0 -9
  22. package/vendor/theus-arsenal/README.md +0 -41
  23. package/vendor/theus-arsenal/THIRD_PARTY.md +0 -80
  24. package/vendor/theus-arsenal/agents/actualizador-docs.md +0 -123
  25. package/vendor/theus-arsenal/agents/analista-comentarios.md +0 -53
  26. package/vendor/theus-arsenal/agents/analista-conversaciones.md +0 -60
  27. package/vendor/theus-arsenal/agents/analista-tests-pr.md +0 -53
  28. package/vendor/theus-arsenal/agents/analista-tipos.md +0 -49
  29. package/vendor/theus-arsenal/agents/arquitecto-accesibilidad.md +0 -148
  30. package/vendor/theus-arsenal/agents/arquitecto-codigo.md +0 -79
  31. package/vendor/theus-arsenal/agents/arquitecto-homelab.md +0 -90
  32. package/vendor/theus-arsenal/agents/arquitecto-redes.md +0 -116
  33. package/vendor/theus-arsenal/agents/arquitecto-sistemas.md +0 -219
  34. package/vendor/theus-arsenal/agents/bifurcador-opensource.md +0 -206
  35. package/vendor/theus-arsenal/agents/cazador-fallos-silenciosos.md +0 -58
  36. package/vendor/theus-arsenal/agents/consultor-documentacion.md +0 -76
  37. package/vendor/theus-arsenal/agents/diagnosticador-redes.md +0 -135
  38. package/vendor/theus-arsenal/agents/ejecutor-e2e.md +0 -96
  39. package/vendor/theus-arsenal/agents/empaquetador-opensource.md +0 -257
  40. package/vendor/theus-arsenal/agents/escaner-secretos.md +0 -196
  41. package/vendor/theus-arsenal/agents/especialista-seo.md +0 -70
  42. package/vendor/theus-arsenal/agents/estratega-marketing.md +0 -158
  43. package/vendor/theus-arsenal/agents/evaluador-agentes.md +0 -214
  44. package/vendor/theus-arsenal/agents/evaluador-harness.md +0 -217
  45. package/vendor/theus-arsenal/agents/explorador-codigo.md +0 -79
  46. package/vendor/theus-arsenal/agents/extractor-specs.md +0 -214
  47. package/vendor/theus-arsenal/agents/generador-harness.md +0 -139
  48. package/vendor/theus-arsenal/agents/guia-tdd.md +0 -99
  49. package/vendor/theus-arsenal/agents/jefe-de-gabinete.md +0 -162
  50. package/vendor/theus-arsenal/agents/limpiador-refactors.md +0 -93
  51. package/vendor/theus-arsenal/agents/optimizador-rendimiento.md +0 -454
  52. package/vendor/theus-arsenal/agents/planificador-harness.md +0 -107
  53. package/vendor/theus-arsenal/agents/planificador.md +0 -221
  54. package/vendor/theus-arsenal/agents/resolutor-apps-harmonyos.md +0 -181
  55. package/vendor/theus-arsenal/agents/resolutor-builds-cpp.md +0 -98
  56. package/vendor/theus-arsenal/agents/resolutor-builds-dart.md +0 -209
  57. package/vendor/theus-arsenal/agents/resolutor-builds-django.md +0 -253
  58. package/vendor/theus-arsenal/agents/resolutor-builds-go.md +0 -102
  59. package/vendor/theus-arsenal/agents/resolutor-builds-java.md +0 -274
  60. package/vendor/theus-arsenal/agents/resolutor-builds-kotlin.md +0 -128
  61. package/vendor/theus-arsenal/agents/resolutor-builds-pytorch.md +0 -128
  62. package/vendor/theus-arsenal/agents/resolutor-builds-react.md +0 -214
  63. package/vendor/theus-arsenal/agents/resolutor-builds-rust.md +0 -156
  64. package/vendor/theus-arsenal/agents/resolutor-builds-swift.md +0 -169
  65. package/vendor/theus-arsenal/agents/resolutor-builds.md +0 -122
  66. package/vendor/theus-arsenal/agents/revisor-bd.md +0 -97
  67. package/vendor/theus-arsenal/agents/revisor-codigo.md +0 -291
  68. package/vendor/theus-arsenal/agents/revisor-config-red.md +0 -116
  69. package/vendor/theus-arsenal/agents/revisor-cpp.md +0 -80
  70. package/vendor/theus-arsenal/agents/revisor-csharp.md +0 -109
  71. package/vendor/theus-arsenal/agents/revisor-django.md +0 -168
  72. package/vendor/theus-arsenal/agents/revisor-fastapi.md +0 -82
  73. package/vendor/theus-arsenal/agents/revisor-flutter.md +0 -251
  74. package/vendor/theus-arsenal/agents/revisor-go.md +0 -84
  75. package/vendor/theus-arsenal/agents/revisor-java.md +0 -192
  76. package/vendor/theus-arsenal/agents/revisor-kotlin.md +0 -171
  77. package/vendor/theus-arsenal/agents/revisor-ml.md +0 -159
  78. package/vendor/theus-arsenal/agents/revisor-php.md +0 -108
  79. package/vendor/theus-arsenal/agents/revisor-python.md +0 -106
  80. package/vendor/theus-arsenal/agents/revisor-react.md +0 -166
  81. package/vendor/theus-arsenal/agents/revisor-rust.md +0 -102
  82. package/vendor/theus-arsenal/agents/revisor-seguridad.md +0 -116
  83. package/vendor/theus-arsenal/agents/revisor-software-clinico.md +0 -95
  84. package/vendor/theus-arsenal/agents/revisor-swift.md +0 -115
  85. package/vendor/theus-arsenal/agents/revisor-typescript.md +0 -123
  86. package/vendor/theus-arsenal/agents/revisor-vue.md +0 -205
  87. package/vendor/theus-arsenal/agents/simplificador-codigo.md +0 -55
  88. package/vendor/theus-arsenal/commands/actualizar-docs.md +0 -88
  89. package/vendor/theus-arsenal/commands/actualizar-mapas-codigo.md +0 -78
  90. package/vendor/theus-arsenal/commands/aprender-evaluar.md +0 -109
  91. package/vendor/theus-arsenal/commands/aprender.md +0 -74
  92. package/vendor/theus-arsenal/commands/arreglar-build.md +0 -66
  93. package/vendor/theus-arsenal/commands/bucle-multiperspectiva.md +0 -153
  94. package/vendor/theus-arsenal/commands/build-cpp.md +0 -173
  95. package/vendor/theus-arsenal/commands/build-flutter.md +0 -164
  96. package/vendor/theus-arsenal/commands/build-go.md +0 -183
  97. package/vendor/theus-arsenal/commands/build-gradle.md +0 -75
  98. package/vendor/theus-arsenal/commands/build-kotlin.md +0 -176
  99. package/vendor/theus-arsenal/commands/build-react.md +0 -187
  100. package/vendor/theus-arsenal/commands/build-rust.md +0 -187
  101. package/vendor/theus-arsenal/commands/campana-marketing.md +0 -125
  102. package/vendor/theus-arsenal/commands/checkpoint.md +0 -78
  103. package/vendor/theus-arsenal/commands/cobertura-tests.md +0 -73
  104. package/vendor/theus-arsenal/commands/configurar-gestor-paquetes.md +0 -86
  105. package/vendor/theus-arsenal/commands/consulta.md +0 -164
  106. package/vendor/theus-arsenal/commands/control-calidad.md +0 -50
  107. package/vendor/theus-arsenal/commands/crear-skill.md +0 -77
  108. package/vendor/theus-arsenal/commands/enrutar-modelo.md +0 -30
  109. package/vendor/theus-arsenal/commands/epica-desbloquear.md +0 -17
  110. package/vendor/theus-arsenal/commands/epica-descomponer.md +0 -22
  111. package/vendor/theus-arsenal/commands/epica-publicar.md +0 -21
  112. package/vendor/theus-arsenal/commands/epica-reclamar.md +0 -25
  113. package/vendor/theus-arsenal/commands/epica-revisar.md +0 -22
  114. package/vendor/theus-arsenal/commands/epica-sincronizar.md +0 -21
  115. package/vendor/theus-arsenal/commands/epica-validar.md +0 -21
  116. package/vendor/theus-arsenal/commands/evolucionar.md +0 -176
  117. package/vendor/theus-arsenal/commands/funcionalidad.md +0 -49
  118. package/vendor/theus-arsenal/commands/guardar-sesion.md +0 -278
  119. package/vendor/theus-arsenal/commands/harness-build.md +0 -111
  120. package/vendor/theus-arsenal/commands/harness-diseno.md +0 -46
  121. package/vendor/theus-arsenal/commands/informe-costos.md +0 -90
  122. package/vendor/theus-arsenal/commands/iniciar-bucle.md +0 -36
  123. package/vendor/theus-arsenal/commands/instintos-estado.md +0 -53
  124. package/vendor/theus-arsenal/commands/instintos-exportar.md +0 -69
  125. package/vendor/theus-arsenal/commands/instintos-importar.md +0 -120
  126. package/vendor/theus-arsenal/commands/lienzo-planes.md +0 -48
  127. package/vendor/theus-arsenal/commands/limpiar-refactor.md +0 -84
  128. package/vendor/theus-arsenal/commands/modo-seguro.md +0 -96
  129. package/vendor/theus-arsenal/commands/orq-agregar-funcionalidad.md +0 -36
  130. package/vendor/theus-arsenal/commands/orq-cambiar-funcionalidad.md +0 -38
  131. package/vendor/theus-arsenal/commands/orq-construir-mvp.md +0 -36
  132. package/vendor/theus-arsenal/commands/orq-corregir-defecto.md +0 -40
  133. package/vendor/theus-arsenal/commands/orq-refinar-codigo.md +0 -44
  134. package/vendor/theus-arsenal/commands/orq-revisar.md +0 -135
  135. package/vendor/theus-arsenal/commands/plan-prd.md +0 -160
  136. package/vendor/theus-arsenal/commands/plan.md +0 -198
  137. package/vendor/theus-arsenal/commands/podar.md +0 -31
  138. package/vendor/theus-arsenal/commands/pr.md +0 -181
  139. package/vendor/theus-arsenal/commands/promover.md +0 -41
  140. package/vendor/theus-arsenal/commands/proyectos.md +0 -33
  141. package/vendor/theus-arsenal/commands/prp-commit.md +0 -112
  142. package/vendor/theus-arsenal/commands/prp-implementar.md +0 -385
  143. package/vendor/theus-arsenal/commands/prp-planificar.md +0 -501
  144. package/vendor/theus-arsenal/commands/reanudar-sesion.md +0 -160
  145. package/vendor/theus-arsenal/commands/revisar-codigo.md +0 -289
  146. package/vendor/theus-arsenal/commands/revisar-cpp.md +0 -132
  147. package/vendor/theus-arsenal/commands/revisar-fastapi.md +0 -39
  148. package/vendor/theus-arsenal/commands/revisar-flutter.md +0 -115
  149. package/vendor/theus-arsenal/commands/revisar-go.md +0 -148
  150. package/vendor/theus-arsenal/commands/revisar-kotlin.md +0 -140
  151. package/vendor/theus-arsenal/commands/revisar-pr.md +0 -37
  152. package/vendor/theus-arsenal/commands/revisar-python.md +0 -297
  153. package/vendor/theus-arsenal/commands/revisar-react.md +0 -170
  154. package/vendor/theus-arsenal/commands/revisar-rust.md +0 -142
  155. package/vendor/theus-arsenal/commands/revisar-vue.md +0 -174
  156. package/vendor/theus-arsenal/commands/salud-skills.md +0 -52
  157. package/vendor/theus-arsenal/commands/sesiones.md +0 -345
  158. package/vendor/theus-arsenal/commands/test-cpp.md +0 -252
  159. package/vendor/theus-arsenal/commands/test-flutter.md +0 -143
  160. package/vendor/theus-arsenal/commands/test-go.md +0 -268
  161. package/vendor/theus-arsenal/commands/test-kotlin.md +0 -312
  162. package/vendor/theus-arsenal/commands/test-react.md +0 -265
  163. package/vendor/theus-arsenal/commands/test-rust.md +0 -309
  164. package/vendor/theus-arsenal/commands/vigilancia-canary.md +0 -43
  165. package/vendor/theus-arsenal/hooks/hooks.json +0 -274
  166. package/vendor/theus-arsenal/package.json +0 -6
  167. package/vendor/theus-arsenal/rules/angular/coding-style.md +0 -182
  168. package/vendor/theus-arsenal/rules/angular/hooks.md +0 -25
  169. package/vendor/theus-arsenal/rules/angular/patterns.md +0 -249
  170. package/vendor/theus-arsenal/rules/angular/security.md +0 -87
  171. package/vendor/theus-arsenal/rules/angular/testing.md +0 -164
  172. package/vendor/theus-arsenal/rules/arkts/coding-style.md +0 -153
  173. package/vendor/theus-arsenal/rules/arkts/hooks.md +0 -80
  174. package/vendor/theus-arsenal/rules/arkts/patterns.md +0 -236
  175. package/vendor/theus-arsenal/rules/arkts/security.md +0 -141
  176. package/vendor/theus-arsenal/rules/arkts/testing.md +0 -126
  177. package/vendor/theus-arsenal/rules/common/agents.md +0 -49
  178. package/vendor/theus-arsenal/rules/common/code-review.md +0 -123
  179. package/vendor/theus-arsenal/rules/common/coding-style.md +0 -90
  180. package/vendor/theus-arsenal/rules/common/development-workflow.md +0 -44
  181. package/vendor/theus-arsenal/rules/common/git-workflow.md +0 -24
  182. package/vendor/theus-arsenal/rules/common/hooks.md +0 -32
  183. package/vendor/theus-arsenal/rules/common/patterns.md +0 -31
  184. package/vendor/theus-arsenal/rules/common/performance.md +0 -53
  185. package/vendor/theus-arsenal/rules/common/security.md +0 -29
  186. package/vendor/theus-arsenal/rules/common/testing.md +0 -57
  187. package/vendor/theus-arsenal/rules/cpp/coding-style.md +0 -44
  188. package/vendor/theus-arsenal/rules/cpp/hooks.md +0 -39
  189. package/vendor/theus-arsenal/rules/cpp/patterns.md +0 -51
  190. package/vendor/theus-arsenal/rules/cpp/security.md +0 -51
  191. package/vendor/theus-arsenal/rules/cpp/testing.md +0 -44
  192. package/vendor/theus-arsenal/rules/csharp/coding-style.md +0 -72
  193. package/vendor/theus-arsenal/rules/csharp/hooks.md +0 -25
  194. package/vendor/theus-arsenal/rules/csharp/patterns.md +0 -50
  195. package/vendor/theus-arsenal/rules/csharp/security.md +0 -58
  196. package/vendor/theus-arsenal/rules/csharp/testing.md +0 -50
  197. package/vendor/theus-arsenal/rules/dart/coding-style.md +0 -159
  198. package/vendor/theus-arsenal/rules/dart/hooks.md +0 -68
  199. package/vendor/theus-arsenal/rules/dart/patterns.md +0 -261
  200. package/vendor/theus-arsenal/rules/dart/security.md +0 -135
  201. package/vendor/theus-arsenal/rules/dart/testing.md +0 -215
  202. package/vendor/theus-arsenal/rules/fsharp/coding-style.md +0 -112
  203. package/vendor/theus-arsenal/rules/fsharp/hooks.md +0 -26
  204. package/vendor/theus-arsenal/rules/fsharp/patterns.md +0 -111
  205. package/vendor/theus-arsenal/rules/fsharp/security.md +0 -76
  206. package/vendor/theus-arsenal/rules/fsharp/testing.md +0 -62
  207. package/vendor/theus-arsenal/rules/golang/coding-style.md +0 -32
  208. package/vendor/theus-arsenal/rules/golang/hooks.md +0 -17
  209. package/vendor/theus-arsenal/rules/golang/patterns.md +0 -45
  210. package/vendor/theus-arsenal/rules/golang/security.md +0 -34
  211. package/vendor/theus-arsenal/rules/golang/testing.md +0 -31
  212. package/vendor/theus-arsenal/rules/java/coding-style.md +0 -114
  213. package/vendor/theus-arsenal/rules/java/hooks.md +0 -18
  214. package/vendor/theus-arsenal/rules/java/patterns.md +0 -147
  215. package/vendor/theus-arsenal/rules/java/security.md +0 -101
  216. package/vendor/theus-arsenal/rules/java/testing.md +0 -133
  217. package/vendor/theus-arsenal/rules/kotlin/coding-style.md +0 -86
  218. package/vendor/theus-arsenal/rules/kotlin/hooks.md +0 -17
  219. package/vendor/theus-arsenal/rules/kotlin/patterns.md +0 -146
  220. package/vendor/theus-arsenal/rules/kotlin/security.md +0 -82
  221. package/vendor/theus-arsenal/rules/kotlin/testing.md +0 -128
  222. package/vendor/theus-arsenal/rules/nuxt/coding-style.md +0 -47
  223. package/vendor/theus-arsenal/rules/nuxt/hooks.md +0 -39
  224. package/vendor/theus-arsenal/rules/nuxt/patterns.md +0 -54
  225. package/vendor/theus-arsenal/rules/nuxt/security.md +0 -48
  226. package/vendor/theus-arsenal/rules/nuxt/testing.md +0 -49
  227. package/vendor/theus-arsenal/rules/php/coding-style.md +0 -40
  228. package/vendor/theus-arsenal/rules/php/hooks.md +0 -24
  229. package/vendor/theus-arsenal/rules/php/patterns.md +0 -33
  230. package/vendor/theus-arsenal/rules/php/security.md +0 -37
  231. package/vendor/theus-arsenal/rules/php/testing.md +0 -38
  232. package/vendor/theus-arsenal/rules/python/coding-style.md +0 -42
  233. package/vendor/theus-arsenal/rules/python/fastapi.md +0 -58
  234. package/vendor/theus-arsenal/rules/python/hooks.md +0 -19
  235. package/vendor/theus-arsenal/rules/python/patterns.md +0 -39
  236. package/vendor/theus-arsenal/rules/python/security.md +0 -30
  237. package/vendor/theus-arsenal/rules/python/testing.md +0 -38
  238. package/vendor/theus-arsenal/rules/react/coding-style.md +0 -109
  239. package/vendor/theus-arsenal/rules/react/hooks.md +0 -187
  240. package/vendor/theus-arsenal/rules/react/patterns.md +0 -194
  241. package/vendor/theus-arsenal/rules/react/security.md +0 -180
  242. package/vendor/theus-arsenal/rules/react/testing.md +0 -208
  243. package/vendor/theus-arsenal/rules/react-native/accessibility.md +0 -55
  244. package/vendor/theus-arsenal/rules/react-native/coding-style.md +0 -71
  245. package/vendor/theus-arsenal/rules/react-native/hooks.md +0 -28
  246. package/vendor/theus-arsenal/rules/react-native/patterns.md +0 -88
  247. package/vendor/theus-arsenal/rules/react-native/performance.md +0 -45
  248. package/vendor/theus-arsenal/rules/react-native/production-readiness.md +0 -51
  249. package/vendor/theus-arsenal/rules/react-native/security.md +0 -43
  250. package/vendor/theus-arsenal/rules/react-native/testing.md +0 -52
  251. package/vendor/theus-arsenal/rules/ruby/coding-style.md +0 -46
  252. package/vendor/theus-arsenal/rules/ruby/hooks.md +0 -37
  253. package/vendor/theus-arsenal/rules/ruby/patterns.md +0 -44
  254. package/vendor/theus-arsenal/rules/ruby/security.md +0 -51
  255. package/vendor/theus-arsenal/rules/ruby/testing.md +0 -51
  256. package/vendor/theus-arsenal/rules/rust/coding-style.md +0 -151
  257. package/vendor/theus-arsenal/rules/rust/hooks.md +0 -16
  258. package/vendor/theus-arsenal/rules/rust/patterns.md +0 -168
  259. package/vendor/theus-arsenal/rules/rust/security.md +0 -141
  260. package/vendor/theus-arsenal/rules/rust/testing.md +0 -154
  261. package/vendor/theus-arsenal/rules/swift/coding-style.md +0 -47
  262. package/vendor/theus-arsenal/rules/swift/hooks.md +0 -20
  263. package/vendor/theus-arsenal/rules/swift/patterns.md +0 -66
  264. package/vendor/theus-arsenal/rules/swift/security.md +0 -33
  265. package/vendor/theus-arsenal/rules/swift/testing.md +0 -45
  266. package/vendor/theus-arsenal/rules/typescript/coding-style.md +0 -199
  267. package/vendor/theus-arsenal/rules/typescript/hooks.md +0 -22
  268. package/vendor/theus-arsenal/rules/typescript/patterns.md +0 -52
  269. package/vendor/theus-arsenal/rules/typescript/security.md +0 -28
  270. package/vendor/theus-arsenal/rules/typescript/testing.md +0 -18
  271. package/vendor/theus-arsenal/rules/vue/coding-style.md +0 -54
  272. package/vendor/theus-arsenal/rules/vue/hooks.md +0 -45
  273. package/vendor/theus-arsenal/rules/vue/patterns.md +0 -56
  274. package/vendor/theus-arsenal/rules/vue/security.md +0 -46
  275. package/vendor/theus-arsenal/rules/vue/testing.md +0 -53
  276. package/vendor/theus-arsenal/rules/web/coding-style.md +0 -108
  277. package/vendor/theus-arsenal/rules/web/design-quality.md +0 -75
  278. package/vendor/theus-arsenal/rules/web/hooks.md +0 -141
  279. package/vendor/theus-arsenal/rules/web/patterns.md +0 -91
  280. package/vendor/theus-arsenal/rules/web/performance.md +0 -76
  281. package/vendor/theus-arsenal/rules/web/security.md +0 -69
  282. package/vendor/theus-arsenal/rules/web/testing.md +0 -67
  283. package/vendor/theus-arsenal/scripts/hooks/bash-hook-dispatcher.js +0 -192
  284. package/vendor/theus-arsenal/scripts/hooks/block-no-verify.js +0 -556
  285. package/vendor/theus-arsenal/scripts/hooks/check-console-log.js +0 -92
  286. package/vendor/theus-arsenal/scripts/hooks/check-hook-enabled.js +0 -16
  287. package/vendor/theus-arsenal/scripts/hooks/config-protection.js +0 -171
  288. package/vendor/theus-arsenal/scripts/hooks/design-quality-check.js +0 -132
  289. package/vendor/theus-arsenal/scripts/hooks/doc-file-warning.js +0 -110
  290. package/vendor/theus-arsenal/scripts/hooks/modo-seguro.js +0 -158
  291. package/vendor/theus-arsenal/scripts/hooks/notificacion-escritorio.js +0 -208
  292. package/vendor/theus-arsenal/scripts/hooks/plugin-hook-bootstrap.js +0 -280
  293. package/vendor/theus-arsenal/scripts/hooks/post-bash-command-log.js +0 -87
  294. package/vendor/theus-arsenal/scripts/hooks/post-bash-dispatcher.js +0 -24
  295. package/vendor/theus-arsenal/scripts/hooks/post-bash-pr-created.js +0 -60
  296. package/vendor/theus-arsenal/scripts/hooks/post-edit-accumulator.js +0 -94
  297. package/vendor/theus-arsenal/scripts/hooks/post-edit-console-warn.js +0 -54
  298. package/vendor/theus-arsenal/scripts/hooks/post-edit-format.js +0 -110
  299. package/vendor/theus-arsenal/scripts/hooks/post-edit-typecheck.js +0 -98
  300. package/vendor/theus-arsenal/scripts/hooks/pre-bash-commit-quality.js +0 -447
  301. package/vendor/theus-arsenal/scripts/hooks/pre-bash-dev-server-block.js +0 -232
  302. package/vendor/theus-arsenal/scripts/hooks/pre-bash-dispatcher.js +0 -27
  303. package/vendor/theus-arsenal/scripts/hooks/pre-compact.js +0 -101
  304. package/vendor/theus-arsenal/scripts/hooks/pretooluse-visible-output.js +0 -49
  305. package/vendor/theus-arsenal/scripts/hooks/quality-gate.js +0 -168
  306. package/vendor/theus-arsenal/scripts/hooks/run-with-flags.js +0 -271
  307. package/vendor/theus-arsenal/scripts/hooks/salud-mcp.js +0 -749
  308. package/vendor/theus-arsenal/scripts/hooks/seguimiento-costos.js +0 -161
  309. package/vendor/theus-arsenal/scripts/hooks/session-end.js +0 -340
  310. package/vendor/theus-arsenal/scripts/hooks/session-start.js +0 -906
  311. package/vendor/theus-arsenal/scripts/hooks/stop-format-typecheck.js +0 -263
  312. package/vendor/theus-arsenal/scripts/hooks/suggest-compact.js +0 -286
  313. package/vendor/theus-arsenal/scripts/hooks/theus-context-monitor.js +0 -289
  314. package/vendor/theus-arsenal/scripts/hooks/verificacion-factual.js +0 -1278
  315. package/vendor/theus-arsenal/scripts/lib/agent-data-home.js +0 -96
  316. package/vendor/theus-arsenal/scripts/lib/cost-estimate.js +0 -66
  317. package/vendor/theus-arsenal/scripts/lib/hook-flags.js +0 -79
  318. package/vendor/theus-arsenal/scripts/lib/llm-summary.js +0 -185
  319. package/vendor/theus-arsenal/scripts/lib/loopback-guard.js +0 -54
  320. package/vendor/theus-arsenal/scripts/lib/observer-sessions.js +0 -237
  321. package/vendor/theus-arsenal/scripts/lib/package-manager.d.ts +0 -120
  322. package/vendor/theus-arsenal/scripts/lib/package-manager.js +0 -434
  323. package/vendor/theus-arsenal/scripts/lib/path-safety.js +0 -86
  324. package/vendor/theus-arsenal/scripts/lib/plan-canvas/markdown.js +0 -285
  325. package/vendor/theus-arsenal/scripts/lib/plan-canvas/sdk.js +0 -238
  326. package/vendor/theus-arsenal/scripts/lib/plan-canvas/server.js +0 -534
  327. package/vendor/theus-arsenal/scripts/lib/plan-canvas/sessions.js +0 -274
  328. package/vendor/theus-arsenal/scripts/lib/plan-canvas/ui.js +0 -546
  329. package/vendor/theus-arsenal/scripts/lib/project-detect.js +0 -451
  330. package/vendor/theus-arsenal/scripts/lib/resolve-formatter.js +0 -193
  331. package/vendor/theus-arsenal/scripts/lib/resolve-theus-root.js +0 -101
  332. package/vendor/theus-arsenal/scripts/lib/session-aliases.d.ts +0 -138
  333. package/vendor/theus-arsenal/scripts/lib/session-aliases.js +0 -483
  334. package/vendor/theus-arsenal/scripts/lib/session-bridge.js +0 -155
  335. package/vendor/theus-arsenal/scripts/lib/session-manager.d.ts +0 -137
  336. package/vendor/theus-arsenal/scripts/lib/session-manager.js +0 -555
  337. package/vendor/theus-arsenal/scripts/lib/shell-split.js +0 -86
  338. package/vendor/theus-arsenal/scripts/lib/shell-substitution.js +0 -501
  339. package/vendor/theus-arsenal/scripts/lib/skill-evolution/dashboard.js +0 -414
  340. package/vendor/theus-arsenal/scripts/lib/skill-evolution/health.js +0 -285
  341. package/vendor/theus-arsenal/scripts/lib/skill-evolution/index.js +0 -22
  342. package/vendor/theus-arsenal/scripts/lib/skill-evolution/provenance.js +0 -200
  343. package/vendor/theus-arsenal/scripts/lib/skill-evolution/tracker.js +0 -157
  344. package/vendor/theus-arsenal/scripts/lib/skill-evolution/versioning.js +0 -246
  345. package/vendor/theus-arsenal/scripts/lib/transcript-context.js +0 -232
  346. package/vendor/theus-arsenal/scripts/lib/utils.d.ts +0 -205
  347. package/vendor/theus-arsenal/scripts/lib/utils.js +0 -658
  348. package/vendor/theus-arsenal/scripts/plan-canvas.js +0 -341
  349. package/vendor/theus-arsenal/scripts/setup-package-manager.js +0 -46
  350. package/vendor/theus-arsenal/scripts/skills-health.js +0 -143
  351. package/vendor/theus-arsenal/skills/a11y-frontend/SKILL.md +0 -444
  352. package/vendor/theus-arsenal/skills/accesibilidad/SKILL.md +0 -144
  353. package/vendor/theus-arsenal/skills/acelerador-throughput-datos/SKILL.md +0 -72
  354. package/vendor/theus-arsenal/skills/agente-scraper-datos/SKILL.md +0 -771
  355. package/vendor/theus-arsenal/skills/analisis-plataformas-competencia/SKILL.md +0 -137
  356. package/vendor/theus-arsenal/skills/api-x/SKILL.md +0 -233
  357. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/SKILL.md +0 -335
  358. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/agents/observer-loop.sh +0 -374
  359. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/agents/observer.md +0 -188
  360. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/agents/session-guardian.sh +0 -153
  361. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/agents/start-observer.sh +0 -253
  362. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/config.json +0 -8
  363. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/hooks/observe.sh +0 -594
  364. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/scripts/detect-project.sh +0 -325
  365. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/scripts/instinct-cli.py +0 -1918
  366. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/scripts/lib/arsenal-dir.sh +0 -23
  367. package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/scripts/test_parse_instinct.py +0 -1420
  368. package/vendor/theus-arsenal/skills/arquitectura-hexagonal/SKILL.md +0 -275
  369. package/vendor/theus-arsenal/skills/arquitectura-limpia-android/SKILL.md +0 -340
  370. package/vendor/theus-arsenal/skills/arquitectura-pipelines-recomendacion/SKILL.md +0 -112
  371. package/vendor/theus-arsenal/skills/atlas-datos-prediccion/SKILL.md +0 -53
  372. package/vendor/theus-arsenal/skills/auditoria-arquitectura-agentes/SKILL.md +0 -257
  373. package/vendor/theus-arsenal/skills/auditoria-produccion/SKILL.md +0 -180
  374. package/vendor/theus-arsenal/skills/auditoria-rutas-clic/SKILL.md +0 -243
  375. package/vendor/theus-arsenal/skills/autoevaluacion-agente/SKILL.md +0 -180
  376. package/vendor/theus-arsenal/skills/autoevaluacion-agente/examples/high-score-example.md +0 -89
  377. package/vendor/theus-arsenal/skills/autoevaluacion-agente/examples/low-score-example.md +0 -87
  378. package/vendor/theus-arsenal/skills/autoevaluacion-agente/references/evaluation-criteria.md +0 -71
  379. package/vendor/theus-arsenal/skills/autoevaluacion-agente/references/hook-integration.md +0 -90
  380. package/vendor/theus-arsenal/skills/autoevaluacion-agente/scripts/evaluate.py +0 -409
  381. package/vendor/theus-arsenal/skills/autoevaluacion-agente/templates/evaluation-report.md +0 -86
  382. package/vendor/theus-arsenal/skills/automatizacion-ssh-netmiko/SKILL.md +0 -176
  383. package/vendor/theus-arsenal/skills/base-datos-pubmed/SKILL.md +0 -174
  384. package/vendor/theus-arsenal/skills/base-datos-uspto/SKILL.md +0 -173
  385. package/vendor/theus-arsenal/skills/benchmark/SKILL.md +0 -92
  386. package/vendor/theus-arsenal/skills/bitacora-crecimiento/SKILL.md +0 -120
  387. package/vendor/theus-arsenal/skills/bucle-verificacion/SKILL.md +0 -125
  388. package/vendor/theus-arsenal/skills/buscar-primero/SKILL.md +0 -184
  389. package/vendor/theus-arsenal/skills/busqueda-exa/SKILL.md +0 -111
  390. package/vendor/theus-arsenal/skills/cache-por-hash/SKILL.md +0 -160
  391. package/vendor/theus-arsenal/skills/campana-marketing/SKILL.md +0 -118
  392. package/vendor/theus-arsenal/skills/capacidad-producto/SKILL.md +0 -138
  393. package/vendor/theus-arsenal/skills/cazador-vulnerabilidades/SKILL.md +0 -104
  394. package/vendor/theus-arsenal/skills/compactacion-estrategica/SKILL.md +0 -115
  395. package/vendor/theus-arsenal/skills/comparador-baskets-prediccion/SKILL.md +0 -69
  396. package/vendor/theus-arsenal/skills/compras-energia/SKILL.md +0 -206
  397. package/vendor/theus-arsenal/skills/concurrencia-swift-6-2/SKILL.md +0 -224
  398. package/vendor/theus-arsenal/skills/consejo/SKILL.md +0 -201
  399. package/vendor/theus-arsenal/skills/construccion-harness-agentes/SKILL.md +0 -78
  400. package/vendor/theus-arsenal/skills/constructor-conectores/SKILL.md +0 -119
  401. package/vendor/theus-arsenal/skills/constructor-equipos/SKILL.md +0 -169
  402. package/vendor/theus-arsenal/skills/consulta-documentacion/SKILL.md +0 -92
  403. package/vendor/theus-arsenal/skills/consultas-genomicas-gget/SKILL.md +0 -170
  404. package/vendor/theus-arsenal/skills/contacto-inversores/SKILL.md +0 -95
  405. package/vendor/theus-arsenal/skills/corrutinas-flows-kotlin/SKILL.md +0 -284
  406. package/vendor/theus-arsenal/skills/creacion-video-remotion/SKILL.md +0 -46
  407. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/3d.md +0 -86
  408. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/animations.md +0 -29
  409. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/assets/charts-bar-chart.tsx +0 -173
  410. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/assets/text-animations-typewriter.tsx +0 -100
  411. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/assets/text-animations-word-highlight.tsx +0 -108
  412. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/assets.md +0 -78
  413. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/audio.md +0 -172
  414. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/calculate-metadata.md +0 -104
  415. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/can-decode.md +0 -75
  416. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/charts.md +0 -58
  417. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/compositions.md +0 -146
  418. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/display-captions.md +0 -126
  419. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/extract-frames.md +0 -229
  420. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/fonts.md +0 -152
  421. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/get-audio-duration.md +0 -58
  422. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/get-video-dimensions.md +0 -68
  423. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/get-video-duration.md +0 -58
  424. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/gifs.md +0 -138
  425. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/images.md +0 -130
  426. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/import-srt-captions.md +0 -67
  427. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/lottie.md +0 -67
  428. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/measuring-dom-nodes.md +0 -34
  429. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/measuring-text.md +0 -143
  430. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/sequencing.md +0 -106
  431. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/tailwind.md +0 -11
  432. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/text-animations.md +0 -20
  433. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/timing.md +0 -179
  434. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/transcribe-captions.md +0 -19
  435. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/transitions.md +0 -122
  436. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/trimming.md +0 -52
  437. package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/videos.md +0 -171
  438. package/vendor/theus-arsenal/skills/cumplimiento-aduanero/SKILL.md +0 -270
  439. package/vendor/theus-arsenal/skills/cumplimiento-hipaa/SKILL.md +0 -78
  440. package/vendor/theus-arsenal/skills/datos-sensibles-salud/SKILL.md +0 -149
  441. package/vendor/theus-arsenal/skills/decimales-tokens-evm/SKILL.md +0 -128
  442. package/vendor/theus-arsenal/skills/decisiones-arquitectura/SKILL.md +0 -206
  443. package/vendor/theus-arsenal/skills/demos-ui/SKILL.md +0 -469
  444. package/vendor/theus-arsenal/skills/desarrollo-por-intencion/SKILL.md +0 -369
  445. package/vendor/theus-arsenal/skills/descubrimiento-marca/SKILL.md +0 -149
  446. package/vendor/theus-arsenal/skills/descubrimiento-marca/references/10_proposito-porque.md +0 -42
  447. package/vendor/theus-arsenal/skills/descubrimiento-marca/references/20_posicionamiento.md +0 -47
  448. package/vendor/theus-arsenal/skills/descubrimiento-marca/references/30_audiencia-nicho.md +0 -53
  449. package/vendor/theus-arsenal/skills/descubrimiento-marca/references/40_personalidad-arquetipo.md +0 -61
  450. package/vendor/theus-arsenal/skills/descubrimiento-marca/references/50_voz-tono.md +0 -62
  451. package/vendor/theus-arsenal/skills/descubrimiento-marca/references/60_narrativa-historia.md +0 -54
  452. package/vendor/theus-arsenal/skills/descubrimiento-marca/references/70_tension-fundador.md +0 -50
  453. package/vendor/theus-arsenal/skills/descubrimiento-marca/references/90_SINTESIS.md +0 -133
  454. package/vendor/theus-arsenal/skills/descubrimiento-plugins-laravel/SKILL.md +0 -230
  455. package/vendor/theus-arsenal/skills/destilado-reglas/SKILL.md +0 -263
  456. package/vendor/theus-arsenal/skills/destilado-reglas/scripts/scan-rules.sh +0 -58
  457. package/vendor/theus-arsenal/skills/destilado-reglas/scripts/scan-skills.sh +0 -129
  458. package/vendor/theus-arsenal/skills/diagnostico-bgp/SKILL.md +0 -170
  459. package/vendor/theus-arsenal/skills/direccion-estetica/SKILL.md +0 -220
  460. package/vendor/theus-arsenal/skills/direccion-estetica/references/taxonomia-generos.md +0 -89
  461. package/vendor/theus-arsenal/skills/diseno-api/SKILL.md +0 -522
  462. package/vendor/theus-arsenal/skills/diseno-liquid-glass/SKILL.md +0 -282
  463. package/vendor/theus-arsenal/skills/e2e-escritorio-windows/SKILL.md +0 -879
  464. package/vendor/theus-arsenal/skills/edicion-video/SKILL.md +0 -289
  465. package/vendor/theus-arsenal/skills/enfoque-producto/SKILL.md +0 -91
  466. package/vendor/theus-arsenal/skills/entornos-flox/SKILL.md +0 -493
  467. package/vendor/theus-arsenal/skills/estandares-codigo/SKILL.md +0 -548
  468. package/vendor/theus-arsenal/skills/estandares-cpp/SKILL.md +0 -727
  469. package/vendor/theus-arsenal/skills/estandares-java/SKILL.md +0 -389
  470. package/vendor/theus-arsenal/skills/estilo-legado/SKILL.md +0 -149
  471. package/vendor/theus-arsenal/skills/estructura-informes-competencia/SKILL.md +0 -95
  472. package/vendor/theus-arsenal/skills/evaluacion-academica/SKILL.md +0 -165
  473. package/vendor/theus-arsenal/skills/explorador-skills/SKILL.md +0 -129
  474. package/vendor/theus-arsenal/skills/flujo-git/SKILL.md +0 -714
  475. package/vendor/theus-arsenal/skills/flujo-ingenieria-ml/SKILL.md +0 -343
  476. package/vendor/theus-arsenal/skills/flujo-tdd/SKILL.md +0 -584
  477. package/vendor/theus-arsenal/skills/forja-personas/SKILL.md +0 -298
  478. package/vendor/theus-arsenal/skills/forja-personas/gacha.py +0 -224
  479. package/vendor/theus-arsenal/skills/forja-personas/gacha.sh +0 -5
  480. package/vendor/theus-arsenal/skills/forja-personas/references/avatar-style.md +0 -123
  481. package/vendor/theus-arsenal/skills/forja-personas/references/boundary-rules.md +0 -53
  482. package/vendor/theus-arsenal/skills/forja-personas/references/error-handling.md +0 -53
  483. package/vendor/theus-arsenal/skills/forja-personas/references/identity-tension.md +0 -48
  484. package/vendor/theus-arsenal/skills/forja-personas/references/naming-system.md +0 -39
  485. package/vendor/theus-arsenal/skills/forja-personas/references/output-template.md +0 -166
  486. package/vendor/theus-arsenal/skills/fundamentos-animacion/SKILL.md +0 -296
  487. package/vendor/theus-arsenal/skills/generacion-iconos-ios/SKILL.md +0 -156
  488. package/vendor/theus-arsenal/skills/generacion-iconos-ios/scripts/generate_icons.swift +0 -258
  489. package/vendor/theus-arsenal/skills/generacion-iconos-ios/scripts/iconify_gen.sh +0 -235
  490. package/vendor/theus-arsenal/skills/gestion-excepciones-logisticas/SKILL.md +0 -208
  491. package/vendor/theus-arsenal/skills/gestion-transportistas/SKILL.md +0 -204
  492. package/vendor/theus-arsenal/skills/guia-adopcion-ml/SKILL.md +0 -64
  493. package/vendor/theus-arsenal/skills/harness-agente-autonomo/SKILL.md +0 -252
  494. package/vendor/theus-arsenal/skills/harness-eval-clinico/SKILL.md +0 -212
  495. package/vendor/theus-arsenal/skills/harness-evaluacion/SKILL.md +0 -296
  496. package/vendor/theus-arsenal/skills/harness-generador-evaluador/SKILL.md +0 -254
  497. package/vendor/theus-arsenal/skills/homelab-diseno-red/SKILL.md +0 -120
  498. package/vendor/theus-arsenal/skills/homelab-dns-pihole/SKILL.md +0 -264
  499. package/vendor/theus-arsenal/skills/homelab-preparacion-red/SKILL.md +0 -144
  500. package/vendor/theus-arsenal/skills/homelab-segmentacion-vlan/SKILL.md +0 -307
  501. package/vendor/theus-arsenal/skills/homelab-vpn-wireguard/SKILL.md +0 -299
  502. package/vendor/theus-arsenal/skills/ingenieria-agentica/SKILL.md +0 -96
  503. package/vendor/theus-arsenal/skills/inspeccion-animaciones-blender/SKILL.md +0 -164
  504. package/vendor/theus-arsenal/skills/instaladores-python/SKILL.md +0 -820
  505. package/vendor/theus-arsenal/skills/integracion-jira/SKILL.md +0 -307
  506. package/vendor/theus-arsenal/skills/inteligencia-leads/SKILL.md +0 -312
  507. package/vendor/theus-arsenal/skills/inteligencia-leads/agents/agente-enriquecimiento.md +0 -87
  508. package/vendor/theus-arsenal/skills/inteligencia-leads/agents/mapeador-mutuos.md +0 -76
  509. package/vendor/theus-arsenal/skills/inteligencia-leads/agents/puntuador-senales.md +0 -60
  510. package/vendor/theus-arsenal/skills/inteligencia-leads/agents/redactor-outreach.md +0 -102
  511. package/vendor/theus-arsenal/skills/inteligencia-mercados-prediccion/SKILL.md +0 -53
  512. package/vendor/theus-arsenal/skills/introspeccion-agente/SKILL.md +0 -150
  513. package/vendor/theus-arsenal/skills/inventario-skills/SKILL.md +0 -194
  514. package/vendor/theus-arsenal/skills/inventario-skills/scripts/quick-diff.sh +0 -87
  515. package/vendor/theus-arsenal/skills/inventario-skills/scripts/save-results.sh +0 -57
  516. package/vendor/theus-arsenal/skills/inventario-skills/scripts/scan.sh +0 -170
  517. package/vendor/theus-arsenal/skills/investigacion-mercado/SKILL.md +0 -87
  518. package/vendor/theus-arsenal/skills/investigacion-oraculos-prediccion/SKILL.md +0 -59
  519. package/vendor/theus-arsenal/skills/investigacion-profunda/SKILL.md +0 -161
  520. package/vendor/theus-arsenal/skills/keccak256-nodejs/SKILL.md +0 -100
  521. package/vendor/theus-arsenal/skills/libro-decisiones-recursivo/SKILL.md +0 -82
  522. package/vendor/theus-arsenal/skills/lienzo-planes/SKILL.md +0 -111
  523. package/vendor/theus-arsenal/skills/limpieza-configuracion/SKILL.md +0 -116
  524. package/vendor/theus-arsenal/skills/logistica-inversa-devoluciones/SKILL.md +0 -241
  525. package/vendor/theus-arsenal/skills/manejo-errores/SKILL.md +0 -375
  526. package/vendor/theus-arsenal/skills/materiales-inversores/SKILL.md +0 -101
  527. package/vendor/theus-arsenal/skills/memoria-por-proyecto/SKILL.md +0 -170
  528. package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/forget.mjs +0 -44
  529. package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/info.mjs +0 -24
  530. package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/init.mjs +0 -152
  531. package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/list.mjs +0 -40
  532. package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/migrate.mjs +0 -214
  533. package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/resume.mjs +0 -36
  534. package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/save.mjs +0 -210
  535. package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/shared.mjs +0 -402
  536. package/vendor/theus-arsenal/skills/memoria-por-proyecto/hooks/session-start.mjs +0 -238
  537. package/vendor/theus-arsenal/skills/metodologia-benchmarks/SKILL.md +0 -131
  538. package/vendor/theus-arsenal/skills/migraciones-bd/SKILL.md +0 -430
  539. package/vendor/theus-arsenal/skills/modelos-fundacionales-en-dispositivo/SKILL.md +0 -244
  540. package/vendor/theus-arsenal/skills/modo-seguro/SKILL.md +0 -86
  541. package/vendor/theus-arsenal/skills/motion-avanzado/SKILL.md +0 -592
  542. package/vendor/theus-arsenal/skills/motor-de-contenido/SKILL.md +0 -136
  543. package/vendor/theus-arsenal/skills/no-conformidades-calidad/SKILL.md +0 -249
  544. package/vendor/theus-arsenal/skills/onboarding-codigo/SKILL.md +0 -244
  545. package/vendor/theus-arsenal/skills/operaciones-agentes-empresariales/SKILL.md +0 -51
  546. package/vendor/theus-arsenal/skills/operaciones-conocimiento/SKILL.md +0 -159
  547. package/vendor/theus-arsenal/skills/operaciones-correo/SKILL.md +0 -123
  548. package/vendor/theus-arsenal/skills/operaciones-facturacion/SKILL.md +0 -142
  549. package/vendor/theus-arsenal/skills/operaciones-flujo-proyectos/SKILL.md +0 -110
  550. package/vendor/theus-arsenal/skills/operaciones-github/SKILL.md +0 -143
  551. package/vendor/theus-arsenal/skills/operaciones-google-workspace/SKILL.md +0 -100
  552. package/vendor/theus-arsenal/skills/operaciones-investigacion/SKILL.md +0 -124
  553. package/vendor/theus-arsenal/skills/operaciones-mensajes/SKILL.md +0 -103
  554. package/vendor/theus-arsenal/skills/operaciones-terminal/SKILL.md +0 -110
  555. package/vendor/theus-arsenal/skills/optimizacion-benchmark/SKILL.md +0 -70
  556. package/vendor/theus-arsenal/skills/optimizacion-costos-llm/SKILL.md +0 -182
  557. package/vendor/theus-arsenal/skills/optimizador-conexiones/SKILL.md +0 -191
  558. package/vendor/theus-arsenal/skills/optimizador-paralelismo/SKILL.md +0 -75
  559. package/vendor/theus-arsenal/skills/optimizador-prompts/SKILL.md +0 -374
  560. package/vendor/theus-arsenal/skills/orq-agregar-funcionalidad/SKILL.md +0 -37
  561. package/vendor/theus-arsenal/skills/orq-cambiar-funcionalidad/SKILL.md +0 -36
  562. package/vendor/theus-arsenal/skills/orq-construir-mvp/SKILL.md +0 -38
  563. package/vendor/theus-arsenal/skills/orq-corregir-defecto/SKILL.md +0 -36
  564. package/vendor/theus-arsenal/skills/orq-pipeline/SKILL.md +0 -134
  565. package/vendor/theus-arsenal/skills/orq-refinar-codigo/SKILL.md +0 -49
  566. package/vendor/theus-arsenal/skills/orquestacion-equipos-agentes/SKILL.md +0 -117
  567. package/vendor/theus-arsenal/skills/pagos-agentes-x402/SKILL.md +0 -237
  568. package/vendor/theus-arsenal/skills/patrones-angular/SKILL.md +0 -153
  569. package/vendor/theus-arsenal/skills/patrones-angular/references/angular-animations.md +0 -160
  570. package/vendor/theus-arsenal/skills/patrones-angular/references/angular-aria.md +0 -410
  571. package/vendor/theus-arsenal/skills/patrones-angular/references/cli.md +0 -86
  572. package/vendor/theus-arsenal/skills/patrones-angular/references/component-harnesses.md +0 -59
  573. package/vendor/theus-arsenal/skills/patrones-angular/references/component-styling.md +0 -91
  574. package/vendor/theus-arsenal/skills/patrones-angular/references/components.md +0 -117
  575. package/vendor/theus-arsenal/skills/patrones-angular/references/creating-services.md +0 -97
  576. package/vendor/theus-arsenal/skills/patrones-angular/references/data-resolvers.md +0 -69
  577. package/vendor/theus-arsenal/skills/patrones-angular/references/define-routes.md +0 -67
  578. package/vendor/theus-arsenal/skills/patrones-angular/references/defining-providers.md +0 -72
  579. package/vendor/theus-arsenal/skills/patrones-angular/references/di-fundamentals.md +0 -120
  580. package/vendor/theus-arsenal/skills/patrones-angular/references/e2e-testing.md +0 -56
  581. package/vendor/theus-arsenal/skills/patrones-angular/references/effects.md +0 -83
  582. package/vendor/theus-arsenal/skills/patrones-angular/references/hierarchical-injectors.md +0 -43
  583. package/vendor/theus-arsenal/skills/patrones-angular/references/host-elements.md +0 -80
  584. package/vendor/theus-arsenal/skills/patrones-angular/references/injection-context.md +0 -63
  585. package/vendor/theus-arsenal/skills/patrones-angular/references/inputs.md +0 -101
  586. package/vendor/theus-arsenal/skills/patrones-angular/references/linked-signal.md +0 -59
  587. package/vendor/theus-arsenal/skills/patrones-angular/references/loading-strategies.md +0 -61
  588. package/vendor/theus-arsenal/skills/patrones-angular/references/mcp.md +0 -67
  589. package/vendor/theus-arsenal/skills/patrones-angular/references/navigate-to-routes.md +0 -69
  590. package/vendor/theus-arsenal/skills/patrones-angular/references/outputs.md +0 -86
  591. package/vendor/theus-arsenal/skills/patrones-angular/references/reactive-forms.md +0 -122
  592. package/vendor/theus-arsenal/skills/patrones-angular/references/rendering-strategies.md +0 -44
  593. package/vendor/theus-arsenal/skills/patrones-angular/references/resource.md +0 -77
  594. package/vendor/theus-arsenal/skills/patrones-angular/references/route-animations.md +0 -56
  595. package/vendor/theus-arsenal/skills/patrones-angular/references/route-guards.md +0 -52
  596. package/vendor/theus-arsenal/skills/patrones-angular/references/router-lifecycle.md +0 -45
  597. package/vendor/theus-arsenal/skills/patrones-angular/references/router-testing.md +0 -87
  598. package/vendor/theus-arsenal/skills/patrones-angular/references/show-routes-with-outlets.md +0 -68
  599. package/vendor/theus-arsenal/skills/patrones-angular/references/signal-forms.md +0 -795
  600. package/vendor/theus-arsenal/skills/patrones-angular/references/signals-overview.md +0 -94
  601. package/vendor/theus-arsenal/skills/patrones-angular/references/tailwind-css.md +0 -69
  602. package/vendor/theus-arsenal/skills/patrones-angular/references/template-driven-forms.md +0 -114
  603. package/vendor/theus-arsenal/skills/patrones-angular/references/testing-fundamentals.md +0 -65
  604. package/vendor/theus-arsenal/skills/patrones-animacion/SKILL.md +0 -432
  605. package/vendor/theus-arsenal/skills/patrones-backend/SKILL.md +0 -560
  606. package/vendor/theus-arsenal/skills/patrones-cdss-clinico/SKILL.md +0 -249
  607. package/vendor/theus-arsenal/skills/patrones-cisco-ios/SKILL.md +0 -148
  608. package/vendor/theus-arsenal/skills/patrones-clickhouse/SKILL.md +0 -443
  609. package/vendor/theus-arsenal/skills/patrones-compose-multiplatform/SKILL.md +0 -298
  610. package/vendor/theus-arsenal/skills/patrones-dart-flutter/SKILL.md +0 -566
  611. package/vendor/theus-arsenal/skills/patrones-despliegue/SKILL.md +0 -426
  612. package/vendor/theus-arsenal/skills/patrones-django/SKILL.md +0 -739
  613. package/vendor/theus-arsenal/skills/patrones-django-celery/SKILL.md +0 -456
  614. package/vendor/theus-arsenal/skills/patrones-docker/SKILL.md +0 -363
  615. package/vendor/theus-arsenal/skills/patrones-dotnet/SKILL.md +0 -321
  616. package/vendor/theus-arsenal/skills/patrones-emr-clinico/SKILL.md +0 -168
  617. package/vendor/theus-arsenal/skills/patrones-fastapi/SKILL.md +0 -513
  618. package/vendor/theus-arsenal/skills/patrones-frontend/SKILL.md +0 -655
  619. package/vendor/theus-arsenal/skills/patrones-go/SKILL.md +0 -674
  620. package/vendor/theus-arsenal/skills/patrones-jpa/SKILL.md +0 -156
  621. package/vendor/theus-arsenal/skills/patrones-kotlin/SKILL.md +0 -717
  622. package/vendor/theus-arsenal/skills/patrones-kotlin-exposed/SKILL.md +0 -724
  623. package/vendor/theus-arsenal/skills/patrones-kotlin-ktor/SKILL.md +0 -694
  624. package/vendor/theus-arsenal/skills/patrones-kubernetes/SKILL.md +0 -754
  625. package/vendor/theus-arsenal/skills/patrones-laravel/SKILL.md +0 -414
  626. package/vendor/theus-arsenal/skills/patrones-mcp/SKILL.md +0 -66
  627. package/vendor/theus-arsenal/skills/patrones-mysql/SKILL.md +0 -420
  628. package/vendor/theus-arsenal/skills/patrones-nestjs/SKILL.md +0 -229
  629. package/vendor/theus-arsenal/skills/patrones-nextjs/SKILL.md +0 -56
  630. package/vendor/theus-arsenal/skills/patrones-nuxt4/SKILL.md +0 -99
  631. package/vendor/theus-arsenal/skills/patrones-perl/SKILL.md +0 -508
  632. package/vendor/theus-arsenal/skills/patrones-postgres/SKILL.md +0 -141
  633. package/vendor/theus-arsenal/skills/patrones-prisma/SKILL.md +0 -399
  634. package/vendor/theus-arsenal/skills/patrones-python/SKILL.md +0 -750
  635. package/vendor/theus-arsenal/skills/patrones-pytorch/SKILL.md +0 -400
  636. package/vendor/theus-arsenal/skills/patrones-quarkus/SKILL.md +0 -729
  637. package/vendor/theus-arsenal/skills/patrones-react/SKILL.md +0 -339
  638. package/vendor/theus-arsenal/skills/patrones-react-native/SKILL.md +0 -325
  639. package/vendor/theus-arsenal/skills/patrones-redis/SKILL.md +0 -401
  640. package/vendor/theus-arsenal/skills/patrones-rust/SKILL.md +0 -504
  641. package/vendor/theus-arsenal/skills/patrones-springboot/SKILL.md +0 -314
  642. package/vendor/theus-arsenal/skills/patrones-swiftui/SKILL.md +0 -261
  643. package/vendor/theus-arsenal/skills/patrones-tinystruct/SKILL.md +0 -281
  644. package/vendor/theus-arsenal/skills/patrones-tinystruct/references/architecture.md +0 -90
  645. package/vendor/theus-arsenal/skills/patrones-tinystruct/references/data-handling.md +0 -60
  646. package/vendor/theus-arsenal/skills/patrones-tinystruct/references/database.md +0 -99
  647. package/vendor/theus-arsenal/skills/patrones-tinystruct/references/routing.md +0 -64
  648. package/vendor/theus-arsenal/skills/patrones-tinystruct/references/system-usage.md +0 -97
  649. package/vendor/theus-arsenal/skills/patrones-tinystruct/references/testing.md +0 -72
  650. package/vendor/theus-arsenal/skills/patrones-vite/SKILL.md +0 -449
  651. package/vendor/theus-arsenal/skills/patrones-vue/SKILL.md +0 -469
  652. package/vendor/theus-arsenal/skills/persistencia-actores-swift/SKILL.md +0 -148
  653. package/vendor/theus-arsenal/skills/pipeline-opensource/SKILL.md +0 -254
  654. package/vendor/theus-arsenal/skills/planificacion-demanda-inventario/SKILL.md +0 -236
  655. package/vendor/theus-arsenal/skills/planificador-trades-prediccion/SKILL.md +0 -60
  656. package/vendor/theus-arsenal/skills/plano-tecnico/SKILL.md +0 -102
  657. package/vendor/theus-arsenal/skills/presentaciones-html/SKILL.md +0 -189
  658. package/vendor/theus-arsenal/skills/presentaciones-html/STYLE_PRESETS.md +0 -330
  659. package/vendor/theus-arsenal/skills/presentaciones-html/animation-patterns.md +0 -122
  660. package/vendor/theus-arsenal/skills/presentaciones-html/html-template.md +0 -419
  661. package/vendor/theus-arsenal/skills/presentaciones-html/scripts/export-pdf.sh +0 -418
  662. package/vendor/theus-arsenal/skills/presentaciones-html/scripts/extract-pptx.py +0 -96
  663. package/vendor/theus-arsenal/skills/presentaciones-html/viewport-base.css +0 -153
  664. package/vendor/theus-arsenal/skills/presupuesto-contexto/SKILL.md +0 -263
  665. package/vendor/theus-arsenal/skills/procesamiento-documentos-nutrient/SKILL.md +0 -168
  666. package/vendor/theus-arsenal/skills/programacion-produccion/SKILL.md +0 -220
  667. package/vendor/theus-arsenal/skills/publicacion-cruzada/SKILL.md +0 -117
  668. package/vendor/theus-arsenal/skills/publicador-social/SKILL.md +0 -121
  669. package/vendor/theus-arsenal/skills/puerta-de-entrega/SKILL.md +0 -164
  670. package/vendor/theus-arsenal/skills/puerta-de-entrega/hooks/puerta-entrega.py +0 -242
  671. package/vendor/theus-arsenal/skills/pulir-interfaces/SKILL.md +0 -126
  672. package/vendor/theus-arsenal/skills/qa-navegador/SKILL.md +0 -103
  673. package/vendor/theus-arsenal/skills/ranking-grafo-social/SKILL.md +0 -153
  674. package/vendor/theus-arsenal/skills/recuperacion-iterativa/SKILL.md +0 -236
  675. package/vendor/theus-arsenal/skills/redaccion-articulos/SKILL.md +0 -81
  676. package/vendor/theus-arsenal/skills/regex-vs-llm/SKILL.md +0 -221
  677. package/vendor/theus-arsenal/skills/regresion-codigo-ia/SKILL.md +0 -388
  678. package/vendor/theus-arsenal/skills/rendimiento-react/SKILL.md +0 -567
  679. package/vendor/theus-arsenal/skills/revision-codigo-flutter-dart/SKILL.md +0 -442
  680. package/vendor/theus-arsenal/skills/revision-literatura-cientifica/SKILL.md +0 -191
  681. package/vendor/theus-arsenal/skills/revision-multiperspectiva/SKILL.md +0 -302
  682. package/vendor/theus-arsenal/skills/revision-riesgo-prediccion/SKILL.md +0 -56
  683. package/vendor/theus-arsenal/skills/revision-seguridad/SKILL.md +0 -505
  684. package/vendor/theus-arsenal/skills/revision-seguridad/cloud-infrastructure-security.md +0 -361
  685. package/vendor/theus-arsenal/skills/runtime-bun/SKILL.md +0 -83
  686. package/vendor/theus-arsenal/skills/salud-codigo-codescene/SKILL.md +0 -163
  687. package/vendor/theus-arsenal/skills/salud-interfaces-red/SKILL.md +0 -143
  688. package/vendor/theus-arsenal/skills/seguimiento-costos/SKILL.md +0 -122
  689. package/vendor/theus-arsenal/skills/seguridad-agentes-trading/SKILL.md +0 -145
  690. package/vendor/theus-arsenal/skills/seguridad-amm-defi/SKILL.md +0 -166
  691. package/vendor/theus-arsenal/skills/seguridad-django/SKILL.md +0 -648
  692. package/vendor/theus-arsenal/skills/seguridad-laravel/SKILL.md +0 -945
  693. package/vendor/theus-arsenal/skills/seguridad-perl/SKILL.md +0 -507
  694. package/vendor/theus-arsenal/skills/seguridad-quarkus/SKILL.md +0 -474
  695. package/vendor/theus-arsenal/skills/seguridad-springboot/SKILL.md +0 -279
  696. package/vendor/theus-arsenal/skills/seo/SKILL.md +0 -166
  697. package/vendor/theus-arsenal/skills/sistema-diseno/SKILL.md +0 -81
  698. package/vendor/theus-arsenal/skills/sistema-operativo-agentico/SKILL.md +0 -375
  699. package/vendor/theus-arsenal/skills/sistemas-latencia-critica/SKILL.md +0 -65
  700. package/vendor/theus-arsenal/skills/tdd-django/SKILL.md +0 -735
  701. package/vendor/theus-arsenal/skills/tdd-laravel/SKILL.md +0 -673
  702. package/vendor/theus-arsenal/skills/tdd-quarkus/SKILL.md +0 -817
  703. package/vendor/theus-arsenal/skills/tdd-springboot/SKILL.md +0 -165
  704. package/vendor/theus-arsenal/skills/testing-cpp/SKILL.md +0 -328
  705. package/vendor/theus-arsenal/skills/testing-csharp/SKILL.md +0 -321
  706. package/vendor/theus-arsenal/skills/testing-e2e/SKILL.md +0 -325
  707. package/vendor/theus-arsenal/skills/testing-go/SKILL.md +0 -719
  708. package/vendor/theus-arsenal/skills/testing-kotlin/SKILL.md +0 -829
  709. package/vendor/theus-arsenal/skills/testing-perl/SKILL.md +0 -479
  710. package/vendor/theus-arsenal/skills/testing-protocolos-di-swift/SKILL.md +0 -196
  711. package/vendor/theus-arsenal/skills/testing-python/SKILL.md +0 -815
  712. package/vendor/theus-arsenal/skills/testing-react/SKILL.md +0 -421
  713. package/vendor/theus-arsenal/skills/testing-rust/SKILL.md +0 -506
  714. package/vendor/theus-arsenal/skills/tours-de-codigo/SKILL.md +0 -252
  715. package/vendor/theus-arsenal/skills/traduccion-documentos-visado/SKILL.md +0 -121
  716. package/vendor/theus-arsenal/skills/ui-a-vue/SKILL.md +0 -141
  717. package/vendor/theus-arsenal/skills/validacion-config-red/SKILL.md +0 -211
  718. package/vendor/theus-arsenal/skills/verificacion-django/SKILL.md +0 -470
  719. package/vendor/theus-arsenal/skills/verificacion-factual/SKILL.md +0 -142
  720. package/vendor/theus-arsenal/skills/verificacion-laravel/SKILL.md +0 -184
  721. package/vendor/theus-arsenal/skills/verificacion-quarkus/SKILL.md +0 -485
  722. package/vendor/theus-arsenal/skills/verificacion-springboot/SKILL.md +0 -237
  723. package/vendor/theus-arsenal/skills/videodb/SKILL.md +0 -374
  724. package/vendor/theus-arsenal/skills/videodb/reference/api-reference.md +0 -550
  725. package/vendor/theus-arsenal/skills/videodb/reference/capture-reference.md +0 -407
  726. package/vendor/theus-arsenal/skills/videodb/reference/capture.md +0 -101
  727. package/vendor/theus-arsenal/skills/videodb/reference/editor.md +0 -443
  728. package/vendor/theus-arsenal/skills/videodb/reference/generative.md +0 -331
  729. package/vendor/theus-arsenal/skills/videodb/reference/rtstream-reference.md +0 -564
  730. package/vendor/theus-arsenal/skills/videodb/reference/rtstream.md +0 -65
  731. package/vendor/theus-arsenal/skills/videodb/reference/search.md +0 -230
  732. package/vendor/theus-arsenal/skills/videodb/reference/streaming.md +0 -406
  733. package/vendor/theus-arsenal/skills/videodb/reference/use-cases.md +0 -118
  734. package/vendor/theus-arsenal/skills/videodb/scripts/ws_listener.py +0 -279
  735. package/vendor/theus-arsenal/skills/videos-manim/SKILL.md +0 -91
  736. package/vendor/theus-arsenal/skills/videos-manim/assets/network_graph_scene.py +0 -52
  737. package/vendor/theus-arsenal/skills/vigilancia-canary/SKILL.md +0 -108
  738. package/vendor/theus-arsenal/skills/voz-de-marca/SKILL.md +0 -106
@@ -1,82 +0,0 @@
1
- ---
2
- paths:
3
- - "**/*.kt"
4
- - "**/*.kts"
5
- ---
6
- # Seguridad en Kotlin
7
-
8
- > Este archivo extiende [common/security.md](../common/security.md) con contenido específico de Kotlin y Android/KMP.
9
-
10
- ## Gestión de secretos
11
-
12
- - Nunca escribas claves de API, tokens ni credenciales directamente en el código fuente
13
- - Usa `local.properties` (ignorado por git) para los secretos de desarrollo local
14
- - Usa campos de `BuildConfig` generados a partir de secretos de CI para las builds de release
15
- - Usa `EncryptedSharedPreferences` (Android) o Keychain (iOS) para almacenar secretos en tiempo de ejecución
16
-
17
- ```kotlin
18
- // MAL
19
- val apiKey = "sk-abc123..."
20
-
21
- // BIEN — desde BuildConfig (generado en tiempo de build)
22
- val apiKey = BuildConfig.API_KEY
23
-
24
- // BIEN — desde almacenamiento seguro en tiempo de ejecución
25
- val token = secureStorage.get("auth_token")
26
- ```
27
-
28
- ## Seguridad de red
29
-
30
- - Usa HTTPS exclusivamente — configura `network_security_config.xml` para bloquear el tráfico en claro
31
- - Ancla certificados (certificate pinning) en los endpoints sensibles con `CertificatePinner` de OkHttp o el equivalente de Ktor
32
- - Define timeouts en todos los clientes HTTP — nunca dejes los valores por defecto (pueden ser infinitos)
33
- - Valida y sanitiza todas las respuestas del servidor antes de usarlas
34
-
35
- ```xml
36
- <!-- res/xml/network_security_config.xml -->
37
- <network-security-config>
38
- <base-config cleartextTrafficPermitted="false" />
39
- </network-security-config>
40
- ```
41
-
42
- ## Validación de entrada
43
-
44
- - Valida toda entrada del usuario antes de procesarla o enviarla a la API
45
- - Usa consultas parametrizadas con Room/SQLDelight — nunca concatenes entrada del usuario en SQL
46
- - Sanitiza las rutas de archivos provenientes del usuario para prevenir path traversal
47
-
48
- ```kotlin
49
- // MAL — inyección SQL
50
- @Query("SELECT * FROM items WHERE name = '$input'")
51
-
52
- // BIEN — parametrizada
53
- @Query("SELECT * FROM items WHERE name = :input")
54
- fun findByName(input: String): List<ItemEntity>
55
- ```
56
-
57
- ## Protección de datos
58
-
59
- - Usa `EncryptedSharedPreferences` para datos clave-valor sensibles en Android
60
- - Usa `@Serializable` con nombres de campo explícitos — no filtres los nombres internos de las propiedades
61
- - Elimina los datos sensibles de la memoria cuando ya no se necesiten
62
- - Usa `@Keep` o reglas de ProGuard en las clases serializadas para evitar la ofuscación de nombres
63
-
64
- ## Autenticación
65
-
66
- - Almacena los tokens en almacenamiento seguro, no en SharedPreferences plano
67
- - Implementa la renovación de tokens con un manejo correcto de 401/403
68
- - Limpia todo el estado de autenticación al cerrar sesión (tokens, datos de usuario en caché, cookies)
69
- - Usa autenticación biométrica (`BiometricPrompt`) para operaciones sensibles
70
-
71
- ## ProGuard / R8
72
-
73
- - Reglas keep para todos los modelos serializados (`@Serializable`, Gson, Moshi)
74
- - Reglas keep para bibliotecas basadas en reflexión (Koin, Retrofit)
75
- - Prueba las builds de release — la ofuscación puede romper la serialización silenciosamente
76
-
77
- ## Seguridad en WebView
78
-
79
- - Desactiva JavaScript salvo que sea explícitamente necesario: `settings.javaScriptEnabled = false`
80
- - Valida las URLs antes de cargarlas en un WebView
81
- - Nunca expongas métodos `@JavascriptInterface` que accedan a datos sensibles
82
- - Usa `WebViewClient.shouldOverrideUrlLoading()` para controlar la navegación
@@ -1,128 +0,0 @@
1
- ---
2
- paths:
3
- - "**/*.kt"
4
- - "**/*.kts"
5
- ---
6
- # Testing en Kotlin
7
-
8
- > Este archivo extiende [common/testing.md](../common/testing.md) con contenido específico de Kotlin y Android/KMP.
9
-
10
- ## Framework de tests
11
-
12
- - **kotlin.test** para multiplataforma (KMP) — `@Test`, `assertEquals`, `assertTrue`
13
- - **JUnit 4/5** para tests específicos de Android
14
- - **Turbine** para probar Flows y StateFlow
15
- - **kotlinx-coroutines-test** para probar corrutinas (`runTest`, `TestDispatcher`)
16
-
17
- ## Tests de ViewModel con Turbine
18
-
19
- ```kotlin
20
- @Test
21
- fun `emite estado de carga y luego los datos`() = runTest {
22
- val repo = FakeItemRepository()
23
- repo.addItem(testItem)
24
- val viewModel = ItemListViewModel(GetItemsUseCase(repo))
25
-
26
- viewModel.state.test {
27
- assertEquals(ItemListState(), awaitItem()) // estado inicial
28
- viewModel.onEvent(ItemListEvent.Load)
29
- assertTrue(awaitItem().isLoading) // cargando
30
- assertEquals(listOf(testItem), awaitItem().items) // cargado
31
- }
32
- }
33
- ```
34
-
35
- ## Fakes en lugar de mocks
36
-
37
- Prefiere fakes escritos a mano en lugar de frameworks de mocking:
38
-
39
- ```kotlin
40
- class FakeItemRepository : ItemRepository {
41
- private val items = mutableListOf<Item>()
42
- var fetchError: Throwable? = null
43
-
44
- override suspend fun getAll(): Result<List<Item>> {
45
- fetchError?.let { return Result.failure(it) }
46
- return Result.success(items.toList())
47
- }
48
-
49
- override fun observeAll(): Flow<List<Item>> = flowOf(items.toList())
50
-
51
- fun addItem(item: Item) { items.add(item) }
52
- }
53
- ```
54
-
55
- ## Testing de corrutinas
56
-
57
- ```kotlin
58
- @Test
59
- fun `las operaciones paralelas se completan`() = runTest {
60
- val repo = FakeRepository()
61
- val result = loadDashboard(repo)
62
- advanceUntilIdle()
63
- assertNotNull(result.items)
64
- assertNotNull(result.stats)
65
- }
66
- ```
67
-
68
- Usa `runTest` — avanza automáticamente el tiempo virtual y provee `TestScope`.
69
-
70
- ## MockEngine de Ktor
71
-
72
- ```kotlin
73
- val mockEngine = MockEngine { request ->
74
- when (request.url.encodedPath) {
75
- "/api/items" -> respond(
76
- content = Json.encodeToString(testItems),
77
- headers = headersOf(HttpHeaders.ContentType, ContentType.Application.Json.toString())
78
- )
79
- else -> respondError(HttpStatusCode.NotFound)
80
- }
81
- }
82
-
83
- val client = HttpClient(mockEngine) {
84
- install(ContentNegotiation) { json() }
85
- }
86
- ```
87
-
88
- ## Testing de Room/SQLDelight
89
-
90
- - Room: usa `Room.inMemoryDatabaseBuilder()` para pruebas en memoria
91
- - SQLDelight: usa `JdbcSqliteDriver(JdbcSqliteDriver.IN_MEMORY)` para tests en la JVM
92
-
93
- ```kotlin
94
- @Test
95
- fun `inserta y consulta items`() = runTest {
96
- val driver = JdbcSqliteDriver(JdbcSqliteDriver.IN_MEMORY)
97
- Database.Schema.create(driver)
98
- val db = Database(driver)
99
-
100
- db.itemQueries.insert("1", "Item de ejemplo", "descripción")
101
- val items = db.itemQueries.getAll().executeAsList()
102
- assertEquals(1, items.size)
103
- }
104
- ```
105
-
106
- ## Nombres de los tests
107
-
108
- Usa nombres descriptivos entre backticks:
109
-
110
- ```kotlin
111
- @Test
112
- fun `buscar con consulta vacía devuelve todos los items`() = runTest { }
113
-
114
- @Test
115
- fun `eliminar un item emite la lista actualizada sin el item eliminado`() = runTest { }
116
- ```
117
-
118
- ## Organización de los tests
119
-
120
- ```
121
- src/
122
- ├── commonTest/kotlin/ # Tests compartidos (ViewModel, UseCase, Repository)
123
- ├── androidUnitTest/kotlin/ # Tests unitarios de Android (JUnit)
124
- ├── androidInstrumentedTest/kotlin/ # Tests instrumentados (Room, UI)
125
- └── iosTest/kotlin/ # Tests específicos de iOS
126
- ```
127
-
128
- Cobertura mínima de tests: ViewModel + UseCase para cada funcionalidad.
@@ -1,47 +0,0 @@
1
- ---
2
- paths:
3
- - "**/nuxt.config.*"
4
- - "**/app.config.*"
5
- - "**/app.vue"
6
- - "**/pages/**"
7
- - "**/layouts/**"
8
- - "**/middleware/**"
9
- ---
10
-
11
- # Estilo de código Nuxt
12
-
13
- > Este archivo extiende [common/coding-style.md](../common/coding-style.md) con contenido específico de Nuxt.
14
-
15
- ## Estructura de directorios
16
-
17
- - El `srcDir` por defecto es `app/`. Los archivos del framework viven en `app/pages/`, `app/layouts/`, `app/middleware/`, `app/plugins/`, `app/app.config.ts`. `nuxt.config.ts` y `server/` se quedan en la raíz del proyecto.
18
- - Algunos proyectos sobrescriben `srcDir` a `src/` para un layout tipo Feature-Sliced Design, remapeando `dir.pages` (por ejemplo a `src/app/routes`), `dir.layouts` y los alias `@`/`~`. Revisa siempre `nuxt.config.ts` antes de asumir una ruta.
19
-
20
- ## Disciplina de auto-imports
21
-
22
- - Los composables en `app/composables/` y `server/utils/` se auto-importan. NO importes manualmente los composables de Nuxt (`useFetch`, `useState`, `navigateTo`) ni `defineStore` / `storeToRefs`.
23
- - NO añadas una dependencia independiente de `vue-router` (Nuxt empaqueta la v5) ni montes a mano `createApp` / `createPinia` / `createRouter`. El framework se encarga de cablearlos.
24
-
25
- ## Macros del compilador
26
-
27
- - `definePageMeta` es una macro de tiempo de compilación. Solo valores estáticos: nada de datos reactivos ni llamadas con efectos secundarios dentro.
28
- - Amplía el tipo `PageMeta` mediante `declare module '#app'` en lugar de hacer casts.
29
-
30
- ## Separación de archivos de configuración
31
-
32
- Tres archivos distintos; no los mezcles.
33
-
34
- - `nuxt.config.ts` = solo tiempo de build (`routeRules`, `modules`, `nitro`, flag `ssr`). No es reactivo.
35
- - `runtimeConfig` (dentro de nuxt.config) = valores de runtime por entorno, sobrescribibles vía variables `NUXT_*`. Las claves raíz son solo de servidor; las claves bajo `public` son visibles en el cliente.
36
- - `app/app.config.ts` = ajustes públicos reactivos fijados en build (tokens de tema, feature flags). Sin sobrescritura por entorno. NUNCA secretos.
37
-
38
- ## Head y meta
39
-
40
- - `app.head` en `nuxt.config.ts` acepta solo valores estáticos.
41
- - Los meta reactivos van por `useHead` / `useSeoMeta` en el setup del componente, nunca vía `app.head`.
42
-
43
- ## Referencia
44
-
45
- - Skills: `patrones-nuxt4`, `patrones-vite`, `patrones-frontend`.
46
- - [Estructura de directorios de Nuxt](https://nuxt.com/docs/guide/directory-structure/app)
47
- - [Configuración de Nuxt](https://nuxt.com/docs/api/nuxt-config)
@@ -1,39 +0,0 @@
1
- ---
2
- paths:
3
- - "**/nuxt.config.*"
4
- - "**/app.config.*"
5
- - "**/server/**/*.ts"
6
- - "**/*.vue"
7
- ---
8
-
9
- # Hooks de Nuxt
10
-
11
- > Este archivo extiende [common/hooks.md](../common/hooks.md) con contenido específico de Nuxt.
12
-
13
- Estos son hooks del harness de Theus para trabajo con Nuxt. Los ejecuta el harness, no el modelo.
14
-
15
- ## Verificación de tipos
16
-
17
- - `nuxi typecheck` envuelve `vue-tsc`. Requiere `vue-tsc` + `typescript` como dependencias de desarrollo.
18
- - Ejecútalo al editar `.vue` / `.ts` o en pre-commit. La verificación de tipos abarca todo el proyecto, así que aplícale debounce y envuélvela en un timeout (imita `web/hooks.md`, por ejemplo `timeout 60 nuxi typecheck`) para que una verificación colgada sea eliminada en lugar de acumularse entre ediciones rápidas.
19
-
20
- ## Lint
21
-
22
- - Usa el módulo `@nuxt/eslint` (flat-config, consciente del proyecto, genera `.nuxt/eslint.config.mjs`).
23
- - Ejecuta `eslint .` o `eslint --fix`. Es la integración oficial de ESLint para Nuxt; prefiérela sobre configuraciones hechas a mano.
24
-
25
- ## Formato
26
-
27
- - `prettier --write`, o habilita las reglas estilísticas de `@nuxt/eslint` para evitar un conflicto Prettier/ESLint.
28
- - Elige una única autoridad de formateo. No ejecutes Prettier y las reglas estilísticas de ESLint a la vez.
29
-
30
- ## Cadena PostToolUse sugerida
31
-
32
- - Al editar `app/**` y `server/**`: ejecuta `eslint --fix` y después `timeout 60 nuxi typecheck`.
33
- - El orden importa: primero el lint-fix (muta el archivo), después la verificación de tipos con timeout (verifica el resultado). El debounce sigue aplicando.
34
-
35
- ## Referencia
36
-
37
- - Skills: `patrones-nuxt4`, `patrones-vite`.
38
- - [Módulo @nuxt/eslint](https://eslint.nuxt.com/)
39
- - [nuxi typecheck](https://nuxt.com/docs/api/commands/typecheck)
@@ -1,54 +0,0 @@
1
- ---
2
- paths:
3
- - "**/nuxt.config.*"
4
- - "**/app.config.*"
5
- - "**/app.vue"
6
- - "**/server/**/*.ts"
7
- - "**/pages/**"
8
- - "**/middleware/**"
9
- ---
10
-
11
- # Patrones de Nuxt
12
-
13
- > Este archivo extiende [common/patterns.md](../common/patterns.md) con contenido específico de Nuxt.
14
-
15
- ## Selección de la herramienta de fetch de datos
16
-
17
- Crítico. Elige según el momento de renderizado, no por costumbre.
18
-
19
- - `useFetch(url)` = seguro en SSR, orientado a URL, para datos iniciales / del primer render. Es el valor por defecto. Reenvía el resultado del servidor a través del payload, así que no hay doble fetch en la hidratación.
20
- - `useAsyncData(key, fn)` = seguro en SSR, para lógica asíncrona personalizada (SDK / GraphQL / llamadas combinadas). La clave explícita comparte el resultado entre componentes.
21
- - `$fetch` = solo interacciones de cliente (envío de formulario, clic de botón, POST/PUT/DELETE). NO es seguro en SSR: provoca doble fetch si se usa para el primer render.
22
- - Regla: `useFetch` / `useAsyncData` para todo lo que se renderiza en el primer paint; `$fetch` solo para mutaciones disparadas por eventos.
23
-
24
- ## Estado compartido
25
-
26
- - `useState('key', () => init)` para estado compartido seguro en SSR. Los valores deben ser serializables a JSON.
27
- - NUNCA `export const x = ref()` a nivel de módulo. Una única instancia compartida se filtra entre peticiones SSR concurrentes y provoca una fuga de memoria.
28
- - Con `@pinia/nuxt`: Pinia para el estado de dominio, `useState` para primitivos pequeños entre componentes.
29
- - La inicialización asíncrona del lado del servidor va en `callOnce(async () => {...})`, no como efecto secundario dentro de `useAsyncData`.
30
-
31
- ## Rutas de servidor Nitro
32
-
33
- - `server/api/*.{get,post}.ts` se auto-registran por ruta + método. El handler es `defineEventHandler((event) => ...)`.
34
- - Errores vía `throw createError({ status, statusText })`. Prefiere `status` / `statusText` (Web API) sobre los obsoletos `statusCode` / `statusMessage`.
35
- - `server/middleware/` NO debe devolver una respuesta. Solo mutar `event.context` o establecer cabeceras.
36
-
37
- ## Middleware de rutas
38
-
39
- - `app/middleware/*.ts` con `defineNuxtRouteMiddleware((to, from) => ...)`.
40
- - Usa los argumentos `to` / `from`. NO llames a `useRoute()` dentro del middleware.
41
- - El sufijo `.global` lo ejecuta en cada ruta. Devuelve `navigateTo()` para redirigir, `abortNavigation()` para detener.
42
-
43
- ## Renderizado seguro frente a la hidratación
44
-
45
- - Enruta según `status` (`idle | pending | success | error`) para fetches perezosos.
46
- - El payload de `useAsyncData` usa `devalue` (Date/Map/Set/refs sobreviven). Una respuesta de `server/api` es solo `JSON.stringify`, así que define `toJSON()` para los tipos no JSON.
47
- - Reduce el payload con `pick` / `transform`. Esto reduce el tamaño serializado; no evita el fetch.
48
-
49
- ## Referencia
50
-
51
- - Skills: `patrones-nuxt4`, `patrones-vite`, `patrones-frontend`.
52
- - [Fetch de datos en Nuxt](https://nuxt.com/docs/getting-started/data-fetching)
53
- - [Gestión de estado en Nuxt](https://nuxt.com/docs/getting-started/state-management)
54
- - [Motor de servidor de Nuxt (Nitro)](https://nuxt.com/docs/guide/directory-structure/server)
@@ -1,48 +0,0 @@
1
- ---
2
- paths:
3
- - "**/nuxt.config.*"
4
- - "**/app.config.*"
5
- - "**/server/**/*.ts"
6
- ---
7
-
8
- # Seguridad en Nuxt
9
-
10
- > Este archivo extiende [common/security.md](../common/security.md) con contenido específico de Nuxt.
11
-
12
- ## runtimeConfig público vs privado
13
-
14
- - Las claves raíz de `runtimeConfig` son solo de servidor. `runtimeConfig.public` se serializa en el payload de CADA página (visible en el cliente).
15
- - Los secretos van solo en la raíz. Nunca pongas secretos en `app.config.ts` ni en `runtimeConfig.public`: ambos llegan al bundle del cliente.
16
- - Advertencia oficial: "Cuida de no exponer claves de la configuración de runtime al lado cliente, ya sea renderizándolas o pasándolas a `useState`."
17
-
18
- ## Validación de entrada en rutas de servidor
19
-
20
- - Usa los lectores validadores de h3. NO confíes en `readBody` / `getQuery` / `getRouterParam` crudos.
21
- - `readValidatedBody(event, schema)` valida el body.
22
- - `getValidatedQuery(event, schema)` valida la query.
23
- - `getValidatedRouterParams(event, schema)` valida los parámetros de ruta.
24
- - Todos aceptan una función de validación o un esquema Zod y lanzan un error si falla.
25
-
26
- ## Fuga por el payload de SSR
27
-
28
- - Todo lo que esté en `useState`, en resultados de `useFetch` / `useAsyncData` o en `runtimeConfig.public` se serializa en el payload del cliente. Nunca escribas un secreto ahí.
29
- - Usa `useServerSeoMeta` para meta solo de servidor sin coste en el cliente.
30
-
31
- ## Cookies y passthrough de autenticación en SSR
32
-
33
- - Nuxt NO adjunta automáticamente las cookies del usuario entrante a los `$fetch` salientes del lado del servidor.
34
- - Reenvíalas explícitamente con `useRequestFetch()` (lo más limpio, ya viene ligado a las cabeceras de la petición) o `useRequestHeaders(['cookie'])`.
35
- - Retransmite un `Set-Cookie` del backend al navegador vía `$fetch.raw` + `appendResponseHeader(event, 'set-cookie', ...)`.
36
- - socket.io es solo de cliente (plugin `.client.ts`), nunca en SSR.
37
-
38
- ## SSRF en `$fetch` de servidor
39
-
40
- - Las rutas de servidor corren con salida de red completa. Nunca pases entrada controlada por el usuario directamente a la URL o al host de un `$fetch` del lado del servidor.
41
- - Valida primero el parámetro (utilidades de h3 de arriba), usa una lista de permitidos para el destino, fíjalo a `runtimeConfig.public.apiBase` y rechaza URLs absolutas suministradas por el usuario.
42
- - Usa el agente `revisor-seguridad` solo para rutas que hagan peticiones de red externas (`$fetch` de servidor), manejen tokens o credenciales de autenticación, o realicen mutaciones sensibles o verificaciones de autorización. Ejemplos: endpoints proxy propensos a SSRF, intercambio de tokens o restablecimiento de contraseña, acciones de administración. Omite las rutas benignas de solo lectura que solo aceptan parámetros de query validados.
43
-
44
- ## Referencia
45
-
46
- - Skills: `revision-seguridad`, `patrones-nuxt4`.
47
- - [Configuración de runtime de Nuxt](https://nuxt.com/docs/guide/going-further/runtime-config)
48
- - [Utilidades de petición de h3](https://v1.h3.dev/utils/request)
@@ -1,49 +0,0 @@
1
- ---
2
- paths:
3
- - "**/nuxt.config.*"
4
- - "**/server/**/*.ts"
5
- - "**/pages/**"
6
- - "**/layouts/**"
7
- - "**/middleware/**"
8
- ---
9
-
10
- # Testing en Nuxt
11
-
12
- > Este archivo extiende [common/testing.md](../common/testing.md) con contenido específico de Nuxt.
13
-
14
- Paquete: `@nuxt/test-utils`. Vitest-first para tests unitarios y de componentes, con soporte integrado de E2E en navegador vía Playwright. nuxt-vitest y vitest-environment-nuxt quedaron obsoletos y están absorbidos en él.
15
-
16
- ## Configuración
17
-
18
- - Instala las dependencias de desarrollo: `@nuxt/test-utils vitest @vue/test-utils happy-dom playwright-core`.
19
- - Configuración: `defineVitestConfig({ test: { environment: 'nuxt' } })` desde `@nuxt/test-utils/config`. Usa `defineVitestProject` para multi-proyecto (entornos separados unit / nuxt / e2e).
20
- - Añade `@nuxt/test-utils/module` a `nuxt.config`. Opt-in por archivo vía `// @vitest-environment nuxt`.
21
-
22
- ## Helpers de runtime
23
-
24
- Impórtalos desde `@nuxt/test-utils/runtime`.
25
-
26
- - `mountSuspended(component, opts)` monta en el entorno de Nuxt con setup asíncrono + inyección de plugins (acepta las opciones de mount de `@vue/test-utils` + `route`).
27
- - `renderSuspended(component, opts)` es la variante de Testing Library (necesita `@testing-library/vue`).
28
- - `mockNuxtImport(name, factory)` mockea auto-imports (p. ej. `useState`). Una vez por import por archivo; usa `vi.hoisted()`.
29
- - `mockComponent(name, factory)` mockea por nombre en PascalCase o por ruta.
30
- - `registerEndpoint(path, handler|opts)` mockea un endpoint de Nitro para probar rutas de servidor o simular el backend. Soporta método + `once`.
31
-
32
- ## Helpers de E2E
33
-
34
- Impórtalos desde `@nuxt/test-utils/e2e`.
35
-
36
- - `await setup({ rootDir, server, browser, ... })` dentro del bloque describe (gestiona beforeAll/afterAll).
37
- - Después: `$fetch(url)` (HTML renderizado), `fetch(url)` (objeto de respuesta), `url(path)` (URL completa con puerto), `createPage(url)` (Playwright).
38
- - Integración con Playwright: importa `expect` / `test` desde `@nuxt/test-utils/playwright`.
39
-
40
- ## Qué probar y cómo
41
-
42
- - Composables: mockea los auto-imports con `mockNuxtImport` y monta un componente anfitrión vía `mountSuspended` para ejercitar `useState` / `useFetch` en el runtime de Nuxt.
43
- - Rutas de servidor: `registerEndpoint` para simularlas, o E2E con `$fetch` / `fetch` contra el servidor Nitro real.
44
-
45
- ## Referencia
46
-
47
- - Skills: `patrones-nuxt4`, `testing-e2e`, `patrones-vite`.
48
- - [Documentación de testing de Nuxt](https://nuxt.com/docs/getting-started/testing)
49
- - [@nuxt/test-utils en npm](https://www.npmjs.com/package/@nuxt/test-utils)
@@ -1,40 +0,0 @@
1
- ---
2
- paths:
3
- - "**/*.php"
4
- - "**/composer.json"
5
- ---
6
- # Estilo de código PHP
7
-
8
- > Este archivo extiende [common/coding-style.md](../common/coding-style.md) con contenido específico de PHP.
9
-
10
- ## Estándares
11
-
12
- - Sigue las convenciones de formato y nombres de **PSR-12**.
13
- - Prefiere `declare(strict_types=1);` en código de aplicación.
14
- - Usa type hints escalares, tipos de retorno y propiedades tipadas en todo lugar donde el código nuevo lo permita.
15
-
16
- ## Inmutabilidad
17
-
18
- - Prefiere DTOs inmutables y value objects para los datos que cruzan fronteras entre servicios.
19
- - Usa propiedades `readonly` o constructores inmutables para los payloads de request/response siempre que sea posible.
20
- - Mantén arrays para mapas simples; promueve las estructuras críticas para el negocio a clases explícitas.
21
-
22
- ## Formato
23
-
24
- - Usa **PHP-CS-Fixer** o **Laravel Pint** para el formateo.
25
- - Usa **PHPStan** o **Psalm** para el análisis estático.
26
- - Mantén los scripts de Composer versionados en el repo para que los mismos comandos corran en local y en CI.
27
-
28
- ## Imports
29
-
30
- - Añade sentencias `use` para todas las clases, interfaces y traits referenciados.
31
- - Evita depender del namespace global salvo que el proyecto prefiera explícitamente nombres totalmente cualificados.
32
-
33
- ## Manejo de errores
34
-
35
- - Lanza excepciones para estados excepcionales; evita devolver `false`/`null` como canales de error ocultos en código nuevo.
36
- - Convierte la entrada del framework/request en DTOs validados antes de que llegue a la lógica de dominio.
37
-
38
- ## Referencia
39
-
40
- Consulta la skill `patrones-backend` para una guía más amplia sobre capas de servicios y repositorios.
@@ -1,24 +0,0 @@
1
- ---
2
- paths:
3
- - "**/*.php"
4
- - "**/composer.json"
5
- - "**/phpstan.neon"
6
- - "**/phpstan.neon.dist"
7
- - "**/psalm.xml"
8
- ---
9
- # Hooks para PHP
10
-
11
- > Este archivo extiende [common/hooks.md](../common/hooks.md) con contenido específico de PHP.
12
-
13
- ## Hooks PostToolUse
14
-
15
- Configúralos en `~/.theus/settings.json`:
16
-
17
- - **Pint / PHP-CS-Fixer**: auto-formatea los archivos `.php` editados.
18
- - **PHPStan / Psalm**: ejecuta análisis estático tras ediciones de PHP en bases de código tipadas.
19
- - **PHPUnit / Pest**: ejecuta tests dirigidos a los archivos o módulos tocados cuando las ediciones afectan el comportamiento.
20
-
21
- ## Advertencias
22
-
23
- - Advierte sobre `var_dump`, `dd`, `dump` o `die()` que queden en archivos editados.
24
- - Advierte cuando archivos PHP editados añadan SQL crudo o deshabiliten protecciones CSRF/de sesión.
@@ -1,33 +0,0 @@
1
- ---
2
- paths:
3
- - "**/*.php"
4
- - "**/composer.json"
5
- ---
6
- # Patrones de PHP
7
-
8
- > Este archivo extiende [common/patterns.md](../common/patterns.md) con contenido específico de PHP.
9
-
10
- ## Controladores delgados, servicios explícitos
11
-
12
- - Mantén los controladores enfocados en el transporte: auth, validación, serialización, códigos de estado.
13
- - Mueve las reglas de negocio a servicios de aplicación/dominio que sean fáciles de testear sin arrancar toda la capa HTTP.
14
-
15
- ## DTOs y value objects
16
-
17
- - Reemplaza los arrays asociativos con muchas formas implícitas por DTOs para requests, comandos y payloads de APIs externas.
18
- - Usa value objects para dinero, identificadores, rangos de fechas y otros conceptos con restricciones.
19
-
20
- ## Inyección de dependencias
21
-
22
- - Depende de interfaces o contratos de servicio acotados, no de globals del framework.
23
- - Pasa los colaboradores por los constructores para que los servicios sean testeables sin búsquedas por service locator.
24
-
25
- ## Fronteras
26
-
27
- - Aísla los modelos del ORM de las decisiones de dominio cuando la capa de modelos hace más que persistencia.
28
- - Envuelve los SDKs de terceros detrás de adaptadores pequeños para que el resto del código dependa de tu contrato, no del de ellos.
29
-
30
- ## Referencia
31
-
32
- Consulta la skill `diseno-api` para convenciones de endpoints y guía sobre la forma de las respuestas.
33
- Consulta la skill `patrones-laravel` para guía de arquitectura específica de Laravel.
@@ -1,37 +0,0 @@
1
- ---
2
- paths:
3
- - "**/*.php"
4
- - "**/composer.lock"
5
- - "**/composer.json"
6
- ---
7
- # Seguridad en PHP
8
-
9
- > Este archivo extiende [common/security.md](../common/security.md) con contenido específico de PHP.
10
-
11
- ## Entrada y salida
12
-
13
- - Valida la entrada de los requests en la frontera del framework (`FormRequest`, Symfony Validator o validación explícita con DTOs).
14
- - Escapa la salida en las plantillas por defecto; trata el renderizado de HTML crudo como una excepción que debe justificarse.
15
- - Nunca confíes en query params, cookies, headers ni metadatos de archivos subidos sin validarlos.
16
-
17
- ## Seguridad de base de datos
18
-
19
- - Usa sentencias preparadas (`PDO`, Doctrine, el query builder de Eloquent) para todas las consultas dinámicas.
20
- - Evita construir SQL concatenando strings en controladores/vistas.
21
- - Acota con cuidado la asignación masiva del ORM y usa una lista blanca de campos escribibles.
22
-
23
- ## Secretos y dependencias
24
-
25
- - Carga los secretos desde variables de entorno o un gestor de secretos, nunca desde archivos de configuración commiteados.
26
- - Ejecuta `composer audit` en CI y revisa la confianza en los mantenedores de cada paquete nuevo antes de añadir dependencias.
27
- - Fija las versiones mayores de forma deliberada y elimina rápido los paquetes abandonados.
28
-
29
- ## Seguridad de auth y sesiones
30
-
31
- - Usa `password_hash()` / `password_verify()` para el almacenamiento de contraseñas.
32
- - Regenera los identificadores de sesión tras la autenticación y tras cambios de privilegios.
33
- - Exige protección CSRF en los requests web que cambian estado.
34
-
35
- ## Referencia
36
-
37
- Consulta la skill `seguridad-laravel` para guía de seguridad específica de Laravel.
@@ -1,38 +0,0 @@
1
- ---
2
- paths:
3
- - "**/*.php"
4
- - "**/phpunit.xml"
5
- - "**/phpunit.xml.dist"
6
- - "**/composer.json"
7
- ---
8
- # Testing en PHP
9
-
10
- > Este archivo extiende [common/testing.md](../common/testing.md) con contenido específico de PHP.
11
-
12
- ## Framework
13
-
14
- Usa **PHPUnit** como framework de tests por defecto. Si el proyecto tiene configurado **Pest**, prefiere Pest para los tests nuevos y evita mezclar frameworks.
15
-
16
- ## Cobertura
17
-
18
- ```bash
19
- vendor/bin/phpunit --coverage-text
20
- # o
21
- vendor/bin/pest --coverage
22
- ```
23
-
24
- Prefiere **pcov** o **Xdebug** en CI, y mantén los umbrales de cobertura en CI en lugar de como conocimiento tribal.
25
-
26
- ## Organización de tests
27
-
28
- - Separa los tests unitarios rápidos de los tests de integración con framework/base de datos.
29
- - Usa factories/builders para las fixtures en lugar de arrays grandes escritos a mano.
30
- - Mantén los tests de HTTP/controladores enfocados en transporte y validación; mueve las reglas de negocio a tests a nivel de servicio.
31
-
32
- ## Inertia
33
-
34
- Si el proyecto usa Inertia.js, prefiere `assertInertia` con `AssertableInertia` para verificar nombres de componentes y props en lugar de aserciones sobre JSON crudo.
35
-
36
- ## Referencia
37
-
38
- Consulta la skill `flujo-tdd` para el ciclo RED -> GREEN -> REFACTOR a nivel de repo.
@@ -1,42 +0,0 @@
1
- ---
2
- paths:
3
- - "**/*.py"
4
- - "**/*.pyi"
5
- ---
6
- # Estilo de código Python
7
-
8
- > Este archivo extiende [common/coding-style.md](../common/coding-style.md) con contenido específico de Python.
9
-
10
- ## Estándares
11
-
12
- - Sigue las convenciones de **PEP 8**
13
- - Usa **anotaciones de tipo** en todas las firmas de funciones
14
-
15
- ## Inmutabilidad
16
-
17
- Prefiere estructuras de datos inmutables:
18
-
19
- ```python
20
- from dataclasses import dataclass
21
-
22
- @dataclass(frozen=True)
23
- class User:
24
- name: str
25
- email: str
26
-
27
- from typing import NamedTuple
28
-
29
- class Point(NamedTuple):
30
- x: float
31
- y: float
32
- ```
33
-
34
- ## Formato
35
-
36
- - **black** para el formateo del código
37
- - **isort** para ordenar los imports
38
- - **ruff** para el linting
39
-
40
- ## Referencia
41
-
42
- Consulta la skill `patrones-python` para idiomas y patrones de Python en profundidad.