siesa-agents 2.1.67 → 2.1.70

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 (72) hide show
  1. package/bmad/bmm/data/git-flow-siesa.md +24 -4
  2. package/claude/commands/bmad/bmm/workflows/code-review.md +6 -5
  3. package/claude/commands/bmad/bmm/workflows/quality-process.md +5 -0
  4. package/claude/commands/jira_sync/sync-epics-stories.md +5 -0
  5. package/claude/commands/sa-jira-sync.md +11 -0
  6. package/gemini/commands/bmad-workflow-bmm-code-review.toml +6 -5
  7. package/gemini/commands/bmad-workflow-bmm-quality-process.toml +4 -0
  8. package/gemini/commands/sa-jira-sync.toml +9 -0
  9. package/gemini/commands/sa-workflow-sync-epics-stories.toml +4 -0
  10. package/package.json +1 -1
  11. package/siesa-agents/bmm/workflows/2-plan-workflows/prd/workflow_ext.md +21 -2
  12. package/siesa-agents/bmm/workflows/3-solutioning/create-epics-and-stories/workflow_ext.md +6 -0
  13. package/siesa-agents/bmm/workflows/3-solutioning/quality-process/prompts/prompt_test_plan.md +340 -0
  14. package/siesa-agents/bmm/workflows/3-solutioning/quality-process/workflow.md +604 -0
  15. package/siesa-agents/bmm/workflows/4-implementation/code-review/workflow_ext.md +141 -0
  16. package/siesa-agents/bmm/workflows/4-implementation/create-story/workflow_ext.md +17 -2
  17. package/siesa-agents/bmm/workflows/4-implementation/dev-story/workflow_ext.md +79 -1
  18. package/siesa-agents/sa/sa-jira-sync-api/jira-sync-api.md +246 -0
  19. package/siesa-agents/sa/sync-epics-stories/data/templates/subtask-template.json +18 -0
  20. package/{bmad/bmm/workflows → siesa-agents/sa}/sync-epics-stories/steps/step-01-init.md +12 -7
  21. package/{bmad/bmm/workflows → siesa-agents/sa}/sync-epics-stories/steps/step-01b-continue.md +1 -1
  22. package/siesa-agents/sa/sync-epics-stories/steps/step-02-setup.md +174 -0
  23. package/siesa-agents/sa/sync-epics-stories/steps/step-03-scope.md +113 -0
  24. package/siesa-agents/sa/sync-epics-stories/steps/step-04-epics.md +226 -0
  25. package/siesa-agents/sa/sync-epics-stories/steps/step-05-stories.md +383 -0
  26. package/siesa-agents/sa/sync-epics-stories/workflow.md +91 -0
  27. package/siesa-agents/scripts/jira/README.md +76 -0
  28. package/siesa-agents/scripts/jira/add-comment.js +31 -0
  29. package/siesa-agents/scripts/jira/batch-create.js +68 -0
  30. package/siesa-agents/scripts/jira/create-issue.js +44 -0
  31. package/siesa-agents/scripts/jira/edit-issue.js +39 -0
  32. package/siesa-agents/scripts/jira/get-issue.js +39 -0
  33. package/siesa-agents/scripts/jira/lib/adf.js +88 -0
  34. package/siesa-agents/scripts/jira/lib/args.js +44 -0
  35. package/siesa-agents/scripts/jira/lib/jira-client.js +165 -0
  36. package/siesa-agents/scripts/jira/refresh-token.js +50 -0
  37. package/siesa-agents/scripts/jira/search.js +47 -0
  38. package/siesa-agents/scripts/jira/transition.js +80 -0
  39. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/README.md +0 -635
  40. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/data/excel-structure-guide.md +0 -255
  41. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/steps/step-01-init.md +0 -1149
  42. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/steps/step-01b-continue.md +0 -333
  43. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/steps/step-02-build-traceability.md +0 -488
  44. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/steps/step-03-interpret-tests.md +0 -1047
  45. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/steps/step-04-generate-plans.md +0 -936
  46. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/steps/step-05-export.md +0 -265
  47. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/templates/README.md +0 -256
  48. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/templates/epic-test-plan-template.md +0 -215
  49. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/templates/test-cases-reference.csv +0 -11
  50. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/templates/test-cases-structure.md +0 -568
  51. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/templates/test-cases-summary-template.md +0 -74
  52. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/templates/test-cases-template.csv +0 -11
  53. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/templates/traceability-map-template.md +0 -59
  54. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/workflow.md +0 -564
  55. package/bmad/bmm/workflows/4-implementation/traceability-and-testing/workflow.yaml +0 -138
  56. package/bmad/bmm/workflows/sync-epics-stories/data/templates/subtask-template.json +0 -4
  57. package/bmad/bmm/workflows/sync-epics-stories/steps/step-02-setup.md +0 -117
  58. package/bmad/bmm/workflows/sync-epics-stories/steps/step-03-scope.md +0 -70
  59. package/bmad/bmm/workflows/sync-epics-stories/steps/step-04-epics.md +0 -107
  60. package/bmad/bmm/workflows/sync-epics-stories/steps/step-05-stories.md +0 -163
  61. package/bmad/bmm/workflows/sync-epics-stories/workflow.md +0 -54
  62. package/claude/commands/bmad/bmm/workflows/sync-epics-stories.md +0 -5
  63. package/claude/commands/bmad/bmm/workflows/traceability-and-testing.md +0 -5
  64. package/claude/commands/jira_sync/feature_sync.md +0 -131
  65. package/gemini/commands/bmad-workflow-bmm-sync-epics-stories.toml +0 -4
  66. package/gemini/commands/bmad-workflow-bmm-traceability-and-testing.toml +0 -4
  67. /package/{bmad/bmm/workflows/4-implementation/traceability-and-testing → siesa-agents/bmm/workflows/3-solutioning/quality-process}/prompts/prompt_design_test.md +0 -0
  68. /package/{bmad/bmm/workflows → siesa-agents/sa}/sync-epics-stories/completion-summary-sync-epics-stories.md +0 -0
  69. /package/{bmad/bmm/workflows → siesa-agents/sa}/sync-epics-stories/data/templates/epic-template.json +0 -0
  70. /package/{bmad/bmm/workflows → siesa-agents/sa}/sync-epics-stories/data/templates/story-template.json +0 -0
  71. /package/{bmad/bmm/workflows → siesa-agents/sa}/sync-epics-stories/data/templates/task-template.json +0 -0
  72. /package/{bmad/bmm/workflows → siesa-agents/sa}/sync-epics-stories/workflow-plan-sync-epics-stories.md +0 -0
