beqom PaySuite 19.1 - Detailed release notes
This article lists the new features that have been added to the platform, as well as the bugs that have been corrected in the intermediate 19.1 release of the PaySuite application and in the subsequent patches.
19.1
Deployment to staging environments: January 6th, 2026
Deployment to production environments: January 8th, 2026
| Type | Issue key | Module | Description | |
|---|---|---|---|---|
| Zendesk | Jira | |||
| AC-10526 | Pay Transparency | Document preview was enhanced to let users open PDF documents in a new browser tab with a single click. The option is available when previewing documents from Planner (for managers and HRBPs), communication documents and summaries, and attached documents in pay information request views. This gives users more flexibility when reviewing multiple documents at once. | ||
| 143219 | AC-16689 | Performance Management | Goal weight editing permissions were enhanced to give managers more granular control. Goal plan creators can now enable a setting that lets managers edit goal weights for their direct reports only. The Worker option in the audience settings was renamed to Owner and is selected by default. When the manager editing setting is enabled, managers can modify individual goal weights for their direct reports through Planner > Goals and Passport > Goals > Shared goals, but cannot enter the general goal editing mode to change overall goal weights. Goal Admins retain full editing capabilities for both organizational and individual goals across all interfaces. | |
| AC-17195 | Performance Management | An error was corrected with the Privacy guidelines link in the Goal Genius widget during goal creation. Clicking the link returned a 404 Not Found error instead of opening the guidelines page. The link now opens in a new tab, allowing users to access policy information. | ||
| AC-18128 | Performance Management | Weight editing clarification indicators were added to the Planner and Passport interfaces. When managers edit weight values from goal tables, banners and info icons now indicate that the changes apply to specific workers rather than to organization-wide goals. The indicators appear when weight functionality is enabled for the plan, manager editing permissions are active, and organizational goals are present in the list. They help managers understand that they are making individual-level adjustments. | ||
| AC-18356 | Authorization | An error was corrected during worker ingestion with invalid email addresses. When the same worker was ingested with an invalid email address the second time, the system incorrectly returned a success response instead of validating and rejecting the invalid email. Email validation is now consistent on all ingestion attempts. | ||
| AC-18405 | Pay Transparency | A new public API endpoint was introduced to retrieve pay information request statuses and attached documents for closed requests. External HRIS and client ticketing systems can now synchronize with beqom by retrieving the latest request status, resolution metadata, alerts, and PDF documents (closed requests only). The API supports single and bulk retrieval with filtering by request ID, reference number, worker external ID, status, alert level, and date ranges. This allows client platforms to display statuses and store files without requiring worker access to PaySuite. The endpoint uses bearer token authentication with required scopes, audit logging, and consistent data transfer formatting. | ||
| AC-18451 | Pay Transparency | An error was corrected in the Pay information widget where text areas with a link at the end displayed an additional scroll bar when the page was opened in edit mode. Text areas with end-positioned links can now be edited without unwanted scroll bars. | ||
| AC-18925 | Performance Management | An error was corrected in the Goals section of Passport. When a goal had a weight of 0, the entire Weight column disappeared from the goal list, even when weight settings were enabled for the goal plan. The Weight column now displays consistently regardless of whether individual goal weights are set to 0. | ||
| AC-20154 | Pay Intelligence | A pay analysis information page was added to display pay equity data in an interactive format. Users can view full details including the adjusted gender pay gap by demographics, number of raises, and total cost of raises through information widgets at the top of the page. | ||
| AC-20160 | Pay Intelligence | Column configuration was added to the pay analysis information page. Users can now customize the table view by hiding or showing columns without back-end calls and reorder columns with immediate effect. Personal visibility and user access management have separate controls, and configuration is persisted through a Save configuration button. Columns are organized into locked and unlocked sections, with front-end-created columns (Worker, LineManager, CompManager) always displayed first. The functionality is restricted from Reader role users. | ||
| AC-20204 | Pay Intelligence | Pay analysis information display setting endpoints were added to the back end. A GET endpoint returns the list of enabled columns per analysis and user, and a PUT endpoint upserts those settings. Display preferences (including enabled columns) are now stored per analysis and per user, supporting dynamic column lists based on the snapshot data model used in pay analysis workflows. | ||
| AC-20309 | Pay Intelligence | Dataset upload error logging and status tracking were implemented in the back end. A new GET endpoint allows administrators to check the upload status, including progress state (in progress, done, failed) and detailed error messages or warnings. Error messages from external services and internal processes are now stored and translated into contextual information relevant to PaySuite. Data consistency improvements skip rows containing null values during export and prevent empty datasets from being processed. All upload-related endpoints now return status information, and analysis endpoints handle only successful uploads. | ||
| AC-20769 | Pay Transparency | New filters were added to the Pay information requests list in Planner. HRBPs and users with the Read-only role can now filter requests by Creation type (API import or workers from the digital reward statement in Passport > Compensation). A Created by filter also enables searching by partial or full creator name or worker ID. Multiple selections within a field use OR logic, and different fields are combined using AND logic. Applied filters appear as removable tags with a counter, and users can clear all filters at once to return to the full list. | ||
| AC-20778 | Compensation Management | Vite was upgraded from 5.4 to 7.2, including the React plugin from 4.7.0 to 5.1.1. The upgrade included configuration enhancements across multiple files. The HMR overlay was added for improved debugging, build targets were set to "baseline-widely-available" for better browser compatibility, the chunk size warning limit was raised to 1000 KB, and dependency configuration was optimized for development and testing. Hot Module Replacement, production builds, and comparable or improved bundle sizes are maintained without build warnings. | ||
| AC-20784 | Compensation Management | Vitest was upgraded from 3.2.4 to 4.0.12 as part of the Phase 5 major update, covering three core packages: vitest, @vitest/coverage-v8, and @vitest/ui. The migration reviewed breaking changes, updated configuration files and test utilities, refreshed test/setup-test-env.tsx, and audited deprecated APIs in test files. All test suites, coverage reports, the CI pipeline, and the test UI were verified to work correctly. | ||
| AC-20787 | Compensation Management | Storybook was upgraded from 8.5.8 to 10.0.8 as part of the Phase 6 major update, covering six core packages: storybook, @storybook/addon-a11y, @storybook/addon-links, @storybook/nextjs, @storybook/react-webpack5, and @storybook/addon-docs. The upgrade brings improved ESM compatibility, updated import paths, and enhanced addon functionality. Imports from deprecated packages were updated, and the deprecated @storybook/addon-blocks was removed, now belonging to essentials. All story files were validated, visual regression tests were executed, and build processes were verified. | ||
| AC-20834 | Data Foundation | Email notification configuration for Data Foundation failed ingestions was moved under the Data Foundation group, allowing administrators to configure email templates for failed ingestion notifications in a more organized location. | ||
| AC-20916 | Compensation Management | React Router packages were updated from 7.6.2 to 7.9.6 to incorporate the latest bug fixes, performance improvements, and new features. Six core packages were upgraded: react-router, @react-router/dev, @react-router/express, @react-router/node, @react-router/remix-routes-option-adapter, and @react-router/serve. The update affects the core routing system, development tooling, server implementations, build utilities, and the Remix routes adapter. | ||
| AC-20957 | Authorization | The analytics authorization endpoint was extended with dynamic ABAC powered by Cerbos. The new implementation replaces hardcoded logic with generic policy specifications that combine with user attributes (organization level, country, job function, custom fields) to generate dynamic access filters. Backward compatibility with legacy override mechanisms (ACLs, GrantFullAccess flag, All Company access rules) is maintained. | ||
| AC-20968 | Pay Intelligence | PayAnalytics role permissions were extended to additional Workbench menu items. PayAnalyticsAdmin, PayAnalyticsEditor, and PayAnalyticsReader roles now have access to gender-options, data-models, the currency lite list, and the Data Foundation snapshot list, allowing these roles to view and edit Pay Analysis Data Mapping. | ||
| AC-21219 | Data Foundation | A deletion endpoint for CSV files was added to the Data Foundation API. The endpoint includes security authentication rules and gateway exposure, allowing users with the Support or DataFoundationAdmin role to delete CSV uploads. | ||
| AC-21229 | Performance Management | Notification scheduler settings were removed from the user interface. The Scheduling menu item is no longer visible in the left navigation, and direct URL access to schedule settings now redirects appropriately, removing a non-functional feature. | ||
| 142568 | AC-21297 | Performance Management | An error was corrected regarding text editing in the feedback textbox after adding and removing links. Adding a link to feedback text and then removing it caused the text cursor to malfunction, preventing editing at the cursor position. Feedback text can now be edited at any cursor position even after links are manipulated. | |
| AC-21391 | Compensation Management | Payout curve deletion was implemented to allow proper cleanup of unused or obsolete curves. Compensation Admins can delete their own draft payout curves, and Global Compensation Admins can delete any payout curve not currently in use by bonus plans. The system applies role-based access controls, confirmation dialogs for destructive actions, and protection against deleting curves referenced by other entities. When a curve is in use, users see a detailed list of dependencies that must be removed first. The behavior is consistent with the existing deletion patterns for bonus plans and compensation rounds. | ||
| AC-21457 | Data Foundation | The ISO.4217.CurrencyCodes library was removed due to GPL-3 license restrictions and replaced with direct SQL insertion for currency seeding. Currency data is now populated through predefined database records using UPSERT operations based on the existing currency table, removing the external library dependency. | ||
| AC-21484 | Pay Transparency | Three new alert types were added for closed pay information requests to help HRBPs identify follow-up actions: Closed without document (request closed without an attached document), Not released to worker (document added to a workflow-enabled communication round but not yet released), and Document deleted (attached document later removed from the communication round). Alerts appear in the Alert column of the Pay information requests list and are included in the Alerts tile count. Priority handling ensures only one alert displays per closed request at a time. | ||
| AC-21512 | Pay Intelligence | Worker materialized view refresh frequency was increased from once daily to three times daily to improve Power BI report data freshness. Worker data is now refreshed at 02:00, 10:00, and 15:00 UTC, each one hour before the corresponding Power BI report refresh. The change applies to all tenants. | ||
| AC-21542 | Authorization | ABAC attribute evaluation for IncludeEmployeeId and ExcludeEmployeeId was extended to apply to all Worker records regardless of user account provisioning status. Previously, these attributes applied only to Workers with provisioned user accounts; they now evaluate against the complete Worker population. This ensures that Worker populations generated for compensation rounds correctly apply inclusion and exclusion rules even for Workers without provisioned accounts, providing consistent authorization behavior across services while maintaining backward compatibility for existing customers. | ||
| AC-21557 | Pay Transparency | Additional filters were added to the Pay information requests list in Planner. HRBPs and users with the Read-only role can now filter by resolution date, communication rounds, and extended status options and alert types. Multiple selections within a field use OR logic; different fields are combined using AND logic. Applied filters appear as removable tags with a counter, and users can clear all filters at once. | ||
| AC-21590 | Data Foundation | Authorization controls were added to the customization feature. Security Admins can now assign the Localization Admin role to specific users, allowing them to manage and review custom translations and cultural settings across the product. Users with the LocalizationAdmin, Configurator, or Support role can access the Custom Labeling UI in Workbench to manage custom translations and download or import translation files. Authorized users can also access the Cultural Settings UI to enable or disable the localization toggle and modify configuration options; Read-only users can only view culture code information. | ||
| AC-21676 | Compensation Management | Reminders configuration was added to the Round Management portal for compensation rounds. Compensation Admins and Global Compensation Admins can now create, edit, and view reminders for compensation rounds in Ready or In progress status through a new Round reminders tab. Creating a reminder includes setting the reminder name, selecting target populations (Comp Managers and/or Comp Managers +1), configuring multilingual reminder messages with notification bell and email options, and using dynamic fields such as recipient information, compensation round details, and admin contact information. Created reminders are saved in Draft status. | ||
| AC-21682 | Pay Transparency | Anonymization rules based on minimum count thresholds were implemented for Article 7 PDF letter generation. Administrators can now configure the system to automatically hide category-level average compensation values in generated PDFs when the number of workers in the corresponding population (overall, male, or female) falls below a defined threshold. Anonymization is applied during merge key resolution, replacing numeric values with configurable placeholder text when population counts are insufficient to preserve worker anonymity. This keeps pay information compliant with confidentiality and data-protection rules while maintaining transparency. | ||
| AC-21751 | Compensation Management | A round reminder management system was added for Compensation Admins. A new Round reminders tab lists all reminders with columns for Name, Recipients, Sent date, Owner, and Status. Reminders can be searched by name and filtered by recipient type (any, Comp Managers, Comp Managers +1) and status (any, Draft, Sent). Available actions depend on round status: for Ready and In progress rounds, users can edit, duplicate, or delete draft reminders; for Closed rounds, users can view and delete draft reminders. The interface shows an empty state with a Create reminder button when no reminders exist. | ||
| AC-21783 | Performance Management | The Shared goals feature was migrated to PostgreSQL. The existing functionality is maintained, including field display, date ordering with newly created goals appearing first, status filtering, user permission handling, and shared goal creation. ShareWith was replaced by ShareWithOrgItemsIds and ShareWithUsersIds to improve data organization and access patterns. | ||
| AC-21787 | Performance Management | The align search functionality was migrated to PostgreSQL, enhancing the search infrastructure for goal alignment. | ||
| AC-21800 | Compensation Management | The tooltip, drop-down, and pop-up positioning system was migrated from react-popper to floating-ui, as react-popper is no longer actively maintained. The change covers all interactive elements that display contextual information, including select dropdowns, menu buttons, and tooltips. | ||
| AC-21807 | Compensation Management | Data Foundation model messaging was migrated to the event table to provide a consistent alerting process across compensation entities, aligning with the event-based approach already used for bonus plan alert management. The new event table is now populated with Data Foundation events, and the front end retrieves events from the round notification endpoint based on the data model alert type. Data ingestion from Data Foundation continues to alert all rounds with attached models as before. | ||
| AC-21868 | Data Foundation | IAM user loading was enhanced to support systems with more than 10,000 users. A new GET endpoint supports optional filtering by full name (containing a match) and by specific user GUIDs through userId parameters, removing the previous 10K user limit that affected customers with larger user bases. Administrators can now see and select specific users in email notification configuration even when the system contains more than 10,000 users; the API returns IdentityId, FullName, a profile image, and job title without requiring pagination. | ||
| AC-21890 | Performance Management | The Goal plan drop-down list was updated to improve performance and data accuracy. The back end now uses goal population snapshot data instead of Elasticsearch queries when determining which goal plans and time periods to display. The change affects GetGoalsListAvailablePlansQueryHandler, which manages how users see available goal plans and time periods, while preserving the business logic for plan availability filtering based on user permissions, organization hierarchy, and existing goals. | ||
| AC-21907 | Compensation Management | Data Foundation goal message migration to the event table was implemented for bonus plan alerting. The system now uses a consistent event-based approach across compensation entities. Goal data ingestion from Data Foundation alerts all bonus plans that have an attached goal plan, and the front end uses a new endpoint linked to bonus plans to retrieve notifications. The existing goal plan notification functionality is preserved. | ||
| AC-21931 | Data Foundation | Data integrity protection was enhanced to prevent deletion of already deleted records. The system now blocks deletion requests for records that have been removed, preventing duplicate entries with the same InstanceHash in the database. | ||
| AC-21968 | Compensation Management | The Compensation element drop-down list width in the Guaranteed amounts configuration was standardized to match other configuration screens such as Guidelines, Budget, and Eligibility, improving visual consistency. | ||
| AC-21994 | Data Foundation | Translation functionality was enhanced to let custom labels override standard translations per culture. The translation endpoint now returns merged translations combining standard and custom labels when available, and web applications display custom labels when they exist and the localization flag is enabled. Culture endpoints provide richer culture details, and the underlying services were updated to consistently use domain entities with improved CSV import/export capabilities, including cancellation support. | ||
| AC-22014 | Data Foundation | LaunchDarkly feature flag evaluation was improved to ensure consistent tenant-specific targeting regardless of tenant code casing. The system now normalizes tenant codes to lowercase before passing them to LaunchDarkly's user context, resolving cases where tenant codes stored in lowercase in the database did not match uppercase codes received via HTTP headers from internal service calls. The change affects services using IFeatureFlag or ILightFeatureFlag, including Gateway, Data Foundation, Compensation, Machine Learning, and Currency. Tenant feature flag values are now consistent whether the tenant code arrives in uppercase, lowercase, or mixed case. | ||
| AC-22040 | Data Foundation | The test API was extended with additional test cases to improve coverage and reliability. Acceptance tests were added or rewritten in the API tests project to strengthen validation of system functionality. | ||
| AC-22082 | Pay Transparency | Digital reward statement compensation widgets were migrated from the legacy CompensationHistory entity to the new ContractedCompensation entity. The migration affects the compensation summary, compensation breakdown, salary position, historical compensation, and overview of salary changes. Filtering rules, cutoff date logic, currency validations, compensation element selection, and hierarchical compensation rules are preserved, and users see no change in widget behavior or appearance. The same compensation elements (Total Comp, Total Direct, Total Indirect, Base Salary) and validation logic are maintained. | ||
| AC-22168 | Compensation Management | The Edit and Create pending draft buttons were removed from the Validation drawer on the Round Management page. This eliminates corner cases that could cause bugs when working with rounds in Ready or In progress status, whether or not existing pending drafts were present. | ||
| AC-22203 | Compensation Management | An error summary component was added to the Payroll data drop feature. Field-level error messages that previously appeared in red text below individual items are now consolidated into a centralized summary that enumerates errors by order, updates dynamically as fields become valid, and is only displayed when errors are present, giving users a clearer overview of validation issues during payroll processing. | ||
| AC-22206 | Compensation Management | An error summary component was added to the Statement generation functionality. Error messages that previously appeared in red text below individual form fields are now shown in an organized, enumerated list that displays only active validation errors and clears them as fields become valid. The component covers required fields including rule name, communication round, document template, file name, and distribution rule criteria. | ||
| AC-22226 | Performance Management | An error was corrected in the career development attachment display. The Download button was not visible in view mode, and attachment file names with long text overflowed beyond the frame boundaries in view and PDF modes. Users can now access the Download button when viewing career development attachments, and file names properly wrap within the display area in both modes. | ||
| AC-22257 | Pay Transparency | An error was corrected with long file names without spaces in communication round tooltips. When documents with long, space-less names were imported, the name text displayed outside the tooltip boundaries in both the round editing interface and Planner > Documents. Long file names without spaces are now contained inside tooltips and truncated with an ellipsis when necessary. | ||
| AC-22258 | Data Foundation | In-app notifications for data upload failures were enhanced to display links instead of failure lists. When data ingestion fails, users now receive a notification with a link to the specific ingestion detail page in Workbench > Data Management, providing quicker access to failure information than the previous email-style notifications. | ||
| AC-22267 | Pay Intelligence | The PayAnalytics worker lookup was updated to support configured worker ID fields. The GetFullAnalysisInformationAsync endpoint now checks the configured EmployeeId field and extracts the ID from ModelData JSON before falling back to the standard WorkerExternalId. Worker details and snapshot data are now correctly populated for datasets where employee IDs are stored in specific fields within the JSON ModelData, producing more accurate analysis details. | ||
| AC-22298 | Authorization | The IAM service was updated to interpret null PerformanceEligibility values in the Worker entity as FALSE. The field was previously mandatory, which created data loading friction for customers not using the Performance Management module. The field is now optional, and null values are treated as FALSE, allowing seamless data ingestion while maintaining compatibility with the module. | ||
| AC-22307 | Authorization | Support user authorization was updated to use a new access control mechanism. Support users are now assigned GrantFullAccess permissions instead of the previous SubjectOrgLevelIntId attribute. The change applies to both new and existing Support user records, ensuring consistent authorization behavior across all Support accounts. | ||
| AC-22323 | Data Foundation | An error was corrected regarding custom label file uploads. Custom labels with more than 1,000 characters caused a database constraint error and an HTTP 500 response. Users now receive proper error handling instead of server errors during label file uploads. | ||
| AC-22324 | Data Foundation | The PerformanceEligibility field in the Worker entity was made optional (nullable) to reduce data loading friction for customers not using the Performance Management module. The field was previously mandatory for all worker records; since it is only relevant to Performance Management, it can now be left empty during data ingestion. The change applies to both API and CSV ingestion (UI and SFTP). The system interprets null values as FALSE to preserve the existing Performance Management functionality. | ||
| AC-22329 | Data Foundation | An Audit trails tab was added to the side drawer for users with professional roles (LocalisationAdmin, Configuration, Support). The tab displays detailed audit logs per upload request per language to validate the status of each request, showing who initiated the upload (first and last name), the upload date formatted according to cultural settings, the number of labels updated and skipped, and a button to view full JSON log details. | ||
| AC-22332 | Data Foundation | Referential integrity checks were added to the data deletion workflow for DataTypes. Based on the latest revised date of referencing DataTypes, the system now validates whether a DataType is referenced by other DataTypes before allowing deletion. When references exist, deletion is blocked and users receive a detailed error message that includes the UniqueIdentifier of the DataType being deleted and a list of all referencing DataTypes identified by their UserMeaningfulIdentifier. The validation applies to ReferenceableEntity and Enum types, preventing accidental deletion of referenced data while still allowing deletion when no references exist. | ||
| AC-22335 | Data Foundation | Modeler snapshots and populations were updated to exclude deleted records from results. Deleted worker employment records, employment history, and compensation elements no longer appear in generated snapshots or populations. Only active records with effective dates prior to the snapshot effective date are displayed. | ||
14366 144359 | AC-22449 | Performance Management | The feedback button display logic was updated for Check-Ins in both Passport and Planner. When the feedback feature is disabled at the tenant level, the Give feedback button is now hidden from Behaviors widgets in regular and performance check-ins. When there is insufficient data to display the behavior wheel, the text now reads "There aren't enough data to display the behavior wheel." | |
| AC-22452 | Performance Management | The JSON schema generation library was changed to address licensing compatibility. Newtonsoft.Json.Schema (AGPL-3.0, incompatible with commercial software) was replaced with JsonSchema.Net.Generation (MIT). This change maintains the existing Goal Genius functionality, which uses JSON schema generation to guide AI response structure in OpenAI prompts. It also ensures full compatibility with commercial licensing requirements. | ||
| AC-22456 | Compensation Management | Bonus plan duplication was enhanced to preserve alerts. When a bonus plan containing an alert is duplicated, the duplicate now includes the same alert, allowing users to refresh goals within the draft to get the latest version of the goal plan and goals. | ||
| AC-22460 | Data Foundation | Custom label support was added to versioning. Users can now apply custom labels when managing version control, providing more flexible and descriptive options beyond standard numeric or date-based schemes. | ||
| AC-22463 | Data Foundation | Event notifications were added to the localization API to notify systems when language content is modified. LocalizationChangedEvent is published when the global localization version is updated during API startup, and TenantLocalizationChangedEvent – when custom labels are imported for specific tenants with actual changes. The events are published via MassTransit and can be monitored in Datadog, allowing downstream systems to respond automatically to localization changes and keep language content synchronized across the platform. | ||
| 144824 | AC-22481 | Data Foundation | An error was corrected regarding creating population criteria with the organizational tree selector. Selecting Custom criteria and ALL, adding a block with Entity = Employment, Field = OrganizationExternalID, and clicking the organizational tree button caused the tree to load slowly and freeze the interface. Populations with organizational criteria can now be created without freezing or requiring a page refresh. | |
| AC-22484 | Data Foundation | Several UX enhancements were applied to the localization interface. Administrators can now export more than 10 CSV files for different cultures. The File upload modal was redesigned with new dimensions and a 3-step process guide. Template download supports both single-file downloads and multiple-file selection via a popover with a Download all option. The drag-and-drop upload section was enhanced with better visual hierarchy and a more prominent Upload button, and the upload process now provides visual indicators for uploading, success, and error states, with appropriate user feedback throughout. | ||
| AC-22487 | Data Foundation | Incremental snapshot population validation and instance key format improvements were applied to the data modeler API. Incremental snapshots currently require a population definition to be present before execution. Instance keys in JSON responses are now formatted as strings instead of decimals to properly support unsigned long values in JavaScript: the diff endpoint now returns instance keys such as "3279457086084306571" rather than decimal format. | ||
| AC-22521 | Data Foundation | Tenant-based versioning for the localization cache was implemented to resolve cache invalidation issues when multiple tenants customize translations at different times. Previously, the localization API stored a single global version in Redis, which caused problems because custom label imports were tenant-specific but version tracking did not differentiate between tenants. The system now maintains both standard versions synced from version.json and tenant-specific versions that are incremented during custom label imports, with the version endpoint returning the maximum of standard and tenant versions as the global version. Fallback logic was added for resilience when Redis is unavailable or the cache has been removed: the system falls back to version.json for global versions and to tenant customization flags when tenant-based translations are not found in Redis. | ||
| AC-22550 | Pay Transparency | An error was corrected when HRBP users tried to select a communication round for a pay information request. Navigating to Planner > Pay Information, clicking Edit on a created request, and selecting a communication round returned a 403 error. HRBPs can now select communication rounds for pay information requests without permission errors. | ||
| AC-22556 | Data Foundation | Incremental snapshot functionality was extended to accept a different subscription than the base snapshot. Previously, incremental snapshots had to use the same subscription as their base. Users can now provide an optional subscriptionId when creating an incremental snapshot, allowing it to use a different subscription, provided that subscription exists and has valid population definitions. When applying an incremental snapshot with a different subscription, the base snapshot's subscription is automatically updated to match. This enhancement maintains backward compatibility: when no subscriptionId is specified, incremental snapshots continue to use the base snapshot's subscription. | ||
| AC-22571 | Pay Intelligence | An error was corrected on the pay analysis information page. The page title displayed the snapshot name instead of the analysis name. The correct analysis name is now shown in the page title when navigating to Pay analysis results. | ||
| AC-22629 | Pay Transparency | The Repository pattern was migrated to the Specification pattern to improve code architecture and maintainability. Custom repository interfaces (IUserRepository, ICommunicationRoundRepository, IWorkerRepository, etc.) were replaced with a single generic IRepositoryBase<T>, eliminating boilerplate repository classes per entity. The Specification pattern encapsulates filtering, sorting, and projections in reusable query logic with built-in mapping, simplifies testing by removing the need to mock IQueryable<T> chains, and moves query logic to the Application layer in the Specifications folder for better discoverability and sharing across use cases. | ||
| AC-22630 | Pay Transparency | An error was corrected regarding the use of the Save & exit and Send & close buttons in the Pay Information section. Uploading or generating a document and then deleting it before saving or closing the request left the validation error state in place, preventing the buttons from functioning. Users can now successfully save or close pay requests even after removing previously uploaded or generated documents. | ||
| AC-22635 | Performance Management | Unused API endpoints for individual goal search were removed: /api/goals/individual/search-own and /api/goals/individual/search-own/extended. | ||
| AC-22641 | Data Foundation | In-memory caching for translations with preloading at startup was implemented to improve API response times by eliminating disk I/O and database queries. The enhancement introduces a two-tier caching strategy: TranslationPreloadService loads all standard translation JSON files into memory at application startup using thread-safe data structures, and InMemoryTranslationCacheService caches tenant-specific merged translations with configurable size limits and sliding expiration. The system checks in-memory cache first for merged translations, falls back to preloaded standard translations for non-customized cultures, and performs disk reads only when necessary. Translation data is stored as UTF-8 byte arrays for approximately 50% memory savings, and version-based cache keys enable automatic invalidation when translations are updated. Administrators can configure the maximum cache size and expiration timeouts through application settings. | ||
| AC-22659 | Performance Management | The GetClosestDeadlineListAsync API endpoint was switched for the goal closest-deadline-list functionality. This back-end change updates the service that powers the closest deadline widget in Teams/Outlook, improving performance and reliability for users accessing their upcoming goal deadlines. | ||
| AC-22703 | Pay Transparency | A new warning message component was added for mandatory fields in pay information requests. HRBPs now see a summary of validation errors at the top of the page when filling out a request form. Each error is a clickable link that takes the user to the corresponding field. The component displays specific messages when the communication round is missing during Send & close operations with attached documents, or when no data source or document template is available for document generation or preview. The previous warning pop-up for Send & close without a communication round was removed in favor of this component. | ||
| AC-22719 | Pay Transparency | An error was corrected regarding closing multiple pay requests for the same worker with identical static documents and communication rounds. Closing a second worker's request that used the same static document and attached communication round as a previously closed request resulted in a database constraint violation. Users can now close multiple pay requests in these scenarios, with the second request's document overriding the existing document in the communication round. | ||
| AC-22757 | Data Foundation | An access control error was corrected for users with Read-only roles in Data Management > Custom Labeling. Navigating to this section returned 403 errors and inappropriately displayed audit trails and download options. Read-only users now have properly restricted access, with audit trails and download buttons hidden as intended. | ||
| AC-22763 | Data Foundation | The Performance Management semantic model and associated reports were updated for a data structure change: the ShareWith column in the goal_usage table was replaced with ShareWithOrgItemsIds and ShareWithUsersIds. The update affects the Adoption & Top-level Summaries, Career Development, Check-ins, Comp Rounds, Feedback, Goals, Pay Communication, Performance Reviews, Performance Reviews – Goals, and System Usage reports. | ||
| AC-22774 | Data Foundation | SonarQube code quality issues in the currency API were resolved, improving code quality and maintainability of the currency functionality. | ||
| AC-22793 | Pay Transparency | An error was corrected regarding the use of the Save & exit and Send & close buttons in Planner > Pay Information. The issue occurred when users skipped pop-up warnings about filling mandatory fields, or when validation messages appeared after generating documents. Users can now save and exit pay requests in all conditions. | ||
| AC-22803 | Pay Transparency | An error was corrected regarding filtering pay requests by alerts on the Pay Information page. Selecting None, or combining certain alert types like Overdue/Approaching deadline with Document deleted or Not released to worker, returned invalid filtered lists because alert filtering was split across different parts of the query. HRBPs can now reliably filter pay requests by alert status with results that match the selected criteria. | ||
| AC-22862 | Compensation Management | An error was corrected on the Round reminders tab. Navigating to Workbench > Compensation Management > Compensation Rounds, clicking a round not in Draft status, and accessing the tab returned a 500 error. Users now see their list of reminders or an appropriate empty state when no reminders have been created. | ||
| AC-22891 | Performance Management | An error was corrected regarding performance review submission in Workbench. When managers entered data and submitted reviews with total score calculation enabled, the Achievement summary widget showed a Total score of 0 instead of the calculated value. Performance review total scores are now correctly saved and displayed in the Achievement summary widget. | ||
| AC-22894 | Performance Management | A performance issue in the Goals module that caused failures under high user load was resolved. Workload levels of 10 or more users triggered 500 errors from the getAvailGoalList API endpoint. The module can now handle the required 2,000 user capacity in performance testing. | ||
| AC-22915 | Data Foundation | An error in Analytics Hub was corrected that caused the Adoption & Top-Level Summaries and Check-ins reports to fail during refresh. The reports referenced a Check-in Comments field that had been replaced in the semantic data model. They now reference the updated Check-ins with messages field, so users can refresh and load data in these reports across all workspaces. | ||