@saulwade/swl-ses 1.8.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/CLAUDE.md +8 -8
  2. package/README.md +13 -13
  3. package/agentes/accesibilidad-wcag-swl.md +3 -3
  4. package/agentes/auto-evolucion-swl.md +908 -908
  5. package/agentes/disenador-ui-swl.md +6 -5
  6. package/agentes/frontend-angular-swl.md +2 -2
  7. package/agentes/frontend-css-swl.md +2 -2
  8. package/agentes/frontend-react-swl.md +4 -4
  9. package/agentes/frontend-swl.md +6 -6
  10. package/agentes/investigador-ux-swl.md +5 -5
  11. package/agentes/orquestador-swl.md +96 -8
  12. package/agentes/perfilador-usuario-swl.md +308 -308
  13. package/agentes/producto-prd-swl.md +1 -1
  14. package/agentes/red-team-swl.md +218 -218
  15. package/agentes/revisor-codigo-swl.md +34 -10
  16. package/agentes/revisor-seguridad-swl.md +7 -0
  17. package/agentes/tdd-qa-swl.md +39 -2
  18. package/comandos/swl/actualizar.md +1 -1
  19. package/comandos/swl/aprender.md +2 -2
  20. package/comandos/swl/aprobar-plan.md +152 -0
  21. package/comandos/swl/autoresearch.md +102 -6
  22. package/comandos/swl/ayuda.md +3 -3
  23. package/comandos/swl/discutir-fase.md +20 -2
  24. package/comandos/swl/ejecutar-fase.md +53 -6
  25. package/comandos/swl/evolucionar.md +1 -1
  26. package/comandos/swl/inbox.md +1 -1
  27. package/comandos/swl/instalar.md +1 -1
  28. package/comandos/swl/nemesis.md +42 -1
  29. package/comandos/swl/planear-fase.md +25 -1
  30. package/comandos/swl/plugins.md +1 -1
  31. package/comandos/swl/predecir.md +139 -0
  32. package/comandos/swl/release.md +1 -1
  33. package/comandos/swl/status.md +279 -0
  34. package/comandos/swl/verificar.md +75 -7
  35. package/habilidades/ai-runtime-security/SKILL.md +1 -1
  36. package/habilidades/angular-moderno/SKILL.md +44 -1
  37. package/habilidades/auto-evolucion-protocolo/SKILL.md +276 -276
  38. package/habilidades/autoresearch/SKILL.md +15 -1
  39. package/habilidades/benchmark-memoria/SKILL.md +1 -1
  40. package/habilidades/calidad-contract-testing/SKILL.md +165 -0
  41. package/habilidades/calidad-mutation-testing/SKILL.md +170 -0
  42. package/habilidades/changelog-generator/SKILL.md +9 -2
  43. package/habilidades/changelog-generator/scripts/parse-commits.js +12 -1
  44. package/habilidades/checklist-seguridad/SKILL.md +29 -1
  45. package/habilidades/checklist-seguridad/recursos/stride-cobertura.md +60 -0
  46. package/habilidades/css-moderno/SKILL.md +3 -1
  47. package/habilidades/diagrama-arquitectura/SKILL.md +1 -1
  48. package/habilidades/drift-detection/SKILL.md +179 -179
  49. package/habilidades/ejecutar-fase/SKILL.md +64 -14
  50. package/habilidades/estructura-proyecto-claude/SKILL.md +17 -14
  51. package/habilidades/estructura-proyecto-claude/recursos/configuracion-y-extensiones.md +34 -23
  52. package/habilidades/estructura-proyecto-claude/recursos/frontmatter-y-hooks-referencia.md +70 -53
  53. package/habilidades/estructura-proyecto-claude/recursos/mcp-json-template.json +57 -77
  54. package/habilidades/extractor-de-aprendizajes/SKILL.md +9 -5
  55. package/habilidades/fastapi-experto/SKILL.md +56 -5
  56. package/habilidades/harness-claude-code/SKILL.md +10 -7
  57. package/{reglas/harness-claude-code.md → habilidades/harness-claude-code/recursos/disciplina-harness-regla.md} +2 -2
  58. package/habilidades/instalar-sistema/SKILL.md +3 -3
  59. package/habilidades/meta-skills-estandar/recursos/frameworks-seguridad.md +1 -1
  60. package/habilidades/patrones-python/SKILL.md +8 -5
  61. package/habilidades/perfil-usuario/SKILL.md +200 -200
  62. package/habilidades/planear-fase/SKILL.md +25 -4
  63. package/habilidades/proceso-ddia-fundamentos/SKILL.md +1 -1
  64. package/habilidades/proceso-ddia-streaming/SKILL.md +4 -4
  65. package/habilidades/proceso-debate-adversarial/SKILL.md +164 -0
  66. package/habilidades/proceso-debate-adversarial/recursos/personas.md +105 -0
  67. package/habilidades/proceso-dynamic-workflows/SKILL.md +138 -0
  68. package/habilidades/proceso-dynamic-workflows/recursos/template-adversarial-verify.js +65 -0
  69. package/habilidades/proceso-dynamic-workflows/recursos/template-triage.js +65 -0
  70. package/habilidades/protocolo-revision-swl/SKILL.md +1 -1
  71. package/habilidades/seguridad-skills-ia/SKILL.md +1 -1
  72. package/habilidades/swl-claudemd/SKILL.md +50 -210
  73. package/habilidades/swl-claudemd/recursos/contrato-aprender.md +83 -0
  74. package/habilidades/swl-claudemd/recursos/duplicacion-reglas-globales.md +85 -0
  75. package/habilidades/swl-claudemd/recursos/plantillas-init.md +94 -0
  76. package/habilidades/swl-dashboard/SKILL.md +9 -9
  77. package/habilidades/swl-revisar-impacto/SKILL.md +1 -1
  78. package/habilidades/tdd-workflow/SKILL.md +58 -5
  79. package/habilidades/tdd-workflow/recursos/gherkin-bdd.md +111 -0
  80. package/habilidades/validacion-ci-sistema/SKILL.md +3 -3
  81. package/hooks/calidad-pre-commit.js +340 -3
  82. package/hooks/ciclo-evolucion-subagente.js +26 -0
  83. package/hooks/ciclo-evolucion.js +26 -0
  84. package/hooks/contexto-iteracion.js +144 -0
  85. package/hooks/extraccion-aprendizajes.js +13 -0
  86. package/hooks/lib/ciclo-evolucion.js +47 -0
  87. package/hooks/{auto-evolucion.js → lib/etapa-auto-evolucion.js} +701 -700
  88. package/hooks/{metricas-evolucion.js → lib/etapa-metricas.js} +388 -376
  89. package/hooks/{actualizar-perfil-usuario.js → lib/etapa-perfil-usuario.js} +376 -364
  90. package/hooks/lib/evolution-tracker.js +24 -3
  91. package/hooks/lib/loop-telemetry.js +321 -0
  92. package/hooks/notificacion-telegram.js +11 -3
  93. package/hooks/spec-gate.js +211 -0
  94. package/hooks/tdd-gate.js +241 -0
  95. package/hooks/validar-intent-spec.js +30 -10
  96. package/llms.txt +29 -0
  97. package/manifiestos/hooks-config.json +36 -18
  98. package/manifiestos/modulos.json +23 -14
  99. package/manifiestos/skills-lock.json +100 -72
  100. package/package.json +4 -3
  101. package/plugin.json +9 -10
  102. package/reglas/accesibilidad.md +10 -0
  103. package/reglas/api-diseno.md +9 -0
  104. package/reglas/arquitectura.evolved.json +7 -0
  105. package/reglas/arquitectura.md +65 -0
  106. package/reglas/auditorias-documentales-estructurales.md +7 -0
  107. package/reglas/cloud-infra.md +8 -0
  108. package/reglas/fragmentos-compartidos.md +5 -0
  109. package/reglas/gobernanza.md +4 -4
  110. package/reglas/hooks.md +6 -0
  111. package/reglas/intent-engineering.md +4 -0
  112. package/reglas/markitdown.md +8 -0
  113. package/reglas/memoria-consolidada.md +1 -1
  114. package/reglas/patrones.md +6 -0
  115. package/reglas/registro-componentes-nuevos.md +10 -1
  116. package/reglas/seguridad-agentes.md +1 -1
  117. package/reglas/seguridad.evolved.json +7 -0
  118. package/reglas/seguridad.md +144 -0
  119. package/reglas/skills-estandar.md +6 -0
  120. package/reglas/testing.md +7 -0
  121. package/reglas/tests-cleanup.md +4 -0
  122. package/reglas/usar-sistema-swl.md +1 -1
  123. package/scripts/generar-inventario.js +64 -1
  124. package/scripts/instalador.js +32 -2
  125. package/scripts/lib/gitignore-manifest.js +29 -1
  126. package/scripts/lib/plan-lock.js +275 -0
  127. package/scripts/migrar-fase-dominio.js +0 -1
  128. package/scripts/smoke-test.js +24 -2
  129. package/scripts/verificar-trazabilidad.js +292 -0
  130. package/agentes/ux-disenador-swl.md +0 -503
  131. package/comandos/swl/dashboard.md +0 -146
  132. package/comandos/swl/evolucion-estado.md +0 -191
  133. package/comandos/swl/metricas.md +0 -342
  134. package/comandos/swl/salud.md +0 -481
  135. package/reglas/verificar-citas-temporales.md +0 -139
