← 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

— continued

Schedule • Renaming a role updates the production plan straight away

Since 22 September a role rename carries the new name onto every shift that still had the old one. The production plan rows that mirror those shifts were not updated at the same moment, so the plan kept showing the superseded name until somebody opened it, and a PDF exported in between printed the old name. A rename now pushes the new name to the plan of every project the role appears on before it returns, so the plan, the schedule and the export agree immediately.

Technical focus: The plan sync is project-scoped and a role spans projects, so the affected projects are collected BEFORE the carry runs (afterwards the old-name match returns nothing and the set cannot be recovered) and synced after the commit, best-effort, like the other post-commit writes beside it; nothing runs when the carry moved no row. The tripwire that counts mirrored-column writes against mirror calls in the schedule controller was raised with the call, not instead of it.

Email delivery • Request emails sent in the background are now in the log

Competence, food & allergies and clothing & sizes request emails sent through a group's bulk actions were delivered but never recorded in the Email delivery log under Settings, so their status could not be checked there and a temporary delivery failure was not retried. They are now recorded like every other email the platform sends, with their delivery status, and a soft bounce is retried in the usual way. Requests sent from a person's page were already recorded and are unchanged.

Technical focus: The mail layer logs an email only when it can attribute it to an account, from an explicit option or from the session; the background worker has no session, so the request sender now takes the account explicitly and passes it through. A new caller without a session must do the same or its sends are untracked.

Groups • Send a clothing & sizes request to a whole group

A group's Bulk actions now include Send clothing & sizes update request, beside the Food & allergies request it works like. It reaches the members who are asked for at least one item, have an email address and have not opted out of email, and skips anyone who already has an open request; the preview counts exactly who that is before you confirm. Each person receives a link to fill in or review their own sizes without logging in, and the emails go out in the background so the page does not wait for them. A request is not sent again while an earlier one is still open, the same rule as Send request on a person's page and on the Clothing & sizes overview. The action needs access to Clothing & sizes. Help updated in all four languages.

Technical focus: A fourth request type on the ONE shared group bulk-request engine and its ONE live-request rule (no repeat while a token is open): the population, the preview and the apply reuse the engine, so a further request type is a row in its type list, not a second implementation.

Clothing & sizes • Send a size request from the person's page

The Clothing & sizes card on a person's page now has Send request beside Edit, the same as the Food & allergies card: it emails the person a link to fill in their own sizes, and tells you whether it was sent, that they have no email address, or that sending failed. A request is not sent again while an earlier one is still open; the button says so and names when that request expires. The same rule applies to the requests sent from the Clothing & sizes overview, one person at a time or to everyone still missing a size.

Workspace • Highlighting a row on a detail page now fills the whole card

On detail pages such as a person, a project or a contract, pointing at a row in the details table showed a highlight that stopped short of the card's edges and looked like a stripe floating inside the card. The highlight now runs edge to edge, the way it does in every other table. Labels and values sit exactly where they did.

Workspace • Workforce, Ops and Acts now read as the three areas of your workspace

The switch between Workforce, Ops and Acts at the top of the sidebar looked like a small filter chip under the project name, so it was easy to miss that it decides which menu you are looking at. It now spans the width of the sidebar, sits directly above the menu it controls, and shows the selected area raised while the other areas are clearly there to click. Acts is still listed but not yet available. Nothing about what each area contains or who can see it has changed, and on a phone the switch keeps its compact place beside the project name.

Clothing & sizes • The Items tab edits each item on its own

On an account with more than one item, the "collected from" control only worked on the first item in the list; on later items the choices did nothing and the group panel never opened. Every item now has its own working control. Two smaller things on the same tab: the fit boxes on an item are ordinary checkboxes again instead of the thin dark sliver they had turned into, and the Range / Custom switch on the sizes editor now shows which side is selected, so it no longer looks dead while the fields beneath it change.

Appearance • Every checkbox is drawn in the app's own ink

