Skip to Content

Generar informes HTML

Los comandos ajat report convierten una instantánea de exportación en un único archivo HTML autocontenido que puedes abrir sin conexión, adjuntar a un ticket o archivar como evidencia de cumplimiento. Hay cinco informes, cada uno una lente distinta sobre el estado de la automatización. Elige el que responda tu pregunta.

Cada informe lee el catálogo JSON local en disco — no se realiza ninguna llamada en vivo a Jira. Eso significa que puedes generar, revisar y compartir informes sin credenciales y sin tocar el tenant.

ajat funciona únicamente con Atlassian Jira Cloud Automation. No admite Jira Server ni Jira Data Center. Los informes se generan a partir de una exportación local producida por ajat export sobre un tenant de Jira Cloud.

Los cinco informes

InformeRespondeAcento
inventory¿Qué automatización tenemos, quién la posee y adónde envía datos?azul
collision¿Qué reglas se solapan o son duplicados copiar-pegar?naranja
consistency¿El estado está etiquetado, nombrado y con propietarios de forma consistente?violeta
risk¿Qué está roto, sin dueño, es un desperdicio o entraña riesgo?rojo
workflow¿Qué hace realmente cada regla, paso a paso?verde azulado

Cada informe trae su propia paleta de acento para reconocerlo de un vistazo. Los cinco comparten la misma interfaz de navegación — búsqueda del lado del cliente, secciones plegables, temas claro/oscuro, un botón de impresión y enlaces de vuelta a la automatización de Jira de cada regla cuando la instantánea capturó el sitio.

Los informes existen para el problema que aparece cuando Jira Automation crece a lo largo de una organización: ninguna pantalla de proyecto individual explica la malla de automatización completa. Una instantánea de exportación puede contener reglas locales de proyecto, reglas multiproyecto, reglas globales, reglas copiadas con pequeñas diferencias, etiquetas que significan cosas distintas en distintos equipos, y acciones de webhook o correo que conectan Jira con otros sistemas. Los informes convierten ese estado JSON local en un inventario y una superficie de revisión que administradores, auditores y equipos de migración pueden discutir sin acceso en vivo a Jira.


Inventory

Qué hace: cataloga cada regla de la instantánea de exportación, agrupada por scope. Es el mapa base del estado de la automatización — qué existe, dónde vive, si está habilitada y qué triggers, condiciones, acciones, etiquetas, actores y ramas componen cada regla.

ajat report inventory \ --input-dir ./jira-automations-backup \ --output-file inventory.html

Lo que obtienes:

  • Tarjeta hero de titular más tarjetas de métricas: total / habilitadas / deshabilitadas / scopes únicos / con ramificación / con capacidad de encadenamiento / sin etiquetar.
  • Desglose por familia de scope con gráficos de barras en línea (global, proyecto único, multiproyecto, otro scope, desconocido).
  • Tablas de Editadas recientemente y Reglas más antiguas — la primera muestra la actividad actual, la segunda muestra reglas potencialmente obsoletas que nadie ha tocado en mucho tiempo.
  • Lista de Reglas sin etiquetar (se muestra solo cuando falta alguna etiqueta).
  • Top de scopes / triggers / acciones con barras proporcionales al conteo; los tipos de trigger y acción se humanizan (p. ej. jira.jql.scheduledScheduled (JQL)).
  • Chips de Top de etiquetas y tabla de Top de actores.
  • Sección People — una tabla por cuenta que cubre a todos los que el estado referencia (propietarios, actores, colaboradores y referencias de componentes), con conteos de reglas por rol, total de reglas, tipo de cuenta y estado activo/desactivado.
  • Una tarjeta expandible por regla con insignias de estado, un diagrama de flujo Trigger → Conditions → Actions → Branches (con pistas en línea como la expresión cron de los triggers programados, extractos de JQL y nombres de campo destino), un botón de copiar al portapapeles para el UUID y una cuadrícula de metadatos (UUID, estado, etiquetas, actualizada, creada, actor, notify-on-error, archivo de origen).

Huella de integración

El informe de inventario responde una pregunta de seguridad y cumplimiento que la interfaz de Jira no puede: ¿adónde envía datos nuestra automatización y a quién? La huella de integración inventaría cada servicio externo que el estado alcanza — espacios de chat, destinatarios de correo, endpoints de webhook y servicios en la nube. Úsala durante revisiones de proveedores, auditorías de egreso de datos y revisiones de acceso para ver las dependencias salientes de la automatización en un solo lugar.

El informe de inventario es la primera parada adecuada cuando un equipo pregunta: «¿Qué automatización tenemos realmente?». Muestra las reglas globales y multiproyecto que es fácil pasar por alto cuando cada proyecto se revisa de forma aislada.


Collision

Qué hace: encuentra reglas que se solapan o hacen lo mismo — la proliferación por copiar-pegar que se acumula a medida que la automatización se clona entre proyectos.

Por qué es útil: las reglas duplicadas suponen más mantenimiento, más tiempo de ejecución y más lugares donde la misma lógica puede desincronizarse. Este informe te da una lista corta de candidatos a consolidación y de reglas en conflicto que compiten por las mismas incidencias.

