Skip to content

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 (PATCH with 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.schedule permission 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 changedPaths and, 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—plus building.inspection.schedule on auth for schedule mutations.
  • Draft vs live for befaring: New GET .../inspection/draft-diff with normalization aligned to approve/snapshot logic; changes array 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 now changes) for pending-approval review—frontends should not expect draft merge on those routes unless the user is the assigned inspector.