{% extends "base.html" %} {% from "fragments/_chips.html" import needs_you_chip %} {% block title %}Voxint — home{% endblock %} {% block cb_breadcrumb %}home{% endblock %} {% block cb_summary %}{{ date_summary }} · everything running locally{% endblock %} {% block cb_actions %} + Add media {% endblock %} {% block body %}

NEEDS YOUR ATTENTION

{{ review_backlog }}
recordings to review finished, waiting on speaker decisions
{% if review_backlog %}{% endif %}
{{ unresolved_voices }}
voice{{ "s" if unresolved_voices != 1 else "" }} without a name across recordings waiting for review
{# #315: link where these voices can actually be resolved — the review queue sorted by unresolved count — not /speakers, which only lists already-known people and never shows unnamed voices. #} {% if unresolved_voices %}{% endif %}
{{ failed_runs }}
failed runs {% if failed_runs %}stopped with an error{% else %}nothing broke{% endif %}
{% if failed_runs %}{% endif %}

START SOMETHING

Upload a recording Watch a folder {% if shell.projects_enabled %}New project{% endif %} Review speakers

ACTIVITY

{% for value, label in windows %} {{ label }} {% endfor %}
{% if window_invalid %}

Unrecognized window value, showing the last day.

{% endif %}
{{ counts.media_added }}
MEDIA ADDED
{{ counts.runs_started }}
JOBS RUN
{{ counts.speakers_enrolled }}
SPEAKERS IDENTIFIED
{{ counts.minutes_transcribed }}min
TRANSCRIBED

RECENT

{% if activity %}
{% for item in activity %}
{{ format_clock_time(item.at, now=now) }} {% if item.kind == "run_completed" %} Run finished — {{ friendly_media_label(item.title, item.source_path) }}{% if item.unresolved_count %} {{ needs_you_chip(item.unresolved_count) }}{% endif %} {% elif item.kind == "run_failed" %} Run failed — {{ friendly_media_label(item.title, item.source_path) }} {% elif item.kind == "run_started" %} Run started — {{ friendly_media_label(item.title, item.source_path) }} {% elif item.kind == "speaker_enrolled" %} Speaker verified — {{ item.title }} {% endif %} {% if item.kind == "run_completed" %} Review → {% elif item.run_id %} View → {% elif item.speaker_id %} View → {% endif %}
{% endfor %}
{% else %}

No recent activity. Add a recording to get started.

{% endif %}
{% endblock %}