Appearance
May 1, 2026 — Backend
Release date: Friday, May 1, 2026
Summary
This week extends the building inspection lifecycle with a proper planned schedule (intervals, deadlines, postponed dates), a dedicated permission for schedule edits, and tooling for approvers to see what differs between live building data and the inspector’s draft—including before/after values for each changed field once reviews begin.
Shipped
- Inspection planning: Global inspection interval catalogue, per-building schedule read/update (
PATCHwith interval and postponed date), and a richer GET inspection view for the UI (without duplicating list-only fields such as a combined “inspection date”). - Authorization: New
building.inspection.schedulepermission for who may change planned dates/intervals (separate from assign/start/approve). - Approval support: Draft vs live diff endpoint for inspectors and approvers during active or pending approval; response includes
changedPathsand, for approve UIs, paired baseline and draft values per path. - Docs & contract:
INSPECTION_FLOW.md, reference docs,http/api.http, and OpenAPI updated to match.
Engineering (commit recap)
Backend — week of April 27 – May 3, 2026
Window: 2026-04-25 < commit date < 2026-05-02 (git log --no-merges).
Summary
Inspection work dominated the week: first a schedule and interval slice (API, DTOs, auditing hooks, tests), then draft-diff to compare normalized snapshot data to persisted building rows, documented and wired in Swagger. Smaller cleanups aligned API wording (deadline vs Norwegian “frist” in strings) and simplified the inspection GET payload. A follow-up commit added changes[] with leaf snapshotValue / draftValue so clients do not need to infer proposed values from paths alone.
Themes
- Planned inspection schedule: Interval catalogue endpoint,
PATCH .../inspection/schedule, expanded building inspection GET, tests and docs—plusbuilding.inspection.scheduleon auth for schedule mutations. - Draft vs live for befaring: New
GET .../inspection/draft-diffwith normalization aligned to approve/snapshot logic;changesarray for approve UI copy (før → foreslått). - API hygiene: English deadline in user-facing API strings; inspectionDate removed from inspection GET where lists already derive display dates.
Notable fixes or risks (if any)
- Approvers still see persisted building data on standard building GETs; rely on
draft-diff(and nowchanges) for pending-approval review—frontends should not expect draft merge on those routes unless the user is the assigned inspector.