{# The swappable session body. The answers form replaces this whole region rather than the questions alone, because one answer moves everything below it: the understanding, what is still open, whether the scope is ready, and which documents now need updating. Swapping a part would leave the rest of the page quietly describing the previous revision. #}
{# What the turn that produced this region cost. Set only by the answers route; the ordinary session page renders this same partial with nothing to report and the include is a no-op. #} {% include "_usage.html" %} {% if update is defined and update %}

What changed

{{ update.headline }}

{% if update.changed_areas %}
    {% for a in update.changed_areas %}
  • {{ a }}
  • {% endfor %}
{% endif %} {% if update.needs_review %}

Needs review

    {% for d in update.decisions_to_review %}
  • {{ d }} — decision
  • {% endfor %} {% for c in update.assumptions_to_review %}
  • {{ c }} — assumption
  • {% endfor %} {% for doc in update.documents_to_update %}
  • {{ doc }} — document
  • {% endfor %}
{% endif %}
{% endif %}

What Requivo understood

{% if s.understood.has_content %} {# Engine prose, in the request's language -- see the note in base.html. The heading between them is the product's own English vocabulary and stays outside the tagged region. #} {% if s.understood.objective %}

{{ s.understood.objective }}

{% endif %} {% if s.understood.scope %}

{{ s.understood.scope }}

{% endif %} {% if s.understood.assumptions %}

What we are assuming

{% endif %} {% else %}

Nothing captured yet.

{% endif %} {# What the readiness and questions on this page were scored against (#492). Stated here, on the primary screen, and not only as a clause of the history line under Traceability details: the product cannot tell a reader that its grounding is about the wrong product -- relevance is a judgment, not a check -- so the reader is the detector and this is the fact they judge. #}

Product context: {%- if s.grounding.narrowed %} {{ s.grounding.cards|join(', ') }} {%- elif not s.grounding.readable %} could not be read — this install's cards are not enumerable, so what the estimates were scored against cannot be stated here {%- elif s.grounding.cards %} all {{ s.grounding.cards|length }} cards ({{ s.grounding.cards|join(', ') }}) — not narrowed for this session {%- else %} none in this install — impact is estimated from the request alone {%- endif %}

{# Deliberately the loudest block on this screen. Everything above is what the engine has established; this is the topic it has established least about, and it was previously a grey footnote inside the card above — the wrong weight for the thing most likely to move the scope. It sits outside the card because it is not part of the understanding: it is the edge of it. #} {% if s.understood.blind_spot %} {% endif %} {% include "discovery/_questions.html" %}

Are we ready?

{% if s.readiness.ready %}Ready {% else %}Not ready{% endif %} {{ s.readiness.headline }}

{{ s.readiness.lead }}

{% if s.readiness.blocking_labels %} {% endif %}

Documents

{% include "artifacts/list.html" %} {% include "sessions/_traceability.html" %}