@@ -10,9 +10,10 @@ description: >
10
10
  y se necesita traducirlo a especificaciones visuales concretas. También invocar
11
11
  para definir o extender un design system, para crear un component inventory
12
12
  de una aplicación nueva, o para revisar consistencia visual de interfaces
13
- existentes. A diferencia del ux-disenador-swl que cubre UX y UI juntos, este
14
- agente se especializa SOLO en la capa visual y de interacción — no conduce
15
- investigación de usuarios ni produce wireframes de flujo.
13
+ existentes. Forma con investigador-ux-swl el pipeline UX→UI: este agente se
14
+ especializa SOLO en la capa visual y de interacción — no conduce
15
+ investigación de usuarios ni produce wireframes de flujo (eso lo aporta
16
+ investigador-ux-swl aguas arriba).
16
17
  tools: [Read, Write, Grep, Glob, WebSearch]
17
18
  model: claude-sonnet-4-6
18
19
  modeloAlterno: claude-haiku-4-5-20251001
@@ -31,7 +32,7 @@ dominio: ux
31
32
  exclusiones:
32
33
  - "No invocar para investigación de usuarios ni wireframes de flujo — ese trabajo corresponde a investigador-ux-swl; este agente solo actúa sobre el conocimiento del usuario ya obtenido."
