{# Run card partial - expects 'run' variable #} {% set status_colors = { 'completed': 'green', 'running': 'blue', 'pending': 'yellow', 'failed': 'red', 'cached': 'purple' } %} {% set color = status_colors.get(run.status, 'gray') %}
{{ run.run_id[:12] }}... {{ run.status }} {% if run.cached %} cached {% endif %}
{{ run.created_at }}
Recipe: {{ run.recipe_name or (run.recipe[:12] ~ '...' if run.recipe and run.recipe|length > 12 else run.recipe) or 'Unknown' }} {% if run.total_steps %} Steps: {{ run.executed or 0 }}/{{ run.total_steps }} {% endif %}
{# Media previews row #}
{# Input previews #} {% if run.input_previews %}
In: {% for inp in run.input_previews %} {% if inp.media_type and inp.media_type.startswith('image/') %} {% elif inp.media_type and inp.media_type.startswith('video/') %} {% else %}
?
{% endif %} {% endfor %} {% if run.inputs and run.inputs|length > 3 %} +{{ run.inputs|length - 3 }} {% endif %}
{% elif run.inputs %}
{{ run.inputs|length }} input(s)
{% endif %} {# Arrow #} -> {# Output preview - prefer IPFS URLs when available #} {% if run.output_cid %}
Out: {% if run.output_media_type and run.output_media_type.startswith('image/') %} {% elif run.output_media_type and run.output_media_type.startswith('video/') %} {% else %}
?
{% endif %}
{% else %} No output yet {% endif %}
{% if run.output_cid %} {{ run.output_cid[:12] }}... {% endif %}