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

{{ t('tasks.implementation.what-was-delivered') }}

{{ render_narrative(narrative.deliveredOutcome, "implementation.userNarrative.deliveredOutcome") }}

{{ humanSummary.outcome | inline_code }}

{{ t('tasks.implementation.what-changed') }}

{{ render_narrative(narrative.changeExplanation, "implementation.userNarrative.changeExplanation") }} {{ figure(changeFigure) }}

{{ t('tasks.implementation.requirement-coverage') }}

{% for row in implementation.requirementCoverage %}{{ row_key(pairs=[(t('macros.layout.id'), row.id)], status_name=t('macros.layout.status'), status_raw=row.status, status_text=row.status) }}{% endfor %}
{{ t('tasks.implementation.requirement') }}{{ t('tasks.implementation.body') }}{{ t('tasks.implementation.implemented-by') }}
{{ row.requirement | inline_code }}{{ row.coveredBy | inline_code }}

{{ t('tasks.implementation.verification-result') }}

{{ render_narrative(narrative.validationExplanation, "implementation.userNarrative.validationExplanation") }}
{% for row in implementation.validationEvidence %}{{ summary_card(row.phase ~ " · " ~ t('tasks.implementation.exit-code') ~ " " ~ row.exitCode, row.outputTail, "important" if row.exitCode else "neutral") }}{% endfor %}
{% for row in implementation.verifierResults %}

{{ row.verifier | inline_code }} · {{ row.verdict }}

{% if row.get("independentValidationRerun") %}

{{ t('tasks.implementation.independent-rerun') }} {{ row.independentValidationRerun | inline_code }}

{% endif %}{% if row.get("readOnlyCommandLog") %}

{{ t('tasks.implementation.command-log') }} {{ row.readOnlyCommandLog | inline_code }}

{% endif %}{% if row.get("discrepancy") %}

{{ t('tasks.implementation.discrepancy') }} {{ row.discrepancy | inline_code }}

{% endif %}{% if row.get("declinedFixRecommendations") %}

{{ row.declinedFixRecommendations | inline_code }}

{% endif %}
{% endfor %}

{{ t('tasks.implementation.what-is-left') }}

{{ render_narrative(narrative.remainingIssues, "implementation.userNarrative.remainingIssues") }}
{% for row in implementation.outOfPlanEdits %}{{ summary_card(row.id ~ " · " ~ row.file, row.rationale, "important", anchor=row.id) }}{% else %}

{{ t('tasks.implementation.nothing-was-changed-outside-the-plan') }}

{% endfor %}

{{ t('tasks.implementation.commits-delivered') }}

{% if implementation.commitList is mapping %}

{{ t('tasks.implementation.there-are-no-commits') }}

{% else %} {% for row in implementation.commitList %}{{ row_key(pairs=[(t('macros.layout.sha'), row.shortSha), (t('macros.layout.order'), row.number), (t('macros.layout.plan-step'), row.planStep)]) }}{% endfor %}
{{ t('tasks.implementation.commit') }}{{ t('tasks.implementation.subject') }}{{ t('tasks.implementation.files') }}
{{ row.subject | inline_code }}{% for file in row.files %}{{ file }}{% if not loop.last %} {% endif %}{% endfor %}
{% endif %}
{{ t('tasks.implementation.approved-plan') }}{{ implementation.approvedPlanReference.planFile }}
{{ t('tasks.implementation.approval-evidence') }}{{ implementation.approvedPlanReference.approvalEvidence | inline_code }}
{{ t('tasks.implementation.worktree') }}{{ implementation.approvedPlanReference.executorWorktreePath }} @ {{ implementation.approvedPlanReference.baseRefSha }}

{{ t('tasks.implementation.can-this-be-rolled-back') }}

{% for row in implementation.rollbackVerification %}{% else %}{% endfor %}
{{ t('tasks.implementation.subject') }}{{ t('tasks.implementation.rollback-command') }}{{ t('tasks.implementation.how-to-verify') }}{{ t('tasks.implementation.result') }}
{{ row.category | inline_code }}{{ row.rollbackCommand }}{{ row.verification | inline_code }}{{ row.result | inline_code }}
{{ t('tasks.implementation.no-rollback-check-was-recorded') }}
{% if implementation.stageSidecarEvidence %}

{{ t('tasks.implementation.stage-carry-over') }} — Stage {{ implementation.stageSidecarEvidence.stageNumber }} {{ implementation.stageSidecarEvidence.stageTitle | inline_code }} · {{ implementation.stageSidecarEvidence.carryJson }}

{% endif %}

{{ t('tasks.implementation.manual-user-test') }}

{% if implementation.manualUserTest.applicable %}{% for row in implementation.manualUserTest["items"] %}

{{ row.target | inline_code }}

{{ t('tasks.implementation.environment') }} {{ row.environmentSetup | inline_code }}

    {% for step in row.steps %}
  1. {{ step | inline_code }}
  2. {% endfor %}

{{ t('tasks.implementation.expected') }} {{ row.expectedResult | inline_code }}

{% endfor %}{% else %}

{{ implementation.manualUserTest.exemptionReason | inline_code }}

{% endif %}

{{ t('tasks.implementation.next-step') }}

{{ implementation.routingRecommendation.target }} — {{ implementation.routingRecommendation.rationale | inline_code }}

{% endblock %}