{% extends "base.html" %} {% block title %}Run {{ run.run_id[:12] }} - Art-DAG L1{% endblock %} {% block head %} {{ super() }} {% endblock %} {% block content %} {% set status_colors = {'completed': 'green', 'running': 'blue', 'pending': 'yellow', 'failed': 'red'} %} {% set color = status_colors.get(run.status, 'gray') %}
← Runs

{{ run.run_id[:16] }}...

{{ run.status }} {% if run.cached %} Cached {% endif %}
Recipe
{{ run.recipe or 'Unknown' }}
Steps
{{ run.executed or 0 }} / {{ run.total_steps or '?' }} {% if run.cached_steps %} ({{ run.cached_steps }} cached) {% endif %}
Created
{{ run.created_at }}
User
{{ run.username or 'Unknown' }}
{% if plan %}
{% for step in plan.steps %} {% set step_color = 'green' if step.status == 'completed' or step.cache_id else ('purple' if step.cached else ('blue' if step.status == 'running' else 'gray')) %}
{{ loop.index }} {{ step.name }} {{ step.type }}
{% if step.cached %} cached {% elif step.status == 'completed' %} completed {% endif %}
{% if step.cache_id %} {% endif %} {% if step.outputs and step.outputs | length > 1 %}
Additional outputs: {% for output in step.outputs %} {% if output != step.cache_id %} {{ output[:32] }}... {% endif %} {% endfor %}
{% endif %}
{% endfor %}
Show Plan JSON
{{ plan | tojson(indent=2) }}
{% else %}

No plan available for this run.

{% endif %}
{% if run.output_hash %}

Output

{% endif %}
{% endblock %}