don-cheli-sdd 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. package/AGENTS.md +33 -0
  2. package/CHANGELOG.md +108 -0
  3. package/CLAUDE.md +114 -0
  4. package/LICENSE +190 -0
  5. package/README.es.md +611 -0
  6. package/README.md +640 -0
  7. package/README.pt.md +579 -0
  8. package/VERSION +1 -0
  9. package/agentes/README.md +28 -0
  10. package/agentes/prompts/estimador.md +29 -0
  11. package/comandos/bucle-completar.md +13 -0
  12. package/comandos/bucle-estado.md +13 -0
  13. package/comandos/bucle.md +74 -0
  14. package/comandos/especdev/actualizar.md +200 -0
  15. package/comandos/especdev/agente.md +43 -0
  16. package/comandos/especdev/analizar-sesiones.md +158 -0
  17. package/comandos/especdev/aplicar.md +73 -0
  18. package/comandos/especdev/archivar.md +69 -0
  19. package/comandos/especdev/auditar-seguridad.md +234 -0
  20. package/comandos/especdev/auditar.md +15 -0
  21. package/comandos/especdev/avance-rapido.md +64 -0
  22. package/comandos/especdev/cambios.md +14 -0
  23. package/comandos/especdev/capturar.md +61 -0
  24. package/comandos/especdev/cerrar-sesion.md +88 -0
  25. package/comandos/especdev/clarificar.md +98 -0
  26. package/comandos/especdev/comenzar.md +105 -0
  27. package/comandos/especdev/completo.md +49 -0
  28. package/comandos/especdev/continuar.md +59 -0
  29. package/comandos/especdev/contrato-api.md +223 -0
  30. package/comandos/especdev/contrato-ui.md +245 -0
  31. package/comandos/especdev/crear-skill.md +148 -0
  32. package/comandos/especdev/debate.md +119 -0
  33. package/comandos/especdev/desglosar.md +172 -0
  34. package/comandos/especdev/destilar.md +211 -0
  35. package/comandos/especdev/detectar-ambiguedad.md +81 -0
  36. package/comandos/especdev/diagnostico.md +92 -0
  37. package/comandos/especdev/dise/303/261ar.md +74 -0
  38. package/comandos/especdev/doctor.md +78 -0
  39. package/comandos/especdev/donde-estoy.md +32 -0
  40. package/comandos/especdev/especificar.md +189 -0
  41. package/comandos/especdev/estado.md +46 -0
  42. package/comandos/especdev/estimar.md +141 -0
  43. package/comandos/especdev/explorar.md +175 -0
  44. package/comandos/especdev/guardian.md +99 -0
  45. package/comandos/especdev/historial.md +14 -0
  46. package/comandos/especdev/implementar.md +227 -0
  47. package/comandos/especdev/incorporar.md +71 -0
  48. package/comandos/especdev/iniciar.md +82 -0
  49. package/comandos/especdev/limpiar-slop.md +88 -0
  50. package/comandos/especdev/marketplace.md +109 -0
  51. package/comandos/especdev/memorizar.md +31 -0
  52. package/comandos/especdev/mesa-redonda.md +60 -0
  53. package/comandos/especdev/mesa-tecnica.md +144 -0
  54. package/comandos/especdev/migrar.md +237 -0
  55. package/comandos/especdev/minar-referencias.md +214 -0
  56. package/comandos/especdev/planificar-tecnico.md +186 -0
  57. package/comandos/especdev/planning.md +264 -0
  58. package/comandos/especdev/poc.md +302 -0
  59. package/comandos/especdev/presentar.md +75 -0
  60. package/comandos/especdev/proponer.md +69 -0
  61. package/comandos/especdev/pseudocodigo.md +49 -0
  62. package/comandos/especdev/rapido.md +69 -0
  63. package/comandos/especdev/reflexionar.md +53 -0
  64. package/comandos/especdev/retro.md +14 -0
  65. package/comandos/especdev/reversa.md +155 -0
  66. package/comandos/especdev/revisar.md +231 -0
  67. package/comandos/especdev/traspasar.md +76 -0
  68. package/comandos/especdev/traspaso.md +43 -0
  69. package/comandos/especdev/uat.md +84 -0
  70. package/comandos/especdev/validar-spec.md +58 -0
  71. package/comandos/especdev/validar.md +40 -0
  72. package/comandos/historias-generar.md +74 -0
  73. package/comandos/razonar/5-porques.md +42 -0
  74. package/comandos/razonar/circulo-competencia.md +22 -0
  75. package/comandos/razonar/costo-oportunidad.md +21 -0
  76. package/comandos/razonar/inversion.md +40 -0
  77. package/comandos/razonar/mapa-territorio.md +22 -0
  78. package/comandos/razonar/minimizar-arrepentimiento.md +20 -0
  79. package/comandos/razonar/pareto.md +32 -0
  80. package/comandos/razonar/pre-mortem.md +22 -0
  81. package/comandos/razonar/primeros-principios.md +57 -0
  82. package/comandos/razonar/probabilistico.md +21 -0
  83. package/comandos/razonar/reversibilidad.md +27 -0
  84. package/comandos/razonar/rlm-cadena-pensamiento.md +189 -0
  85. package/comandos/razonar/rlm-descomposicion.md +216 -0
  86. package/comandos/razonar/rlm-verificacion.md +169 -0
  87. package/comandos/razonar/segundo-orden.md +35 -0
  88. package/ganchos/parar.md +10 -0
  89. package/ganchos/post-herramienta.md +9 -0
  90. package/ganchos/pre-herramienta.md +19 -0
  91. package/habilidades/arnes-agente/HABILIDAD.md +164 -0
  92. package/habilidades/auto-correccion/HABILIDAD.md +114 -0
  93. package/habilidades/brainstorming/HABILIDAD.md +88 -0
  94. package/habilidades/cambio-carpeta/HABILIDAD.md +100 -0
  95. package/habilidades/code-rag/HABILIDAD.md +306 -0
  96. package/habilidades/contabilidad-tokens/HABILIDAD.md +109 -0
  97. package/habilidades/delta-specs/HABILIDAD.md +102 -0
  98. package/habilidades/desarrollo-subagentes/HABILIDAD.md +51 -0
  99. package/habilidades/deteccion-loops/HABILIDAD.md +168 -0
  100. package/habilidades/deteccion-stubs/HABILIDAD.md +204 -0
  101. package/habilidades/devlog/HABILIDAD.md +84 -0
  102. package/habilidades/documentacion-viva/HABILIDAD.md +231 -0
  103. package/habilidades/estimacion/HABILIDAD.md +48 -0
  104. package/habilidades/extensiones-presets/HABILIDAD.md +133 -0
  105. package/habilidades/generador-specs/HABILIDAD.md +37 -0
  106. package/habilidades/ingenieria-contexto/HABILIDAD.md +34 -0
  107. package/habilidades/integracion-mcp/HABILIDAD.md +59 -0
  108. package/habilidades/leyes-hierro/HABILIDAD.md +45 -0
  109. package/habilidades/mapa-arquitectonico/HABILIDAD.md +93 -0
  110. package/habilidades/memoria-persistente/HABILIDAD.md +97 -0
  111. package/habilidades/obsidian/HABILIDAD.md +93 -0
  112. package/habilidades/optimizacion-tokens/HABILIDAD.md +179 -0
  113. package/habilidades/optimizador-contexto/HABILIDAD.md +106 -0
  114. package/habilidades/orquestacion-autonoma/HABILIDAD.md +133 -0
  115. package/habilidades/permisos-seguridad/HABILIDAD.md +76 -0
  116. package/habilidades/persona/HABILIDAD.md +66 -0
  117. package/habilidades/planning-equipo/HABILIDAD.md +169 -0
  118. package/habilidades/presentaciones/HABILIDAD.md +63 -0
  119. package/habilidades/proyecciones-costo/HABILIDAD.md +54 -0
  120. package/habilidades/prueba-trabajo/HABILIDAD.md +131 -0
  121. package/habilidades/razonamiento/HABILIDAD.md +69 -0
  122. package/habilidades/recuperacion-sesion/HABILIDAD.md +27 -0
  123. package/habilidades/refactorizacion-solid/HABILIDAD.md +182 -0
  124. package/habilidades/reflexion/HABILIDAD.md +37 -0
  125. package/habilidades/rigor-progresivo/HABILIDAD.md +109 -0
  126. package/habilidades/rlm/HABILIDAD.md +85 -0
  127. package/habilidades/routing-modelos/HABILIDAD.md +79 -0
  128. package/habilidades/salud-habilidades/HABILIDAD.md +63 -0
  129. package/habilidades/schemas-dbml/HABILIDAD.md +101 -0
  130. package/habilidades/trazabilidad/HABILIDAD.md +63 -0
  131. package/habilidades/ui-ux-design/HABILIDAD.md +76 -0
  132. package/habilidades/validacion-nyquist/HABILIDAD.md +161 -0
  133. package/habilidades/worktrees/HABILIDAD.md +80 -0
  134. package/locales/en.json +179 -0
  135. package/locales/es.json +179 -0
  136. package/locales/pt.json +179 -0
  137. package/package.json +48 -0
  138. package/plantillas/checklist-requisitos.md +31 -0
  139. package/plantillas/docker/Dockerfile +16 -0
  140. package/plantillas/docker/docker-compose.yml +28 -0
  141. package/plantillas/especdev/WORKFLOW.md +118 -0
  142. package/plantillas/especdev/config.yaml +27 -0
  143. package/plantillas/especdev/en/config.yaml +27 -0
  144. package/plantillas/especdev/en/decisions.md +17 -0
  145. package/plantillas/especdev/en/deferred-work.md +17 -0
  146. package/plantillas/especdev/en/findings.md +7 -0
  147. package/plantillas/especdev/en/knowledge.md +19 -0
  148. package/plantillas/especdev/en/plan.md +35 -0
  149. package/plantillas/especdev/en/progress.md +7 -0
  150. package/plantillas/especdev/en/project-constitution.md +53 -0
  151. package/plantillas/especdev/en/pseudocode.md +35 -0
  152. package/plantillas/especdev/en/runtime.md +26 -0
  153. package/plantillas/especdev/en/status.md +16 -0
  154. package/plantillas/especdev/es/config.yaml +27 -0
  155. package/plantillas/especdev/es/conocimiento.md +19 -0
  156. package/plantillas/especdev/es/constitucion-proyecto.md +53 -0
  157. package/plantillas/especdev/es/decisiones.md +17 -0
  158. package/plantillas/especdev/es/deuda-scope.md +17 -0
  159. package/plantillas/especdev/es/estado.md +16 -0
  160. package/plantillas/especdev/es/hallazgos.md +7 -0
  161. package/plantillas/especdev/es/plan.md +35 -0
  162. package/plantillas/especdev/es/progreso.md +7 -0
  163. package/plantillas/especdev/es/pseudocodigo.md +35 -0
  164. package/plantillas/especdev/es/runtime.md +26 -0
  165. package/plantillas/especdev/estado.md +16 -0
  166. package/plantillas/especdev/hallazgos.md +7 -0
  167. package/plantillas/especdev/isa.yml +152 -0
  168. package/plantillas/especdev/plan.md +35 -0
  169. package/plantillas/especdev/progreso.md +7 -0
  170. package/plantillas/especdev/pt/config.yaml +27 -0
  171. package/plantillas/especdev/pt/conhecimento.md +19 -0
  172. package/plantillas/especdev/pt/constituicao-projeto.md +53 -0
  173. package/plantillas/especdev/pt/decisoes.md +17 -0
  174. package/plantillas/especdev/pt/descobertas.md +7 -0
  175. package/plantillas/especdev/pt/estado.md +16 -0
  176. package/plantillas/especdev/pt/plano.md +35 -0
  177. package/plantillas/especdev/pt/progresso.md +7 -0
  178. package/plantillas/especdev/pt/pseudocodigo.md +35 -0
  179. package/plantillas/especdev/pt/runtime.md +26 -0
  180. package/plantillas/especdev/pt/trabalho-diferido.md +17 -0
  181. package/plantillas/estimado-desarrollo.md +43 -0
  182. package/prompt.md +16 -0
  183. package/reglas/constitucion.md +122 -0
  184. package/reglas/hooks-parar.md +102 -0
  185. package/reglas/i18n.md +47 -0
  186. package/reglas/leyes-hierro.md +18 -0
  187. package/reglas/puertas-calidad.md +87 -0
  188. package/reglas/reglas-desviacion.md +36 -0
  189. package/reglas/reglas-trabajo-globales.md +171 -0
  190. package/reglas/skills-best-practices.md +109 -0
  191. package/scripts/.claude/commands/bucle-completar.md +13 -0
  192. package/scripts/.claude/commands/bucle-estado.md +13 -0
  193. package/scripts/.claude/commands/bucle.md +74 -0
  194. package/scripts/.claude/commands/especdev/actualizar.md +200 -0
  195. package/scripts/.claude/commands/especdev/agente.md +43 -0
  196. package/scripts/.claude/commands/especdev/analizar-sesiones.md +158 -0
  197. package/scripts/.claude/commands/especdev/aplicar.md +73 -0
  198. package/scripts/.claude/commands/especdev/archivar.md +69 -0
  199. package/scripts/.claude/commands/especdev/auditar-seguridad.md +234 -0
  200. package/scripts/.claude/commands/especdev/auditar.md +15 -0
  201. package/scripts/.claude/commands/especdev/avance-rapido.md +64 -0
  202. package/scripts/.claude/commands/especdev/cambios.md +14 -0
  203. package/scripts/.claude/commands/especdev/cerrar-sesion.md +88 -0
  204. package/scripts/.claude/commands/especdev/clarificar.md +98 -0
  205. package/scripts/.claude/commands/especdev/comenzar.md +77 -0
  206. package/scripts/.claude/commands/especdev/completo.md +49 -0
  207. package/scripts/.claude/commands/especdev/continuar.md +59 -0
  208. package/scripts/.claude/commands/especdev/contrato-api.md +223 -0
  209. package/scripts/.claude/commands/especdev/contrato-ui.md +245 -0
  210. package/scripts/.claude/commands/especdev/desglosar.md +172 -0
  211. package/scripts/.claude/commands/especdev/destilar.md +211 -0
  212. package/scripts/.claude/commands/especdev/detectar-ambiguedad.md +81 -0
  213. package/scripts/.claude/commands/especdev/diagnostico.md +92 -0
  214. package/scripts/.claude/commands/especdev/dise/303/261ar.md +74 -0
  215. package/scripts/.claude/commands/especdev/donde-estoy.md +32 -0
  216. package/scripts/.claude/commands/especdev/especificar.md +189 -0
  217. package/scripts/.claude/commands/especdev/estado.md +46 -0
  218. package/scripts/.claude/commands/especdev/estimar.md +141 -0
  219. package/scripts/.claude/commands/especdev/explorar.md +175 -0
  220. package/scripts/.claude/commands/especdev/guardian.md +99 -0
  221. package/scripts/.claude/commands/especdev/historial.md +14 -0
  222. package/scripts/.claude/commands/especdev/implementar.md +227 -0
  223. package/scripts/.claude/commands/especdev/incorporar.md +71 -0
  224. package/scripts/.claude/commands/especdev/iniciar.md +82 -0
  225. package/scripts/.claude/commands/especdev/limpiar-slop.md +88 -0
  226. package/scripts/.claude/commands/especdev/memorizar.md +31 -0
  227. package/scripts/.claude/commands/especdev/mesa-redonda.md +60 -0
  228. package/scripts/.claude/commands/especdev/mesa-tecnica.md +144 -0
  229. package/scripts/.claude/commands/especdev/migrar.md +237 -0
  230. package/scripts/.claude/commands/especdev/minar-referencias.md +214 -0
  231. package/scripts/.claude/commands/especdev/planificar-tecnico.md +186 -0
  232. package/scripts/.claude/commands/especdev/planning.md +264 -0
  233. package/scripts/.claude/commands/especdev/poc.md +302 -0
  234. package/scripts/.claude/commands/especdev/proponer.md +69 -0
  235. package/scripts/.claude/commands/especdev/rapido.md +69 -0
  236. package/scripts/.claude/commands/especdev/reflexionar.md +53 -0
  237. package/scripts/.claude/commands/especdev/retro.md +14 -0
  238. package/scripts/.claude/commands/especdev/reversa.md +155 -0
  239. package/scripts/.claude/commands/especdev/revisar.md +221 -0
  240. package/scripts/.claude/commands/especdev/traspasar.md +76 -0
  241. package/scripts/.claude/commands/especdev/traspaso.md +43 -0
  242. package/scripts/.claude/commands/especdev/validar.md +40 -0
  243. package/scripts/.claude/commands/historias-generar.md +74 -0
  244. package/scripts/.claude/commands/razonar/5-porques.md +42 -0
  245. package/scripts/.claude/commands/razonar/circulo-competencia.md +22 -0
  246. package/scripts/.claude/commands/razonar/costo-oportunidad.md +21 -0
  247. package/scripts/.claude/commands/razonar/inversion.md +40 -0
  248. package/scripts/.claude/commands/razonar/mapa-territorio.md +22 -0
  249. package/scripts/.claude/commands/razonar/minimizar-arrepentimiento.md +20 -0
  250. package/scripts/.claude/commands/razonar/pareto.md +32 -0
  251. package/scripts/.claude/commands/razonar/pre-mortem.md +22 -0
  252. package/scripts/.claude/commands/razonar/primeros-principios.md +57 -0
  253. package/scripts/.claude/commands/razonar/probabilistico.md +21 -0
  254. package/scripts/.claude/commands/razonar/reversibilidad.md +27 -0
  255. package/scripts/.claude/commands/razonar/rlm-cadena-pensamiento.md +189 -0
  256. package/scripts/.claude/commands/razonar/rlm-descomposicion.md +216 -0
  257. package/scripts/.claude/commands/razonar/rlm-verificacion.md +169 -0
  258. package/scripts/.claude/commands/razonar/segundo-orden.md +35 -0
  259. package/scripts/.claude/don-cheli/AGENTS.md +20 -0
  260. package/scripts/.claude/don-cheli/CLAUDE.md +114 -0
  261. package/scripts/.claude/don-cheli/NOTICE +17 -0
  262. package/scripts/.claude/don-cheli/VERSION +1 -0
  263. package/scripts/.claude/don-cheli/agentes/README.md +28 -0
  264. package/scripts/.claude/don-cheli/agentes/prompts/estimador.md +29 -0
  265. package/scripts/.claude/don-cheli/folder-map.json +19 -0
  266. package/scripts/.claude/don-cheli/ganchos/parar.md +10 -0
  267. package/scripts/.claude/don-cheli/ganchos/post-herramienta.md +9 -0
  268. package/scripts/.claude/don-cheli/ganchos/pre-herramienta.md +19 -0
  269. package/scripts/.claude/don-cheli/habilidades/arnes-agente/HABILIDAD.md +155 -0
  270. package/scripts/.claude/don-cheli/habilidades/auto-correccion/HABILIDAD.md +105 -0
  271. package/scripts/.claude/don-cheli/habilidades/brainstorming/HABILIDAD.md +79 -0
  272. package/scripts/.claude/don-cheli/habilidades/cambio-carpeta/HABILIDAD.md +91 -0
  273. package/scripts/.claude/don-cheli/habilidades/code-rag/HABILIDAD.md +297 -0
  274. package/scripts/.claude/don-cheli/habilidades/contabilidad-tokens/HABILIDAD.md +100 -0
  275. package/scripts/.claude/don-cheli/habilidades/delta-specs/HABILIDAD.md +93 -0
  276. package/scripts/.claude/don-cheli/habilidades/desarrollo-subagentes/HABILIDAD.md +42 -0
  277. package/scripts/.claude/don-cheli/habilidades/deteccion-loops/HABILIDAD.md +159 -0
  278. package/scripts/.claude/don-cheli/habilidades/deteccion-stubs/HABILIDAD.md +195 -0
  279. package/scripts/.claude/don-cheli/habilidades/devlog/HABILIDAD.md +75 -0
  280. package/scripts/.claude/don-cheli/habilidades/documentacion-viva/HABILIDAD.md +222 -0
  281. package/scripts/.claude/don-cheli/habilidades/estimacion/HABILIDAD.md +39 -0
  282. package/scripts/.claude/don-cheli/habilidades/extensiones-presets/HABILIDAD.md +124 -0
  283. package/scripts/.claude/don-cheli/habilidades/generador-specs/HABILIDAD.md +28 -0
  284. package/scripts/.claude/don-cheli/habilidades/ingenieria-contexto/HABILIDAD.md +25 -0
  285. package/scripts/.claude/don-cheli/habilidades/integracion-mcp/HABILIDAD.md +50 -0
  286. package/scripts/.claude/don-cheli/habilidades/leyes-hierro/HABILIDAD.md +36 -0
  287. package/scripts/.claude/don-cheli/habilidades/mapa-arquitectonico/HABILIDAD.md +84 -0
  288. package/scripts/.claude/don-cheli/habilidades/memoria-persistente/HABILIDAD.md +88 -0
  289. package/scripts/.claude/don-cheli/habilidades/obsidian/HABILIDAD.md +84 -0
  290. package/scripts/.claude/don-cheli/habilidades/optimizacion-tokens/HABILIDAD.md +170 -0
  291. package/scripts/.claude/don-cheli/habilidades/optimizador-contexto/HABILIDAD.md +97 -0
  292. package/scripts/.claude/don-cheli/habilidades/orquestacion-autonoma/HABILIDAD.md +124 -0
  293. package/scripts/.claude/don-cheli/habilidades/permisos-seguridad/HABILIDAD.md +67 -0
  294. package/scripts/.claude/don-cheli/habilidades/persona/HABILIDAD.md +57 -0
  295. package/scripts/.claude/don-cheli/habilidades/presentaciones/HABILIDAD.md +54 -0
  296. package/scripts/.claude/don-cheli/habilidades/prueba-trabajo/HABILIDAD.md +122 -0
  297. package/scripts/.claude/don-cheli/habilidades/razonamiento/HABILIDAD.md +60 -0
  298. package/scripts/.claude/don-cheli/habilidades/recuperacion-sesion/HABILIDAD.md +18 -0
  299. package/scripts/.claude/don-cheli/habilidades/refactorizacion-solid/HABILIDAD.md +173 -0
  300. package/scripts/.claude/don-cheli/habilidades/reflexion/HABILIDAD.md +15 -0
  301. package/scripts/.claude/don-cheli/habilidades/rigor-progresivo/HABILIDAD.md +100 -0
  302. package/scripts/.claude/don-cheli/habilidades/rlm/HABILIDAD.md +76 -0
  303. package/scripts/.claude/don-cheli/habilidades/schemas-dbml/HABILIDAD.md +92 -0
  304. package/scripts/.claude/don-cheli/habilidades/trazabilidad/HABILIDAD.md +54 -0
  305. package/scripts/.claude/don-cheli/habilidades/ui-ux-design/HABILIDAD.md +67 -0
  306. package/scripts/.claude/don-cheli/habilidades/validacion-nyquist/HABILIDAD.md +152 -0
  307. package/scripts/.claude/don-cheli/habilidades/worktrees/HABILIDAD.md +71 -0
  308. package/scripts/.claude/don-cheli/locale +1 -0
  309. package/scripts/.claude/don-cheli/locales/en.json +179 -0
  310. package/scripts/.claude/don-cheli/locales/es.json +179 -0
  311. package/scripts/.claude/don-cheli/locales/pt.json +179 -0
  312. package/scripts/.claude/don-cheli/plantillas/checklist-requisitos.md +31 -0
  313. package/scripts/.claude/don-cheli/plantillas/docker/Dockerfile +16 -0
  314. package/scripts/.claude/don-cheli/plantillas/docker/docker-compose.yml +28 -0
  315. package/scripts/.claude/don-cheli/plantillas/especdev/WORKFLOW.md +118 -0
  316. package/scripts/.claude/don-cheli/plantillas/especdev/config.yaml +27 -0
  317. package/scripts/.claude/don-cheli/plantillas/especdev/en/config.yaml +27 -0
  318. package/scripts/.claude/don-cheli/plantillas/especdev/en/findings.md +7 -0
  319. package/scripts/.claude/don-cheli/plantillas/especdev/en/plan.md +35 -0
  320. package/scripts/.claude/don-cheli/plantillas/especdev/en/progress.md +7 -0
  321. package/scripts/.claude/don-cheli/plantillas/especdev/en/status.md +16 -0
  322. package/scripts/.claude/don-cheli/plantillas/especdev/es/config.yaml +27 -0
  323. package/scripts/.claude/don-cheli/plantillas/especdev/es/estado.md +16 -0
  324. package/scripts/.claude/don-cheli/plantillas/especdev/es/hallazgos.md +7 -0
  325. package/scripts/.claude/don-cheli/plantillas/especdev/es/plan.md +35 -0
  326. package/scripts/.claude/don-cheli/plantillas/especdev/es/progreso.md +7 -0
  327. package/scripts/.claude/don-cheli/plantillas/especdev/estado.md +16 -0
  328. package/scripts/.claude/don-cheli/plantillas/especdev/hallazgos.md +7 -0
  329. package/scripts/.claude/don-cheli/plantillas/especdev/isa.yml +152 -0
  330. package/scripts/.claude/don-cheli/plantillas/especdev/plan.md +35 -0
  331. package/scripts/.claude/don-cheli/plantillas/especdev/progreso.md +7 -0
  332. package/scripts/.claude/don-cheli/plantillas/especdev/pt/config.yaml +27 -0
  333. package/scripts/.claude/don-cheli/plantillas/especdev/pt/descobertas.md +7 -0
  334. package/scripts/.claude/don-cheli/plantillas/especdev/pt/estado.md +16 -0
  335. package/scripts/.claude/don-cheli/plantillas/especdev/pt/plano.md +35 -0
  336. package/scripts/.claude/don-cheli/plantillas/especdev/pt/progresso.md +7 -0
  337. package/scripts/.claude/don-cheli/plantillas/estimado-desarrollo.md +43 -0
  338. package/scripts/.claude/don-cheli/prompt.md +16 -0
  339. package/scripts/.claude/don-cheli/reglas/constitucion.md +122 -0
  340. package/scripts/.claude/don-cheli/reglas/hooks-parar.md +102 -0
  341. package/scripts/.claude/don-cheli/reglas/i18n.md +47 -0
  342. package/scripts/.claude/don-cheli/reglas/leyes-hierro.md +18 -0
  343. package/scripts/.claude/don-cheli/reglas/puertas-calidad.md +87 -0
  344. package/scripts/.claude/don-cheli/reglas/reglas-desviacion.md +36 -0
  345. package/scripts/.claude/don-cheli/reglas/reglas-trabajo-globales.md +171 -0
  346. package/scripts/.claude/don-cheli/scripts/bucle.sh +103 -0
  347. package/scripts/.claude/don-cheli/scripts/instalar.sh +522 -0
  348. package/scripts/.claude/don-cheli/scripts/validar.sh +70 -0
  349. package/scripts/bucle.sh +103 -0
  350. package/scripts/instalar.sh +587 -0
  351. package/scripts/validar.sh +70 -0
