{% extends "html/base.template.html" %} {% from "html/macros/layout.html" import narrative as render_narrative, summary_card %} {% from "html/macros/visualizations.html" import figure %} {% block human_content %}

{{ t('tasks.error-analysis.what-you-saw') }}

{{ render_narrative(narrative.symptomExplanation, "errorAnalysis.userNarrative.symptomExplanation") }}
{{ error.symptomVerbatim | inline_code }}

{{ error.observableFailure | inline_code }}

{{ t('tasks.error-analysis.reproduction') }}

{{ error.reproduction.status }}

{% if error.reproduction.blockedReason %}

{{ error.reproduction.blockedReason | inline_code }}

{% endif %}

{{ t('tasks.error-analysis.cause-candidates') }}

{{ render_narrative(narrative.causeExplanation, "errorAnalysis.userNarrative.causeExplanation") }} {{ figure(causeFigure) }}
{% for row in error.causeCandidates %}

{{ row.id | inline_code }} · {{ t('macros.layout.confidence') }} {{ row.confidence }}

{{ row.statement | inline_code }}

{{ t('macros.layout.supporting-evidence') }} {{ row.supportingEvidence | evidence_refs }}

{% else %}

{{ t('tasks.error-analysis.no-cause-candidate-has-been-established-yet') }}

{% endfor %}

{{ t('tasks.error-analysis.what-cannot-be-settled-yet') }}

{{ render_narrative(narrative.uncertaintyExplanation, "errorAnalysis.userNarrative.uncertaintyExplanation") }} {% for row in error.causeCandidates %}

{{ row.id | inline_code }}

{{ t('tasks.error-analysis.confidence-now') }} {{ row.confidence }}

{{ t('tasks.error-analysis.disproof-attempted') }} {{ row.falsifyingEvidenceChecked | join(', ') | inline_code }}

{{ t('tasks.error-analysis.how-to-disprove-this') }} {{ row.disproveWith | inline_code }}

{% endfor %}

{{ t('tasks.error-analysis.the-one-diagnostic-to-run-next') }}

{{ render_narrative(narrative.diagnosticGuidance, "errorAnalysis.userNarrative.diagnosticGuidance") }} {{ summary_card(t('tasks.error-analysis.run'), error.nextDiagnostic.action, "important") }}

{{ t('tasks.error-analysis.signal-to-check') }} {{ error.nextDiagnostic.confirmingSignal | inline_code }}

{{ t('tasks.error-analysis.signal-that-rejects-it') }} {{ error.nextDiagnostic.rejectingSignal | inline_code }}

{{ t('tasks.error-analysis.next-step') }}

{{ t('tasks.error-analysis.recommended-task') }}{{ error.routing.nextTaskType }}

{{ t('tasks.error-analysis.the-cause-this-rests-on') }} — {{ error.routing.leadingCauseId | inline_code }}

{{ error.routing.rationale | inline_code }}

{% endblock %}