{% extends "base.html" %} {% import "macros.html" as m %} {% block title %}Packs - Swiss TIP admin console{% endblock %} {% block content %}

Packs

Every number below is read from a file the pipeline wrote. The console writes only the curation file, the source catalogue and the checks file.

{% for item in cards %} {% set card = item.card %}

{{ card.pack }} {% if item.job %}job {{ item.job.kind }} running{% endif %} {% if card.catalogue_changed %}catalogue changed since the run{% endif %}

run: {{ card.run_dir }}

{% for name, message in [('catalogue', card.catalogue_error), ('curation', card.curation_error), ('release', card.release_error), ('checks', card.checks_error)] %} {% if message %}

{{ name }} file does not validate: {{ message }}

{% endif %} {% endfor %}
Sources {{ card.sources.total }} catalogued ({% for level, count in card.sources.by_level.items() %}{{ count }} {{ level }}{% if not loop.last %}, {% endif %}{% endfor %}{% if not card.sources.by_level %}none{% endif %}) {{ card.sources.saved }} of {{ card.sources.planned }} targets saved outstanding: {{ card.sources.retriable }} retriable, {{ card.sources.not_retriable }} not retriable {% if card.sources.approved %}{{ card.sources.approved }} human-reviewed and approved for scope{% endif %}
Text {{ card.text.records }} records, {{ card.text.eligible }} eligible, {{ card.text.blocks }} blocks dataset {{ card.text.generated_at or 'not built' }} {{ card.text.superseded }} superseded since the last build
Curation
{{ card.curation.concepts }} concepts, {{ card.curation.facts }} facts ({{ card.curation.reviewed }} human-reviewed)
{{ m.stacked(card.curation.review, card.curation.facts) }} {{ m.stacked(card.curation.kinds, card.curation.facts) }}
standing-case facts: {% if card.curation.expected_by_checks %} {{ card.curation.expected_present | length }} present, {% if card.curation.expected_missing %} {{ card.curation.expected_missing | length }} missing: {{ card.curation.expected_missing | join(', ') }} {% else %}none missing{% endif %} ({{ card.curation.expected_reviewed }} reviewed) {% else %}no stored check names a fact yet{% endif %}
Release
{% if card.release.release_id %}
{{ card.release.release_id }}
snapshot {{ card.release.snapshot_date }}, {{ card.release.days_to_stale }} days until stale
{% else %}
no release built yet
{% endif %}
last run {{ card.release.last_run or 'never' }} {% if card.release.exit_code is not none %}(exit {{ card.release.exit_code }}){% endif %}
{{ m.stage_strip(card.release.stages) }}
{% if card.release.last_check_run %} stored checks on {{ card.release.last_check_run.at[:19] }}: {% for name, result in card.release.last_check_run.results.items() %} {{ name }} {{ result }} {% endfor %} {% else %}stored checks never run{% endif %}

runs - review queue - release - sandbox - audit log

{% else %}

No pack under releases/ yet.

{% endfor %}
{% if not read_only %}

Add a pack

Creates releases/<pack>/sources.json from the catalogue template with an empty source list. The pipeline refuses to plan a run until the first source is added.

{% endif %} {% endblock %}