{# src/examen/templates/_heatmap.html #} {# Required context: heatmap = {very_sure: [[topic,...],...], somewhat: [...], unsure: [...]} each row is a 5-element list of topic-lists. Each topic dict: {id, label, score, calibration, abbr} #} Knowledge × calibration {% for band_label, band_key in [("very sure", "very_sure"), ("somewhat", "somewhat"), ("unsure", "unsure")] %} {{ band_label }} {% for cell in heatmap[band_key] %} {% for t in cell %} {%- set is_warn = (band_key == 'very_sure') and (t.score < 0.4) -%} {{ t.abbr }} {% endfor %} {% if not cell %}·{% endif %} {% endfor %} {% endfor %} wrongright Top-right is good. Bottom-left is calibrated honesty. Top-left is dangerous — confident and wrong.
Top-right is good. Bottom-left is calibrated honesty. Top-left is dangerous — confident and wrong.