The filter checkboxes on the production plan and the group trees used for scoping (clothing items, contract access) were showing the browser's default blue, while every other checkbox in the app is drawn in dark ink. They now match the rest, and so does every radio button: one rule now gives every native checkbox and radio in the product the app's own ink, so no form, filter or dialog falls back to the browser's colour. Purely visual: nothing about what any control does has changed.

Contracts • The suggested role or position follows the workspace language

When you create a Crew contract for somebody who has no title on their membership and no single shift role to take it from, the wizard suggests a default role. That suggestion was shown in the language you read the app in, so a manager working in English on a Norwegian workspace was offered "Worker", and because the wizard treats the prefilled value as your choice, "Worker" was what the Norwegian contract stated. The suggested role now follows the workspace's own language, whoever creates the contract and whichever template language is chosen. A role you type, or one already stored on the person's membership, is used exactly as written, as before. Contracts already issued are not changed.

Clothing & sizes • Ask only the people an item is actually for

You can now say who each clothing item is collected from, instead of asking everyone for everything. Open an item on the Items tab and pick one of three: everyone, selected groups, or everyone except selected groups. Picking a group takes its subgroups with it; picking only some subgroups does not take the parent group, so you can ask one crew without asking the whole department. People outside an item's scope are not asked for it and are no longer counted as missing it, so the Missing figures and the summary now describe work that actually needs doing. If somebody already answered an item before you narrowed it, their answer is kept, not deleted, and it comes straight back if they move into the scope again. Nothing changed for your existing items: they are all set to everyone, which is exactly how they behaved before.

Contracts • The holiday clause in the employment templates is one sentence

Earlier today the six global employment templates gained a paragraph stating the right to holiday and holiday pay and how the timing of holiday is decided. That paragraph is now a single sentence that points to the Holiday Act rather than restating parts of it: "Ferie og fastsettelse av ferietid følger ferieloven" in Norwegian, and the same in English. This is the form the termination clause beside it already uses, and it means the contract cannot fall out of step with the Act if the Act changes. What applies to an employee is unchanged, because the Holiday Act governs either way. The holiday pay percentage and the occupational pension percentage in the paragraph above are untouched, the volunteer and contractor templates never carried this clause and still do not, and templates already created in your own account are unchanged.

Contracts • The employment templates now state the terms Norwegian law requires

The Working Environment Act lists what a written employment contract must state. The six global employment templates, meaning crew, waiter and staff and management in both languages, were missing four of those items. They now carry them. The right to holiday and holiday pay under the Holiday Act, with the timing of holiday set by that Act's own rules. A clear separation between the fixed term simply expiring and the employment being ended early: expiry needs no notice, and an early ending follows the Working Environment Act's ordinary rules, with its notice periods and its procedure named rather than restated, so the contract cannot drift out of step with the law. A statement that the employment is not covered by a collective agreement. And a reference for the right to competence development. The staff and management templates additionally point to the statutory rules on breaks, subject to the independent position clause they already carried. The two crew templates now also state the position the person is engaged in, filled in from their title or their role on the project and editable before you send. Pay terms are untouched: holiday pay stays at 10.2 per cent and occupational pension at 2.0 per cent. One point is deliberately left as it was. Whether the law requires an employment contract to name the institutions that receive the employer's pension and insurance payments is unresolved, so the templates say nothing new about it. If your organisation is bound by a collective agreement, the global templates do not fit you as they stand: copy one into your own templates and name the agreement, and its parties when it was concluded outside your own business, before you publish. You will see a reminder when you copy a global employment template. Templates already created in your account are never rewritten by us.

Contracts • How an overpaid wage is corrected

The global crew and waiter employment templates said that if too much wage had been paid by mistake, the employer could make the necessary deduction at the next payroll, and that the employee was obliged to repay. The staff and management template answered the same question differently: the correction is agreed in writing between the parties. Both are defensible, but one product should not carry two legal approaches to one question without a reason, and the staff construction is the one that keeps the decision with both parties. The crew and waiter templates now use it. Nothing else in the payment clause changed, and templates already created in your account are unchanged.

