{# Graphical job view: header + overall bar + phase stepper + collapsible log. Replaces #jobview; self-repolls every 1s WHILE running, drops the trigger once done. #} {% set indeterminate = (not prog.determinate) and job.running %} {% set fill = 30 if indeterminate else (prog.overall if prog.overall is not none else 100) %}
{{ job.task }}
{{ job.target }}
⏱ {{ elapsed }}
{% if job.exit_code is not none %}exit {{ job.exit_code }}{% endif %}
{% if job.running %}
{% endif %}
{{ log_text }}{% if not log_text %}(no output yet){% endif %}