{# Partial: recent runs panel + out-of-band status pill update. Rendered by both module_detail.html (on load) and the live-fragment endpoint. Polls every 3s while running; stops automatically when idle. #}
Recent runs last {{ recent_runs|length }} all →
{% if recent_runs %} {% for r in recent_runs %} {% endfor %}
idstarteddurationstatusrows
#{{ r.id }} {{ r.started_at or '—' }} {{ r.duration_s | duration }} {{ r.status }} {{ r.row_count if r.row_count is not none else "—" }}
{% else %}
No runs yet.
{% endif %}
{# Out-of-band: keep the status pills in the page header in sync #} {% if module.running %}running{% endif %} {% if not module.enabled %}disabled{% endif %}