@@ -14,10 +14,13 @@ Para cualquier desarrollo de funcionalidad (**feature**), la rama de origen debe
14
14
 
15
15
  ---
16
16
 
17
- ## 2. Nomenclatura de la Rama
17
+ ## 2. Nomenclatura de la Rama y worktree
18
18
  La estructura del nombre debe seguir el formato:
19
19
  `rama-padre-team-owner-rq-descripcion`.
20
20
 
21
+ Identificar el folder actual para usarlo en la generacion del worktree de la siguiente manera:
22
+ `git worktree add ../wt-{folder-name}/{folder-name}-{branch-name} -b {branch-name}`
23
+
21
24
  **Parámetros Sugeridos:**
22
25
  * **Rama Padre:** `develop`.
23
26
  * **Team:** (Debe coincidir con un prefijo válido, ej: `legacy-erp-nomina`).
@@ -26,7 +29,7 @@ La estructura del nombre debe seguir el formato:
26
29
  * **Descripción:** Breve, en minúsculas y con guiones.
27
30
 
28
31
  **Ejemplo de comando:**
29
- `git checkout -b develop-legacy-erp-nomina-gaduranb-rq1234-nueva-interfaz`.
32
+ `git worktree ../wt-erp-nomina/erp-nomina-develop-legacy-erp-nomina-gaduranb-rq1234-nueva-interfaz -b develop-legacy-erp-nomina-gaduranb-rq1234-nueva-interfaz`.
30
33
 
31
34
  ---
32
35
 
@@ -43,8 +46,25 @@ Se adopta el formato de **Conventional Commits** para mejorar la legibilidad y a
43
46
  * `git commit -m "fix: corregir cálculo de nómina en rama legacy"`.
44
47
 
45
48
  ---
49
+ ## 4. Cambio de ramas
50
+ Para cambiar de rama se debe rastrear primero la ruta de la misma usando el listado del worktree `git worktree list`, una vez obtenida la ruta se cambia a la carpeta especifica de la rama que se necesita.
51
+
52
+ **Ejemplo de comando:**
53
+ comando:
54
+ `git worktree list`
46
55
 
47
- ## 4. Reglas de Oro de Gobernanza
56
+ resultado:
57
+ `C:/labs/siesaAgentsAlpha/siesaAgentsAlpha 7136248 [develop]`
58
+ `C:/labs/siesaAgentsAlpha/wt-erp-nomina/erp-nomina-develop-legacy-erp-nomina-gaduranb-rq1234-nueva-interfaz 86ed4a7 [develop-legacy-erp-nomina-gaduranb-rq1234-nueva-interfaz]`
59
+ `C:/labs/siesaAgentsAlpha/wt-erp-nomina/erp-nomina-develop-legacy-gaduranb-rq1235-metodos d0ddac7 [develop-legacy-gaduranb-rq1235-metodos]`
60
+
61
+ cambio de rama:
62
+ `cd ../wt-erp-nomina/erp-nomina-develop-legacy-gaduranb-rq1235-metodos`
63
+
64
+ ---
65
+ ## 5. Reglas de Oro de Gobernanza
48
66
  * **Todo en Minúsculas:** Los nombres de ramas y repositorios no deben contener mayúsculas.
49
67
  * **Protección de Ramas:** `main` y `develop` están protegidas; el push directo está prohibido.
50
- * **Nota:** Esta automatización solo podrá crear las ramas como se indica y realizar push a las mismas en caso de ser necesario.
68
+ * **Cuando realizar commit** Los commits deberan hacerce por historia en el code review, especificamente cuando este en status done la historia.
69
+ * **Generacion de ramas** Las ramas se deben generar por epicas o por features nunca por historia.
70
+ * **Nota:** Esta automatización solo podrá crear las ramas como se indica y realizar push a las mismas en caso de ser necesario.
@@ -5,9 +5,10 @@ description: 'Perform an ADVERSARIAL Senior Developer code review that finds 3-1
5
5
  IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
6
6
 
7
7
  <steps CRITICAL="TRUE">