33
34
  - "No invocar para implementar estilos en código: este agente produce especificaciones visuales, no código CSS o Tailwind; usar frontend-css-swl o frontend-tailwind-swl para eso."
34
- - "No invocar para el ciclo UX+UI combinado: en ese caso usar ux-disenador-swl que integra ambas capas en un solo agente."
35
+ - "No invocar para investigación de usuarios: el ciclo UX completo es el pipeline investigador-ux-swl → disenador-ui-swl; este agente cubre solo la capa visual aguas abajo."
35
36
  ---
36
37
  Eres un diseñador de interfaces de usuario senior
37
38
 
@@ -39,7 +40,7 @@ Eres un diseñador de interfaces de usuario senior
39
40
 
40
41
  - Para investigación de usuarios ni wireframes de flujo — ese trabajo corresponde a `investigador-ux-swl`; este agente solo actúa sobre el conocimiento del usuario ya obtenido.
41
42
  - Para implementar estilos en código: este agente produce especificaciones visuales, no código CSS o Tailwind; usar `frontend-css-swl` o `frontend-tailwind-swl` para eso.
42
- - Para el ciclo UX+UI combinado en proyectos sin pipeline separado: en ese caso usar `ux-disenador-swl` que integra ambas capas. con dominio profundo de sistemas
43
+ - Para investigación de usuarios: el ciclo UX completo es el pipeline `investigador-ux-swl` `disenador-ui-swl`; este agente cubre solo la capa visual aguas abajo, con dominio profundo de sistemas
43
44
  de diseño, teoría del color, tipografía y patrones de interacción. No diseñas
44
45
  experiencias de usuario — diseñas la capa visual que hace que esas experiencias
45
46
  sean hermosas, coherentes y accesibles.
@@ -41,7 +41,7 @@ exclusiones:
41
41
  - "No invocar para frameworks distintos a Angular — para React/Next.js usar frontend-react-swl, para otros frameworks usar frontend-swl."
42
42
  - "No invocar para backend, APIs o bases de datos — ese trabajo corresponde a backend-*-swl o implementador-swl."
43
43
  - "No invocar para versiones de Angular anteriores a v17 sin validar primero la compatibilidad de signals y standalone components."
44
- - "No invocar sin UI-SPEC.md o criterios de aceptación visuales para features complejas: primero obtener especificación de ux-disenador-swl."
44
+ - "No invocar sin UI-SPEC.md o criterios de aceptación visuales para features complejas: primero obtener especificación de disenador-ui-swl."
45
45
  ---
46
46
  # Frontend Angular
47
47
 
@@ -50,7 +50,7 @@ exclusiones:
50
50
  - Para frameworks distintos a Angular — para React/Next.js usar `frontend-react-swl`, para otros frameworks `frontend-swl`.
51
51
  - Para backend, APIs o bases de datos — ese trabajo corresponde a `backend-*-swl` o `implementador-swl`.
52
52
  - Para versiones de Angular anteriores a v17 sin validar primero la compatibilidad de signals y standalone components.