Contracts • Crew and volunteer contracts can list the planned shifts

The four global crew and volunteer templates now carry the planned shift table that the staff and management templates already had. The crew employment templates show it under "Arbeidsperiode og planlagte vakter" and "Term of engagement and planned shifts"; the volunteer templates keep "Oppdragets periode og planlagte vakter", because that relationship genuinely is an assignment. The table lists the shifts registered for the person on the contract's project at the moment the contract is created, with date, time, role and any note the manager wrote on that assignment, plus a total. Two things the contract now says in words, so nobody has to infer them. The table is a snapshot and not an exhaustive list: further shifts may be agreed inside the contract period, are covered by the agreement already signed, and need no new contract. And settlement follows the time actually registered, not the planned shifts, because these are hourly relationships. While the contract is still a draft you can refresh the table from the schedule. Once it has been sent the table is frozen, and the contract page tells you if the schedule has changed since. Templates you have already created in your own account are untouched: create a new template from the global one if you want the table.

Clothing & sizes • Give a manager the sizes without the setup

Clothing & sizes now has two levels of access instead of one. Access lets a manager open the page, filter it, export CSV and PDF, set or correct one person's sizes, and ask people to fill theirs in. Edit adds the Items tab: which items you collect, and the sizes, fits and sizing system offered for each. You choose the level per person on the Items tab, and you can change it or take it away there. Administrators have both levels and nothing to set up. Nothing changed for anyone who already had access: everybody kept exactly the reach they had, so there is no one to re-authorise. Everyone still answers for their own sizes under My sizes, whatever access they have.

Sign in • Crew get longer to set a password, and more than one chance to

When somebody is added to your account, or registers through a signup link, they are emailed a link to choose a password. That link used to last 24 hours and the welcome email was the only place it ever appeared. Crew often sign up weeks before an event and have no reason to set a password that evening, so by the time they tried, the link had expired and they had to ask for a new one. The link now lasts 14 days. It also travels with the emails people are far more likely to open: if someone has not set a password yet, the shift confirmation and the signup approval email now carry the same link, alongside the shift they were writing to you about. Nothing changes for anyone who already has a password, and the Forgot password link on the sign-in page works exactly as before. One difference worth knowing: setting a password now retires every other password link outstanding for that person, so an older email cannot still open the door afterwards.

Clothing & sizes • The items you collect are now a tab on the module itself

Setting up which items you collect sizes for used to mean leaving the Clothing & sizes page and finding it under Settings. It is now an Items tab on the page itself, next to the sizes it describes. Nothing about who may change it has altered: as before, it takes the same access that every other settings page takes, and people who only read the sizes list do not see the tab. Any link or bookmark pointing at the old Settings page still works and takes you to the new tab.

Welcome email • No Set password button for people who already have one

The welcome email could arrive with a Set password button that led nowhere, under a note saying the link expires in 24 hours. It happened to people who already had a password: someone rejoining an account they had been removed from, or a registration approved against an account they already held. No password link is ever issued to those people, by design, because their existing password still works, so the button had nothing to point at. The email now says the account is ready and offers a Sign in button instead, and the 24 hour note is gone from it. Anyone setting a password for the first time receives exactly the email they received before.

Signup links • A confirmation email when someone takes a shift

Taking a shift through a public signup link now sends a confirmation naming the shift, its time, its place and the meeting point. It did not before: the same email had always gone out when crew picked a shift themselves under Me ➜ Shifts, but a link signup sent nothing, so the first the person heard about a shift they had booked was the reminder one hour before it started. This covers all three ways a link books someone: a new registrant, crew who already have an account and simply signed in, and someone rejoining after having been removed. What has not changed is when it arrives. If the link requires shift approval, the confirmation still waits until a manager approves the request, because until then the shift is not theirs. If the registration itself requires approval, the approval email lists the assigned shifts exactly as before and no separate confirmation is sent, so nobody receives two emails about one shift.

