theus-cli 0.2.83 → 0.2.85

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 -508227
  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,241 +0,0 @@
1
- ---
2
- name: logistica-inversa-devoluciones
3
- description: Experiencia codificada para autorización de devoluciones, recepción e inspección,
4
- decisiones de disposición, procesamiento de reembolsos, detección de fraude y gestión de reclamos
5
- de garantía. Incluye marcos de clasificación, economía de disposición, reconocimiento de patrones de
6
- fraude y procesos de recuperación con proveedores. Úsala al gestionar devoluciones de productos,
7
- logística inversa, decisiones de reembolso, detección de fraude en devoluciones o reclamos de garantía.
8
- ---
9
-
10
- # Devoluciones y logística inversa
11
-
12
- ## Rol y contexto
13
-
14
- Actúa como gerente sénior de operaciones de devoluciones con más de 15 años manejando el ciclo de vida
15
- completo de devoluciones en entornos de retail, e-commerce y omnicanal. Tus responsabilidades abarcan la
16
- autorización de devolución de mercancía (RMA), recepción e inspección, clasificación de condición,
17
- enrutamiento de disposición, procesamiento de reembolsos y créditos, detección de fraude, recuperación
18
- con proveedores (RTV) y gestión de reclamos de garantía. Los sistemas involucrados incluyen OMS (gestión
19
- de pedidos), WMS (gestión de almacén), RMS (gestión de devoluciones), CRM, plataformas de detección de
20
- fraude y portales de proveedores. Equilibras la satisfacción del cliente contra la protección de margen,
21
- la velocidad de procesamiento contra la precisión de inspección, y la prevención de fraude contra la
22
- fricción de falsos positivos al cliente.
23
-
24
- ## Cuándo usarla
25
-
26
- - Al procesar solicitudes de devolución y determinar la elegibilidad de RMA.
27
- - Al inspeccionar bienes devueltos y asignar grados de condición para la disposición.
28
- - Al enrutar decisiones de disposición (restock, reacondicionar, liquidar, desechar, RTV).
29
- - Al investigar patrones de fraude en devoluciones o abuso de las políticas de devolución.
30
- - Al gestionar reclamos de garantía y contracargos de recuperación con proveedores.
31
-
32
- ## Cómo funciona
33
-
34
- 1. Recibe la solicitud de devolución y valida la elegibilidad contra la política (ventana de tiempo, condición, restricciones de categoría).
35
- 2. Emite el RMA con etiqueta prepagada o instrucciones de entrega según el valor del artículo y el motivo de devolución.
36
- 3. Recibe e inspecciona el artículo en el centro de devoluciones; asigna grado de condición (A a D).
37
- 4. Enruta a la disposición óptima según la economía de recuperación (margen de restock vs. liquidación vs. costo de desecho).
38
- 5. Procesa el reembolso o el intercambio según política; marca anomalías para revisión de fraude.
39
- 6. Agrega las devoluciones recuperables con proveedor y presenta reclamos RTV dentro de las ventanas contractuales.
40
-
41
- ## Ejemplos
42
-
43
- - **Devolución de electrónico de alto valor**: un cliente devuelve una laptop de $1,200 alegando "defectuosa". La inspección revela daño cosmético inconsistente con el reclamo de defecto. Recorre la clasificación, la evaluación del costo de reacondicionamiento, el enrutamiento de disposición (reacondicionar y revender al 70% de recuperación vs. RTV al proveedor al 85%) y la evaluación de la bandera de fraude.
44
- - **Detección de devolvedor serial**: una cuenta de cliente muestra tasa de devolución del 47% en 23 pedidos en 6 meses. Analiza el patrón contra indicadores de fraude, calcula la contribución neta de margen y recomienda acción de política (advertencia, devoluciones restringidas o marcado de cuenta).
45
- - **Disputa de reclamo de garantía**: un cliente presenta un reclamo de garantía a los 11 meses de una garantía de 12 meses. El producto muestra señales de mal uso. Construye el paquete de evidencia, aplica los criterios de exclusión de garantía del fabricante y redacta la comunicación al cliente.
46
-
47
- ## Conocimiento central
48
-
49
- ### Lógica de política de devoluciones
50
-
51
- Toda devolución empieza con la evaluación de política. El motor de política debe considerar reglas superpuestas y a veces conflictivas:
52
-
53
- - **Ventana estándar de devolución:** típicamente 30 días desde la entrega para mercancía general. Electrónicos a menudo 15 días. Perecederos no retornables. Muebles/colchones 30-90 días con requisitos de condición específicos. Las ventanas extendidas de temporada (compras del 1 nov – 31 dic retornables hasta el 31 ene) crean un pico a mediados de enero.
54
- - **Requisitos de condición:** la mayoría de las políticas exigen empaque original, todos los accesorios y sin señales de uso más allá de una inspección razonable. La "inspección razonable" es donde viven las disputas — un cliente que retiró la película protectora de la pantalla de una laptop técnicamente alteró el producto, pero es comportamiento normal de desempaque.
55
- - **Recibo y comprobante de compra:** la búsqueda de la transacción de punto de venta por tarjeta de crédito, número de lealtad o teléfono ha reemplazado en gran medida los recibos en papel. Los recibos de regalo dan derecho al portador a intercambio o crédito en tienda al precio de compra, nunca reembolso en efectivo. Las devoluciones sin recibo tienen tope (típicamente $50-75 por transacción, 3 por cada 12 meses móviles) y se reembolsan al precio de venta reciente más bajo.
56
- - **Cargos por reposición (restocking):** aplican a electrónicos abiertos (15%), artículos de pedido especial (20-25%) y artículos grandes/voluminosos que requieren coordinación de envío de retorno (typ.). Se eximen para productos defectuosos o errores de cumplimiento. Decidir eximir por buena voluntad requiere conciencia de margen — eximir un cargo de $45 sobre un artículo de $300 con 28% de margen cuesta más de lo que parece.
57
- - **Devoluciones entre canales:** comprar en línea y devolver en tienda (BORIS) es esperado por los clientes y operacionalmente complejo. Los precios en línea pueden diferir de los de tienda. El reembolso debe coincidir con el precio de compra original, no con el precio de anaquel actual. El sistema de inventario debe aceptar la unidad de vuelta al inventario de tienda o marcarla para retorno al centro de distribución.
58
- - **Devoluciones internacionales:** la elegibilidad de reintegro de aranceles (duty drawback) requiere prueba de reexportación dentro de la ventana estatutaria (típicamente 3-5 años según el país). Los costos de envío de retorno a menudo exceden el valor del producto en artículos de bajo costo — ofrece "reembolso sin retorno" cuando el envío supera el 40% del valor del producto. Las declaraciones aduaneras de bienes devueltos difieren de la documentación de exportación original.
59
- - **Excepciones:** devoluciones por igualación de precio (el cliente lo encontró más barato), arrepentimiento del comprador fuera de ventana con circunstancias convincentes, productos defectuosos fuera de garantía y anulaciones por nivel de lealtad (los clientes de nivel superior obtienen ventanas extendidas y cargos eximidos) requieren marcos de juicio en lugar de reglas rígidas.
60
-
61
- ### Inspección y clasificación
62
-
63
- Los productos devueltos requieren una clasificación consistente que impulse las decisiones de disposición. Velocidad y precisión están en tensión — una inspección visual de 30 segundos mueve volumen pero omite defectos cosméticos; una prueba funcional de 5 minutos detecta todo pero crea cuello de botella a escala:
64
-
65
- - **Grado A (como nuevo):** empaque original intacto, todos los accesorios presentes, sin señales de uso, pasa la prueba funcional. Reponible como nuevo o "caja abierta" con recuperación de margen completa (85-100% del retail original). Tiempo objetivo de inspección: 45-90 segundos.
66
- - **Grado B (bueno):** desgaste cosmético menor, empaque original quizá dañado o sin la funda exterior, todos los accesorios presentes, plenamente funcional. Reponible como "caja abierta" o "renovado" al 60-80% del retail. Puede requerir reempaque ($2-5 por unidad). Tiempo objetivo de inspección: 90-180 segundos.
67
- - **Grado C (regular):** desgaste visible, rayones o daño menor. Faltan accesorios que cuestan <10% del valor de la unidad. Funcional pero cosméticamente afectado. Se vende por canales secundarios (outlet, marketplace, liquidación) al 30-50% del retail. Reacondicionamiento posible si el costo < 20% del valor recuperado.
68
- - **Grado D (recuperación/partes):** no funcional, muy dañado o le faltan componentes críticos. Recuperable para partes o materiales al 5-15% del retail. Si la recuperación de partes no es viable, se enruta a reciclaje o destrucción.
69
-
70
- Los estándares de clasificación varían por categoría. Los electrónicos de consumo requieren prueba funcional (encendido, revisión de pantalla, conectividad) agregando 2-4 minutos por unidad. La inspección de ropa se enfoca en manchas, olor, tela estirada y etiquetas faltantes — los inspectores experimentados usan la "prueba de olfato a distancia de brazo" y luz UV para detección de manchas. Los cosméticos y artículos de cuidado personal casi nunca son reponibles una vez abiertos por regulaciones de salud.
71
-
72
- ### Árboles de decisión de disposición
73
-
74
- La disposición es donde las devoluciones recuperan valor o destruyen margen. La decisión de enrutamiento se rige por economía:
75
-
76
- - **Reponer como nuevo:** solo Grado A con empaque completo. El producto debe pasar cualquier prueba funcional/de seguridad requerida. El reetiquetado o resellado puede desencadenar problemas regulatorios (aplicación de "usado como nuevo" por la FTC). Mejor para artículos de alto margen donde el costo de reposición ($3-8 por unidad) es trivial frente al valor recuperado.
77
- - **Reempacar y vender como "caja abierta":** Grado A con empaque dañado o artículos Grado B. El costo de reempaque ($5-15 según complejidad) debe justificarse por la diferencia de margen entre caja abierta y el siguiente canal inferior. Los electrónicos y pequeños electrodomésticos son el punto óptimo.
78
- - **Reacondicionar:** económicamente viable cuando el costo de reacondicionamiento < 40% del precio de venta reacondicionado, y existe un canal de venta de reacondicionados (programa de certificados, outlet del fabricante). Común para electrónicos premium, herramientas eléctricas y pequeños electrodomésticos. Requiere estación dedicada de reacondicionamiento, inventario de refacciones y capacidad de reprueba.
79
- - **Liquidar:** artículos Grado C y algunos Grado B donde el reempaque/reacondicionamiento no se justifica. Los canales de liquidación incluyen subastas de tarimas (B-Stock, DirectLiquidation, Bulq), liquidadores mayoristas (precio por libra para ropa, por unidad para electrónicos) y liquidadores regionales. Tasas de recuperación: 5-20% del retail. Insight crítico: mezclar categorías en una tarima destruye valor — las tarimas de electrónicos/ropa/hogar se venden a la tasa de la categoría más baja.
80
- - **Donar:** deducible de impuestos al valor justo de mercado (FMV). Más valioso que la liquidación cuando FMV > recuperación por liquidación Y la empresa tiene suficiente obligación fiscal para aprovechar la deducción. Protección de marca: restringe donaciones de productos de marca que puedan terminar en canales de descuento que erosionen el posicionamiento.
81
- - **Destruir:** requerido para productos con recall, artículos falsificados encontrados en el flujo de devoluciones, productos con requisitos regulatorios de eliminación (baterías, electrónicos con cumplimiento WEEE, materiales peligrosos) y bienes de marca donde cualquier presencia en el mercado secundario sea inaceptable. Se requiere certificado de destrucción para cumplimiento y documentación fiscal.
82
-
83
- ### Detección de fraude
84
-
85
- El fraude en devoluciones cuesta a los retailers de EE. UU. más de $24 mil millones al año. El reto es detectar sin crear fricción para clientes legítimos:
86
-
87
- - **Wardrobing (usar y devolver):** el cliente compra ropa o accesorios, los usa para un evento y los devuelve. Indicadores: devoluciones agrupadas en fechas/eventos, residuo de desodorante, maquillaje en cuellos, tela arrugada/estirada inconsistente con "solo probado". Contramedida: inspección con luz negra para rastros cosméticos, etiquetas de seguridad RFID que el cliente no debe retirar (si falta la etiqueta, el artículo se usó).
88
- - **Fraude de recibo:** usar recibos encontrados, robados o fabricados para devolver mercancía hurtada a cambio de efectivo. En declive conforme la búsqueda de recibo digital reemplaza el papel, pero aún ocurre. Contramedida: exigir identificación para todo reembolso en efectivo, emparejar la devolución con el método de pago original, limitar devoluciones sin recibo por identificación.
89
- - **Fraude de intercambio (swap):** devolver un artículo falsificado, más barato o roto en el empaque de un artículo comprado. Común en electrónicos (devolver un teléfono usado en la caja de uno nuevo) y cosméticos (rellenar un envase con producto más barato). Contramedida: verificación de número de serie al retorno, verificación de peso contra el peso esperado, inspección detallada de artículos de alto valor antes de procesar el reembolso.
90
- - **Devolvedores seriales:** clientes con tasas de devolución > 30% de las compras o > $5,000 en devoluciones anuales. No todos son fraudulentos — algunos son genuinamente indecisos o compran por tallas (bracketing). Segmenta por: consistencia del motivo de devolución, condición del producto al retorno, valor neto de vida tras devoluciones. Un cliente con $50K en compras y $18K en devoluciones (36%) pero $32K de ingreso neto vale más que uno con $15K en compras y cero devoluciones.
91
- - **Bracketing:** ordenar intencionalmente múltiples tallas/colores con el plan de devolver la mayoría. Comportamiento de compra legítimo que se vuelve costoso a escala. Aborda con tecnología de ajuste (recomendadores de talla, prueba con RA), políticas generosas de intercambio (intercambio gratis, cargo de reposición en devolución) y educación en lugar de castigo.
92
- - **Arbitraje de precio:** comprar durante promociones/descuentos y luego devolver en otra ubicación o momento por crédito a precio completo. La política debe atar el reembolso al precio de compra real sin importar el precio de venta actual. Las devoluciones entre canales son el vector principal.
93
- - **Crimen organizado de retail (ORC):** operaciones coordinadas de robo-y-devolución a través de múltiples tiendas/identidades. Indicadores: devoluciones de alto valor desde múltiples identidades en la misma dirección, devoluciones de categorías comúnmente hurtadas (electrónicos, cosméticos, salud), agrupamiento geográfico. Reporta al equipo de prevención de pérdidas (LP) — esto excede las operaciones estándar de devolución.
94
-
95
- ### Recuperación con proveedores
96
-
97
- No todas las devoluciones son culpa del cliente. Los productos defectuosos, errores de cumplimiento y problemas de calidad tienen una vía de recuperación de costo de vuelta al proveedor:
98
-
99
- - **Devolución a proveedor (RTV):** productos defectuosos devueltos dentro de la garantía o ventana de reclamo de defecto del proveedor. Proceso: acumula unidades defectuosas (los umbrales mínimos de embarque RTV varían por proveedor, típicamente $200-500), obtén número de autorización RTV, envía a la instalación designada del proveedor, da seguimiento a la emisión del crédito. Falla común: dejar producto elegible para RTV en el almacén de devoluciones más allá de la ventana de reclamo del proveedor (a menudo 90 días desde la recepción).
100
- - **Reclamos de defecto:** cuando la tasa de defectos excede el umbral del acuerdo con el proveedor (típicamente 2-5%), presenta un reclamo formal por el exceso. Requiere documentación del defecto (fotos, notas de inspección, datos de quejas de clientes agregados por SKU). Los proveedores objetarán — la calidad de tus datos determina tu recuperación.
101
- - **Contracargos a proveedor:** por problemas causados por el proveedor (artículo equivocado enviado desde el CD del proveedor, productos mal etiquetados, fallas de empaque) contracarga el costo total incluyendo envío de retorno y labor de procesamiento. Requiere un programa de cumplimiento de proveedores con estándares publicados y esquemas de penalización.
102
- - **Crédito vs. reemplazo vs. cancelación:** si el proveedor es solvente y receptivo, busca crédito. Si el proveedor está en el extranjero con cobranza difícil, negocia producto de reemplazo. Si el reclamo es pequeño (< $200) y el proveedor es crítico, considera cancelarlo y anotarlo en la próxima negociación de contrato.
103
-
104
- ### Gestión de garantía
105
-
106
- Los reclamos de garantía son distintos de las devoluciones y siguen un flujo diferente:
107
-
108
- - **Garantía vs. devolución:** una devolución es un cliente ejerciendo su derecho a revertir una compra (típicamente en 30 días, cualquier motivo). Un reclamo de garantía es un cliente reportando un defecto del producto dentro del periodo de cobertura (90 días a vida). Sistemas distintos, políticas distintas, tratamiento financiero distinto.
109
- - **Obligación de fabricante vs. retailer:** el retailer suele ser responsable de la ventana de devolución. El fabricante es responsable del periodo de garantía. Zona gris: el producto "limón" que sigue fallando dentro de garantía — el cliente quiere reembolso, el fabricante ofrece reparación y el retailer queda en medio.
110
- - **Garantías extendidas/planes de protección:** vendidos en el punto de venta con márgenes del 30-60%. Los reclamos contra garantías extendidas los maneja el proveedor de garantía (a menudo un tercero). El rol del retailer es facilitar el reclamo, no procesarlo. Queja común: los clientes no distinguen entre la política de devolución del retailer, la garantía del fabricante y la cobertura de garantía extendida.
111
-
112
- ## Marcos de decisión
113
-
114
- ### Enrutamiento de disposición por categoría y condición
115
-
116
- | Categoría | Grado A | Grado B | Grado C | Grado D |
117
- |---|---|---|---|---|
118
- | Electrónicos de consumo | Reponer (probar primero) | Caja abierta / Renovado | Reacondicionar si ROI > 40%, si no liquidar | Recuperar partes o e-waste |
119
- | Ropa | Reponer si tiene etiquetas | Reempacar / outlet | Liquidar por peso | Reciclaje textil |
120
- | Hogar y muebles | Reponer | Caja abierta con descuento | Liquidar (local, evitar envío) | Donar o destruir |
121
- | Salud y belleza | Reponer si sellado | Destruir (regulación) | Destruir | Destruir |
122
- | Libros y medios | Reponer | Reponer (descuento) | Liquidar | Reciclar |
123
- | Artículos deportivos | Reponer | Caja abierta | Reacondicionar si costo < 25% del valor | Partes o donar |
124
- | Juguetes y juegos | Reponer si sellado | Caja abierta | Liquidar | Donar (si cumple seguridad) |
125
-
126
- ### Modelo de puntuación de fraude
127
-
128
- Puntúa cada devolución 0-100. Marca para revisión en 65+, retén el reembolso en 80+:
129
-
130
- | Señal | Puntos | Notas |
131
- |---|---|---|
132
- | Tasa de devolución > 30% (12 meses móviles) | +15 | Ajustada por normas de categoría |
133
- | Artículo devuelto dentro de 48 h de la entrega | +5 | Podría ser bracketing legítimo |
134
- | Electrónico de alto valor, número de serie no coincide | +40 | Fraude de intercambio casi seguro |
135
- | Motivo de devolución cambió entre inicio y recepción | +10 | Bandera de inconsistencia |
136
- | Múltiples devoluciones en la misma semana | +10 | Acumulativo con la señal de tasa |
137
- | Devolución desde dirección distinta a la de envío | +10 | Devoluciones de regalo excluidas |
138
- | Peso del producto difiere > 5% del esperado | +25 | Intercambio o componentes faltantes |
139
- | Cuenta del cliente < 30 días de antigüedad | +10 | Riesgo de cuenta nueva |
140
- | Devolución sin recibo | +15 | Mayor riesgo de fraude de recibo |
141
- | Artículo en categoría de alta merma | +5 | Electrónicos, cosméticos, ropa de diseñador |
142
-
143
- ### ROI de recuperación con proveedores
144
-
145
- Busca recuperación cuando: `(crédito esperado × probabilidad de cobro) > (costo de labor + costo de envío + costo de relación)`. Reglas prácticas:
146
-
147
- - Reclamos > $500: siempre busca. La cuenta funciona aun con 50% de probabilidad de cobro.
148
- - Reclamos $200-500: busca si el proveedor tiene un programa RTV funcional y puedes agrupar embarques.
149
- - Reclamos < $200: acumula hasta alcanzar el umbral, o compénsalo contra la próxima orden de compra. No envíes unidades individuales.
150
- - Proveedores en el extranjero: aumenta el umbral mínimo a $1,000. Suma 30% al tiempo esperado de procesamiento.
151
-
152
- ### Lógica de excepciones de política de devolución
153
-
154
- Cuando una devolución cae fuera de la política estándar, evalúa en este orden:
155
-
156
- 1. **¿El producto es defectuoso?** Si sí, acepta sin importar ventana ni condición. Los productos defectuosos son problema de la empresa, no del cliente.
157
- 2. **¿Es un cliente de alto valor?** (Top 10% por LTV) Si sí, acepta con reembolso estándar. La matemática de retención casi siempre favorece la excepción.
158
- 3. **¿La solicitud es razonable para un observador neutral?** Un cliente que devuelve un abrigo de invierno en marzo que compró en noviembre (4 meses, fuera de la ventana de 30 días) es comprensible. Un cliente que devuelve un traje de baño en diciembre que compró en junio lo es menos.
159
- 4. **¿Cuál es el resultado de disposición?** Si el producto es reponible (Grado A), el costo de la excepción es mínimo — concédela. Si es Grado C o peor, la excepción cuesta margen real.
160
- 5. **¿Conceder crea riesgo de precedente?** Las excepciones únicas por circunstancias documentadas rara vez crean precedente. Las excepciones publicitadas (quejas en redes sociales) siempre lo hacen.
161
-
162
- ## Casos límite clave
163
-
164
- Estas son situaciones donde los flujos estándar fallan. Se incluyen resúmenes breves para expandirlos en manuales específicos del proyecto si se necesita.
165
-
166
- 1. **Electrónico de alto valor con firmware borrado:** el cliente devuelve una laptop alegando defecto, pero la unidad fue restablecida de fábrica y muestra 6 meses de ciclos de batería. El dispositivo se usó extensamente y ahora se devuelve como "defectuoso" — la clasificación debe mirar más allá del estado limpio del software.
167
-
168
- 2. **Devolución de material peligroso con empaque impropio:** el cliente devuelve un producto con baterías de litio o químicos sin el empaque DOT requerido. Aceptar crea responsabilidad regulatoria; rechazar crea un problema de servicio. El producto no puede volver por el envío estándar de paquetería.
169
-
170
- 3. **Devolución transfronteriza con implicaciones aduaneras:** un cliente internacional devuelve un producto exportado con arancel pagado. El reclamo de reintegro de aranceles requiere documentación específica que el cliente no tiene. El costo de envío de retorno puede exceder el valor del producto.
171
-
172
- 4. **Devolución masiva de influencer tras crear contenido:** un influencer compra 20+ artículos, crea contenido y devuelve todos menos uno. Técnicamente dentro de política, pero el valor de marca ya se extrajo. La reposición se complica porque los videos de desempaque muestran los artículos exactos.
173
-
174
- 5. **Reclamo de garantía en producto modificado por el cliente:** el cliente reemplazó un componente del producto (p. ej., ampliar la RAM de una laptop) y luego reclama un defecto de garantía en un componente no relacionado (p. ej., falla de pantalla). La modificación puede o no anular la garantía del defecto reclamado.
175
-
176
- 6. **Devolvedor serial que también es cliente de alto valor:** cliente con $80K de gasto anual y 42% de tasa de devolución. Prohibirle devoluciones pierde un cliente rentable; aceptar el comportamiento lo alienta. Requiere segmentación matizada más allá de la simple tasa de devolución.
177
-
178
- 7. **Devolución de un producto con recall:** el cliente devuelve un producto sujeto a un recall de seguridad activo. El proceso estándar es incorrecto — los productos con recall siguen el programa de recall, no el de devoluciones. Mezclarlos crea responsabilidad y errores de reporte.
179
-
180
- 8. **Devolución con recibo de regalo donde el precio actual excede el de compra:** el receptor del regalo trae un recibo de regalo. El artículo ahora se vende $30 más caro de lo que pagó quien lo regaló. La política dice reembolsar al precio de compra, pero el cliente ve el precio de anaquel y espera ese monto.
181
-
182
- ## Patrones de comunicación
183
-
184
- ### Calibración del tono
185
-
186
- - **Confirmación de reembolso estándar:** cálido, eficiente. Encabeza con el monto de resolución y el plazo, no con el proceso.
187
- - **Negación de devolución:** empático pero claro. Explica la política específica, ofrece alternativas (intercambio, crédito en tienda, reclamo de garantía), provee ruta de escalamiento. Nunca dejes al cliente sin opciones.
188
- - **Retención por investigación de fraude:** neutral, factual. "Necesitamos tiempo adicional para procesar tu devolución" — nunca digas "fraude" ni "investigación" al cliente. Provee un plazo. Las comunicaciones internas son donde documentas los indicadores de fraude.
189
- - **Explicación de cargo por reposición:** transparente. Explica qué cubre el cargo (inspección, reempaque, pérdida de valor) y confirma el reembolso neto antes de procesar para que no haya sorpresas.
190
- - **Reclamo RTV a proveedor:** profesional, basado en evidencia. Incluye datos de defecto, fotos, volúmenes de devolución por SKU y referencia a la sección del acuerdo que cubre reclamos de defecto.
191
-
192
- ### Plantillas clave
193
-
194
- Las plantillas breves aparecen abajo. Adáptalas a tus flujos de fraude, experiencia de cliente y logística inversa antes de usarlas en producción.
195
-
196
- **Aprobación de RMA:** Asunto: `Devolución aprobada — Pedido #{id_pedido}`. Provee: número de RMA, instrucciones de envío de retorno, plazo esperado de reembolso, requisitos de condición.
197
-
198
- **Confirmación de reembolso:** encabeza con el número: "Tu reembolso de ${monto} fue procesado a tu [método de pago]. Permite [X] días hábiles."
199
-
200
- **Aviso de retención por fraude:** "Tu devolución está siendo revisada por nuestro equipo de procesamiento. Esperamos tener una actualización en [X] días hábiles. Agradecemos tu paciencia."
201
-
202
- ## Protocolos de escalamiento
203
-
204
- ### Disparadores automáticos de escalamiento
205
-
206
- | Disparador | Acción | Plazo |
207
- |---|---|---|
208
- | Valor de devolución > $5,000 (un artículo) | Aprobación de supervisor antes del reembolso | Antes de procesar |
209
- | Puntuación de fraude ≥ 80 | Retener reembolso, enrutar al equipo de revisión de fraude | De inmediato |
210
- | Cliente presentó un contracargo simultáneamente | Detener procesamiento, coordinar con el equipo de pagos | En 1 hora |
211
- | Producto identificado con recall | Enrutar al coordinador de recall, no procesar como devolución estándar | De inmediato |
212
- | Tasa de defectos de proveedor excede 5% para un SKU | Notificar a merchandising y gestión de proveedores | En 24 horas |
213
- | Tercera solicitud de excepción del mismo cliente en 12 meses | Revisión gerencial antes de conceder | Antes de procesar |
214
- | Sospecha de falsificación en el flujo de devoluciones | Retirar del procesamiento, fotografiar, notificar a LP y protección de marca | De inmediato |
215
- | Devolución involucra producto regulado (farma, materiales peligrosos, dispositivo médico) | Enrutar al equipo de cumplimiento | De inmediato |
216
-
217
- ### Cadena de escalamiento
218
-
219
- Nivel 1 (Asociado de Devoluciones) → Nivel 2 (Líder de Equipo, 2 horas) → Nivel 3 (Gerente de Devoluciones, 8 horas) → Nivel 4 (Director de Operaciones, 24 horas) → Nivel 5 (VP, 48+ horas o cualquier devolución de un solo artículo > $25K)
220
-
221
- ## Indicadores de desempeño
222
-
223
- | Métrica | Meta | Bandera roja |
224
- |---|---|---|
225
- | Tiempo de procesamiento (recepción a reembolso) | < 48 horas | > 96 horas |
226
- | Precisión de inspección (acuerdo de grado en auditoría) | > 95% | < 88% |
227
- | Tasa de reposición (% devoluciones repuestas como nuevo/caja abierta) | > 45% | < 30% |
228
- | Tasa de detección de fraude (fraude confirmado atrapado) | > 80% | < 60% |
229
- | Tasa de falsos positivos (devoluciones legítimas marcadas) | < 3% | > 8% |
230
- | Tasa de recuperación con proveedor ($ recuperado / $ elegible) | > 70% | < 45% |
231
- | Satisfacción del cliente (CSAT post-devolución) | > 4.2/5.0 | < 3.5/5.0 |
232
- | Costo por devolución procesada | < $8.00 | > $15.00 |
233
-
234
- ## Recursos adicionales
235
-
236
- - Combina esta skill con tu rúbrica de clasificación, umbrales de revisión de fraude y matriz de autoridad de reembolso antes de usarla en producción.
237
- - Mantén los estándares de reposición, el manejo de devoluciones de material peligroso y las reglas de liquidación cerca del equipo operativo que ejecutará las decisiones.
238
-
239
- ## Nota
240
-
241
- Esta skill es una guía metodológica de operaciones. No sustituye la asesoría legal, fiscal, aduanera ni regulatoria; las decisiones sobre productos con recall, materiales peligrosos, devoluciones transfronterizas y productos regulados deben validarse con las personas responsables y calificadas de tu organización.
@@ -1,375 +0,0 @@
1
- ---
2
- name: manejo-errores
3
- description: Patrones para un manejo de errores robusto en TypeScript, Python y Go. Cubre errores tipados, error boundaries, reintentos, circuit breakers y mensajes de error de cara al usuario.
4
- ---
5
-
6
- # Patrones de manejo de errores
7
-
8
- Patrones de manejo de errores consistentes y robustos para aplicaciones en producción.
9
-
10
- ## Cuándo activarla
11
-
12
- - Al diseñar tipos de error o jerarquías de excepciones para un módulo o servicio nuevo
13
- - Al añadir lógica de reintentos o circuit breakers para dependencias externas poco fiables
14
- - Al revisar endpoints de API en busca de manejo de errores ausente
15
- - Al implementar mensajes de error y retroalimentación de cara al usuario
16
- - Al depurar fallos en cascada o errores silenciados
17
-
18
- ## Principios fundamentales
19
-
20
- 1. **Falla rápido y de forma visible** — haz aflorar los errores en el límite donde ocurren; no los entierres
21
- 2. **Errores tipados antes que mensajes de texto** — los errores son valores de primera clase con estructura
22
- 3. **Mensajes de usuario ≠ mensajes de desarrollador** — muestra texto amable al usuario, registra el contexto completo del lado del servidor
23
- 4. **Nunca silencies errores** — cada bloque `catch` debe manejar, relanzar o registrar
24
- 5. **Los errores forman parte del contrato de tu API** — documenta cada código de error que un cliente pueda recibir
25
-
26
- ## TypeScript / JavaScript
27
-
28
- ### Clases de error tipadas
29
-
30
- ```typescript
31
- // Define una jerarquía de errores para tu dominio
32
- export class AppError extends Error {
33
- constructor(
34
- message: string,
35
- public readonly code: string,
36
- public readonly statusCode: number = 500,
37
- public readonly details?: unknown,
38
- ) {
39
- super(message)
40
- this.name = this.constructor.name
41
- // Mantiene la cadena de prototipos correcta en JavaScript transpilado a ES5.
42
- // Necesario para que las comprobaciones `instanceof` (p. ej., `error instanceof NotFoundError`)
43
- // funcionen correctamente al extender la clase Error nativa.
44
- Object.setPrototypeOf(this, new.target.prototype)
45
- }
46
- }
47
-
48
- export class NotFoundError extends AppError {
49
- constructor(resource: string, id: string) {
50
- super(`${resource} not found: ${id}`, 'NOT_FOUND', 404)
51
- }
52
- }
53
-
54
- export class ValidationError extends AppError {
55
- constructor(message: string, details: { field: string; message: string }[]) {
56
- super(message, 'VALIDATION_ERROR', 422, details)
57
- }
58
- }
59
-
60
- export class UnauthorizedError extends AppError {
61
- constructor(reason = 'Authentication required') {
62
- super(reason, 'UNAUTHORIZED', 401)
63
- }
64
- }
65
-
66
- export class RateLimitError extends AppError {
67
- constructor(public readonly retryAfterMs: number) {
68
- super('Rate limit exceeded', 'RATE_LIMITED', 429)
69
- }
70
- }
71
- ```
72
-
73
- ### Patrón Result (estilo sin throw)
74
-
75
- Para operaciones donde el fallo es esperado y frecuente (parseo, llamadas externas):
76
-
77
- ```typescript
78
- type Result<T, E = AppError> =
79
- | { ok: true; value: T }
80
- | { ok: false; error: E }
81
-
82
- function ok<T>(value: T): Result<T> {
83
- return { ok: true, value }
84
- }
85
-
86
- function err<E>(error: E): Result<never, E> {
87
- return { ok: false, error }
88
- }
89
-
90
- // Uso
91
- async function fetchUser(id: string): Promise<Result<User>> {
92
- try {
93
- const user = await db.users.findUnique({ where: { id } })
94
- if (!user) return err(new NotFoundError('User', id))
95
- return ok(user)
96
- } catch (e) {
97
- return err(new AppError('Database error', 'DB_ERROR'))
98
- }
99
- }
100
-
101
- const result = await fetchUser('abc-123')
102
- if (!result.ok) {
103
- // Aquí TypeScript sabe que existe result.error
104
- logger.error('No se pudo obtener el usuario', { error: result.error })
105
- return
106
- }
107
- // Aquí TypeScript sabe que existe result.value
108
- console.log(result.value.email)
109
- ```
110
-
111
- ### Manejador de errores de API (Next.js / Express)
112
-
113
- ```typescript
114
- import { NextRequest, NextResponse } from 'next/server'
115
-
116
- function handleApiError(error: unknown): NextResponse {
117
- // Error de aplicación conocido
118
- if (error instanceof AppError) {
119
- return NextResponse.json(
120
- {
121
- error: {
122
- code: error.code,
123
- message: error.message,
124
- ...(error.details ? { details: error.details } : {}),
125
- },
126
- },
127
- { status: error.statusCode },
128
- )
129
- }
130
-
131
- // Error de validación de Zod
132
- if (error instanceof z.ZodError) {
133
- return NextResponse.json(
134
- {
135
- error: {
136
- code: 'VALIDATION_ERROR',
137
- message: 'Request validation failed',
138
- details: error.issues.map(i => ({
139
- field: i.path.join('.'),
140
- message: i.message,
141
- })),
142
- },
143
- },
144
- { status: 422 },
145
- )
146
- }
147
-
148
- // Error inesperado — registrar detalles, devolver mensaje genérico
149
- console.error('Error inesperado:', error)
150
- return NextResponse.json(
151
- { error: { code: 'INTERNAL_ERROR', message: 'An unexpected error occurred' } },
152
- { status: 500 },
153
- )
154
- }
155
-
156
- export async function POST(req: NextRequest) {
157
- try {
158
- // ... lógica del handler
159
- } catch (error) {
160
- return handleApiError(error)
161
- }
162
- }
163
- ```
164
-
165
- ### Error Boundary de React
166
-
167
- ```typescript
168
- import { Component, ErrorInfo, ReactNode } from 'react'
169
-
170
- interface Props {
171
- fallback: ReactNode
172
- onError?: (error: Error, info: ErrorInfo) => void
173
- children: ReactNode
174
- }
175
-
176
- interface State {
177
- hasError: boolean
178
- error: Error | null
179
- }
180
-
181
- export class ErrorBoundary extends Component<Props, State> {
182
- state: State = { hasError: false, error: null }
183
-
184
- static getDerivedStateFromError(error: Error): State {
185
- return { hasError: true, error }
186
- }
187
-
188
- componentDidCatch(error: Error, info: ErrorInfo) {
189
- this.props.onError?.(error, info)
190
- console.error('Error de React no manejado:', error, info)
191
- }
192
-
193
- render() {
194
- if (this.state.hasError) return this.props.fallback
195
- return this.props.children
196
- }
197
- }
198
-
199
- // Uso
200
- <ErrorBoundary fallback={<p>Algo salió mal. Por favor, recarga la página.</p>}>
201
- <MyComponent />
202
- </ErrorBoundary>
203
- ```
204
-
205
- ## Python
206
-
207
- ### Jerarquía de excepciones personalizada
208
-
209
- ```python
210
- class AppError(Exception):
211
- """Error base de la aplicación."""
212
- def __init__(self, message: str, code: str, status_code: int = 500):
213
- super().__init__(message)
214
- self.code = code
215
- self.status_code = status_code
216
-
217
- class NotFoundError(AppError):
218
- def __init__(self, resource: str, id: str):
219
- super().__init__(f"{resource} not found: {id}", "NOT_FOUND", 404)
220
-
221
- class ValidationError(AppError):
222
- def __init__(self, message: str, details: list[dict] | None = None):
223
- super().__init__(message, "VALIDATION_ERROR", 422)
224
- self.details = details or []
225
- ```
226
-
227
- ### Manejador global de excepciones en FastAPI
228
-
229
- ```python
230
- from fastapi import FastAPI, Request
231
- from fastapi.responses import JSONResponse
232
-
233
- app = FastAPI()
234
-
235
- @app.exception_handler(AppError)
236
- async def app_error_handler(request: Request, exc: AppError) -> JSONResponse:
237
- return JSONResponse(
238
- status_code=exc.status_code,
239
- content={"error": {"code": exc.code, "message": str(exc)}},
240
- )
241
-
242
- @app.exception_handler(Exception)
243
- async def generic_error_handler(request: Request, exc: Exception) -> JSONResponse:
244
- # Registrar todos los detalles, devolver un mensaje genérico
245
- logger.exception("Error inesperado", exc_info=exc)
246
- return JSONResponse(
247
- status_code=500,
248
- content={"error": {"code": "INTERNAL_ERROR", "message": "An unexpected error occurred"}},
249
- )
250
- ```
251
-
252
- ## Go
253
-
254
- ### Errores centinela y envoltura de errores
255
-
256
- ```go
257
- package domain
258
-
259
- import "errors"
260
-
261
- // Errores centinela para verificación de tipo
262
- var (
263
- ErrNotFound = errors.New("not found")
264
- ErrUnauthorized = errors.New("unauthorized")
265
- ErrConflict = errors.New("conflict")
266
- )
267
-
268
- // Envuelve los errores con contexto — nunca pierdas el original
269
- func (r *UserRepository) FindByID(ctx context.Context, id string) (*User, error) {
270
- user, err := r.db.QueryRow(ctx, "SELECT * FROM users WHERE id = $1", id)
271
- if errors.Is(err, sql.ErrNoRows) {
272
- return nil, fmt.Errorf("user %s: %w", id, ErrNotFound)
273
- }
274
- if err != nil {
275
- return nil, fmt.Errorf("querying user %s: %w", id, err)
276
- }
277
- return user, nil
278
- }
279
-
280
- // A nivel del handler, desenvuelve para determinar la respuesta
281
- func (h *Handler) GetUser(w http.ResponseWriter, r *http.Request) {
282
- user, err := h.service.GetUser(r.Context(), chi.URLParam(r, "id"))
283
- if err != nil {
284
- switch {
285
- case errors.Is(err, domain.ErrNotFound):
286
- writeError(w, http.StatusNotFound, "not_found", err.Error())
287
- case errors.Is(err, domain.ErrUnauthorized):
288
- writeError(w, http.StatusForbidden, "forbidden", "Access denied")
289
- default:
290
- slog.Error("error inesperado", "err", err)
291
- writeError(w, http.StatusInternalServerError, "internal_error", "An unexpected error occurred")
292
- }
293
- return
294
- }
295
- writeJSON(w, http.StatusOK, user)
296
- }
297
- ```
298
-
299
- ## Reintentos con backoff exponencial
300
-
301
- ```typescript
302
- interface RetryOptions {
303
- maxAttempts?: number
304
- baseDelayMs?: number
305
- maxDelayMs?: number
306
- retryIf?: (error: unknown) => boolean
307
- }
308
-
309
- async function withRetry<T>(
310
- fn: () => Promise<T>,
311
- options: RetryOptions = {},
312
- ): Promise<T> {
313
- const {
314
- maxAttempts = 3,
315
- baseDelayMs = 500,
316
- maxDelayMs = 10_000,
317
- retryIf = () => true,
318
- } = options
319
-
320
- let lastError: unknown
321
-
322
- for (let attempt = 1; attempt <= maxAttempts; attempt++) {
323
- try {
324
- return await fn()
325
- } catch (error) {
326
- lastError = error
327
- if (attempt === maxAttempts || !retryIf(error)) throw error
328
-
329
- const jitter = Math.random() * baseDelayMs
330
- const delay = Math.min(baseDelayMs * 2 ** (attempt - 1) + jitter, maxDelayMs)
331
- await new Promise(resolve => setTimeout(resolve, delay))
332
- }
333
- }
334
-
335
- throw lastError
336
- }
337
-
338
- // Uso: reintentar errores de red transitorios, no los 4xx
339
- const data = await withRetry(() => fetch('/api/data').then(r => r.json()), {
340
- maxAttempts: 3,
341
- retryIf: (error) => !(error instanceof AppError && error.statusCode < 500),
342
- })
343
- ```
344
-
345
- ## Mensajes de error de cara al usuario
346
-
347
- Mapea los códigos de error a mensajes legibles por humanos. Mantén los detalles técnicos fuera del texto visible al usuario.
348
-
349
- ```typescript
350
- const USER_ERROR_MESSAGES: Record<string, string> = {
351
- NOT_FOUND: 'No se pudo encontrar el elemento solicitado.',
352
- UNAUTHORIZED: 'Inicia sesión para continuar.',
353
- FORBIDDEN: 'No tienes permiso para hacer eso.',
354
- VALIDATION_ERROR: 'Revisa los datos ingresados e inténtalo de nuevo.',
355
- RATE_LIMITED: 'Demasiadas solicitudes. Espera un momento e inténtalo de nuevo.',
356
- INTERNAL_ERROR: 'Algo salió mal de nuestro lado. Inténtalo de nuevo más tarde.',
357
- }
358
-
359
- export function getUserMessage(code: string): string {
360
- return USER_ERROR_MESSAGES[code] ?? USER_ERROR_MESSAGES.INTERNAL_ERROR
361
- }
362
- ```
363
-
364
- ## Checklist de manejo de errores
365
-
366
- Antes de fusionar cualquier código que toque el manejo de errores:
367
-
368
- - [ ] Cada bloque `catch` maneja, relanza o registra — nada de silenciar errores
369
- - [ ] Los errores de la API siguen el envelope estándar `{ error: { code, message } }`
370
- - [ ] Los mensajes de cara al usuario no contienen stack traces ni detalles internos
371
- - [ ] El contexto completo del error se registra del lado del servidor
372
- - [ ] Las clases de error personalizadas extienden una base `AppError` con un campo `code`
373
- - [ ] Las funciones async hacen aflorar los errores a quien las llama — nada de "disparar y olvidar" sin fallback
374
- - [ ] La lógica de reintentos solo reintenta errores reintentables (no errores 4xx del cliente)
375
- - [ ] Los componentes React están envueltos en `ErrorBoundary` para errores de renderizado