@@ -885,6 +885,201 @@ EVENTO: Que accion realice?
885885└─> Workflows: (ninguno - fase de diseno)
886886```
887887
888+ ### 6.6 Automatizacion: Sistema de Consulta Programatica
889+
890+ Para facilitar la consulta automatica de asociaciones entre workflows, templates, procedimientos y agentes, se ha implementado un sistema de consulta programatica.
891+
892+ #### Archivos del Sistema
893+
894+ ** 1. Configuracion JSON: ` .claude/workflow_template_mapping.json ` **
895+
896+ Archivo de configuracion centralizado que contiene:
897+
898+ - ** mappings** : Mapeo forward de workflows a templates, procedimientos, scripts, agentes
899+ - ** reverse_mappings** : Mapeo inverso para consultas rapidas
900+ - by_template: template -> workflows
901+ - by_procedimiento: procedimiento -> workflows
902+ - by_agente: agente -> workflows
903+ - by_fase_sdlc: fase -> workflows
904+ - ** template_metadata** : Metadata de cada template (categoria, prioridad, fase_sdlc, workflows_requeridos)
905+ - ** workflow_generation_rules** : Reglas de cuando usar cada template/workflow
906+
907+ ** 2. Script de Consulta: ` scripts/generate_workflow_from_template.py ` **
908+
909+ Script Python para consultar y validar asociaciones.
910+
911+ ** Funcionalidades:**
912+ - Listar todos los mapeos disponibles
913+ - Consultar workflows asociados a un template
914+ - Consultar templates asociados a un workflow
915+ - Sugerir workflow basado en path de archivo
916+ - Validar integridad de todos los mapeos
917+ - Modo interactivo para exploracion
918+
919+ #### Como Usar
920+
921+ ** Ejemplo 1: Listar todos los mapeos**
922+ ``` bash
923+ python scripts/generate_workflow_from_template.py --list-mappings
924+ ```
925+
926+ Output:
927+ ```
928+ MAPEOS DISPONIBLES: TEMPLATE -> WORKFLOW
929+ ================================================================================
930+
931+ Template: plantilla_django_app.md
932+ Workflows: backend-ci
933+ Fase SDLC: development
934+ Categoria: desarrollo
935+ Genera: Django app en api/callcentersite/apps/
936+ ```
937+
938+ ** Ejemplo 2: Consultar workflows para un template**
939+ ``` bash
940+ python scripts/generate_workflow_from_template.py --template plantilla_django_app.md
941+ ```
942+
943+ Output:
944+ ```
945+ Workflows para template 'plantilla_django_app.md':
946+ - backend-ci.yml
947+ Validaciones: RNF-002, tests, coverage>=80, lint
948+ ```
949+
950+ ** Ejemplo 3: Consultar templates para un workflow**
951+ ``` bash
952+ python scripts/generate_workflow_from_template.py --workflow backend-ci
953+ ```
954+
955+ Output:
956+ ```
957+ Templates para workflow 'backend-ci':
958+ - plantilla_django_app.md
959+ - plantilla_etl_job.md
960+ - plantilla_tdd.md
961+ ```
962+
963+ ** Ejemplo 4: Sugerir workflow basado en archivo**
964+ ``` bash
965+ python scripts/generate_workflow_from_template.py --file api/callcentersite/apps/myapp/models.py
966+ ```
967+
968+ Output:
969+ ```
970+ Archivo: api/callcentersite/apps/myapp/models.py
971+ Workflows sugeridos:
972+ - backend-ci.yml
973+ Validaciones: RNF-002, tests, coverage>=80, lint
974+ Templates relacionados: plantilla_django_app.md, plantilla_etl_job.md, plantilla_tdd.md
975+ ```
976+
977+ ** Ejemplo 5: Validar todos los mapeos**
978+ ``` bash
979+ python scripts/generate_workflow_from_template.py --validate
980+ ```
981+
982+ Output:
983+ ```
984+ VALIDANDO MAPEOS
985+ ================================================================================
986+ [OK] Todos los mapeos son validos
987+ ```
988+
989+ ** Ejemplo 6: Modo interactivo**
990+ ``` bash
991+ python scripts/generate_workflow_from_template.py --interactive
992+ ```
993+
994+ Output:
995+ ```
996+ MODO INTERACTIVO - Consulta de Mapeos
997+ ================================================================================
998+
999+ Comandos:
1000+ template <nombre> - Buscar workflows para un template
1001+ workflow <nombre> - Buscar templates para un workflow
1002+ procedimiento <nombre> - Buscar info de procedimiento
1003+ file <path> - Sugerir workflow para archivo
1004+ list - Listar todos los mapeos
1005+ quit - Salir
1006+
1007+ >>> template plantilla_tdd
1008+ Workflows para 'plantilla_tdd': backend-ci, test-pyramid
1009+
1010+ >>> quit
1011+ ```
1012+
1013+ #### Integracion en Flujo de Trabajo
1014+
1015+ ** Caso de Uso 1: Developer crea nueva Django app**
1016+ ``` bash
1017+ # 1. Consultar template a usar
1018+ python scripts/generate_workflow_from_template.py --template plantilla_django_app
1019+
1020+ # Output: backend-ci.yml se ejecutara al push
1021+
1022+ # 2. Crear app usando template
1023+ cp docs/plantillas/plantilla_django_app.md api/callcentersite/apps/myapp/design.md
1024+
1025+ # 3. Desarrollar app siguiendo plantilla
1026+ # ...
1027+
1028+ # 4. Push a repo
1029+ git add . && git commit -m " feat: nueva app myapp" && git push
1030+
1031+ # 5. Workflow backend-ci.yml se ejecuta automaticamente
1032+ # Valida: RNF-002, tests, coverage>=80, lint
1033+ ```
1034+
1035+ ** Caso de Uso 2: BA identifica archivo sin workflow asociado**
1036+ ``` bash
1037+ # Consultar si archivo tiene workflow
1038+ python scripts/generate_workflow_from_template.py --file docs/nuevo_documento.md
1039+
1040+ # Si no hay sugerencia -> consultar Tech Lead
1041+ # Si hay sugerencia -> verificar que workflow existe
1042+ ```
1043+
1044+ ** Caso de Uso 3: Validar integridad antes de deployment**
1045+ ``` bash
1046+ # En CI/CD pipeline
1047+ python scripts/generate_workflow_from_template.py --validate
1048+
1049+ # Si falla -> bloquear deployment
1050+ # Si OK -> continuar con deployment
1051+ ```
1052+
1053+ #### Mantenimiento del Sistema
1054+
1055+ ** Cuando actualizar ` .claude/workflow_template_mapping.json ` :**
1056+
1057+ 1 . ** Nuevo workflow creado** : Agregar entrada en ` mappings ` con templates, procedimientos, scripts
1058+ 2 . ** Nuevo template creado** : Agregar a workflow existente + actualizar ` reverse_mappings.by_template `
1059+ 3 . ** Nuevo procedimiento** : Agregar a workflow + actualizar ` reverse_mappings.by_procedimiento `
1060+ 4 . ** Cambio en asociacion** : Actualizar ambos forward y reverse mappings
1061+
1062+ ** Validar cambios:**
1063+ ``` bash
1064+ # Despues de modificar JSON
1065+ python scripts/generate_workflow_from_template.py --validate
1066+
1067+ # Si hay errores, corregir antes de commit
1068+ ```
1069+
1070+ ** Commit de cambios:**
1071+ ``` bash
1072+ git add .claude/workflow_template_mapping.json
1073+ git commit -m " docs(mapeo): actualizar asociaciones workflow-template"
1074+ git push
1075+ ```
1076+
1077+ #### Referencias
1078+
1079+ - ** Configuracion** : ` .claude/workflow_template_mapping.json `
1080+ - ** Script** : ` scripts/generate_workflow_from_template.py `
1081+ - ** Documentacion** : Este documento (seccion 6.6)
1082+
8881083---
8891084
8901085## 7. Metricas y Validacion
@@ -973,6 +1168,7 @@ EVENTO: Que accion realice?
9731168
9741169| Version | Fecha | Cambios | Autor |
9751170| ---------| -------| ---------| -------|
1171+ | 1.1.0 | 2025-11-06 | Agregada seccion 6.6: Sistema de consulta programatica workflow-template | Equipo Gobernanza |
9761172| 1.0.0 | 2025-11-06 | Creacion inicial del documento de mapeo completo | Equipo Gobernanza |
9771173
9781174---
0 commit comments