← HR Cluster

Changelog

Operational and technical updates to the HR Cluster platform.

Types of changes
Added New functionality or modules.
Updated Improvements or changes to existing functionality.
Core Major architectural, platform-wide, or operational changes.
Deprecated Features scheduled for removal.
Removed Features or functionality removed.
Fixed Bug fixes and issue resolution.
Security Security improvements or vulnerability fixes.

2026

Payroll • Users only export mode

The payroll export wizard now offers a Users only mode that exports the worker list without sessions — useful for syncing rosters into accounting without bringing time data along.

Users • Norwegian postal codes normalised to four digits

Norwegian postal codes are now padded to four digits everywhere (so a leading zero is no longer dropped on import or save), with a one-time backfill across existing user records.

Groups • mobile subgroups and contact picker

Subgroup rows lay out properly on mobile with a dimmed hierarchy arrow and stack as cards on narrow screens. The group contact picker is now a searchable typeahead instead of a long static dropdown.

Contracts • Upload signed contract no longer errors

Uploading a pre-signed contract PDF could fail with a 500 error on save. The upload now completes cleanly and the contract appears in the list as expected.

Contracts • auto-search list and cleaner uploaded actions

The contracts list filters as you type instead of waiting for a submit, large lists paginate at 50 per page, and uploaded signed contracts only show the actions that actually apply to them.

Documents • show all linked competence classes

When a document is linked to multiple competence classes, the documents list now shows all of them instead of only the first. Easier to spot at a glance which credentials are covered by which file.

Competence • multi-class certificates and verification

A major polish pass to the competence workflow: certificates can carry multiple classes per card, each class can be verified or rejected individually in the document viewer, valid-until dates and certificate numbers are required only when the certificate type calls for them, and category and class labels read more cleanly. Mobile rows and the review modal have been tightened so they fit phones properly.

Forms • organisation details for invoice workers

Registration forms now collect organisation details for invoice and organisation-paid workers under a clearer Organisasjonsdetaljer section, with smarter title handling that follows the account's default language.

Worker types • Dugnad / organisation worker

A fourth worker type has been added for volunteer and organisation-paid crew. Dugnad workers support an hourly rate without requiring personal bank account details, and flow through the import, schedule, and payroll surfaces like the other types.

Contracts • translated event log and preselected project

Event log entry types in the contract history are now translated, and creating a new contract preselects the account's standard project when the recipient has no default of their own.

Schedule • per-assignee shift export rows

Shift exports — list view, CSV, PDF, and the daily emails — now produce one row per (shift × assignee) and include the assigned worker's name, so a shift with three assignees is no longer collapsed into a single ambiguous row.

Incidents • mobile case layout

On mobile, the Quick actions band now sits on top of the Details panel, the meta block has tighter spacing, and Last updated has moved into the meta block where the rest of the case metadata lives.

Incidents • owner notifications and audit log

Owners are now notified by email when an incident is assigned, reassigned, cleared, has its status changed, or is closed. Every dispatch attempt is recorded in the case audit log so you can see exactly what was sent and when.

Incidents • PDF report download

Each incident case now has a Download PDF report action in the More menu, producing a printable case summary with the full event log.

Missing info • birth date check

The missing-info detector on the user profile now flags users without a date of birth, so gaps in worker records are easier to chase down.

Users • admin role limited to admins

Only account admins can grant or revoke the admin role. Managers can still manage their own group's users but can no longer escalate or demote admin-level access.

Users • separate title field

Workers now have a dedicated title field on their profile, separate from worker type. Imports, the user edit form, and registration forms all flow into it.

Phone numbers • international format on import and edit

Phone numbers are now normalised to international (+CC) format both on CSV import and when saving from the user edit form, with safeguards so a real local number that happens to start with country-code digits is no longer mangled.

User import • redesigned CSV flow

CSV user import has been rebuilt around a fuller template, a bulk default values panel, override-all + clear-value toggles, and a richer preview that surfaces birthday, address, and emergency contact fields. Header validation now suggests the closest match when a column is misspelled, the template covers every importable field via its config aliases, and rates of 0 are treated as empty cells. When a row has no project, the account default project is used.

Payroll export • pill nav inside Settings

The payroll export wizard moved into the Settings pill nav and dropped the per-step H1s, giving the wizard the same compact framing as the rest of Settings.

Outbound emails • correct language every time

Some transactional emails were rendering in the sender's UI language instead of the recipient's preferred language. Emails now always swap the translation table when a language is set explicitly, so workers receive their messages in their own language regardless of who triggered the send.

Design system uplift • Contracts and Incidents

Contracts and Incidents now follow the same layout, table, modal, and action-button patterns as the rest of the workspace. Mobile action rows wrap cleanly, the user access card stacks correctly, and modal footers no longer overflow on narrow screens.

Shared pill navigation across the workspace

Tabs, sub-filters, and section navs across Users, Incidents, Items, Contracts, Schedule, Settings, and Payroll now use one shared pill component. On mobile, narrow tab strips get a chevron scroll button, the active tab scrolls itself into view, and a fade indicates more options off-screen.

Schedule list view • instant assign and group changes

Assigning, unassigning, and changing the group on a shift in the schedule list view now updates in place via AJAX. No more full-page reloads after each tweak — the row updates and you keep your scroll position and any open filters.

Incidents • case workspace, owner, and priority

The incident detail page has been rebuilt as a single case workspace with one owner control, a priority field, and an anonymous-reporter fallback when no submitter is recorded. Closing an incident now goes through a confirm modal instead of a native browser dialog, and the Involved company row is always visible on the case so it's never hidden behind a toggle.