{% block extra_head %}{% endblock %}
{# ── Phase progress bar ─────────────────────────────────── #} {% set phases = [ ('setup', 'Setup'), ('prompt_review', 'Prompt'), ('edge_case_labeling', 'Edge Cases'), ('parallel_annotation', 'Annotation'), ('autonomous_labeling', 'Auto Label'), ('final_validation', 'Validation'), ('completed', 'Complete') ] %} {% set phase_order = ['setup', 'prompt_review', 'edge_case_synthesis', 'edge_case_labeling', 'prompt_validation', 'parallel_annotation', 'active_annotation', 'periodic_review', 'disagreement_resolution', 'autonomous_labeling', 'final_validation', 'completed'] %} {% set current_index = phase_order.index(phase) if phase in phase_order else 0 %} {# Map raw phase to the visible step the user is "on". #} {% set step_for_phase = { 'setup': 1, 'prompt_review': 2, 'prompt_validation': 2, 'edge_case_synthesis': 3, 'edge_case_labeling': 3, 'rule_review': 3, 'parallel_annotation': 4, 'active_annotation': 4, 'disagreement_resolution': 4, 'periodic_review': 4, 'autonomous_labeling': 5, 'final_validation': 6, 'completed': 7, } %} {% set active_step = step_for_phase.get(phase, 1) %}
{% for phase_id, phase_label in phases %} {% set step_index = phase_order.index(phase_id) if phase_id in phase_order else 0 %} {% set is_active = phase == phase_id or step_for_phase.get(phase) == loop.index %} {% set is_completed = (not is_active) and step_index < current_index %}
{{ loop.index }}
{{ phase_label }}
{% endfor %}
{% block content %}{% endblock %}
{% block sidebar %} {% endblock %}
{% block extra_js %}{% endblock %}