{% from "_macros.html" import th %} {{ th(t('发现')) }}{{ th(t('候选')) }}{{ th(t('已分析')) }}{{ th(t('已生成')) }}{{ th(t('待批准')) }}{{ th(t('已批准')) }}{{ th(t('已落地')) }}
{{ f.counts.discoveries }} {{ f.counts.candidates }} {{ f.counts.analyses }} {{ f.counts.generated }} {{ f.counts.pending }} {{ f.counts.approved }} {% if f.counts.landed %}{{ f.counts.landed }}{% else %}0{% endif %}

{{ t('最新待批准') }}

{{ th('ID') }}{{ th(t('源名')) }}{{ th(t('模型')) }}{{ th(t('更新')) }} {% for m in f.pending %} {% else %} {% endfor %}
{{ m.id }} {{ m.source_name or '—' }} {{ m.model_used or '—' }} {{ m.updated_at or '—' }}
{{ t('队列为空,没有待批准 manifest Empty queue — no draft manifests.') }}

{{ t('已批准') }}

{{ t('「已落地」= 源名精确匹配 crawl_sources(查询期判定,无外键)。"Landed" = source_name exactly matches a crawl_sources row (query-time fact, no FK).') }}

{{ th('ID') }}{{ th(t('源名')) }}{{ th(t('模型')) }}{{ th(t('更新')) }}{{ th(t('状态')) }} {% for m in f.approved %} {% else %} {% endfor %}
{{ m.id }} {% if m.landed and m.source_name %}{{ m.source_name }}{% else %}{{ m.source_name or '—' }}{% endif %} {{ m.model_used or '—' }} {{ m.updated_at or '—' }} {% if m.landed %}{{ t('已落地 landed') }}{% else %}{{ t('已批准 approved') }}{% endif %}
{{ t('尚无已批准 manifest No approved manifests yet.') }}