{% extends "base.html" %} {% block title %}{{ run.run_id }}{% endblock %} {% block body %}
{% if task %}{{ task.id }}{% else %}{{ task_id }}{% endif %} · run

{{ run.run_id }}

{{ run.status }} {{ run.mode }} · {{ run.execution_location }} · {% if mechanical %}git · no model{% else %}{{ run.harness or 'harness' }}{% if run.model %}:{{ run.model }}{% endif %}{% endif %} · {{ '%.0f' % run.elapsed_minutes() }} min{% if run.cost_usd is not none %} · ${{ '%.2f' % run.cost_usd }}{% endif %}

Back to task{% if run.branch %}{{ run.branch }}{% endif %}
{% if run.error %}
Error: {{ run.error }}
{% endif %} {% if recovery %}
Reconnecting after a controller interruption. The worker keeps its current authority and subprocess; it has {{ recovery.remaining }} seconds to reconnect before this lease can be reassigned.
{% endif %} {% if captures %}
Captures
{% endif %} {% if mechanical %}
Mechanical rebase

Mechanical rebase onto {{ run.base or 'the base' }} — no model, no cost. The scheduler ran git rebase in the worktree and force-pushed with a lease; a worker was never started.

What git did

{{ run.diff_stat or '(no diff recorded)' }}

Check result

{% if check_result %}

{{ check_result.status }} · {{ check_result.run_id }}

{% if check_result.checks %}{% endif %} {% else %}

No pre-PR checks are configured, or the check run has not finished yet.

{% endif %}
{% elif check_view %}
Check outcome

{{ check_view.conclusion }} Process {{ check_view.process }}{% if check_view.exit_code is not none %} · exit {{ check_view.exit_code }}{% else %} · exit code not recorded{% endif %}

source
{{ check_view.source or 'not recorded' }}{% if check_view.branch %} · branch {{ check_view.branch }}{% endif %}{% if check_view.base %} → {{ check_view.base }}{% endif %}
{% if check_view.configured_checks %}

Configured checks

{% endif %} {% if check_view.unmatched_results %}

Unmatched outcomes

These results are not associated with a configured command.

{% endif %} {% if not check_view.configured_checks and not check_view.unmatched_results %}

No accepted check outcome has been recorded yet.

{% endif %}

Next action: {{ check_view.next_action }}

{% else %}
{% if is_stream %}
{% include "_stdout.html" %}
{% else %}

This run recorded a single claude-json result rather than a streamed transcript. Its final message is below.

{{ final_text or '(no final message)' }}
{% endif %}
{{ brief_text or '(no brief recorded)' }}
{{ final_text or '(no final message)' }}
{{ stderr_text or '(stderr was empty)' }}
{% endif %} {% endblock %}