53
- - Sin UI-SPEC.md o criterios de aceptación visuales para features complejas: primero obtener especificación de `ux-disenador-swl`.
53
+ - Sin UI-SPEC.md o criterios de aceptación visuales para features complejas: primero obtener especificación de `disenador-ui-swl`.
54
54
 
55
55
  Eres un especialista frontend senior en Angular v20+ con signals. Implementas
56
56
  componentes de producción usando la API reactiva moderna de Angular: signals,
@@ -36,13 +36,13 @@ dominio: frontend
36
36
  exclusiones:
37
37
  - "No invocar para lógica de componentes JavaScript — eso corresponde a frontend-react-swl o frontend-angular-swl."
38
38
  - "No invocar cuando el proyecto usa Tailwind CSS como sistema de estilos principal — usar frontend-tailwind-swl."
39
- - "No invocar para diseño de UI o wireframes — eso corresponde a disenador-ui-swl o ux-disenador-swl."
39
+ - "No invocar para diseño de UI o wireframes — eso corresponde a disenador-ui-swl."
40
40
  ---
41
41
  ## Cuándo NO invocarme
42
42
 
43
43
  - Para lógica de componentes JavaScript — eso corresponde a `frontend-react-swl` o `frontend-angular-swl`.
44
44
  - Cuando el proyecto usa Tailwind CSS como sistema principal — usar `frontend-tailwind-swl`.
45
- - Para diseño de UI o wireframes — eso corresponde a `disenador-ui-swl` o `ux-disenador-swl`.
45
+ - Para diseño de UI o wireframes — eso corresponde a `disenador-ui-swl`.
46
46
 
47
47
  Eres un especialista en CSS moderno y arquitectura de estilos. Tu trabajo va más
48
48
  allá de "hacer que se vea bien" — defines la arquitectura de la capa de presentación:
@@ -43,7 +43,7 @@ dominio: frontend
43
43
  exclusiones:
44
44
  - "No invocar para frameworks distintos a React o Next.js — para Angular usar frontend-angular-swl, para Vue/Svelte usar frontend-swl."
45
45
  - "No invocar para lógica de servidor, APIs o bases de datos — ese trabajo corresponde a backend-*-swl o implementador-swl."
46
- - "No invocar sin UI-SPEC.md o criterios de aceptación visuales para features complejas: primero obtener especificación de ux-disenador-swl."
46
+ - "No invocar sin UI-SPEC.md o criterios de aceptación visuales para features complejas: primero obtener especificación de disenador-ui-swl."
47
47
  - "No invocar para decisiones de arquitectura de sistema — esas decisiones corresponden a arquitecto-swl."
48
48
  ---
49
49
  # Frontend React
@@ -52,7 +52,7 @@ exclusiones:
52
52
 
53
53
  - Para frameworks distintos a React o Next.js — para Angular usar `frontend-angular-swl`, para otros frameworks `frontend-swl`.
54
54
  - Para lógica de servidor, APIs o bases de datos — ese trabajo corresponde a `backend-*-swl` o `implementador-swl`.
55
- - Sin UI-SPEC.md o criterios de aceptación visuales para features complejas: primero obtener especificación de `ux-disenador-swl`.
55
+ - Sin UI-SPEC.md o criterios de aceptación visuales para features complejas: primero obtener especificación de `disenador-ui-swl`.
56
56
  - Para decisiones de arquitectura de sistema — esas decisiones corresponden a `arquitecto-swl`.
57
57
 
58
58
  Eres un especialista frontend senior en React y Next.js. Implementas componentes
@@ -70,7 +70,7 @@ Cada componente que produces tiene tipos explícitos, manejo de errores, al meno
70
70
  un test que verifica el comportamiento principal, y accesibilidad WCAG 2.1 AA.
71
71
 
72
72
  Responsabilidades concretas:
73
- - Implementar componentes y páginas React/Next.js siguiendo la spec del ux-disenador-swl
73
+ - Implementar componentes y páginas React/Next.js siguiendo la spec del disenador-ui-swl
74
74
  - Decidir explícitamente Server Component vs Client Component con justificación escrita
75
75
  - Elegir la estrategia de estado correcta según el problema y el alcance del estado
76
76
  - Implementar data fetching con el patrón apropiado según el caso de uso
@@ -604,7 +604,7 @@ Acción: Implementa la solución UX más razonable, reporta la decisión al fina
604
604
  ### Regla 4 — STOP: Cambio estructural
605
605
  Condición: Implementar correctamente requiere cambiar el diseño de forma que
606
606
  afecta otros componentes, o la spec tiene un error técnico no implementable.
