Condición de Workflow por Expresión
La condición JQL / Expression Condition (Admin Essentials) oculta el botón de una transición de workflow cuando el work item no cumple una expresión Jira definida por el administrador. Si el work item sí cumple la condición, el botón se muestra con normalidad y la transición puede ejecutarse.
A diferencia de los validadores de workflow, que bloquean la transición después de que el usuario la intenta, la condición actúa antes: el botón directamente no aparece. Esto evita que los usuarios vean opciones de avance que no son aplicables a su work item en ese momento.
La Condición de Workflow por Expresión está disponible exclusivamente en espacios company-managed (gestionados por la empresa). Los espacios team-managed no admiten este tipo de extensiones de workflow.
El módulo jira:workflowCondition de Atlassian Forge está actualmente en estado Preview. Esto significa que la función es funcional en producción, pero sus capacidades, comportamiento y disponibilidad están sujetos a cambios por parte de Atlassian. Se recomienda validar el comportamiento en un entorno de prueba antes de desplegarlo en workflows críticos.
¿Cuándo usar una condición en lugar de un validador?
| Condición | Validador | |
|---|---|---|
| Comportamiento | Oculta el botón de transición si el work item no cumple el criterio | Muestra el botón siempre; bloquea con error tras el intento |
| Experiencia del usuario | El usuario no ve transiciones que no aplican | El usuario intenta y recibe un mensaje de error |
| Uso recomendado | Flujos donde algunas transiciones solo aplican a ciertos issues | Flujos donde se quiere que el usuario siempre vea la transición, pero con validación al confirmar |
Use la condición cuando quiera simplificar la vista del workflow: si el work item no cumple ciertos criterios (prioridad, tipo, valor de un campo), el botón de transición no debería ser visible para ningún usuario.
Añadir la condición a una transición
-
En Jira, abra el workflow que desea modificar (editor de workflows de un espacio company-managed, o Jira settings → Work items → Workflows).
-
Seleccione la transición a la que desea añadir la condición.
-
Haga clic en Add rule (Añadir regla).
-
En Restrict transition (Restringir transición), seleccione JQL / Expression Condition (Admin Essentials) y pulse Select (Seleccionar).

-
Configure la expresión (ver siguiente apartado) y pulse Add.
-
Publique el workflow para que los cambios entren en vigor.
Configurar la condición
Al añadir o editar la condición se abrirá su formulario de configuración, con los siguientes campos:
Expresión Jira
Introduzca la expresión Jira que debe cumplir el work item para que la transición sea visible. La expresión debe devolver un valor booleano (true para mostrar el botón, false para ocultarlo).
La expresión se valida antes de guardar: si contiene errores de sintaxis, el formulario lo indicará y no permitirá guardar hasta que se corrija.
Ejemplos de expresiones válidas:
issue.priority != null && issue.priority.name == 'High'
Muestra la transición solo si la prioridad es "High".
issue.issuetype.name == 'Bug'
Muestra la transición solo si el work item es de tipo "Bug".
issue.assignee != null
Muestra la transición solo si el work item tiene un responsable asignado.
issue.fields.customfield_10020 != null
Muestra la transición solo si un campo personalizado concreto tiene valor.

Nombre de visualización (opcional)
Introduzca un nombre descriptivo que identifique esta condición en la lista de condiciones de la transición (por ejemplo, "Solo para prioridad High" o "Requiere Assignee"). Si lo deja en blanco, se mostrará el nombre genérico de la condición.
Limitaciones importantes
La condición evalúa Jira expressions, que son un lenguaje de expresiones propio de Atlassian Forge, distinto del JQL clásico. Tenga en cuenta las siguientes diferencias:
- No se admiten operadores de historial:
WAS,CHANGED,WAS IN,WAS NOTy similares no están disponibles. No es posible evaluar el estado anterior del work item ni su historial de valores. - No se admite la sintaxis JQL libre: cláusulas como
project = "Mi Proyecto"ostatus = "En Progreso"no son válidas. Useissue.project.key == "ABC"oissue.status.name == "En Progreso"en su lugar. - Los campos personalizados se referencian por su ID interno (por ejemplo,
issue.fields.customfield_10020), no por su nombre visible.
La expresión debe resolverse a true o false. Si la expresión es inválida o lanza un error en tiempo de evaluación, la condición se comporta como false y el botón de transición no se muestra.
Comportamiento en el workflow
- Si la expresión devuelve
true: el botón de transición se muestra al usuario. La transición puede ejecutarse con normalidad. - Si la expresión devuelve
false: el botón de transición no aparece para ningún usuario. El work item permanece en el estado actual. - La evaluación ocurre cada vez que el work item se carga en la vista. Si el work item cambia (por ejemplo, se asigna un responsable), el botón aparecerá o desaparecerá en la siguiente carga de la página.
Diferencias frente a los validadores existentes
| Aspecto | Condición (Expression Condition) | Validador (Fields Required / Field Dependency) |
|---|---|---|
| Cuándo actúa | Al cargar el work item (antes del intento) | Al confirmar la transición (después del intento) |
| Efecto visible | El botón de transición no aparece | El botón aparece; la transición se bloquea con un mensaje de error |
| Feedback al usuario | Sin mensaje; el botón simplemente no existe | Mensaje de error con los campos o condiciones que fallaron |
| Disponibilidad | Solo company-managed | Company-managed y team-managed |
| Estado del módulo | Preview (Forge) | Disponible en producción |