8
- 1. Always LOAD the FULL @_bmad/core/tasks/workflow.xml
9
- 2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config @_bmad/bmm/workflows/4-implementation/code-review/workflow.yaml
10
- 3. Pass the yaml path _bmad/bmm/workflows/4-implementation/code-review/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
11
- 4. Follow workflow.xml instructions EXACTLY as written to process and follow the specific workflow config and its instructions
12
- 5. Save outputs after EACH section when generating any documents from templates
8
+ 1. FIRST, LOAD and READ the FULL contents of the custom extension file at: `_siesa-agents/bmm/workflows/4-implementation/code-review/workflow_ext.md`. You MUST assimilate these pre-requisites before doing anything else.
9
+ 2. Always LOAD the FULL @_bmad/core/tasks/workflow.xml
10
+ 3. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config @_bmad/bmm/workflows/4-implementation/code-review/workflow.md
11
+ 4. Pass the yaml path _bmad/bmm/workflows/4-implementation/code-review/workflow.md as 'workflow-config' parameter to the workflow.xml instructions
12
+ 5. Follow workflow.xml instructions EXACTLY as written to process and follow the specific workflow config and its instructions
13
+ 6. Save outputs after EACH section when generating any documents from templates
13
14
  </steps>
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: 'QA Quality Process — Phase 1 Planning or Phase 2 Design (QA Test Plan & Strategy). Asks at startup which phase to execute.'
3
+ ---
4
+
5
+ IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @_siesa-agents/bmm/workflows/3-solutioning/quality-process/workflow.md, READ its entire contents and follow its directions exactly!
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: 'Sync Epics and Stories'
3
+ ---
4
+
5
+ IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @_siesa-agents/sa/sync-epics-stories/workflow.md, READ its entire contents and follow its directions exactly!
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: sa-jira-sync
3
+ description: Query Jira and return a minimal hierarchy of Epics → Stories → Subtasks for a given project and epic status. Returns only id, key, name, and status for each level. Use when the user needs to inspect or export the epic/story/subtask structure from siesa-team or siesa-test-sandbox.
4
+ argument-hint: [PROJECT-KEY] [--status "Epic Status"]
5
+ user-invocable: true
6
+ allowed-tools: Bash, Read, Write
7
+ ---
8
+
9
+ Handle the Jira sync request: **$ARGUMENTS**
10
+
11
+ IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @_siesa-agents/sa/sa-jira-sync-api/jira-sync-api.md, READ its entire contents and follow its directions exactly!
@@ -3,10 +3,11 @@ prompt = """
3
3
  IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
4
4
 
5
5
  <steps CRITICAL="TRUE">
6
- 1. Always LOAD the FULL @_bmad/core/tasks/workflow.xml
7
- 2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config @_bmad/bmm/workflows/4-implementation/code-review/workflow.yaml
8
- 3. Pass the yaml path _bmad/bmm/workflows/4-implementation/code-review/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
9
- 4. Follow workflow.xml instructions EXACTLY as written to process and follow the specific workflow config and its instructions
10
- 5. Save outputs after EACH section when generating any documents from templates
6
+ 1. FIRST, LOAD and READ the FULL contents of the custom extension file at: `_siesa-agents/bmm/workflows/4-implementation/code-review/workflow_ext.md`. You MUST assimilate these pre-requisites before doing anything else.
7
+ 2. Always LOAD the FULL @_bmad/core/tasks/workflow.xml
8
+ 3. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config @_bmad/bmm/workflows/4-implementation/code-review/workflow.yaml
9
+ 4. Pass the yaml path _bmad/bmm/workflows/4-implementation/code-review/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
10
+ 5. Follow workflow.xml instructions EXACTLY as written to process and follow the specific workflow config and its instructions
11
+ 6. Save outputs after EACH section when generating any documents from templates
11
12
  </steps>
12
13
  """
@@ -0,0 +1,4 @@
1
+ description = "BMAD BMM Workflow: quality — QA Quality Process (Phase 1 Planning or Phase 2 Design)"
2
+ prompt = """
3
+ IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @_siesa-agents/bmm/workflows/3-solutioning/quality-process/workflow.md, READ its entire contents and follow its directions exactly!
4
+ """
@@ -0,0 +1,9 @@
1
+ description = "SA: Query Jira and return a minimal hierarchy of Epics → Stories → Subtasks for a given project and epic status. Returns only id, key, name, and status for each level."
2
+ prompt = """
3
+ IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @_siesa-agents/sa/sa-jira-sync-api/jira-sync-api.md, READ its entire contents and follow its directions exactly!
4
+
5
+ Parse the user arguments: **$ARGUMENTS**
6
+ - First positional arg → PROJECT_KEY (e.g. PPS)
7
+ - --status "..." → filter epics by this status name (default: En curso)
8
+ - If no PROJECT_KEY is provided, prompt the user for one.
9
+ """
@@ -0,0 +1,4 @@
1
+ description = "SA Workflow: sync-epics-stories — Sync Epics and Stories with Jira"
2
+ prompt = """
3
+ IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @_siesa-agents/sa/sync-epics-stories/workflow.md, READ its entire contents and follow its directions exactly!
4
+ """
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "siesa-agents",
3
- "version": "2.1.67",
3
+ "version": "2.1.70",
4
4
  "description": "Paquete para instalar y configurar agentes SIESA en tu proyecto",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -16,11 +16,30 @@ Cuando el workflow llegue a la fase de descubrimiento, presentar al usuario este
16
16
  > **2. Proporcionarlos manualmente** — Puedes pegarlos aquí, compartir un archivo `.txt` o `.md`, o describirlos en texto libre."
17
17
 
18
18
  <!-- INSTRUCCIONES DE WORKFLOW — NO mostrar al usuario -->