ajat report collision \ --input-dir ./jira-automations-backup \ --output-file collision.html \ --similarity 0.7

Se detectan dos tipos de duplicación:

  • Duplicados de comportamiento — reglas cuyos pasos son casi idénticos (trigger, condiciones y acciones con sus parámetros clave), agrupadas por similitud de Jaccard sin importar el scope, de modo que la misma automatización copiada y pegada en muchos proyectos aparece como una sola familia. Cada grupo muestra el comportamiento compartido, la similitud de cada miembro y en qué difiere. Ajústalo con --similarity.

  • Huellas de solapamiento — coincidencias estructurales más gruesas:

    GrupoConfianzaQué muestra
    Huella exactaALTAMismo scope + trigger + paquete de condiciones
    Trigger compartidoMEDIAMismo trigger en el mismo scope
    Condición compartidaBAJAFragmento de condición repetido bajo el mismo trigger
    Etiqueta compartidaBAJAReglas marcadas con la misma etiqueta de automatización

La confianza refleja cuán específica es la coincidencia. Inspecciona siempre las reglas listadas antes de consolidar — a veces los duplicados son intencionales (p. ej. una regla por clon de proyecto). El informe muestra candidatos para revisión humana; nunca afirma que una regla esté mal.


Consistency

Qué hace: audita la higiene de etiquetas, la nomenclatura, la propiedad y la postura de gobernanza en todo el estado.

Por qué es útil: es la lente de legibilidad. A medida que participan más proyectos y administradores, las etiquetas y los nombres se dispersan y la propiedad se vuelve difusa. Este informe muestra si los equipos usan el mismo lenguaje para los mismos tipos de automatización — valioso antes de migraciones, limpieza de plataforma y revisiones de acceso.

ajat report consistency \ --input-dir ./jira-automations-backup \ --output-file consistency.html

Lo que obtienes:

  • Inventario de etiquetas: cada etiqueta con su conteo de reglas y los scopes en los que aparece.
  • Etiquetas similares: grupos detectados mediante distancia de Levenshtein normalizada (umbral 0.82) — detecta erratas como triage frente a triag.
  • Nombres de regla similares: el mismo algoritmo sobre los nombres de las reglas — revela reglas copiadas y pegadas con nombres ligeramente distintos.
  • Familias de capacidad: reglas agrupadas por familia de acción inferida (creadoras de incidencias, modificadoras de incidencias, remitentes de correo, invocadoras de webhook).
  • Gobernanza e higiene: distribuciones de manejo de errores y de acceso de edición, más desgloses de reglas con fallo silencioso y de acceso restringido.
  • Propiedad: quién crea y ejecuta la automatización, y las reglas «huérfanas» cuya identidad de autor o de ejecución está desactivada.

Risk

Qué hace: escanea el estado en busca de riesgo de gobernanza y operativo, puntúa cada regla y clasifica las que necesitan atención — un panel de salud con una calificación general.

Por qué es útil: la escala esconde problemas. Este informe encuentra la automatización que falla en silencio, sin dueño, obsoleta, derrochadora o que filtra datos — los problemas que no se ven regla por regla en Jira. Ejecútalo trimestralmente, o compáralo a lo largo del tiempo.

ajat report risk \ --input-dir ./jira-automations-backup \ --output-file risk.html

Hallazgos, cada uno ponderado por severidad (el informe explica la puntuación):

  • Fallos silenciososnotifyOnError = NEVER; cuando se rompen, nadie se entera.
  • Propiedad huérfana — el autor se fue (cuenta desactivada); la regla se ejecuta sin dueño.
  • Se ejecuta como cuenta desactivada / referencias internas desactivadas — la regla se ejecuta como, o referencia, una cuenta que ya no existe.
  • Obsoletas pero habilitadas — sin tocar en más de un año, pero aún activas (riesgo de deriva).
  • Programaciones de alta frecuencia — disparo cada hora o con intervalos aún menores: el principal punto caliente de coste y carga en ejecución.
  • Alta complejidad — la larga cola difícil de mantener.
  • Egreso de datos externo — reglas que alcanzan servicios de terceros.

La vista general califica el estado de A a F y lista las reglas de mayor riesgo con los motivos exactos; una tabla Riesgo por proyecto enruta los hallazgos al equipo propietario.

Los hallazgos basados en identidad (propiedad huérfana, referencias desactivadas) requieren una exportación hecha con --resolve-users, que ajat export escribe de forma predeterminada. Sin identidades resueltas, el informe recurre a los IDs de cuenta en bruto y omite los hallazgos de propiedad.


Workflow

Qué hace: renderiza cada regla como un diagrama de flujo de arriba hacia abajo más un «runbook» paso a paso de exactamente lo que hace — apto para impresión, una regla por página.

Por qué es útil: es la forma más rápida de entender una automatización sin leer JSON en bruto ni hacer clic por el constructor de Jira. Perfecto para revisiones, auditorías, aprobaciones de cambios e incorporación de alguien nuevo al estado. Imprime o Guarda como PDF para un documento limpio por regla.