@@ -0,0 +1,16 @@
1
+ # Estado do Don Cheli
2
+
3
+ ## Atual
4
+ - **Fase:** 1/7 (Descoberta)
5
+ - **Tarefa:** Definir o problema
6
+ - **Bloqueio:** Nenhum
7
+
8
+ ## Estatísticas Rápidas
9
+ - **Progresso:** 0%
10
+ - **Última Atualização:** [data]
11
+
12
+ ## Velocidade
13
+ - Sessões concluídas: 0
14
+ - Duração média: -
15
+ - Fases concluídas: 0/7
16
+ - Tempo restante estimado: -
@@ -0,0 +1,35 @@
1
+ # Plano do Projeto
2
+
3
+ ## Fase 1: Descoberta
4
+ - [ ] Validar o problema
5
+ - [ ] Pesquisar soluções existentes
6
+ - [ ] Documentar descobertas
7
+
8
+ ## Fase 2: Estratégia
9
+ - [ ] Definir roteiro
10
+ - [ ] Estabelecer marcos
11
+ - [ ] Tomar decisões chave
12
+
13
+ ## Fase 3: Design
14
+ - [ ] Arquitetura do sistema
15
+ - [ ] Design de UX/UI
16
+ - [ ] Especificações técnicas
17
+
18
+ ## Fase 4: Desenvolvimento
19
+ - [ ] Implementar com TDD
20
+ - [ ] Iterar sobre feedback
21
+
22
+ ## Fase 5: Qualidade
23
+ - [ ] Testes completos
24
+ - [ ] Validação de desempenho
25
+ - [ ] Revisão de segurança
26
+
27
+ ## Fase 6: Lançamento
28
+ - [ ] Implantação
29
+ - [ ] Documentação final
30
+ - [ ] Notas de versão
31
+
32
+ ## Fase 7: Crescimento
33
+ - [ ] Monitoramento
34
+ - [ ] Feedback dos usuários
35
+ - [ ] Iteração
@@ -0,0 +1,7 @@
1
+ # Progresso
2
+
3
+ Log de sessão do projeto. Atualizado continuamente.
4
+
5
+ ---
6
+
7
+ <!-- O progresso é registrado automaticamente pelo hook pós-ferramenta -->
@@ -0,0 +1,35 @@
1
+ # Pseudocódigo
2
+
3
+ Lógica de alto nível agnóstica de linguagem/framework. Gerado DEPOIS de especificar e ANTES de planejar. Força o agente a raciocinar sobre a lógica sem comprometer tecnologia.
4
+
5
+ ## [Feature/Módulo]
6
+
7
+ ### Fluxo Principal
8
+ ```
9
+ QUANDO usuário faz X
10
+ VALIDAR que Y
11
+ SE condição A
12
+ EXECUTAR ação B
13
+ PERSISTIR resultado em C
14
+ NOTIFICAR D
15
+ SENÃO
16
+ RETORNAR erro E
17
+ ```
18
+
19
+ ### Invariantes
20
+ <!-- Condições que SEMPRE devem ser verdadeiras -->
21
+ - [Invariante 1]
22
+ - [Invariante 2]
23
+
24
+ ### Casos Limite
25
+ <!-- O que acontece nas bordas -->
26
+ - [Edge case 1]: [comportamento esperado]
27
+ - [Edge case 2]: [comportamento esperado]
28
+
29
+ ### Dependências de Dados
30
+ <!-- Quais dados são necessários e de onde vêm -->
31
+ - [Dado 1] ← [Fonte]
32
+ - [Dado 2] ← [Fonte]
33
+
34
+ ---
35
+ *Gerado com `/especdev:pseudocodigo` entre especificar e planejar.*
@@ -0,0 +1,26 @@
1
+ # Runtime
2
+
3
+ Informações de execução do projeto: endpoints, variáveis de ambiente, serviços, portas.
4
+
5
+ ## Endpoints Locais
6
+ | Serviço | URL | Porta |
7
+ |---------|-----|-------|
8
+ <!-- Auto-gerado durante /especdev:implementar -->
9
+
10
+ ## Variáveis de Ambiente Requeridas
11
+ | Variável | Descrição | Origem |
12
+ |----------|-----------|--------|
13
+ <!-- Extraído do .env.example -->
14
+
15
+ ## Serviços Externos
16
+ | Serviço | URL/Host | Plano | Rate Limit |
17
+ |---------|----------|-------|------------|
18
+ <!-- Documentado durante PoC e planejamento -->
19
+
20
+ ## Comandos de Desenvolvimento
21
+ ```bash
22
+ # Iniciar
23
+ # Testes
24
+ # Build
25
+ # Deploy
26
+ ```
@@ -0,0 +1,17 @@
1
+ # Trabalho Diferido
2
+
3
+ Trabalho descoberto durante fixes, PoCs ou implementação que está FORA do escopo atual. Registrado aqui para não expandir o escopo e priorizado posteriormente.
4
+
5
+ ## Formato
6
+
7
+ ### TD-NNN: [Descrição curta]
8
+ - **Descoberto em:** [Tarefa/PoC/Fix onde foi encontrado]
9
+ - **Data:** YYYY-MM-DD
10
+ - **Prioridade estimada:** alta | média | baixa
11
+ - **Esforço estimado:** < 1h | 1-4h | 1d | 1w+
12
+ - **Contexto:** [Por que surgiu e por que não foi resolvido agora]
13
+ - **Status:** pendente | planejado | descartado
14
+
15
+ ---
16
+
17
+ <!-- O trabalho diferido é registrado automaticamente durante /especdev:poc, /especdev:rapido e /especdev:implementar -->
@@ -0,0 +1,43 @@
1
+ # Estimado de Desarrollo: [Nombre del Proyecto]
2
+
3
+ **Fecha:** [fecha]
4
+ **Generado por:** `/especdev:estimar`
5
+
6
+ ## Resumen Ejecutivo
7
+
8
+ | Métrica | Valor |
9
+ |---------|-------|
10
+ | **Esfuerzo total** | X-Y días/persona |
11
+ | **Complejidad** | Baja/Media/Alta |
12
+ | **Confianza** | X% |
13
+ | **Modelo dominante** | [modelo] |
14
+
15
+ ## Desglose por Feature
16
+
17
+ | Feature | Optimista | Esperado | Pesimista | Riesgo |
18
+ |---------|-----------|----------|-----------|--------|
19
+ | Feature 1 | Xd | Yd | Zd | Bajo/Medio/Alto |
20
+ | Feature 2 | Xd | Yd | Zd | Bajo/Medio/Alto |
21
+
22
+ ## Detalle por Modelo
23
+
24
+ ### Puntos de Función: X días
25
+ ### Planning Poker IA: X días
26
+ ### COCOMO: X días
27
+ ### Histórico: X días / N/A
28
+
29
+ ## Riesgos que Afectan la Estimación
30
+
31
+ | Riesgo | Probabilidad | Impacto | Mitigación |
32
+ |--------|-------------|---------|------------|
33
+ | Riesgo 1 | X% | +X días | [acción] |
34
+
35
+ ## Supuestos Clave
36
+
37
+ - [supuesto 1]
38
+ - [supuesto 2]
39
+
40
+ ## Recomendación
41
+
42
+ Usar estimado **esperado** (X días) con buffer de 20% para imprevistos.
43
+ → **Total recomendado: X días/persona**
package/prompt.md ADDED
@@ -0,0 +1,16 @@
1
+ # Don Cheli — Instrucciones para Amp
2
+
3
+ ## Identidad
4
+
5
+ Asistente de desarrollo bajo el framework Don Cheli.
6
+
7
+ ## Contexto
8
+
9
+ Lee `.especdev/` para entender el estado del proyecto.
10
+
11
+ ## Reglas
12
+
13
+ 1. TDD obligatorio
14
+ 2. Causa raíz primero
15
+ 3. Evidencia siempre
16
+ 4. Todo en español
@@ -0,0 +1,122 @@
1
+ # Constitución de Don Cheli
2
+
3
+ > **Versión:** 2.0.0 | **Ratificada:** 2026-03-21
4
+ >
5
+ > La constitución gobierna TODO el código generado bajo Don Cheli.
6
+ > Enriquecida con principios de Specular (pei9564/Specular).
7
+
8
+ ---
9
+
10
+ ## I. Gherkin es Rey (Fuente Única de Verdad)
11
+
12
+ Los archivos `.feature` en `specs/features/` son los **ÚNICOS** artefactos de especificación. No se generan ni mantienen archivos spec.md separados.
13
+
14
+ - Todas las decisiones de planificación, implementación y testing DEBEN rastrearse hasta Escenarios y Reglas definidos en el `.feature` correspondiente.
15
+ - El orden del flujo DEBE ser: Leer Gherkin → Generar Step Definitions (Rojo) → Implementar Feature (Verde) → Refactorizar.
16
+ - Cuando un archivo Gherkin es ambiguo o incompleto, el vacío DEBE resolverse actualizando el `.feature` — nunca inventando requisitos en artefactos posteriores.
17
+
18
+ ---
19
+
20
+ ## I-B. Schema como Verdad Viva (Ciclo de Vida DBML)
21
+
22
+ Las definiciones de schema en `specs/db_schema/<dominio>.dbml` siguen un ciclo de dos fases:
23
+
24
+ 1. **Provisional** (tag `@provisional` presente): Auto-generado durante la fase Spec. Nombres de campos, tipos y restricciones son borradores.
25
+ - Los Escenarios en `.feature` DEBEN usar los nombres de campos provisionales tal como están.
26
+ - Los schemas provisionales DEBEN revisarse y ratificarse antes de la fase Plan.
27
+
28
+ 2. **Ratificado** (sin tag `@provisional`): Revisado durante Clarify o Plan. Una vez ratificado, el DBML se convierte en **Verdad Absoluta**.
29
+ - Cualquier feature posterior en el mismo dominio DEBE extender (no reemplazar) el schema ratificado.
30
+ - Renombrar campos después de la ratificación requiere una nota de migración en el plan.
31
+
32
+ ---
33
+
34
+ ## II. Precisión Quirúrgica (Colaboración en Equipo)
35
+
36
+ Cada cambio DEBE ser el **cambio mínimo viable** requerido por la tarea actual.
37
+
38
+ - Refactoring "de paso" de código no relacionado, helpers globales o componentes compartidos está **PROHIBIDO** salvo que se solicite explícitamente.
39
+ - Cambios de formato, adición de comentarios y reordenamiento de imports fuera del alcance de la tarea NO DEBEN aparecer en diffs.
40
+
41
+ ---
42
+
43
+ ## III. Arquitectura Plug-and-Play (Modularidad)
44
+
45
+ El código DEBE seguir el Principio Abierto/Cerrado: abierto para extensión, cerrado para modificación.
46
+
47
+ - Nuevas features DEBEN entregarse como módulos, Objetos de Servicio o clases nuevas, no inflando funciones existentes.
48
+ - La lógica de negocio DEBE encapsularse en Objetos de Servicio o clases especializadas. Controllers, Handlers y Routers DEBEN ser thin (solo delegación).
49
+ - Concerns transversales (logging, auth, validación) DEBEN usar patrones de middleware o decoradores, no código inline.
50
+
51
+ ---
52
+
53
+ ## IV. La Regla "Las Vegas" (Aislamiento de Servicios y Mocking)
54
+
55
+ > Lo que pasa dentro de un servicio SE QUEDA dentro de ese servicio.
56
+
57
+ - Los tests DEBEN ejecutarse herméticamente — sin llamadas de red reales, sin estado de BD compartido, sin efectos secundarios en el filesystem.
58
+ - Toda interacción con un servicio externo (HTTP APIs, gRPC, bases de datos, colas de mensajes) DEBE estar mockeada por defecto.
59
+ - Las clases de servicio DEBEN aceptar dependencias via Inyección de Dependencias para que intercambiar mocks por clientes reales sea transparente.
60
+ - Los tests end-to-end son la ÚNICA excepción y DEBEN marcarse explícitamente como tales.
61
+
62
+ ---
63
+
64
+ ## IV-B. Regla del Punto de Entrada (Alineamiento BDD-Arquitectura)
65
+
66
+ La validación de reglas de negocio DEBE colocarse lo más cerca posible del punto de entrada que el paso `Cuando` del BDD invoca.
67
+
68
+ **Test de litmus:** Para cada Escenario de fallo en el `.feature`, preguntar: _"¿El paso `Cuando` realmente se ejecuta en mi arquitectura?"_ Si la respuesta es no, la arquitectura viola esta regla.
69
+
70
+ ---
71
+
72
+ ## V. Estándares Modernos de Código
73
+
74
+ - **Type hints** son obligatorios en toda firma de función.
75
+ - **Modelos de validación** (Pydantic/Zod/equivalente) DEBEN usarse para DTOs y schemas — diccionarios/objetos crudos están PROHIBIDOS para datos estructurados.
76
+ - Se DEBE seguir el style guide del lenguaje (PEP 8, ESLint, etc.). Donde el guide conflicta con legibilidad, gana legibilidad.
77
+
78
+ ---
79
+
80
+ ## VI. Adaptabilidad al Contexto
81
+
82
+ Antes de generar código, el framework y toolchain DEBEN detectarse escaneando archivos de configuración (`package.json`, `requirements.txt`, `pyproject.toml`, etc.).
83
+
84
+ El código generado NO DEBE introducir patrones que conflicten con las dependencias instaladas o convenciones establecidas del proyecto.
85
+
86
+ ---
87
+
88
+ ## VII. Codificación Defensiva y Manejo de Errores
89
+
90
+ - Bloques `try...catch` desnudos que engullen errores están PROHIBIDOS. Toda excepción capturada DEBE logguearse con stack trace completo.
91
+ - El código DEBE usar clases de excepción custom que mapeen a códigos de estado HTTP (ej: `RecursoNoEncontrado` → 404).
92
+ - **Regla Stop-Loss:** Si una tarea falla (luz Roja) más de 3 veces, el trabajo DEBE detenerse y se DEBE solicitar guía humana. Los ciclos infinitos de fix-break están PROHIBIDOS.
93
+
94
+ ---
95
+
96
+ ## VIII. Protocolo de Clarificación (Auto-QA)
97
+
98
+ Al ejecutar `/especdev:clarificar`, el agente actúa como **Ingeniero QA Estricto** y ejecuta obligatoriamente:
99
+
100
+ 1. **Verificación de Consistencia Schema-Spec:**
101
+ - Escanear todos los campos en el Gherkin
102
+ - Comparar contra el schema DBML
103
+ - Error si nombres no coinciden exactamente
104
+ - Error si campo `NOT NULL` no tiene escenario de validación
105
+
106
+ 2. **Verificación de Convención de Nombres:**
107
+ - Feature COMMAND: usar patrón precondición/postcondición
108
+ - Feature QUERY: usar patrón precondición/éxito
109
+
110
+ 3. **Auditoría Auto-Generado:**
111
+ - Revisar escenarios auto-generados
112
+ - Marcar los que sean redundantes o lógicamente imposibles
113
+
114
+ **Formato de salida:** ✅ PASS / ⚠️ WARNING / ❌ FAIL
115
+
116
+ ---
117
+
118
+ ## Gobernanza
119
+
120
+ - Esta constitución **supersede** todas las prácticas de desarrollo y guías de estilo dentro del repositorio.
121
+ - Las enmiendas requieren: (1) Justificación documentada, (2) Revisión, (3) Plan de migración para código que ya no cumpla.
122
+ - Todos los PRs y revisiones de código DEBEN verificar cumplimiento con estos principios.
@@ -0,0 +1,102 @@
1
+ # Stop Hooks — Verificaciones de Parada
2
+
3
+ ## Qué Son
4
+
5
+ Los Stop Hooks son verificaciones automáticas que DEBEN pasar antes de que el agente pueda declarar una tarea como "completa". Son el equivalente a puertas de calidad de CI/CD pero ejecutadas por el agente en tiempo real.
6
+
7
+ > Concepto de MELI: los agentes NO pueden terminar sin pasar validaciones.
8
+
9
+ ## Configuración
10
+
11
+ ```yaml
12
+ # .especdev/hooks/parar.yml
13
+ version: 1
14
+
15
+ hooks:
16
+ # Obligatorios — si fallan, la tarea se BLOQUEA
17
+ obligatorios:
18
+ - nombre: "Lint"
19
+ comando: "npm run lint"
20
+ timeout: 60
21
+
22
+ - nombre: "Type Check"
23
+ comando: "npx tsc --noEmit"
24
+ timeout: 120
25
+
26
+ - nombre: "Tests Unitarios"
27
+ comando: "npm test -- --testPathPattern=unit"
28
+ timeout: 180
29
+
30
+ - nombre: "Build"
31
+ comando: "npm run build"
32
+ timeout: 300
33
+
34
+ # Opcionales — si fallan, se advierte pero no se bloquea
35
+ opcionales:
36
+ - nombre: "Coverage"
37
+ comando: "npm run coverage -- --threshold 85"
38
+ timeout: 180
39
+
40
+ - nombre: "Tests E2E"
41
+ comando: "npm run test:e2e"
42
+ timeout: 600
43
+
44
+ # Pre-commit — se ejecutan antes de cada commit
45
+ pre_commit:
46
+ - nombre: "Guardian"
47
+ comando: "/especdev:guardian"
48
+ ```
49
+
50
+ ## Flujo de Ejecución
51
+
52
+ ```
53
+ /especdev:implementar
54
+
55
+ ├── ... (implementar tareas) ...
56
+
57
+ └── Ejecutar Stop Hooks
58
+
59
+ ├── 1. Lint ───── ✅ PASS (0.8s)
60
+ ├── 2. TypeCheck ── ✅ PASS (2.1s)
61
+ ├── 3. Tests ───── ❌ FAIL (1 fallo)
62
+ │ └── BLOQUEADO: 1 test falla
63
+ │ → Corregir y re-ejecutar
64
+
65
+ └── Re-ejecutar después de fix
66
+ ├── 3. Tests ───── ✅ PASS
67
+ ├── 4. Build ───── ✅ PASS
68
+ └── === TODOS LOS HOOKS PASAN ===
69
+ → Tarea marcada como ✅ COMPLETA
70
+ ```
71
+
72
+ ## Templates por Stack
73
+
74
+ ### Node.js / TypeScript
75
+ ```yaml
76
+ hooks:
77
+ obligatorios:
78
+ - {nombre: "ESLint", comando: "npx eslint . --ext .ts,.tsx"}
79
+ - {nombre: "TypeScript", comando: "npx tsc --noEmit"}
80
+ - {nombre: "Vitest", comando: "npx vitest run"}
81
+ - {nombre: "Build", comando: "npm run build"}
82
+ ```
83
+
84
+ ### Python
85
+ ```yaml
86
+ hooks:
87
+ obligatorios:
88
+ - {nombre: "Ruff", comando: "ruff check ."}
89
+ - {nombre: "MyPy", comando: "mypy app/ --strict"}
90
+ - {nombre: "Pytest", comando: "pytest -v"}
91
+ - {nombre: "Build", comando: "python -m build"}
92
+ ```
93
+
94
+ ### Go
95
+ ```yaml
96
+ hooks:
97
+ obligatorios:
98
+ - {nombre: "Go Vet", comando: "go vet ./..."}
99
+ - {nombre: "Staticcheck", comando: "staticcheck ./..."}
100
+ - {nombre: "Go Test", comando: "go test ./..."}
101
+ - {nombre: "Go Build", comando: "go build ./..."}
102
+ ```
package/reglas/i18n.md ADDED
@@ -0,0 +1,47 @@
1
+ # i18n — Internationalization Rules
2
+
3
+ ## Language Detection
4
+
5
+ On every interaction, detect the user's configured language:
6
+
7
+ 1. Read the framework locale file at `${FRAMEWORK_HOME}/locale` (contains `es`, `en`, or `pt`)
8
+ 2. If not found, check `.especdev/config.yaml` → `framework.idioma`
9
+ 3. If neither exists, default to `es`
10
+
11
+ ## Language Behavior
12
+
13
+ Once the locale is determined:
14
+
15
+ | Locale | Communication | Code | Commits/PRs | Docs |
16
+ |--------|--------------|------|-------------|------|
17
+ | `es` | Español | English | Español | Español |
18
+ | `en` | English | English | English | English |
19
+ | `pt` | Português | English | Português | Português |
20
+
21
+ **Code (variables, functions, comments) is ALWAYS in English regardless of locale.**
22
+
23
+ ## Locale Files
24
+
25
+ Framework locale strings are in `locales/{es,en,pt}.json`. Use them for:
26
+ - Phase names, status labels, verdicts
27
+ - Installer messages
28
+ - Command output templates
29
+ - Review dimensions, severity labels
30
+ - TDD cycle names, iron laws
31
+
32
+ ## How to Apply
33
+
34
+ When generating output (estado.md, plan.md, hallazgos.md, propuesta.md, etc.):
35
+ - Use the locale's terminology for headers, labels, and status text
36
+ - Keep technical terms (e.g., TDD, OWASP, API, WebSocket) untranslated
37
+ - Gherkin keywords follow the Gherkin i18n spec:
38
+ - `es`: Dado/Cuando/Entonces/Y
39
+ - `en`: Given/When/Then/And
40
+ - `pt`: Dado/Quando/Então/E
41
+
42
+ ## Changing Language
43
+
44
+ The user can change the language at any time by:
45
+ 1. Editing `${FRAMEWORK_HOME}/locale` directly
46
+ 2. Re-running `scripts/instalar.sh` (re-prompts language selection)
47
+ 3. Setting `framework.idioma` in `.especdev/config.yaml`
@@ -0,0 +1,18 @@
1
+ # Leyes de Hierro
2
+
3
+ ## No Negociable. Siempre se aplican.
4
+
5
+ ### 1. Ley TDD
6
+ Todo código de producción REQUIERE tests.
7
+ - `RED` → Escribir test que falla
8
+ - `GREEN` → Código mínimo que pasa
9
+ - `REFACTOR` → Mejorar sin cambiar comportamiento
10
+
11
+ ### 2. Ley de Debugging
12
+ Primero la causa raíz, luego la corrección.
13
+ 1. REPRODUCIR → AISLAR → ENTENDER → CORREGIR → VERIFICAR
14
+
15
+ ### 3. Ley de Verificación
16
+ Evidencia antes de afirmaciones.
17
+ - ✅ "Tests pasan (evidencia adjunta)"
18
+ - ❌ "Creo que funciona"
@@ -0,0 +1,87 @@
1
+ # Puertas de Calidad (Quality Gates)
2
+
3
+ ## Cómo Mejoran el Framework
4
+
5
+ Las puertas de calidad son **puntos de verificación obligatorios** entre fases del pipeline.
6
+ Sin ellas, el pipeline avanza aunque haya problemas. Con ellas, cada fase DEBE cumplir
7
+ criterios formales antes de pasar a la siguiente. Esto es clave para la **trazabilidad**.
8
+
9
+ > Adaptado de Specular (pei9564/Specular → constitution.md §Quality Gates)
10
+ > Alineado con spec-kit (github/spec-kit) — criterios de completitud y constitution check
11
+
12
+ ---
13
+
14
+ ## Las 6 Puertas
15
+
16
+ | # | Puerta | Fase | Criterios |
17
+ |---|--------|------|-----------|
18
+ | 1 | **Completitud de Spec** | Después de `/especdev:especificar` | P1 tiene happy + sad path. Criterios de éxito definidos (≥2 medibles). Marcadores `[NECESITA CLARIFICACIÓN]` identificados |
19
+ | 2 | **Estado de Spec** | Antes de `/especdev:planificar-tecnico` | Tag `@lista` presente. Specs `@borrador` NO pueden entrar a fase Plan |
20
+ | 3 | **Verificación Clarify** | Después de `/especdev:clarificar` | Reporte Auto-QA sin ❌ FALLA. Todos los `[NECESITA CLARIFICACIÓN]` resueltos. Auditoría completada |
21
+ | 4 | **Aprobación de Plan** | Después de `/especdev:planificar-tecnico` | Chequeo de constitución pasa (todos ✅). Contexto técnico completo. DBML ratificado. Tracking de complejidad documentado |
22
+ | 5 | **Preparación de Tareas** | Después de `/especdev:desglosar` | Todas las tareas con IDs (`T###`). Rutas de archivos en tareas de implementación. Marcadores `[P]` de paralelismo asignados. 5 fases presentes |
23
+ | 6 | **Merge de Código** | Después de `/especdev:implementar` | Tests verdes, lint limpio, type-check pasa, coverage ≥85%, sin diff no relacionado, regresión cross-fase pasa |
24
+
25
+ ## Verificación Automática
26
+
27
+ Cada puerta se verifica automáticamente. Si falla, el framework **bloquea** el avance:
28
+
29
+ ```
30
+ /especdev:especificar → [Puerta 1: ¿Completitud?]
31
+ ├── ✅ PASA → Continuar
32
+ └── ❌ FALLA → "Faltan escenarios sad path en P1" o "Criterios de éxito no definidos"
33
+
34
+ /especdev:clarificar → [Puerta 2+3: ¿Estado? ¿Auto-QA?]
35
+ ├── ✅ PASA → Marcar @lista
36
+ └── ❌ FALLA → "Quedan 2 [NECESITA CLARIFICACIÓN] sin resolver"
37
+
38
+ /especdev:planificar-tecnico → [Puerta 4: ¿Aprobación?]
39
+ ├── ✅ PASA → Continuar a tareas
40
+ └── ❌ FALLA → "Artículo III de constitución no cumplido" o "DBML provisional no ratificado"
41
+
42
+ /especdev:desglosar → [Puerta 5: ¿Preparación?]
43
+ ├── ✅ PASA → Listo para implementar
44
+ └── ❌ FALLA → "Tarea T008 sin ruta de archivo" o "Falta Fase 5 (Verificación)"
45
+
46
+ /especdev:implementar → [Puerta 6: ¿Merge?]
47
+ ├── ✅ PASA → Feature completa
48
+ └── ❌ FALLA → "3 tests fallan" o "Coverage 72% < 85%"
49
+ ```
50
+
51
+ ## Reporte de Puerta
52
+
53
+ Cada puerta genera un reporte estructurado:
54
+
55
+ ```markdown
56
+ ## Puerta de Calidad: Completitud de Spec
57
+
58
+ ✅ PASS: P1 tiene happy path (Registro exitoso)
59
+ ✅ PASS: P1 tiene sad path (Email duplicado)
60
+ ✅ PASS: Criterios de éxito definidos (4 medibles)
61
+ ⚠️ WARNING: P2 solo tiene 1 escenario (recomendado: ≥2)
62
+ ✅ PASS: 3 marcadores [NECESITA CLARIFICACIÓN] identificados
63
+ ❌ FAIL: P3+ tiene escenario sin criterio de aceptación
64
+
65
+ **Resultado: NO-AVANZAR (1 FAIL)**
66
+ → Acción requerida: Agregar Given/When/Then al escenario P3+ "Registro OAuth"
67
+ ```
68
+
69
+ ## Regresión Cross-Fase
70
+
71
+ Al completar la Puerta 6 de una feature, se ejecuta **regresión automática** sobre features anteriores:
72
+
73
+ ```
74
+ Feature actual: CrearUsuario (Puerta 6)
75
+
76
+ ├── Tests de CrearUsuario: ✅ 21/21
77
+ ├── Regresión: ListarProductos (feature anterior): ✅ 15/15
78
+ ├── Regresión: GestionarCarrito (feature anterior): ✅ 18/18
79
+ └── Resultado: ✅ SIN REGRESIÓN
80
+
81
+ ¿Algún test de feature anterior falla?
82
+ ├── NO → ✅ Puerta 6 pasa
83
+ └── SÍ → ❌ REGRESIÓN DETECTADA
84
+ └── Identificar qué test rompió y en qué feature
85
+ ```
86
+
87
+ **Regla:** No se puede mergear código que rompe features anteriores. La regresión cross-fase es parte obligatoria de la Puerta 6.
@@ -0,0 +1,36 @@
1
+ # Reglas de Desviación
2
+
3
+ ## Las 5 Reglas
4
+
5
+ Cuando encuentras algo inesperado durante la ejecución:
6
+
7
+ | Regla | Disparador | Acción |
8
+ |:-----:|-----------|--------|
9
+ | **1** | Bug encontrado | 🔧 Auto-corregir inmediatamente |
10
+ | **2** | Falta algo crítico (deps, config) | ➕ Auto-agregar inmediatamente |
11
+ | **3** | Bloqueador (impide progreso) | 🚧 Auto-desbloquear inmediatamente |
12
+ | **4** | Cambio arquitectónico | ⛔ **PARAR Y PREGUNTAR** |
13
+ | **5** | Mejora (nice-to-have) | 📝 Registrar en ISSUES.md |
14
+
15
+ ## Distribución de Autonomía
16
+
17
+ ```
18
+ AUTÓNOMO (solo hacerlo):
19
+ ├── Regla 1: Bug → Corregir
20
+ ├── Regla 2: Faltante → Agregar
21
+ ├── Regla 3: Bloqueador → Desbloquear
22
+ └── Regla 5: Mejora → Registrar
23
+
24
+ HUMANO REQUERIDO (parar y preguntar):
25
+ └── Regla 4: Cambio arquitectónico
26
+ ```
27
+
28
+ ## Guía Rápida de Decisión
29
+
30
+ ```
31
+ ¿Puedo corregir esto en < 5 min sin cambiar cómo las cosas trabajan juntas?
32
+ ├── SÍ → Reglas 1, 2 o 3 (auto-manejar)
33
+ └── NO → ¿Necesita una decisión de diseño?
34
+ ├── SÍ → Regla 4 (PARAR y PREGUNTAR)
35
+ └── NO → Regla 5 (Registrar y continuar)
36
+ ```