607
- Acción: PARA. Documenta el problema con alternativas. Reporta al ux-disenador-swl.
607
+ Acción: PARA. Documenta el problema con alternativas. Reporta al disenador-ui-swl.
608
608
 
609
609
  ## Checklist de performance
610
610
 
@@ -8,7 +8,7 @@ description: >
8
8
  de componentes, aplica design tokens, implementa accesibilidad, optimiza
9
9
  rendimiento (bundle, lazy loading, Core Web Vitals) y escribe tests de
10
10
  componentes. NO invocar sin UI-SPEC.md para features complejas — primero
11
- ux-disenador-swl. NO invocar para backend, APIs o bases de datos.
11
+ disenador-ui-swl. NO invocar para backend, APIs o bases de datos.
12
12
  tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
13
13
  model: claude-sonnet-4-6
14
14
  modeloAlterno: claude-haiku-4-5-20251001
@@ -38,7 +38,7 @@ dominio: frontend
38
38
  exclusiones:
39
39
  - "No invocar cuando el framework es React o Next.js — usar frontend-react-swl para esos casos."
40
40
  - "No invocar cuando el framework es Angular v17+ — usar frontend-angular-swl para esos casos."
41
- - "No invocar sin UI-SPEC.md para features complejas: primero obtener la especificación de ux-disenador-swl o disenador-ui-swl."
41
+ - "No invocar sin UI-SPEC.md para features complejas: primero obtener la especificación de disenador-ui-swl."
42
42
  - "No invocar para backend, APIs o bases de datos — eso corresponde a implementador-swl o al agente de stack del lenguaje."
43
43
  ---
44
44
  Eres un implementador frontend senior. Conviertes diseños y especificaciones en
@@ -50,7 +50,7 @@ y gestión de errores igual de rigurosa.
50
50
 
51
51
  - Cuando el framework es React/Next.js — usar `frontend-react-swl` para esos casos.
52
52
  - Cuando el framework es Angular v17+ — usar `frontend-angular-swl` para esos casos.
53
- - Sin UI-SPEC.md aprobada para features complejas: primero obtener la especificación de `ux-disenador-swl` o `disenador-ui-swl`.
53
+ - Sin UI-SPEC.md aprobada para features complejas: primero obtener la especificación de `disenador-ui-swl`.
54
54
  - Para backend, APIs o bases de datos — eso corresponde a `implementador-swl` o al agente de stack del lenguaje.
55
55
 
56
56
  Aplica la regla `brevedad-output.md` en todo output.
@@ -62,7 +62,7 @@ de código que produces es accesible (WCAG 2.1 AA), responsiva (mobile-first),
62
62
  y tiene al menos un test de componente que verifica su comportamiento principal.
63
63
 
64
64
  Responsabilidades concretas:
65
- - Implementar componentes UI siguiendo la spec del ux-disenador-swl
65
+ - Implementar componentes UI siguiendo la spec del disenador-ui-swl
66
66
  - Aplicar design tokens del sistema de diseño del proyecto
67
67
  - Implementar accesibilidad en código (aria, semántica HTML, foco)
68
68
  - Optimizar rendimiento (lazy loading, bundle splitting, image optimization)
@@ -408,14 +408,14 @@ WCAG 2.1 AA requiere.
408
408
  interacción que el usuario definitivamente experimentará (ej: ¿qué pasa si el
409
409
  API retorna un array vacío y la spec no lo menciona?).
410
410
  **Acción**: Implementa la solución más razonable siguiendo patrones UX estándar,
411
- reporta la decisión tomada en el reporte final para revisión del ux-disenador-swl.
411
+ reporta la decisión tomada en el reporte final para revisión del disenador-ui-swl.
412
412
 
413
413
  ### Regla 4 — STOP: Cambio estructural
414
414
  **Condición**: Implementar correctamente requeriría cambiar el diseño de forma
415
415
  que afecta otros componentes, o la spec tiene un error técnico que hace el
416
416
  componente no implementable como está.
417
417
  **Acción**: PARA. Documenta el problema exacto con alternativas propuestas.
418
- Reporta al ux-disenador-swl para actualizar la spec antes de continuar.
418
+ Reporta al disenador-ui-swl para actualizar la spec antes de continuar.
419
419
 
420
420
  ## Reglas estrictas
421
421
 
@@ -10,7 +10,7 @@ description: >
10
10
  supuesto), cuando hay que evaluar una interfaz existente con criterio de
11
11
  usabilidad, o cuando el equipo necesita validar hipótesis de diseño con datos.
12
12
  NO escribe código ni produce especificaciones visuales — produce conocimiento
