{% extends "base.html" %} {% block title %}Trellis{% endblock %} {% block body %}

Trellis

The structure the work climbs: dependencies left to right, dashed edges for discovered work. A task with one open dependency stacks on its PR instead of waiting.

{% if hide_done %}show {{ hidden_count }} done {% else %}hide done{% if hidden_count %} ({{ hidden_count }}){% endif %}{% endif %}
all {% for p in products %}{% for ph in p.phases if closed or not ph.closed %} {{ p.name }}/{{ ph.name }} {% endfor %}{% endfor %} {% if closed_count %}include closed{% endif %}
{% if problems %}
{% for p in problems %}{{ p }}
{% endfor %}
{% endif %}
ready now: {% for r in ready %}{{ r }} {% else %}none{% endfor %} {% if critical %} · longest open chain: {{ critical|join(' → ') }}{% endif %}
{{ svg|safe }}
{% for s_ in ['draft','ready','running','waiting_human','awaiting_triage','in_review','changes_requested','done','failed'] %}{{ stage(s_, 18) }}{{ s_.replace('_',' ') }} · {{ stage_word(s_) }}{% endfor %}
mermaid source (paste into docs or PRs)
{{ mermaid }}
{% endblock %}