Operational and technical updates to the HR Cluster platform.
Types of changes
AddedNew functionality or modules.
UpdatedImprovements or changes to existing functionality.
CoreMajor architectural, platform-wide, or operational changes.
DeprecatedFeatures scheduled for removal.
RemovedFeatures or functionality removed.
FixedBug fixes and issue resolution.
SecuritySecurity improvements or vulnerability fixes.
2026
— continued
FixedProjectsAccreditationVehicles
Projects • A phase that something uses can no longer be deleted
Projects ➜ Phases now refuses to delete a phase that is still in use. The message names the phase and everything that uses it, with counts: accreditations and wristband issuances, accreditation requests, public links and supplier settings in Accreditation or Vehicles, vehicle access overrides, accreditation and vehicle types, and power logging rules. It suggests renaming or moving the phase instead. Until now a delete silently removed the phase from all of that data, and a vehicle access override built on it lost its gate access. The last phase cannot be removed while the project holds Accreditation or Vehicles data, the same rule as switching phases off. Deleting a phase is now recorded in the audit log.
Technical focus: One reference inventory decides whether a phase is in use, and it is checked under a lock before any delete, so a refused delete writes nothing.
FixedAccreditation
Accreditation • Editing a record keeps validity the form did not show
On a project with phases turned off, or with no phases yet, the accreditation Edit dialog shows no validity section. Saving it could still replace the record's stored validity periods with none, clear its phases and switch it to Phases mode, while reporting success. A save there now leaves the mode, phases and periods exactly as they were, and every other field saves as normal. Editing a record where the validity section is shown works as before.
Technical focus: The Edit decides from the form that was posted: when the validity section was not part of the form, the stored validity is kept, whatever the project's phase settings are.
FixedAccreditationSuppliers
Accreditation • Approve and Deny in a request dialog work again
Approving or denying a person from an accreditation request did nothing: the dialog closed, the page reloaded, and the person stayed pending with no message. This affected Accreditation ➜ Requests and the Accreditation tab on a supplier. Both buttons now carry out the decision again, and a note written when denying is kept.
Technical focus: A dialog's own content must never reuse the id the modal shell gives its body, or writing text into it replaces the form fields the decision depends on.
UpdatedAccreditationVehicles
Accreditation and Vehicles • Phase periods follow one rule, and a day you drop stays dropped
Accreditation and Vehicles now work out when a phase applies in exactly the same way. A phase runs from its checkpoint until one minute before the next phase begins; the first phase starts at the project start when it is tied to it, and otherwise at Window starts at, and the last phase ends the same way at the other end. A phase that cannot be given a start or an end is now refused by name when you save, submit or approve, instead of being silently left out. In Dates mode the days offered are suggestions inside the selected phases: untick a day or shorten the times and that is what is granted, and a new or changed period can no longer reach outside the selected phases. Saving without changes keeps the stored periods exactly as they are, including days you dropped and times you narrowed. This applies to accreditation records, accreditation public links, supplier accreditation and vehicle settings, vehicle public links and vehicle overrides.
Technical focus: Phase spans have ONE resolver, owned by Projects; Accreditation and Vehicles consume it rather than computing spans of their own.
FixedAccreditation
Accreditation • Approving a requested person is all or nothing
Approving a person from a supplier's or a public link's accreditation request now either completes fully or changes nothing. Before, a failure part-way through could leave an active accreditation without its validity periods, or a request still pending while a record had already been created. If an approval does not go through, the person stays pending and can simply be approved again. Two people approving the same request at the same moment can no longer create two records.
Technical focus: Every writer on the approval path takes a caller-owns-the-transaction contract, so one transaction covers the record, its types, phases, validity windows, audit row and the request person, and the person is re-read under lock before the record is created.
RemovedSettings
Settings • The unused reCAPTCHA toggle for public signup links is gone
Schedule settings no longer show Enable protection on public signup links. The toggle had not controlled anything since May. Security verification on signup links is still governed by Enable protection on forms attached to signup links, which is unchanged.
FixedAccreditation
Accreditation • Editing a record keeps its link to the supplier
Saving the Edit dialog on an accreditation record that came from a supplier's request no longer removes the record's link to that supplier. Until now an edit quietly unlinked it, so the person disappeared from the supplier's Accreditation tab and from its PDFs. Records unlinked that way have been relinked to their supplier wherever the record's own history shows which supplier it was.
Technical focus: An edit keeps every field its form does not show: the record writer treats an absent supplier as unchanged, and only an explicit supplier value changes or clears it.
42 changes · 32 updated · 9 fixed · 1 security
Vehicles 13 · Accreditation 8 · Suppliers 8 · UI 7 · Mobile 5 · Contracts 4 · +11 more
UpdatedUI
Changelog • Entries are grouped under a heading for each day
The changelog now shows a heading for each day above that day's entries. On a day with three or more changes, the heading also counts them by type, fixes and security changes included, and lists the areas they touched, the busiest first. When a day continues onto the next page, that page says so. Every entry, its link and the changelog feed are unchanged.
Technical focus: The heading and its counts are derived from the published entries of the whole day, never written by hand and never inferred from the text.
UpdatedAccreditation
Accreditation • Each type's phases sit directly under the type in the detailed PDF
In the detailed Accreditation PDF, the phases a type covers are now printed directly under the type name, without a separate label, so each row reads as the type and when it applies. The issuance column is narrower, which gives the validity periods more room.
UpdatedInfrastructure
Status page • Vehicle and company lookup rows now update on their own
The two External registries rows on the public status page (status.hrcluster.app), vehicle lookup via Statens vegvesen and company lookup via Brønnøysundregistrene, now change colour on their own. When a registry is unavailable, or keeps failing on and off, its row shows Degraded performance, and it returns to Operational once the registry has recovered. Until now both rows always read Operational and only their history bars recorded problems. A registry outage still never changes the overall status banner at the top of the page, and when a lookup is unavailable every field can still be typed by hand.
Technical focus: Automatic status turned on for registry-svv and registry-brreg (migration 708) after a seven-day evidence window with no failures attributable to the collector. Both project degraded only and sit in a group that does not affect the overall banner; automatic incidents stay off.
UpdatedAccreditation
Accreditation • Each type shows its own phases and periods in the detailed PDF
In the detailed Accreditation PDF, each type row now shows the phases that type covers and the periods within them, instead of repeating the person's whole run on every row. A rigging type, for example, shows only the periods before and after the event. Records that use dates rather than phases keep their periods on every row. On the records page, the Type column lists every type the person holds.
Technical focus: A person's phases are split over their types by the phases each type is set up for; a phase no type covers is named under the first type rather than dropped.
UpdatedVehicles
Vehicles • Gate control shown with the vehicle, and clearer list PDFs
The vehicle's gate control is now always stated with the vehicle, in both list PDFs and on the records page, as it is for deliveries: the control itself, None when none is required, or Not registered when nothing has been set. In the PDFs the registration number sits at the top of the Vehicle column, giving Access and Parking more room. A rejected access or parking request shows its status without listing periods, and the simple PDF says No access or No parking instead of the reason, which the detailed PDF keeps.
Technical focus: The control text uses the same wording as Deliveries.
FixedVehicles
Vehicles • The desk shows each validity period on its own
When a vehicle held two separate periods, for example in two phases with a phase in between, the vehicle desk showed them as one run from the start of the first to the end of the second, as if the vehicle had access in the gap too. Each period is now shown on its own. Periods that follow straight on from each other, within a minute, are still shown as one.
Technical focus: The desk reads a vehicle's periods through the same merge rule as its detail page, request summary and list PDFs, with a one-minute tolerance matching Accreditation.
UpdatedProduction PlanScheduling
Production plan • Plan and crew list PDFs print every value in full
The Production plan PDFs (the plan, the supplier report, the checklist and the morning briefing) and the crew list and shift overview PDFs no longer cut long text short with "...". Long values wrap, and a row too tall for one page continues on the next page, which opens with the item's title marked as continued. Rows that already fitted look exactly as before.
Technical focus: No user-entered value in these PDFs is replaced by an ellipsis to keep a fixed row height; pagination absorbs the extra length. Each PDF keeps its own layout.
FixedUI
Appearance • Warning labels are readable in the Light theme
In the Light theme, warning labels, pending-review labels, competence states marked as expiring and medium-priority labels used orange text on a pale orange background that was hard to read. They now use a darker text colour that reads clearly in both Light and Dark.
Technical focus: The four label styles read the theme's warning text colour instead of the warning accent; a check computes the contrast of every label style in both themes.
UpdatedPowerMobile
Power • The public Power Analytics toolbar keeps each label with its control
On the public Power Analytics page, the source picker, the range buttons and the links above them now share one height. On a phone the Range label used to end one line while its buttons started the next; each label now stays with its control, and the source picker fills its row. Larger screens are unchanged.
Technical focus: The public page uses the same toolbar height rule as the workspace toolbars.
UpdatedAccreditation
Accreditation • Affiliation instead of Supplier, and the list PDFs grouped per person
Accreditation now says Affiliation where it said Supplier: on the records list, the desk and the issue dialog. It shows the linked supplier's name, or the affiliation typed on the record when there is no supplier. Places that really are about a supplier relationship, such as choosing the supplier on a record, still say Supplier. The list PDFs no longer print the email, and several types are listed as "A, B". The simple PDF shows each person by name; the detailed PDF puts the phone under the name and lists each type on its own row, grouped per person, with its issuance status, every period written out in full and that type's allowed areas underneath.
Technical focus: One rule decides the affiliation shown everywhere: the linked supplier's name, else the record's own affiliation. The detailed PDF prints a row per type because allowed areas belong to types, which keeps the areas exact.
FixedVehicles
Vehicles • Opening a vehicle's access check on the desk no longer logs a scan
On the vehicle desk, opening Access for a vehicle added a scan to its history even when nobody acted on it. Opening it is now only a look-up. A scan is recorded when the operator takes an action, and it is checked again at that moment and carries the checkpoint entered. The action formerly called "Log check-in" is now "Log passage", which is what it records at a checkpoint. Scans made with the scanner are still logged every time.
Technical focus: The desk's access dialog asks for a preview that writes nothing; the scan history row is written only by the action, re-evaluated then and proved against the account and active project.
UpdatedAccreditation
Accreditation • The accreditation list PDFs show every value in full
In both Accreditation PDFs, long names, organisations and access details used to be cut short with "...". They now wrap onto the next line, so nothing is hidden. The layout of the PDFs is otherwise unchanged.
Technical focus: The Accreditation PDFs render through the shared table renderer, and no PDF export truncates a value; long values wrap and rows grow instead.
FixedProduction Plan
Production plan • A shift or meal slot moved to another project takes its plan row along
When a shift or a catering meal slot was moved to another project, its row stayed on the old project's plan and the new project did not get one. The same plan row now moves with it, keeping its status, priority and labels, and its phase is chosen again for the new project. A shift or meal slot that no longer has a project has its plan row withdrawn, and the row comes back when a project is set again.
Technical focus: The row moves rather than being recreated, because the plan keeps one row per shift or meal slot for good and recreating it would lose its work runs and history. Only the phase is project-specific, so it is derived again for the destination project.
UpdatedUIMobile
Lists • Phone toolbars keep the PDF button and the checklist arrows together
On a phone, the Production plan and supplier list toolbars used to leave the PDF button alone on a line when a filter was active. The period buttons now take their own row and the other buttons share the next one. On the checklist, the arrows on either side of the period buttons no longer split onto separate lines on the narrowest phones. Larger screens are unchanged.
Technical focus: On narrow screens these toolbars use a fixed arrangement of rows instead of wrapping freely.
UpdatedVehicles
Vehicles • The vehicle list PDFs show the access and parking actually held
Both Vehicles PDFs now use the same columns: Plate, Vehicle, Contact, Affiliation, Access and Parking. The vehicle type moved under the organisation in the Affiliation column. Access and Parking show the approval state together with the periods and places the vehicle actually holds. The simple PDF shows the first period and how many more there are; the detailed PDF lists every period and adds the vehicle details, the contact phone, dangerous goods and the gate control. Nothing is cut short: long values wrap and long lists continue on the next page.
Technical focus: The PDFs read the vehicle's access and parking the same way its detail page does and render through the shared table renderer, so no value is ever truncated. A place that has since been archived still prints its name.
UpdatedVehiclesSuppliers
Deliveries • The delivery list PDFs are easier to read
Both Deliveries PDFs now use the same columns: When, Delivery, Supplier, Driver, Vehicle and Control. The arrival time sits in the When column with the delivery reference and whether it is a delivery or a return underneath. The status column is gone, and each delivery's gate control is shown in both PDFs. The detailed PDF adds the description and instructions when there are any, the location and responsible, the driver's phone, the vehicle details and dangerous goods. Nothing is cut short any more: long values wrap, and long lists continue on the next page with the column headings repeated. The supplier list PDF uses the same layout rules.
Technical focus: One shared table renderer lays out the Deliveries and Suppliers PDFs; every cell and heading wraps to its width and a row that does not fit moves to the next page, so no value is ever truncated.
FixedInfrastructure
Status page • A reopened incident shows on the status page again
When an incident that had been resolved was reopened by posting a new update, it stayed off the public status page. It now appears again as soon as the update is posted. Components that were hidden from the status page but linked to an incident also stay linked when the incident is saved.
Technical focus: Posting an update applies the same resolved rule as saving the incident: a closing status keeps the first resolved time, any other status clears it. Actions on an incident that no longer exists are refused before any write.
SecurityUsers
Users • GDPR erasure removes every personal detail it lists
Erasing a user under GDPR now removes every personal detail the confirmation lists: national ID, date of birth, sex, address, bank and invoicing details, emergency contact, employee number, internal notes, food & allergy answers and clothing sizes. Any open request links that could write those details back are cancelled. The name, email and phone are anonymized too, unless the person is still a member of another workspace. The confirmation states what is erased and what is kept: the hourly rate and historical records such as sessions, shifts, contracts, payroll runs and uploaded documents. Users erased earlier have had the same details removed.
Technical focus: One erasure writer classifies every profile column as erased or retained and runs in a single transaction scoped to the account and membership. Shared configuration such as clothing items and sizes is never touched. Migrations 704 and 706 apply the same rules to memberships erased before this change.