{% extends "base.html" %} {% from "_recon_table.html" import fmt, render_table %} {% block title %}Loan forensic — RWA Calculator{% endblock %} {% block content %}

← Back to the report · per-key explorer

Loan forensic

{{ detail.recon_key }}

{% if signoff_error %}
{{ signoff_error }}
{% endif %}
{{ detail.row_bucket or "—" }}
row bucket
{{ detail.worst_component or "—" }}
worst component
{{ detail.exposure_class or "—" }}
exposure class
{{ detail.approach or "—" }}
approach

By component — RWA driver chain

The loan's RWA build, legacy vs ours at each step. Indented rows are our-side drivers explaining how we reached the value above; a driver tagged legacy not provided has no legacy counterpart in the mapping.

{% for step in detail.steps %} {% for d in step.drivers %} {% if d.legacy_available %} {% else %} {% endif %} {% endfor %} {% endfor %}
steplegacyoursabs Δrel Δstatus
{{ step.label }} {{ fmt(step.legacy) }} {{ fmt(step.ours) }} {{ fmt(step.abs_delta) }} {{ fmt(step.rel_delta) }} {{ step.bucket if step.bucket is not none else "" }}
↳ {{ d.name }}{{ fmt(d.legacy) }}legacy not provided{{ fmt(d.ours) }}
{% if detail.breaks.rows %}

Breaks for this key

{{ render_table(detail.breaks) }} {% endif %}

Sign-off

Record whether this exposure's difference is acceptable. Accepting or rejecting takes it off the Open worklist; reopen it to put it back.

{% if decision and signoff_stale %}
⚠ This exposure was {{ decision.status }} on {{ decision.decided_at }}{% if decision.reason %} (“{{ decision.reason }}”){% endif %}, but the difference has changed since — please re-review before signing off again.
{% elif decision %}
This exposure is {{ decision.status }}{% if decision.decided_at %} · decided {{ decision.decided_at }}{% endif %}. {% if decision.reason %}
Reason: {{ decision.reason }}
{% endif %}
{% endif %}

A reason is required to reject; optional to accept.

{% if decision %}{% endif %}
{% endblock %}