{#- Run-health panels shared by the overview and the fleet monitor. Import "with context" so the formatting helpers are visible. -#} {% from '_ui.html' import empty_state %} {% macro runs_chart(overview, window, window_label, title='Runs over time', prefix='ov') -%} {% set t = overview.totals %} {% set series = overview.series %}

{{ title }}

Succeeded Failed
{% if t.runs %} {% set peak = [series|map(attribute='runs')|max, 1]|max %} {% set time_format = '%H:%M' if window == '24h' else ('%b %d %H:%M' if window == '7d' else '%b %d') %} {% else %} {{ empty_state('No runs in this window', 'Send a message in the playground or run an automation to see activity here.', '/playground', 'Open the playground') }} {% endif %}
{%- endmacro %} {% macro attention_panel(items, prefix='ov', limit=8) -%}

Needs attention

{{ items|length }}
{% if items %} {% else %}

All clear No failed runs, failing tools or cache regressions in this window.

{% endif %}
{%- endmacro %} {% macro recent_runs(runs, agent_names, title='Recent runs', prefix='ov') -%}

{{ title }}

View all in Observability
{% if runs %}
{% for run in runs %} {% endfor %}
Started Agent Status Duration Model calls Tools Tokens From cache Cost Trace
{{ relative_time(run.started_at, generated_at) }} {% if run.agent_id %}{{ agent_names.get(run.agent_id, run.agent_id[:12]) }}{% else %}—{% endif %} {% if run.status == 'success' %}Succeeded {% elif run.status == 'failed' %}Failed {% elif run.status == 'running' %}Running {% else %}Incomplete{% endif %} {{ fmt_duration(run.duration_ms) }} {{ run.model_calls }} {% if run.tool_calls %}{{ run.tool_calls }}{% if run.tool_failures %} · {{ run.tool_failures }} failed{% endif %} {{ run.tools|map(attribute='name')|unique|join(', ') }} {% else %}—{% endif %} {{ fmt_compact(run.input_tokens + run.output_tokens) }} {% if run.input_tokens %}{{ '%.0f'|format(100 * run.cached_tokens / run.input_tokens) }}%{% else %}—{% endif %} {% if run.unpriced_calls and not run.cost_usd %}—{% else %}{{ fmt_usd(run.cost_usd) }}{% endif %} Trace
{% else %} {{ empty_state('No recorded runs yet', 'Runs appear here as soon as an agent answers a message.') }} {% endif %}
{%- endmacro %}