{% extends "base.html" %} {% block content %}

Data products

Browse data products alongside the contracts and datasets recorded by recent demo runs.

{% for product in products %} {% set latest = product.latest_run %} {% endfor %}
Data product Version Status Inputs Outputs Latest run Runs
{{ product.id }}
{% if product.description and product.description.usage %}
{{ product.description.usage }}
{% endif %} {% if product.tags %}
{% for tag in product.tags %} {{ tag }} {% endfor %}
{% endif %}
{{ product.version or '—' }} {{ product.status or 'unknown' }} {% if product.inputs %}
{% for port in product.inputs %}
{{ port.name }}
{% if port.contract_id %}
{{ port.contract_id }} {% if port.version %} / {{ port.version }} {% endif %}
{% endif %} {% if port.source_data_product %}
From data product {{ port.source_data_product }} / {{ port.source_output_port }}
{% endif %}
{% endfor %}
{% else %} None {% endif %}
{% if product.outputs %}
{% for port in product.outputs %}
{{ port.name }}
{% if port.contract_id %}
{{ port.contract_id }} {% if port.version %} / {{ port.version }} {% endif %}
{% endif %} {% if port.dataset_id %}
Dataset {{ port.dataset_id }}
{% endif %} {% if port.stage_contract %}
Stage contract {{ port.stage_contract }}
{% endif %}
{% endfor %}
{% else %} None {% endif %}
{% if latest %}
{{ latest.dataset_name }} / {{ latest.dataset_version }}
{{ latest.status }}{% if latest.reason %} · {{ latest.reason }}{% endif %}
{% else %} No runs {% endif %}
{{ product.run_count }}
{% if not products %}

No data products registered yet.

{% endif %} {% endblock %}