19
- - Si el usuario elige **opción 1 (Jira):** Invocar el skill `get-features` (UBICADO EN .claude\commands\get-features\SKILL.md) usando el Skill tool con `skill: "get-features"`. El skill se encargará de autenticarse con Jira, seleccionar instancia y proyecto, y generar el árbol de features en `_bmad-output/planning-artifacts/jira-trees/`. Una vez generado, leer ese archivo y extraer la lista de features del resultado para usarla como estructura del PRD.
20
- - Si el usuario elige **opción 2 (Manual):** Aceptar la lista de features que el usuario proporcione en cualquier formato (texto libre, `.txt`, `.md` o copia-pegado) y procesarla directamente.
19
+ - Si el usuario elige **opción 1 (Jira):** Invocar el skill `get-features` (UBICADO EN .claude\commands\get-features\SKILL.md) usando el Skill tool con `skill: "get-features"`. El skill se encargará de autenticarse con Jira, seleccionar instancia y proyecto, y generar el árbol de features en `_bmad-output/planning-artifacts/jira-trees/`. Una vez generado, leer ese archivo y extraer la lista de features del resultado para usarla como estructura del PRD. Por cada feature extraído de Jira, **incluir obligatoriamente** el marcador `FEATURE_CODE_JIRA={ISSUE_KEY}` en su sección del PRD (donde `{ISSUE_KEY}` es el ID del issue en Jira, ej: `PROY-123`). Este marcador es crítico para la sincronización posterior con Jira:
20
+ - Los shards del PRD (`prd/f{N}-*.md`) y los shards de épicas (`epics/f{N}-*.md`) deben contener este marcador.
21
+ - Al sincronizar, el workflow resuelve el ID con este orden de prioridad: (1) busca `FEATURE_CODE_JIRA=` en el shard de la épica; (2) si no lo encuentra, lo busca en el shard del PRD correspondiente.
22
+ - ⚠️ Si ninguno de los dos shards contiene el marcador, la sincronización fallará para ese feature. Es responsabilidad del ingeniero asegurar que el marcador exista en al menos uno de los dos shards antes de ejecutar la sincronización.
23
+ - Si el usuario elige **opción 2 (Manual):** Aceptar la lista de features que el usuario proporcione en cualquier formato (texto libre, `.txt`, `.md` o copia-pegado) y procesarla directamente. Por cada feature creado manualmente, incluir el marcador `FEATURE_CODE_JIRA=PENDING:{feature-slug}` (donde `{feature-slug}` es el nombre del feature en kebab-case, ej: `FEATURE_CODE_JIRA=PENDING:gestion-de-clientes`). Este valor temporal indica que el feature aún no existe en Jira y será creado automáticamente cuando el ingeniero ejecute `jira_sync`.
21
24
 
22
25
  Inyectar los features confirmados como estructura del PRD: cada feature debe quedar como una sección `### feature — {Name}` dentro del documento.
23
26
 
27
+ <!-- INSTRUCCIONES DE WORKFLOW — NO mostrar al usuario -->
28
+ **Si el PRD ya fue shardeado (existe la carpeta `prd/` con archivos `f{N}-*.md`):**
29
+ - **NO modificar** el PRD maestro original.
30
+ - Por cada nuevo feature que el ingeniero quiera agregar, ejecutar el siguiente flujo de resolución **antes de crear el shard**:
31
+
32
+ 1. Invocar el skill `get-features` (usando el Skill tool con `skill: "get-features"`) para traer el árbol actualizado de features desde Jira.
33
+ 2. Leer el árbol generado en `_bmad-output/planning-artifacts/jira-trees/` y filtrar los features que **no tienen shard local** (cuyo `ISSUE_KEY` no aparece en ningún `prd/f{N}-*.md` existente).
34
+ 3. Mostrar al ingeniero la lista filtrada y preguntar:
35
+ > *"Se encontraron los siguientes features en Jira sin shard local. ¿Alguno corresponde al feature que acabas de describir?"*
36
+ - Listar cada feature con su KEY y nombre (ej: `PROY-89 — Gestión de Clientes`).
37
+ - Incluir siempre la opción: **"Ninguno — es un feature completamente nuevo, no existe en Jira"**.
38
+ 4. **Si el ingeniero selecciona un feature de Jira** → crear el shard `f{N}-{feature-name}.md` con `FEATURE_CODE_JIRA={ISSUE_KEY}` del feature seleccionado.
39
+ 5. **Si el ingeniero elige "Ninguno"** → crear el shard `f{N}-{feature-name}.md` con `FEATURE_CODE_JIRA=PENDING:{feature-slug}`.
40
+
41
+ - Informar al ingeniero qué archivo shard fue creado y que puede enriquecerlo con detalle adicional de forma independiente.
42
+
24
43
  ## 2. Naturaleza del PRD Generado
25
44
 
26
45
  El PRD que produce este workflow es un **documento maestro general**. Contiene la definición base de cada feature a nivel de alcance, objetivos y requisitos generales — NO el detalle profundo de implementación de cada uno.
@@ -63,5 +63,11 @@ Una vez confirmada la lista de features, inyectar las siguientes reglas de estru
63
63
 
64
64
  6. **Step 3 (Stories)**: Al generar épicas y stories, escribir cada feature como sección `##`, con sus épicas como `###` y stories como `####`. La numeración de stories sigue el patrón `{epic_num}.{story_num}` (ej: Story 3.1, Story 3.2 para Epic 3).
65
65
 
