Appearance
May 29, 2026 — Backend
Release date: Friday, May 29, 2026
Summary
A short week with two focused improvements: building cumulus now keeps estimated loss (EML) percent in sync with current-year coverage lines, and building types expose a reference endpoint for allow-listed price table lines (without year-specific rates) to support risk-profile and UI pickers.
Shipped
- Cumulus EML:
BuildingCumulus.estimatedLossPercentis recomputed from qualifying current-yearCoverageLineEML and premium basis; runs after cumulus updates and when coverage lines are created. - Building types — price table lines:
GET /api/v1/building-types/:id/price-table-linesreturns mappedBuildingPriceTableLinerows (code, name, category,rateUnit, sort order) for a type; yearlyrateremains onGET /insurance-years/:year/price-table-lines.
Engineering (commit recap)
Backend — week of May 25 – May 31, 2026
Window: 2026-05-22 < commit date < 2026-05-30 (git log --no-merges).
Summary
Two non-merge commits landed. Cumulus gained CumulusEmlService and a pure calculator that aggregate coverage-line inputs into estimatedLossPercent, wired into existing cumulus and coverage-line write paths. Building types gained a nested reference route, DTO, tests, OpenAPI, and docs cross-links; insurance-year price-table listing was adjusted to align with the type-scoped allow-list pattern.
Themes
- Cumulus EML automation: New
cumulus-eml.calculatorandCumulusEmlServiceload current-year coverages for a cumulus, compute percent from EML vs premium basis, and persist onBuildingCumulus;CumulusServiceandCoverageLineServicetrigger recompute after relevant mutations; unit tests cover calculator and service behavior. - Building type price table lines (reference):
GET /building-types/:id/price-table-lineswithbuilding.view; returnsBuildingTypePriceTableLineMapordering without yearlyrate; documented inAPI_REFERENCE_DATA.mdandINSURANCE_BOUNDARIES_AND_CODES.md;http/api.httpand OpenAPI updated; shared helperbuilding-type-price-table-linesused from insurance-year listing where appropriate.
Notable fixes or risks (if any)
- EML staleness: Percent updates on cumulus PATCH and coverage-line create only; other coverage-line changes (update/expire) should be verified if clients expect immediate EML refresh in those flows.
- Two-step price lookup: Type endpoint omits
rate; UIs that need NOK for a year must still callGET /insurance-years/:year/price-table-lines(optionally filtered bybuildingTypeId).