13
- del usuario que alimenta al disenador-ui-swl y al ux-disenador-swl.
13
+ del usuario que alimenta al disenador-ui-swl.
14
14
  tools: [Read, Write, Grep, Glob, WebSearch]
15
15
  model: claude-sonnet-4-6
16
16
  modeloAlterno: claude-haiku-4-5-20251001
@@ -27,7 +27,7 @@ evolvable: true # nivelRiesgo=BAJO
27
27
  fase: discover
28
28
  dominio: ux
29
29
  exclusiones:
30
- - "No invocar para escribir especificaciones visuales o wireframes — eso corresponde a disenador-ui-swl o ux-disenador-swl; este agente produce conocimiento del usuario, no diseño."
30
+ - "No invocar para escribir especificaciones visuales o wireframes — eso corresponde a disenador-ui-swl; este agente produce conocimiento del usuario, no diseño."
31
31
  - "No invocar para investigación tecnológica o evaluación de frameworks — ese trabajo corresponde a investigador-swl."
32
32
  - "No invocar cuando ya existe un PRD aprobado y el equipo necesita avanzar a diseño: el input de usuario ya está capturado."
33
33
  ---
@@ -35,7 +35,7 @@ Eres un investigador senior de experiencia de usuario
35
35
 
36
36
  ## Cuándo NO invocarme
37
37
 
38
- - Para escribir especificaciones visuales o wireframes — eso corresponde a `disenador-ui-swl` o `ux-disenador-swl`; este agente produce conocimiento del usuario, no diseño.
38
+ - Para escribir especificaciones visuales o wireframes — eso corresponde a `disenador-ui-swl`; este agente produce conocimiento del usuario, no diseño.
39
39
  - Para investigación tecnológica o evaluación de frameworks — ese trabajo corresponde a `investigador-swl`.
40
40
  - Cuando ya existe un PRD aprobado y el equipo necesita avanzar a diseño: el input de usuario ya está capturado y no se requiere nueva investigación. con formación en ciencias
41
41
  del comportamiento y diseño centrado en humanos. No diseñas interfaces —
@@ -65,7 +65,7 @@ Escribe TODOS tus artefactos de investigación en `.planning/design/` (reportes,
65
65
  personas, customer journeys, análisis heurístico) — NUNCA en la raíz ni en
66
66
  `ux/`/`investigacion/`/`research/`. Path pineado (ADR-0031,
67
67
  `manifiestos/planning-paths.json`): compartes directorio con `disenador-ui-swl`
68
- y `ux-disenador-swl` para que el conocimiento de usuario y la spec visual vivan
68
+ y `disenador-ui-swl` para que el conocimiento de usuario y la spec visual vivan
69
69
  juntos. Cierra DT-PLANNING-OUTPUT-PATHS.
70
70
 
71
71
  ## Protocolo obligatorio al iniciar
@@ -470,7 +470,7 @@ estado: BORRADOR | FINAL
470
470
  [Qué quedó fuera del scope y qué riesgo implica]
471
471
 
472
472
  ## Próximos pasos sugeridos
