Remediation Package
{% if scope_label %}{{ project_name }}{% if project_version %} · {{ project_version }}{% endif %}
{# Defensive defaults block — placed before the render-mode gate per C.1 round-2 M1-2. Mirrors C.1 component_remediation_package.html. #} {% set remediation_summary = remediation_summary | default({}) %} {% if not remediation_summary is mapping %}{% set remediation_summary = {} %}{% endif %} {# Collection-level guards (round-2 PR multi-review M1-2): coerce non-list values to [] so selectattr / iteration doesn't break on upstream data drift. Also coerces non-iterable scalars (e.g. ints) that would otherwise blow up `| length` / `for row in ...`. #} {% set actions_df = actions_df | default([]) %} {% if actions_df is mapping or actions_df is string or actions_df is not iterable %}{% set actions_df = [] %}{% endif %} {% set suppressed_df = suppressed_df | default([]) %} {% if suppressed_df is mapping or suppressed_df is string or suppressed_df is not iterable %}{% set suppressed_df = [] %}{% endif %} {% set unresolvable_df = unresolvable_df | default([]) %} {% if unresolvable_df is mapping or unresolvable_df is string or unresolvable_df is not iterable %}{% set unresolvable_df = [] %}{% endif %} {% set project_agent_prompt = project_agent_prompt | default('') %} {% import "_console_macros.html" as fs with context %} {% if render_mode != 'fragment' %}
{% if domain %}{% endif %}{{ project_name }}{% if project_version %} · {{ project_version }}{% endif %}