{# Timeline Step - unified rendering for step + cost + status #} {% set event_dict = event if event is mapping else event.__dict__ %} {% set event_type = event_dict.get('type') or event_dict.get('event_type') or (event_dict.get('event', {})).get('type', 'UNKNOWN') %} {% set event_seq = event_dict.get('seq') or (event_dict.get('event', {})).get('step', {}).get('seq') %} {% set event_ts = event_dict.get('ts') or event_dict.get('timestamp') or event_dict.get('time') %} {% set event_msg = event_dict.get('message') or (event_dict.get('event', {})).get('data', {}).get('result', {}).get('message') %} {% set event_data = event_dict.get('data') or event_dict.get('event', {}) %}
{{ event_type | upper }} {% if event_seq is defined %} #{{ "%03d"|format(event_seq) }} {% endif %} {% if event_ts %} {{ event_ts }} {% endif %}
{% if event_msg %}
{{ event_msg }}
{% endif %} {# Cost information (if available) #} {% if cost_info or (event_dict.get('metrics') and event_dict.get('metrics').get('cost')) %}
{% set cost_metrics = cost_info if cost_info else event_dict.get('metrics', {}).get('cost', {}) %} {% set delta_cost = cost_metrics.get('delta_cost_usd') or cost_metrics.get('incremental', {}).get('cost_usd', 0.0) %} {% set cum_cost = cost_metrics.get('cumulative_cost_usd') or cost_metrics.get('cumulative', {}).get('cost_usd', 0.0) %} {% set budget_limit = cost_info.get('budget_limit') if cost_info else None %} {% set projected_cost = cost_info.get('projected_cost') if cost_info else None %}
Cost: {% if delta_cost %} Δ ${{ "%.6f"|format(delta_cost) }} {% if cum_cost %} (Total: ${{ "%.6f"|format(cum_cost) }}) {% endif %} {% else %} N/A {% endif %}
{% if budget_limit %}
Budget: Limit: ${{ "%.2f"|format(budget_limit) }} {% if projected_cost %} {% set over = projected_cost - budget_limit %} {% if over > 0 %} (Over: ${{ "%.6f"|format(over) }}) {% else %} (Remaining: ${{ "%.6f"|format(-over) }}) {% endif %} {% endif %}
{% endif %} {% if cost_info.delta_tokens or cost_info.cum_tokens %}
Tokens: {% if cost_info.delta_tokens %} {{ cost_info.delta_tokens | int | default(0) | number_format }} {% if cost_info.cum_tokens %} (Total: {{ cost_info.cum_tokens | int | default(0) | number_format }}) {% endif %} {% else %} N/A {% endif %}
{% endif %} {% if cost_info.status and cost_info.status != "OK" %}
Status: {{ cost_info.status }} {% if cost_info.error_code %} {{ cost_info.error_code }} {% endif %}
{% endif %}
{% endif %} {% if event_data %}
EVENT DATA
{{ event_data | tojson(indent=2) }}
{% endif %}