66
+ 7. **Marcador `FEATURE_CODE_JIRA`**: Cada archivo shard de épica debe comenzar con la siguiente línea como **primera línea del archivo**, antes de cualquier heading:
67
+ ```
68
+ <!-- FEATURE_CODE_JIRA=PENDING:{slug} -->
69
+ ```
70
+ donde `{slug}` es el mismo slug kebab-case del feature correspondiente en el PRD shard (ej: `gestion-de-clientes`, `asociacion-cliente-contacto`). Este marcador es requerido por el workflow `sync-epics-stories` para asociar el shard con su issue en Jira.
71
+
66
72
  **PASO 3: CONTINUAR CON WORKFLOW ESTÁNDAR**
67
73
  Después de inyectar el contexto, continuar con el flujo normal del workflow `create-epics-and-stories` (step-01 → step-02 → step-03 → step-04), aplicando las reglas de estructura en cada paso.
@@ -0,0 +1,340 @@
1
+ # 🧠 PROMPT: GENERADOR DE PLAN & ESTRATEGIA DE PRUEBAS QA — BMAD Human–AI (v3.0)
2
+ # METODOLOGÍA: BMAD v6.0 | Zero-Bureaucracy | Spec-Driven Quality
3
+
4
+ ---
5
+
6
+ ## ROL Y PERSPECTIVA
7
+
8
+ Eres un **QA Architect Senior** con 10+ años de experiencia en sistemas empresariales
9
+ complejos (ERP, HCM, CRM, plataformas financieras, compliance regulatorio).
10
+ Tu criterio de priorización combina **riesgo técnico**, **impacto de negocio** y
11
+ **exposición regulatoria/legal** según el dominio del producto.
12
+ Piensas como **defensor del negocio**, no solo como técnico de pruebas.
13
+ Trabajas bajo la metodología **BMAD v6.0 (Spec-Driven Quality)**.
14
+
15
+ ---
16
+
17
+ ## 📥 FUENTES DE VERDAD
18
+
19
+ > Adjunta uno o más documentos fuente. El agente detecta automáticamente el dominio
20
+ > e infiere riesgos técnicos, funcionales y regulatorios relevantes.
21
+
22
+ | # | Tipo de Documento Fuente |
23
+ |---|---------------------------------------|
24
+ | 1 | PRD / Documento de Requerimientos |
25
+ | 2 | Documento de Arquitectura / ADR |
26
+ | 3 | User Stories / Épicas (Jira/Markdown) |
27
+ | 4 | Pull Request / Diff técnico |
28
+ | 5 | Contexto normativo / Regulatorio |
29
+ | 6 | Documento de diseño UX / Wireframes |
30
+
31
+ **Detección automática de dominio:**
32
+ - Nómina, HCM, liquidaciones → contexto laboral/contable
33
+ - APIs, microservicios, contratos → validación de integración y contratos
34
+ - Facturación, DIAN, tributario → contexto fiscal
35
+ - Autenticación, roles, permisos → contexto de seguridad RBAC
36
+ - En cualquier caso: aplicar estándar SIESA ERP/HCM si corresponde.
37
+
38
+ ---
39
+
40
+ ## 🧠 ANÁLISIS INTERNO OBLIGATORIO (Chain-of-Thought)
41
+
42
+ Antes de generar el output, ejecuta estos 4 pasos internamente:
43
+
44
+ ### PASO 1 — Impact Analysis (Blast Radius)
45
+ - ¿Qué módulos, servicios o entidades se ven afectados?
46
+ - ¿El cambio es aislado (feature) o cross-módulo (épica/plataforma)?
47
+ - ¿Afecta flujos críticos de negocio: liquidación, facturación, reportes legales, POS?
48
+
49
+ ### PASO 2 — Technical Debt & Compliance Assessment
50
+ - ¿El cambio introduce complejidad nueva o modifica lógica certificada?
51
+ - ¿Hay dependencias con normativas vigentes (laborales, fiscales, contables)?
52
+ - ¿Existe riesgo de regresión en features ya en producción?
53
+
54
+ ### PASO 3 — Risk Matrix Calculation
55
+ ```
56
+ Riesgo = Impacto (1–5) × Probabilidad de Fallo (1–5)
57
+ ```
58
+ - R > 15 🔴 → Regresión completa + Agentes de Seguridad activados
59
+ - R 8–15 🟡 → Integración + validación de contratos + concurrencia
60
+ - R < 8 🟢 → Unitarias + smoke test
61
+
62
+ ### PASO 4 — Synergy Mapping (Agentes BMAD)
63
+ Identificar qué sub-agentes activar según las features detectadas:
64
+ - **Analizador Funcional** → cobertura de criterios de aceptación
65
+ - **Generador de Casos de Prueba** → escenarios positivos, negativos, borde
66
+ - **Analizador Predictivo de Riesgo** → zonas de mayor probabilidad de fallo
67
+ - **Validador Inteligente de Datos (Alquimista)** → Data Buckets por feature
68
+ - **Explorador Inteligente** → arquetipos de usuario y sesiones exploratorias
69
+ - **Clasificador Automático de Defectos** → taxonomía de bugs esperados
70
+ - **Analizador Post-Sprint** → métricas de cierre y aprendizaje continuo
71
+
72
+ ---
73
+
74
+ ## 📦 OUTPUT REQUERIDO: PLAN DE PRUEBAS BMAD v3.0
75
+
76
+ Genera el plan completo en Markdown. Sé preciso, técnico y directo.
77
+ Omite secciones que no aporten valor al sprint si el stack ya está definido.
78
+
79
+ ---
80
+
81
+ ### 📋 SECCIÓN 1 — INFORMACIÓN GENERAL
82
+
83
+ ```
84
+ Proyecto: [Inferido del documento fuente]
85
+ Microservicio/Módulo: [Inferido]
86
+ Sprint / Ciclo: [Inferido o PENDIENTE]
87
+ Fecha del Plan: @currentDate
88
+ Autor: @currentUser — asistido por IA (BMAD)
89
+ Stack (solo si cambia respecto al sprint anterior o es primera vez):
90
+ Backend: [Inferir del documento de arquitectura]
91
+ Frontend: [Inferir]
92
+ Testing: [Inferir]
93
+ CI/CD: GitHub Actions, GitFlow
94
+ ```
95
+
96
+ > ⚠️ Si el stack del microservicio ya está documentado en sprints previos,
97
+ > omitir detalle técnico y referenciar: "Stack vigente — ver Plan Sprint [N-1]".
98
+
99
+ ---
100
+
101
+ ### 🎯 SECCIÓN 2 — OBJETIVO & DoR / DoD
102
+
103
+ #### 2.1 Objetivos de Negocio
104
+ Listar en bullets concretos las metas de negocio que este plan protege.
105
+ Máximo 5 objetivos priorizados por impacto.
106
+
107
+ #### 2.2 Criterios de Calidad
108
+ | Criterio | Meta |
109
+ |----------|------|
110
+ | Cobertura backend | ≥ 80% |
111
+ | Cobertura frontend | ≥ 75% |
112
+ | Defectos P1 en producción | 0 |
113
+ | [Métricas NFR específicas del feature] | [Umbral] |
114
+
115
+ #### 2.3 Checklist DoR — Definition of Ready
116
+ > ✅ = Cumple | ⚠️ = Parcial (indicar qué falta) | ❌ = Bloquea inicio de QA
117
+
118
+ - [ ] Historias con criterios de aceptación definidos y revisados
119
+ - [ ] Arquitectura técnica aprobada para la feature
120
+ - [ ] Endpoints documentados en Scalar/OpenAPI
121
+ - [ ] Datos de prueba identificados y disponibles
122
+ - [ ] Dependencias inter-servicio mapeadas
123
+ - [ ] Permisos RBAC definidos en la matriz de permisos
124
+ - [ ] Análisis IA preliminar ejecutado (BMAD)
125
+ - [ ] [Criterios adicionales inferidos del dominio]
126
+
127
+ #### 2.4 Checklist DoD — Definition of Done
128
+ - [ ] Código implementado con code review aprobado
129
+ - [ ] Tests unitarios ≥ 80% cobertura pasando
130
+ - [ ] Tests de integración (TestContainers) pasando
131
+ - [ ] Sin defectos P1/bloqueantes abiertos
132
+ - [ ] Endpoints documentados en Scalar
133
+ - [ ] Pipeline CI/CD verde en `develop`
134
+ - [ ] Validación funcional en ambiente QA completada
135
+ - [ ] Métricas NFR verificadas (latencia, cache, concurrencia)
136
+ - [ ] Análisis IA post-sprint ejecutado (BMAD)
137
+ - [ ] [Criterios específicos del dominio: legal, contable, fiscal]
138
+
139
+ ---
140
+
141
+ ### 📐 SECCIÓN 3 — ALCANCE DE PRUEBAS
142
+
143
+ > Se incluyen **todas** las features y épicas disponibles en los documentos fuente. No se excluye ninguna.
144
+
145
+ #### 3.1 Features Incluidas
146
+ | # | Feature | Dominio | Mutabilidad | Riesgo | Prioridad QA |
147
+ |---|---------|---------|-------------|--------|-------------|
148
+ | F1 | [Feature inferida] | | | Alto/Medio/Bajo | P1/P2/P3 |
149
+
150
+ ---
151
+
152
+ ### 🛠️ SECCIÓN 4 — ESTRATEGIA DE PRUEBAS
153
+
154
+ #### 4.1 Tipos de Prueba
155
+ | Tipo | Alcance | Cobertura Objetivo | Automatización |
156
+ |------|---------|-------------------|---------------|
157
+ | Unitarias Backend | Validators, Handlers, Domain | ≥ 80% | 100% |
158
+ | Unitarias Frontend | Hooks, Stores, Componentes | ≥ 75% | 100% |
159
+ | Integración Backend | Repos, Endpoints, EF Core | ≥ 70% | 100% |
160
+ | Integración Frontend | API calls, TanStack Query | ≥ 60% | 100% |
161
+ | Contract Tests | Contratos entre microservicios | 100% endpoints | 100% |
162
+ | Smoke Tests | Endpoints críticos post-deploy | Todos los críticos | 100% |
163
+ | Regresión | Pre-release | 100% | 100% |
164
+ | Performance | Endpoints críticos (POS, cache) | P95 < umbral | Semi-auto |
165
+ | Seguridad RBAC | Permisos × endpoints | 100% endpoints | 100% |
166
+ | Seguridad SAST | Código fuente + dependencias | 100% PRs | 100% |
167
+ | Exploratoria | Flujos complejos, edge cases | Features P1 y P2 | Manual |
168
+
169
+ #### 4.2 Técnicas de Diseño Aplicadas
170
+ | Técnica | Features Objetivo | Observación |
171
+ |---------|-----------------|-------------|
172
+ | Partición de Equivalencia | [Inferir] | |
173
+ | Valores Límite | [Inferir] | |
174
+ | Tabla de Decisión | [Inferir] | |
175
+ | Transición de Estados | [Inferir] | |
176
+ | Error Guessing / Análisis de Riesgo | Todas | Race conditions, cache stale, inyección |
177
+
178
+ #### 4.3 Integración Human–AI (BMAD)
179
+
180
+ **Nivel de uso de IA en el sprint:**
181
+ | Nivel | % Ref. | Aplica | Justificación | Responsable Validación |
182
+ |-------|--------|--------|---------------|----------------------|
183
+ | Manual | 0% | | | |
184
+ | Asistido | 30% | | | |
185
+ | Diseño IA validado por QA | 60% | | | |
186
+ | IA + análisis predictivo | 90% | | | |
187
+
188
+ **Agentes IA activados:**
189
+ | Agente IA | Utilizado | Fase | Impacto | Observaciones |
190
+ |-----------|----------|------|---------|---------------|
191
+ | Analizador Funcional | | Pre-construcción | | |
192
+ | Generador de Casos de Prueba | | Pre-construcción | | |
193
+ | Analizador Predictivo de Riesgo | | Pre-construcción | | |
194
+ | Validador Inteligente de Datos | | Ejecución | | |
195
+ | Explorador Inteligente | | Ejecución | | |
196
+ | Clasificador Automático de Defectos | | Ejecución | | |
197
+ | Analizador Post-Sprint | | Certificación / Seguimiento | | |
198
+
199
+ ---
200
+
201
+ ### 🌐 SECCIÓN 5 — AMBIENTE & DATOS DE PRUEBA
202
+
203
+ > ⚠️ Si el microservicio ya tiene stack y ambientes documentados, indicar solo
204
+ > el ambiente requerido para este sprint y los datos específicos necesarios.
205
+ > No repetir configuración estática de infraestructura sprint a sprint.
206
+
207
+ #### 5.1 Ambiente Requerido para el Sprint
208
+
209
+ | Ambiente | Estado Requerido | Responsable | Observación |
210
+ |----------|-----------------|-------------|-------------|
211
+ | QA | Disponible con seeds cargados | DevOps | [Condición específica si aplica] |
212
+ | STAGING | Disponible para smoke pre-release | DevOps | |
213
+
214
+ #### 5.2 Data Buckets por Feature (Agente Alquimista)
215
+
216
+ > Definir los conjuntos de datos específicos para validar los FRs críticos.
217
+ > Usar nomenclatura: `[FEATURE_ABREV]-[ESCENARIO]`
218
+
219
+ **[F1 — Nombre Feature]**
220
+ | Bucket | Descripción | Datos / Valores Ejemplo |
221
+ |--------|-------------|------------------------|
222
+ | `F1-VALID` | Caso nominal válido | [Valores inferidos del PRD] |
223
+ | `F1-BOUNDARY` | Valores límite | [Inferir] |
224
+ | `F1-NEGATIVE` | Datos inválidos / negativos | [Inferir] |
225
+ | `F1-CONCURRENT` | Concurrencia (si riesgo > 15) | [N threads, misma entidad] |
226
+ | `F1-SECURITY` | RBAC / inyección (si aplica) | [Payloads de seguridad] |
227
+
228
+ > Repetir estructura por cada feature de riesgo Alto o Crítico.
229
+
230
+ ---
231
+
232
+ ### ⚠️ SECCIÓN 6 — MATRIZ DE RIESGO PREDICTIVO
233
+
234
+ #### Escala de Evaluación
235
+ | Valor | Probabilidad (P) | Impacto (I) |
236
+ |-------|-----------------|-------------|
237
+ | 1 | Muy baja (< 5%) | Cosmético |
238
+ | 2 | Baja (5-15%) | Menor / workaround disponible |
239
+ | 3 | Media (15-40%) | Moderado / funcionalidad degradada |
240
+ | 4 | Alta (40-70%) | Mayor / funcionalidad bloqueada |
241
+ | 5 | Muy alta (> 70%) | Crítico / pérdida financiera o datos |
242
+
243
+ #### Matriz por Feature
244
+ | ID | Feature | Riesgo Identificado | P | I | R=P×I | Nivel | Mitigación |
245
+ |----|---------|--------------------|----|---|-------|-------|-----------|
246
+ | R-F1-01 | [Feature] | [Riesgo inferido del análisis] | | | | 🔴/🟡/🟢 | |
247
+
248
+ #### Resumen Riesgos Críticos (R > 15)
249
+ | ID | Feature | Riesgo | R | Acción Inmediata |
250
+ |----|---------|--------|---|-----------------|
251
+ | [Solo los R > 15] | | | | |
252
+
253
+ > Regla automática: Si R > 15 → Suite de Regresión Completa + Agentes de Seguridad activados.
254
+
255
+ ---
256
+
257
+ ### ✅ SECCIÓN 7 — CRITERIOS DE ENTRADA / SALIDA
258
+
259
+ #### 7.1 Entry Criteria — Checklist DoR Sprint
260
+ | # | Criterio | Responsable | Estado |
261
+ |---|---------|-------------|--------|
262
+ | CE-01 | Build en `develop` compilando sin errores | Dev Lead | ⬜ |
263
+ | CE-02 | Tests unitarios del desarrollador ≥ 80% | Desarrollador | ⬜ |
264
+ | CE-03 | Endpoints documentados en Scalar/OpenAPI | Desarrollador | ⬜ |
265
+ | CE-04 | Migraciones aplicadas en ambiente QA | DevOps | ⬜ |
266
+ | CE-05 | Seeds y datos de prueba disponibles en QA | QA + Dev | ⬜ |
267
+ | CE-06 | Usuarios RBAC configurados | DevOps | ⬜ |
268
+ | CE-07 | Ambiente QA estable (health check OK) | DevOps | ⬜ |
269
+ | CE-08 | Historias con criterios de aceptación aprobados | PO | ⬜ |
270
+ | CE-09 | Análisis IA preliminar ejecutado (BMAD) | QA Lead | ⬜ |
271
+ | [CE-N] | [Criterio específico inferido del dominio] | | ⬜ |
272
+
273
+ #### 7.2 Exit Criteria — Checklist DoD Sprint (Go / No-Go)
274
+
275
+ **✅ GO — Aprobado para Release si:**
276
+ - Todos los criterios marcados "Bloquea = Sí" cumplidos
277
+ - 0 defectos P1 abiertos
278
+ - Defectos P2 ≤ 2 con workaround documentado y aprobación del PO
279
+ - Smoke tests en STAGING pasando al 100%
280
+ - Todos los riesgos R > 15 con tests de mitigación pasando
281
+
282
+ **❌ NO-GO — Bloqueado si:**
283
+ | Condición No-Go | Acción Requerida |
284
+ |----------------|-----------------|
285
+ | ≥ 1 defecto P1 abierto | Hotfix inmediato + re-validación |
286
+ | Cobertura backend < 75% | Completar tests faltantes |
287
+ | Tests de concurrencia fallando (features con R > 15) | Revisión de mecanismo de locking |
288
+ | RBAC bypass detectado en cualquier endpoint | Fix de seguridad obligatorio |
289
+ | Smoke tests STAGING < 100% | Diagnóstico y fix antes de deploy |
290
+ | [Condición específica del dominio] | [Acción] |
291
+
292
+ **Criterios de salida por feature:**
293
+ | # | Criterio | Meta | Tolerancia | Bloquea Release |
294
+ |---|---------|------|-----------|----------------|
295
+ | CS-01 | Tests unitarios pasando | 100% | 0 fallos | Sí |
296
+ | CS-02 | Tests de integración pasando | 100% | 0 fallos | Sí |
297
+ | CS-03 | Cobertura backend | ≥ 80% | Mínimo 75% | Sí (< 75%) |
298
+ | CS-04 | Cobertura frontend | ≥ 75% | Mínimo 70% | Sí (< 70%) |
299
+ | CS-05 | Defectos P1 abiertos | 0 | 0 | Sí |
300
+ | CS-06 | Defectos P2 abiertos | 0 | ≤ 2 con workaround | No (con aprobación PO) |
301
+ | CS-07 | Performance P95 endpoints críticos | < umbral definido | Ver Sección 4.1 | Sí |
302
+ | CS-08 | RBAC validation suite | 100% | 0 bypass | Sí |
303
+ | CS-09 | Smoke tests en QA | 100% | 0 fallos | Sí |
304
+ | CS-10 | Contract tests | 100% | 0 breaking changes | Sí |
305
+ | CS-11 | Riesgos R > 15 mitigados | 100% | Tests específicos pasando | Sí |
306
+ | [CS-N] | [Criterio específico del dominio] | | | |
307
+
308
+ **Definición técnica de "Certificado":**
309
+ > [El agente redacta aquí la condición exacta de aprobación para este requerimiento
310
+ > específico, incluyendo umbrales de cobertura, ausencia de defectos críticos
311
+ > y validaciones de negocio derivadas del documento fuente]
312
+
313
+ ---
314
+
315
+ ## ⚠️ RESTRICCIONES DEL AGENTE
316
+
317
+ 1. **Zero-Bureaucracy**: Resultados técnicos sobre documentación estática.
318
+ No repetir información de stack o infraestructura que no haya cambiado.
319
+ 2. **Automatización primero**: No proponer pruebas manuales a menos que sea
320
+ técnicamente imposible automatizarlas. Justificar toda excepción.
321
+ 3. **Sin estimaciones de esfuerzo**: La IA no conoce la capacidad real del equipo,
322
+ las interrupciones del sprint ni la deuda técnica no documentada.
323
+ Las horas viven en el sistema de planificación del equipo, no aquí.
324
+ 4. **Sin historial de revisiones**: El historial vive en Git. Este documento es un
325
+ artefacto vivo; las versiones se gestionan en el repositorio.
326
+ 5. **Compliance obligatorio**: Si el dominio es contable, fiscal o laboral,
327
+ incluir validaciones regulatorias específicas y vigentes al momento del sprint.
328
+ 6. **Trazabilidad total**: Cada caso debe ser trazable a un criterio de aceptación
329
+ del documento fuente. Sin FR documentado → sin caso de prueba.
330
+ 7. **Alineación SIESA**: Si el sistema host es SIESA ERP/HCM, garantizar
331
+ el estándar contable/legal vigente.
332
+
333
+ ---
334
+
335
+ > **Nota:** Documento vivo. Actualizar al finalizar cada feature o al identificar nuevos riesgos.
336
+ > El historial de versiones vive en el repositorio Git — no se replica aquí.
337
+
338
+ ---
339
+
340
+ **[ADJUNTA AQUÍ TU DOCUMENTO FUENTE: PRD / ARQUITECTURA / USER STORIES / PR / CONTEXTO NORMATIVO]**