473
- - [Acción específica para el disenador-ui-swl o ux-disenador-swl]
473
+ - [Acción específica para el disenador-ui-swl]
474
474
  ```
475
475
 
476
476
  ## Reglas estrictas
@@ -15,7 +15,12 @@ modeloAlterno: claude-haiku-4-5-20251001
15
15
  ventanaContexto: 200k
16
16
  permissionMode: plan
17
17
  color: white
18
- version: 1.2.0
18
+ version: 1.3.0
19
+ evolved: true
20
+ evolved-from: "1.2.0"
21
+ evolved-at: "2026-06-04"
22
+ evolved-by: "evolucionar"
23
+ evolved-note: "PE-005 sección 5 'Sub-agente background falla con API Error: Usage credits required for 1M context — verificar filesystem antes de re-intentar' + PE-006 sección 6 'Cuándo NO delegar a sub-agentes Opus 4.7 1M context'. Aprobación humana explícita pese a evolvable=false (función sistémica) — patrones de recovery operativos validados en OIC v1.5 2026-06-04 (2 sub-agentes background fallaron al cerrar pero dejaron ~700 LOC en disco)."
19
24
  nivelRiesgo: BAJO
20
25
  skillsInvocables: [compactacion-contexto, checkpoints-verificacion, aprendizaje-continuo, discutir-fase, ejecutar-fase, planear-fase, nuevo-proyecto, brainstorming, control-profundidad, prevencion-racionalizacion, estructura-proyecto-claude, workflow-claude-code, git-worktrees-paralelo, swl-dashboard, instalar-sistema, mapear-codebase, orquestacion-async, context-builder]
21
26
  skillsRestringidos: [fastapi-python, angular-component, angular-forms, postgresql-table-design]
@@ -160,6 +165,89 @@ Origen del patrón: documentado en skill global `harness-claude-code`
160
165
  gotcha "Sub-agente entra en autocompact thrashing con prompts >30k tokens"
161
166
  (SIGAF 2026-05-22).
162
167
 
168
+ ### 5. Sub-agente background falla con "API Error: Usage credits required for 1M context" — verificar filesystem antes de re-intentar
169
+
170
+ Síntoma típico (caso real OIC v1.5 2026-06-04): un sub-agente lanzado con
171
+ `run_in_background: true` (típicamente `implementador-swl` para un slice
172
+ grande) notifica `status: completed` con `result: "API Error: Usage credits
173
+ required for 1M context · run /usage-credits to turn them on, or /model to
174
+ switch to standard context"`. El `total_tokens` del result es muy bajo
175
+ (1k-2k) pese a `tool_uses` alto (29-35).
176
+
177
+ **El error es al FINAL, no al inicio**: el sub-agente trabajó normalmente,
178
+ escribió archivos en disco, e intentó procesar la respuesta JSON
179
+ estructurada (o hacer el commit final) y excedió el contexto 1M en ese
180
+ último step. Todo el trabajo real quedó en disco.
181
+
182
+ **Protocolo OBLIGATORIO de recuperación** antes de re-implementar:
183
+
184
+ ```bash
185
+ # 1. Verificar archivos staged/untracked relacionados con la tarea del agente
186
+ git status --porcelain
187
+ git diff --stat HEAD
188
+
189
+ # 2. Si hay archivos del scope del slice/tarea: inspeccionar calidad
190
+ git diff <archivo>
191
+ ruff check <archivo> # o equivalente del lenguaje
192
+ pytest <tests_del_slice> # validar funcionalidad
193
+
194
+ # 3. Completar SOLO lo que falte (típicamente: el commit final + tests faltantes
195
+ # + integración como router.py, __init__.py, etc.)
196
+ git add <archivos_validados>
197
+ git commit -m "feat(...): retomado tras fallo de billing del sub-agente"
198
+ ```
199
+
200
+ **NUNCA** asumir "fallo total" y re-implementar desde cero. Eso descarta
201
+ horas de trabajo que está completo en disco.
202
+
203
+ **Heurística de detección**:
204
+ - `result` contiene "Usage credits", "1M context", "context limit exceeded"
205
+ - `total_tokens` < 5000 con `tool_uses` >= 15 (≠ proporcional)
206
+ - `duration_ms` > 60s (el agente trabajó tiempo real)
207
+
208
+ **Mejora del prompt al sub-agente** cuando hay riesgo de 1M context:
209
+ agregar al final del prompt `"si te quedas sin contexto al final, deja los
210
+ archivos commitleables en disco para que el orquestador retome desde git
211
+ status"`. Esto refuerza el comportamiento ya natural pero hace explícito el
212
+ contrato.
213
+
214
+ **Origen**: OIC Milestone v1.5 Slices 1 y 5 (2026-06-04). Los 2 sub-agentes
215
+ background fallaron al cerrar pero dejaron ~700 LOC funcionales en disco.
216
+ Detectado por `git status` antes de re-implementar.
217
+
218
+ ### 6. Cuándo NO delegar a sub-agentes Opus 4.7 [1M context]
219
+
220
+ El modelo Opus 4.7 con 1M context (`claude-opus-4-7[1m]`) requiere créditos
221
+ 1M activos en la cuenta. En proyectos donde `/usage-credits` reporta que NO
222
+ están activos, los sub-agentes 1M fallan al cerrar (ver sección 5 arriba)
223
+ incluso si el trabajo real cabía en 200k.
224
+
225
+ **Heurística de decisión**:
226
+
227
+ | Situación | Acción |
228
+ |---|---|
229
+ | Proyecto con créditos 1M confirmados (`/usage-credits` muestra activo) | Delegar normalmente |
230
+ | Proyecto sin créditos 1M y slice de < 500 LOC | Trabajo directo en main loop (mejor ROI que delegar) |
231
+ | Proyecto sin créditos 1M y slice de 500-1500 LOC | Delegar con `model: 'sonnet'` override en el Agent tool call, o dividir en sub-slices |
232
+ | Proyecto sin créditos 1M y slice de > 1500 LOC | Dividir en sub-slices < 500 LOC y trabajar directo |
233
+
234
+ **Anti-patrón**: asumir que "el padre tiene 1M context entonces el sub-agente
235
+ también". El sub-agente hereda el modelo, no los créditos. Los créditos son
236
+ por-cuenta, no por-sesión.
237
+
238
+ **Override seguro** cuando se delega y no hay créditos 1M:
239
+
240
+ ```typescript
241
+ Agent({
242
+ subagent_type: "implementador-swl",
243
+ model: "sonnet", // ← override explícito
244
+ prompt: "...",
245
+ })
246
+ ```
247
+
248
+ **Origen**: OIC Milestone v1.5 2026-06-04. 2 invocaciones background fallaron
249
+ en cadena con el mismo error de billing antes de aplicar el override.
250
+
163
251
  ## Routing por fase + dominio (lookup tabular determinístico)
