_KEY_RATE_MARKET_SPREAD_PP was a 0.0 placeholder, so §7.9 affordability payments used the bare CBR key_rate (~14.5%), understating borrower cost and OVERSTATING affordability. Calibrate to 4.5pp from the prod anchor (macro_indicator mortgage_rate_primary_domrf 19.125% @ 2026-04-19 vs key_rate ~14.5% -> observed ~4.6pp, rounded conservatively; inside the typical RF 3-5pp band), so rate_used = key_rate + 4.5 ~= 19% matches the directly-observed market primary mortgage rate. Makes affordability LESS optimistic / more accurate. Docs + tests updated to the symbolic spread (new regression anchor pins spread==4.5 and key_rate 14.5 -> ~19.0); rate_kind/graceful-fallback semantics unchanged. Forecasting suite 841 passed; ruff clean. |
||
|---|---|---|
| .. | ||
| api | ||
| core | ||
| models | ||
| observability | ||
| schemas | ||
| scrapers | ||
| services | ||
| templates | ||
| workers | ||
| __init__.py | ||
| main.py | ||