{% from "partials/_macros.html" import card_header, verdict_pill %} {# Network neighborhood & topology — DNS resolvers, ARP (IPv4) and NDP (IPv6) neighbor caches, and the routing table. The DNS-hijack / ARP-spoof / route-redirection surfaces. Tables are small and bounded, so all rows show behind one shared verdict + search filter (no pagination). #} {# ----- reusable section renderer: header + counts + table (defined before use — Jinja2 does not hoist macros) ----- #} {% macro _topo_section(title, subtitle, rows, counts, columns) %}
| verdict | {% for label, _ in columns %}{{ label }} | {% endfor %}why |
|---|---|---|
| {% if r.verdict %}{{ verdict_pill(r.verdict) }} {% else %}—{% endif %} | {% for _, key in columns %}{{ r[key] or "—" }} | {% endfor %}{{ r.reasoning }} |