| {% trans "Depends on" %} |
{% with deps=object.depends_on.all %}
{% if deps %}
{% for dep in deps %}- {{ dep|linkify }}
{% endfor %}
{% else %}
{{ ''|placeholder }}
{% endif %}
{% endwith %}
|
| {% trans "Required by" %} |
{% with rev=object.dependents.all %}
{% if rev %}
{% for dep in rev %}- {{ dep|linkify }}
{% endfor %}
{% else %}
{{ ''|placeholder }}
{% endif %}
{% endwith %}
|
{# ---------------------------------------------------------------- #}
{# LINEAGE (design chains, PLAN-design-chains.md §2). Distinct from #}
{# the "Dependencies" card above: that card is the depends_on / #}
{# dependents M2M, an informational "must run after" edge that does #}
{# NOT affect projection. This card is the based_on tree -- the #}
{# layer stack a design's projection actually inherits (§2.1) -- plus #}
{# the freeze / un-approve consequences of being part of one (§2.2) #}
{# and the re-base warning of §9.2. #}
{# ---------------------------------------------------------------- #}
{% with ancestors=object.baseline_chain children=object.children %}
{% if not ancestors and not children %}
{% trans "This design stands alone — it has no parent and nothing is based on it." %}
{% else %}
| {% trans "Parent" %} |
{% if object.based_on %}
{{ object.based_on|linkify }}
{% badge object.based_on.get_status_display bg_color=object.based_on.get_status_color %}
{% else %}
{{ ''|placeholder }}
{% endif %}
|
| {% trans "Ancestor stack" %} |
{% if ancestors %}
{% for ancestor in ancestors %}
-
{{ ancestor|linkify }}
{% badge ancestor.get_status_display bg_color=ancestor.get_status_color %}
{% if forloop.last %}
{% trans "(immediate parent — the only editable relation)" %}
{% endif %}
{% endfor %}
{% else %}
{{ ''|placeholder }}
{% endif %}
|
| {% trans "Children" %} |
{% if children %}
{% for child in children %}
- {{ child|linkify }} {% badge child.get_status_display bg_color=child.get_status_color %}
{% endfor %}
{% else %}
{{ ''|placeholder }}
{% endif %}
|
{% for ancestor in ancestors %}
{% if ancestor.status == "implemented" %}
{% trans "Ancestor" %} {{ ancestor|linkify }}
{% trans "is marked Implemented — the chain will refuse to project until this design is re-based past it." %}
{% endif %}
{% endfor %}
{% endif %}
{% endwith %}
{% include 'inc/panels/tags.html' %}
{% plugin_right_page object %}