{% if trace_waterfall %}

Causal waterfall

Recorded parent links, grouped by root and turn. Bars show observed timing, not inferred model latency. Select an operation to inspect its evidence.

{% for group in trace_waterfall %}
Root {{ group.root_trace_id or 'Unknown' }} · Turn {{ group.turn_id or 'Unknown' }} · {{ group.nodes|length }} spans

Scroll the table horizontally to inspect timing and duration →

{% for node in group.nodes %} {% endfor %}
Operation / causal parentStatusTimingDuration
{{ node.operation }} {% if node.parent_span_id %}Parent: {{ node.parent_span_id|truncate(24) }}{% endif %} {% if node.caused_by_event_id %}Caused by event: {{ node.caused_by_event_id|truncate(24) }}{% endif %} {% if node.missing_parent or node.missing_cause or node.cycle %}{{ 'Cyclic parent chain' if node.cycle else 'Missing parent or cause' }}{% endif %}
{{ node.status }}
{{ node.duration_ms if node.duration_ms is not none else 'Unknown' }}{% if node.duration_ms is not none %} ms{% endif %}
{% endfor %}
{% endif %}