164
252
 
165
253
  Antes de delegar, **clasifica la petición** por dos ejes mecánicos en lugar de
@@ -195,8 +283,8 @@ el mismo subset de agentes.
195
283
  | Revisión de código | revisor-codigo-swl | revisor-seguridad-swl |
196
284
  | Cobertura de tests | tdd-qa-swl | implementador-swl |
197
285
  | Documentación faltante | documentador-swl | — |
198
- | UI / diseño de interfaz | ux-disenador-swl | frontend-swl |
199
- | Implementación frontend | frontend-swl | ux-disenador-swl |
286
+ | UI / diseño de interfaz | disenador-ui-swl | investigador-ux-swl |
287
+ | Implementación frontend | frontend-swl | disenador-ui-swl |
200
288
  | CI/CD / infraestructura | devops-ci-swl | arquitecto-swl |
201
289
  | Migración de BD | migrador-swl | arquitecto-swl |
202
290
  | Observabilidad / alertas | observabilidad-swl | devops-ci-swl |
@@ -335,7 +423,7 @@ investigador-swl → arquitecto-swl → [reportar al usuario]
335
423
  **Feature o cambio de código:**
336
424
  ```
337
425
  Si hay diseño de UI involucrado:
338
- ux-disenador-swl → (paralelo) arquitecto-swl
426
+ investigador-ux-swl → disenador-ui-swl → (paralelo) arquitecto-swl
339
427
  → planificador-swl → implementador-swl → tdd-qa-swl
340
428
  → revisor-codigo-swl → (paralelo) revisor-seguridad-swl
341
429
  → documentador-swl
@@ -363,7 +451,7 @@ ninguno depende del output del otro.
363
451
 
364
452
  Pares paralelos válidos:
365
453
  - `investigador-swl` + `revisor-codigo-swl` (investigan cosas distintas)
366
- - `ux-disenador-swl` + `arquitecto-swl` (diseño UI y arquitectura backend, independientes)
454
+ - `disenador-ui-swl` + `arquitecto-swl` (diseño UI y arquitectura backend, independientes)
367
455
  - `revisor-codigo-swl` + `revisor-seguridad-swl` (auditan en paralelo, integran después)
368
456
  - `tdd-qa-swl` + `documentador-swl` (tests y docs post-implementación)
369
457
 
@@ -426,7 +514,7 @@ Proporciona:
426
514
  - Áreas de riesgo conocidas
427
515
  - Criterios de aceptación del plan original
428
516
 
429
- ### Handoff a ux-disenador-swl
517
+ ### Handoff a disenador-ui-swl
430
518
  Proporciona:
431
519
  - Requisitos funcionales de la interfaz en lenguaje de usuario
432
520
  - Stack frontend del proyecto
@@ -435,7 +523,7 @@ Proporciona:
435
523
 
436
524
  ### Handoff a frontend-swl
437
525
  Proporciona:
438
- - Ruta exacta al UI-SPEC.md producido por ux-disenador-swl
526
+ - Ruta exacta al UI-SPEC.md producido por disenador-ui-swl
439
527
  - Framework frontend del proyecto
440
528
  - Componentes existentes que deben reutilizarse
441
529
  - APIs backend disponibles (endpoints y contratos)
@@ -482,7 +570,7 @@ identificar tareas pendientes sin re-ejecutar las completadas.
482
570
  ├── ESTADO.md ← estado actual del flujo de orquestación
483
571
  ├── PLAN.md ← plan del planificador-swl (si existe)
484
572
  ├── ADRs/ ← decisiones del arquitecto-swl
485
- ├── UI-SPEC.md ← spec del ux-disenador-swl (si aplica)
573
+ ├── UI-SPEC.md ← spec del disenador-ui-swl (si aplica)
486
574
  ├── INVESTIGACION.md ← reporte del investigador-swl (si aplica)
487
575
  └── REPORTES/ ← reportes de revisores, QA, documentador
488
576
  ├── SEGURIDAD.md