{% extends "_base.html" %} {% block title %}Findings · {{ project.name | humanize }} · Urika{% endblock %} {% block heading %}Findings{% endblock %} {% block breadcrumb %} {% endblock %} {# -- Helpers ---------------------------------------------------------- #} {# Render a single value (string, list, or dict) without ever emitting raw JSON. Used by the "More" block for unknown keys. #} {% macro render_value(value) -%} {% if value is mapping -%}
{% for k, v in value.items() %}
{{ k }}
{% if v is mapping or (v is iterable and v is not string) %} {{ render_value(v) }} {% else %} {{ v }} {% endif %}
{% endfor %}
{%- elif value is iterable and value is not string -%} {%- else -%}

{{ value }}

{%- endif %} {%- endmacro %} {% macro humanise(key) -%} {{ key.replace('_', ' ') | capitalize }} {%- endmacro %} {% block content %} {# -- Question (italic lead) --------------------------------------------- #} {% if findings.question %}
{{ findings.question }}
{% endif %} {# -- Answer (primary paragraph) ----------------------------------------- #} {% if findings.answer %}
{{ findings.answer }}
{% endif %} {# -- Final methods ------------------------------------------------------ #} {% if findings.final_methods %}

Final methods

{% for m in findings.final_methods %}
{{ m.name }} {% if m.role %}{{ m.role }}{% endif %}
{% if m.summary %}
{{ m.summary }}
{% endif %} {% if m.key_metrics %}
{% for k, v in m.key_metrics.items() %} {{ k }}={% if v is number %}{{ '%.3f' | format(v) }}{% else %}{{ v }}{% endif %} {% endfor %}
{% endif %} {% if m.script %}
{{ m.script }}
{% endif %}
{% endfor %}
{% endif %} {# -- Criteria status ---------------------------------------------------- #} {% if findings.criteria_status %}

Criteria

{% if findings.criteria_status.met is defined %} {{ 'Met' if findings.criteria_status.met else 'Not met' }} {% endif %} {% if findings.criteria_status.details %}

{{ findings.criteria_status.details }}

{% endif %}
{% endif %} {# -- Progression -------------------------------------------------------- #} {% if findings.progression %}

Progression

{{ findings.progression }}

{% endif %} {# -- Experiments summary ----------------------------------------------- #} {% if findings.experiments_summary %}

Experiments

{% for e in findings.experiments_summary %} {% endfor %}
ID Focus Key finding
{{ e.id }} {{ e.focus }} {{ e.key_finding }}
{% endif %} {# -- Limitations ------------------------------------------------------- #} {% if findings.limitations %}

Limitations

{% endif %} {# -- Future work ------------------------------------------------------- #} {% if findings.future_work %}

Future work

{% endif %} {# -- "More" block: any non-well-known keys, formatted (never JSON) ----- #} {% if extras %}
More {% for key, value in extras.items() %}
{{ humanise(key) }}
{{ render_value(value) }} {% endfor %}
{% endif %} {% endblock %}