{% extends "base.html" %} {% block title %}Workflow Summary{% endblock %} {% block content %}
{{ ts.total_recommendations | default(0) }} findings triaged {% if cr.new_recommendations %} · {{ cr.new_recommendations }} new recommendations{% endif %}
{% if vx.applied_count %}VEX {{ vx.applied_count }} statements applied
{% endif %} {% elif step.step_type == "tickets" %} {% set tickets = step.detail.tickets_created if step.detail.tickets_created is iterable and step.detail.tickets_created is not string and step.detail.tickets_created else [] %} {% set count = step.detail.tickets_count | default(0) %} {% if tickets %}| Component | Ticket |
|---|---|
| {{ t.component | default("—") }} | {{ t.ticket_key | default(t.key | default("—")) }} |
{{ count }} ticket{{ "s" if count != 1 }} created.
{% else %}No tickets created.
{% endif %} {% elif step.step_type == "notification" %} {% if step.detail.success %} Sent {% else %} Failed {% endif %} {% if step.detail.channel %} {{ step.detail.channel }} {% endif %} {# Slack-style: full message with mrkdwn rendering #} {% if step.detail.message %}Subject: {{ step.detail.subject }}
{% if step.detail.recipients %}To: {{ step.detail.recipients | join(', ') }}
{% endif %} {% if step.detail.body_preview %}Recipe: {{ step.detail.recipe }}
{% endif %} {% if step.detail.output_files %}{{ step.raw_data | tojson(indent=2) }}
{% endif %}