{% set sidx = loop.index0 %} {# aca-trn-01: the pane for a step that has an authored item bank. This partial is included INSTEAD of the step-type partial, not alongside it, whenever the step has an active bank. That mirrors what grade_step already does: `_grade_items` takes precedence over the declared type, so with a bank the step IS the questions. Rendering the type partial as well would put a second, easier completion control on the page — "✓ Understood → Continue" next to an assessment is a way to pass without answering it, which is exactly the 100/0 pass-by-clicking this model exists to remove. Nothing is rendered server-side from an answer key. The questions come from STEPS[idx].assessment, which grading.client_safe_steps built out of assessment.open_attempt — option TEXT in this attempt's permutation and nothing else. There is no correct_index in the payload and no data attribute carrying one; the mapping back to the authored order lives only in fa_step_attempts.served_json. Tests assert that (test_academy_assessment_model.py). #}
{% if step.content_md %}
{{ step.content_md | safe }}
{% endif %}
◆ Knowledge Check