Clothing & sizes • Set up a size range instead of typing every value

Setting up an item no longer means filling three large boxes by hand. First tick which fits the garment actually comes in, then give each one a range: From 36 To 47 Step 1 for shoes, or From XS To 2XL for a T-shirt. The sizes you can pick are still stored exactly as before, so nothing you have already collected is affected and a retired size that comes back keeps the answers attached to it. Custom values remain available for a supplier that skips sizes, uses unusual labels or has uneven steps. Letter sizes no longer offer a sizing system at all, which is what produced EU XS. On the Clothing & sizes page the status dropdown is gone; the counters at the top and the Not needed and Missing rows in the summary now take you to the same lists.

Clothing & sizes • The sizes link reads as one plain question

Letter sizes are shown as XS, S, M rather than EU XS, EU S, since a letter size is not a country's scale. Shoe and other numeric sizes still show theirs, for example EU 43. The wording no longer suggests the sizes are being collected for one particular production: they are the person's own sizes, kept on their profile, and a short line now says they can choose the size they normally use and update it later. The Not needed option reads "I don't need this item" and sits closer to the sizes it belongs to, and on a phone the save button fills the width of the card.

Clothing & sizes • The sizes link opens in the language of the person it was sent to

The link that asks someone for their sizes was sometimes shown in the wrong language: it followed whatever language the browser had last been using rather than the language on the person's own profile. It now always opens in their language. Item names still read exactly as you typed them on the settings page, because those are your own words and are never translated.

Contracts • The waiter template asks for issued equipment back, and nothing else

Section 5.6 of the waiter employment templates listed the kit by name, made only the apron returnable, said the T-shirt and fleece could be kept, and reserved a right to deduct the cost of an unreturned apron from the employee's wages. It now states one rule: the employer provides the necessary work equipment, and equipment issued remains the employer's property and must be returned when the engagement ends or on request. No garment is named, because a global template should not carry one account's kit, and there is no deduction from wages. The separate clause about recovering wages that were paid to you in error is unchanged. Both the Norwegian and the English waiter template were updated together. Templates you have already created in your own account are untouched: create a new template from the global one if you want the new wording.

Contracts • Confidentiality now names who you may show your own contract to

The Staff and Management employment and contractor templates said the agreement was confidential unless sharing was required by law. That was too narrow to cover showing your own contract to the people who advise you on it. Both templates now name them. The employment template allows sharing with your own lawyer, trade union, accountant, auditor or public authorities. The contractor template allows your own lawyer, accountant, auditor, insurer or public authorities, with an insurer in place of a union because union membership is not part of a contractor relationship. Sharing that is required by law is still allowed on top of that, and the duty still applies both during and after the agreement period. As with the cancellation clauses, templates already created in your account are unchanged.

Contracts • New cancellation clauses in the global contract templates

All ten global contract templates carried a cancellation section that did not hold up. Eight of them said the company could change or end the agreement for whatever had not yet been delivered. In an employment agreement that is a right an employer cannot reserve: a fixed term contract ended early follows the ordinary rules on notice, lay-off and dismissal. The two Staff employment templates had the opposite problem, a reference to applicable law that described no action at all. Each relationship now has a clause written for it. The employment templates, meaning crew, waiter and staff, say what actually happens: the employer notifies the person as soon as possible, may make the changes the right of management allows, and if the basis for the work falls away may use lay-off or bring the employment to an end on the ordinary conditions. Work already performed and other accrued entitlements are paid, and the clause does not limit anyone's statutory rights. The volunteer template lets you change or cancel shifts that have not been worked, and settles documented hours actually worked. The contractor template requires written notice and splits the fixed project fee for the part actually performed, covers pre-approved third party costs that cannot be cancelled, and pays nothing for anticipated profit. Templates you have already created in your own account are untouched: create a new template from the global one if you want the new wording.