Version 9.1.265 (20 October 2026) Communication Portal Resolved grpcCache (#156428) Problem Missing vary by user for alerts Solution Added vary by user UI change on system alert card (#156337) Problem Request to change the Card and move buttons to the header Solution Add UI change to move to the card header Dashboards Resolved grpcCache on widgets (#156603) Problem Methods not busted on query data Solution Added bustable methods to clear cache Data Warehouse Fixed Event Scheduling Course Name (#156860) Problem Course Name was incorrectly populated with the Course Type value instead of the actual Course Name. Solution Updated the source mapping to use `TrainingInterventions.Description`, falling back to `EventSchedules.CourseDetail` when unavailable. Also updated the incremental filter to capture Training Intervention changes. Removed unused steps within CreateTables SSIS Package (#156923) Problem Unused steps are still available within CreateTables SSIS Package steps Solution Removed unused steps within acc tables Removed unused steps within jp tables Removed unused steps within pdm tables Removed unused steps within lm tables Removed unused steps within comu tables HR Processes|V9-Ruleset Management Add custom spritesheet support for landbot bubble (#156958) Problem All clients have the same generic landbot bubble icon. Solution Allow clients to upload a spritesheet to have custom and dynamic landbot bubbles and add custom icon and bot name functionality. Display escalated on cards if the request was escalated. (#156779) Problem Approval level shows as 'Approved' when the user has escalated a request   Solution Display escalated on cards if the request was escalated instead of approver Identity and Authorisation Fixed 405 error after logging in with an emailed or SMS one-time pin (#157262) Problem After entering the one-time pin sent by email or SMS, users saw an error page instead of being logged in.   Solution Logging in with an emailed or SMS one-time pin works again, and a pin that has been used still cannot be used a second time. 24 minutes ago Validate alerts and sanitise notification popups (#156614) Problem System-alert writes did not enforce their input contracts, and notification popups forwarded unsafe HTML.   Solution Validate alert fields, schedules and enabled-channel content before upload or persistence, preserving incomplete drafts and supported placeholders. Validate CC/BCC literal addresses with comma and semicolon separators. Reject empty tables and media whose source is removed by sanitisation. Reuse the HTML sanitisation helper for stored rich content and popups. Popups use an explicit formatting/link allowlist that removes forms, controls, frames, event handlers and inline styles. Sanitise fully expanded system-message bodies before persistence, covering recipient creation, updates and direct notifications while preserving safe formatting and subjects. Reuse the recipient message object to avoid repeated sanitisation. Job Profiler Resolved grpcCache on appointment dates (#156841) Problem Appointment history data return is not busted when dates are updated   Solution Added bustable methods Master Data Fix master data field name translations not applying (#156488) Problem Translations entered for library field names on the Language screen did not show on the Master Data list headings or on the Add and Edit pop-up. - On the Language screen, opening a library field gave an error, and the translation pop-up for most fields stayed on "Loading...". Solution Translated field names now show on the Master Data list headings and on the Add and Edit pop-up. The error shown when a duplicate master data item is added also works again. - The Language screen opens library fields without the error, and the translation pop-up loads for every field. Org Structure Resolved incorrect translation key used (#156972) Problem Incorrect translation key used   Solution Added correct translation key Resolved people modal selector not showing in front of backdrop (#156411) Problem On the Add Person page, the manager picker was being loaded inside the Add Person modal itself. Because of that, the dark overlay could appear above the manager picker instead of behind it, making the picker visible but not clickable.   Solution I changed the manager picker so that, when it opens, it is moved out of the Add Person modal and placed at the main page level. That lets the layers stack correctly: Add Person modal stays behind.  The overlay sits between the two modals.  The manager picker appears on top and can be used normally. Resolved reporting lines being returned (#156972) Problem A "User" user reporting line is being returned in that call being made instead of the actual reporting lines for the ruleset   Solution Added change to take a list of field sections for self-service settings and build reporting lines from that People Management Restore Additional Self Service Items in My Profile (#155020) Problem The Additional Self Service Items option was removed from My Profile following a misunderstanding, preventing users from accessing it.   Solution Revert the removal and restore the option with its previous availability rules.  Performance Management Fix new ruleset creation stuck on Performance Management setup (#157262) Problem Creating a new ruleset never finishes. It stays on "Creating Ruleset" while Performance Management and Notification Confirmation wait to be set up.   Solution Copy the KPI edit and rating lock settings correctly, so the Performance Management setup copies across and the ruleset completes. Report Builder Resolve grpcCache bust (#157266) Problem Bustable methods not defined for query methods   Solution Added bustable methods Ruleset Management Resolved virtual tour reset does not show again (#156946) Problem When Reset do not show is clicked, it throws virtual tour does not exist, as the default one of ruleset 1 is shown,   Solution Add a change to delete the entry within the correct ruleset, and if on ruleset 1, do a join to ensure it is only for the ruleset users System Access Allow V8 popups to keep window.opener on legacy iframe host pages (#157058) Problem V8 selection popups (e.g. PathwaySelection) opened from the V8 iframe could not call back into the page because COOP same-origin set window.opener to null.   Solution Send COOP same-origin-allow-popups on /App/AdditionalService and /Account/People/Edit. All other pages still send same-origin.