ajat report workflow \ --input-dir ./jira-automations-backup \ --output-file workflow.html

Cada regla muestra su árbol de componentes como un diagrama SVG en línea (trigger → condiciones → acciones, con las ramas indentadas) junto a una lista de pasos en lenguaje sencillo («Cuando se programe cada 5 minutos → Para incidencias relacionadas → Entonces editar Expected Release»), las identidades de propietario y de ejecución, la complejidad y los sistemas externos con los que se integra. Los diagramas son SVG en línea sin JavaScript, así que la función Imprimir / Guardar como PDF del navegador produce un runbook limpio por regla.


Cada informe comparte la misma interfaz:

  • Búsqueda global. El campo de la barra lateral filtra cada elemento buscable de la página — tarjetas de regla, filas editadas recientemente, filas de etiquetas, encabezados de grupo. Las coincidencias se resaltan en línea.
  • Chips de filtro (solo inventory): alterna Habilitadas, Deshabilitadas, Con ramas, Con capacidad de encadenamiento, Sin etiquetar o cualquier familia de scope. Combínalos libremente con la consulta de texto.
  • Desplegable de orden (solo inventory): nombre A→Z / Z→A, actualizadas más nuevas / más antiguas.
  • Secciones plegables. Cada sección titulada se pliega; despliega o pliega todas desde los botones de la barra lateral o con los atajos e / c.
  • Alternador de tema claro / oscuro en la barra superior derecha; la elección se guarda en localStorage. Sin una preferencia explícita, el informe respeta la del sistema operativo.
  • Atajos de teclado: / (o ⌘F / Ctrl+F) enfoca la búsqueda, Esc la limpia, e despliega todos los pliegues, c los pliega.
  • Hoja de estilos de impresión. La barra de herramientas, la barra lateral, la búsqueda, los chips y los botones de copiar se ocultan; las secciones se renderizan en un diseño paginado apto para exportar a PDF (⌘P / Ctrl+P).

Los informes usan HTML moderno (<details>, CSS Grid, propiedades personalizadas) y apuntan a navegadores modernos — Chrome, Safari, Firefox y Edge actuales.

Flags comunes

Cada subcomando de informe acepta:

FlagPredeterminadoNotas
--input-dirrequeridoDirectorio producido por ajat export — debe indicarse explícitamente. No se hacen llamadas a la API de Jira; los informes solo leen del disco.
--output-file(por informe)Ruta del archivo HTML a escribir (inventory.html, collision.html, consistency.html, risk.html, workflow.html).
--title(por informe)Sobrescribe el título del informe.
--theme-fileningunoArchivo YAML que sobrescribe las propiedades personalizadas de CSS para salida de marca blanca.
--workers8Cargadores JSON locales concurrentes.

collision acepta además --similarity (predeterminado 0.7) para ajustar el umbral de agrupamiento por comportamiento de 0 a 1.

Temas para uso de marca blanca

Los informes usan propiedades personalizadas de CSS para cada color y radio. Sobrescríbelas con un archivo de tema YAML para adecuarlas a la marca de tu organización:

# brand-theme.yaml colors: bg: "#0d1117" surface: "#161b22" ink: "#e6edf3" accent: "#7c3aed" trigger: "#f59e0b" condition: "#a855f7" action: "#22c55e" branch: "#06b6d4"
ajat report inventory \ --input-dir ./jira-automations-backup \ --output-file inventory.html \ --theme-file ./brand-theme.yaml \ --title "Acme — Jira Automation Inventory"

Los valores del tema se restringen a un conjunto conservador de tokens CSS — cualquier cosa que contenga {, }, ;, marcadores de comentario o comillas se rechaza, de modo que el bloque <style> en línea queda libre de inyecciones.

Compartir informes de forma segura

Los archivos HTML de los informes contienen lo que hubiera en tu JSON de reglas — incluidas URLs de webhook configuradas, destinatarios de correo, cuerpos de mensaje y smart values. Si la exportación se enriqueció con --resolve-users, el informe también contiene nombres para mostrar resueltos y cualquier dirección de correo que Jira expusiera. Trata los informes como confidenciales y compártelos en consecuencia.

Si ejecutaste ajat export --redact-sensitive-fields, Jira pre-redactó los secretos obvios. Aun así, revisa un informe antes de enviarlo externamente:

grep -i 'webhook\|password\|token\|secret' inventory.html

Un informe enriquecido con identidades resueltas contiene datos personales (nombres para mostrar y cualquier dirección de correo que Jira expusiera). Trátalo como cualquier archivo que contenga datos personales.

Relacionado

  • ajat export — construye la instantánea de exportación local que consumen los informes.
  • ajat diff — compara dos instantáneas de exportación para revisar la deriva a lo largo del tiempo.
  • ajat search — consulta el tenant en vivo para obtener resúmenes de reglas frescos sin exportar.
  • Utilidadesdoctor, tree, support y el resto de la superficie de diagnóstico.
Last updated on