{# The plugin's manifest-declared override (issue #449 slice 1): served only when the bytes verify against the manifest pin at render time (tampered bytes render the default tokens; a refused override is VISIBLE as such — the html element carries data-bw-override-refused). Last in cascade ORDER; the host grants the override order, not rank (fold F5: the lanes state-kind rules keep their (0,2,0) specificity floor). #} {% if preview_override %}{% endif %} {# Page-scoped scripts (I4a): a page opts in; the shell stays the same. #} {% block scripts %}{% endblock %}
{# Reload advisories ride the event bus so EVERY open page shows them (SW-29); bw-events.js fills these regions from the /events stream (the vendored htmx-1 SSE extension is incompatible with htmx 2 — the advisory rides a native EventSource, first-party). #}
{% block content %}{% endblock %}
{# SW-29: display-only disclosure rendered in every mode — the authoring TOOLS stay NFR-S8-gated; this panel is not capability. #}
plugin
{{ plugin.package }} {{ plugin.plugin_version }}
descriptor
{{ plugin.descriptor_sha256[:12] }}
validation
{{ plugin.load_diagnostic or "validation clean" }}
last reload
{% if reload_state %}{{ reload_state.at }} by {{ reload_state.source }}{% else %}not reloaded{% endif %}
{% if pending_reload %}

A reload is waiting for confirmation (triggered by {{ pending_reload.source }}).

{% endif %}