beqom v10 HF196 - 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 this release.
Deployment date: NPR: March 19th, 2025 - PRD: March 26th, 2025
Fix version: v10 - HF 196.3 - DB 10.0.989
| Type | Reference | Description | |
|---|---|---|---|
| Zendesk | Jira | ||
| #68689 | BQM-18635 | In the Admin Portal's process grid, users can select all levels with a single click. This improvement brings the same functionality to the WebApp interface. | |
| BQM-24617 | Migration to.NET 8. Changes affect the Analytics , ML and Object services. | ||
| BQM-24870 | Previously, sending notifications to Slack via the Scheduler and Admin Portal was not possible. With this update, users can send messages to Slack seamlessly. It is now possible to create a new notification in Admin Portal, which will have a Send to Slack option which operates the same way as Send E-Mail. A step was added to the scheduler specifically to send Slack messages, also similar to sending e-mail notifications | ||
| BQM-24876 | Slack is now configurable as a provider for notifications. To do so, the Slack token must be retrieved and input WebApp, under Administration > General > Integrations. In the Slack section, provide the token, and then save. | ||
| BQM-24887 | Previously, there was no ability to communicate between APIs unless we have a valid user token, even if the task in question is a system-run task. To correct this, an API token was added so that we can authenticate between APIs without a user token or user session. A new authentication method in File API that does not require a JWT token, but instead only requires a single API key. The following endpoints are affected:
| ||
| #115741 | BQM-24889 | When a report subscription was deleted, all the content related to the element ID was deleted, irrespective of the content type. This issue has now been corrected. | |
| BQM-24948 | After deploying new q appstack, the file service failed because of some missing tables under given conditions. This issue has now been corrected. | ||
| #114201 | BQM-24950 | In the process grid in Web App, the summary was incorrectly calculated with unsaved changes in the sum column after using a quick filter. | |
| BQM-24961 | Unsaved user changes were discarded in the prediction UI. The issue occurred when a token expired, causing the translating function to be recreated. This triggered other functions, which reacted to the recreated function by resetting the base page state, losing any new user changes. The fix was to prevent the functions responsible for creating the base page state from firing when the translating function's reference changes. This ensures that the page state is preserved, and user changes are not lost. The impact of this change is on the Prediction page in the Pay Predictor section under Analysis. | ||
| BQM-24969 | When creating a prediction, there was previously no option to search for an employee by codePayee in the employee drop-down list. To improve the user experience, the ability to search for employees in the drop-down list by codePayee has been added. | ||
| BQM-24970 | When users accessed the Create prediction dialog in the Pay Predictor section, if only one prediction type was available, it was not automatically selected, requiring manual user selection. The fix ensures that when only one Prediction Type is available, it is automatically selected to streamline the process. If multiple Prediction Types are available, no selection is made, and the user still chooses manually. This change impacts the "Create prediction" dialog in the Pay Predictor section under Analysis, improving the user experience by removing unnecessary steps when only one option exists. No changes were made to the database. | ||
| BQM-24999 | The Final Offer and Lump Sum fields are required for the prediction creation process to improve the user experience. Without these fields, the predictions may lack completeness and relevance for the users. The final offer and one-time lump sum fields have been added to the prediction model, allowing users to input and use these values when creating predictions. This change enhances the ML pay prediction feature, making it more accurate and tailored to user needs by factoring in final offers and lump sum payments. The final offer field has been added to the pay_prediction table, and the final offer fields have been added to the Prediction Statement View. | ||
| BQM-25000 | Users now have the option to enter the final salary prediction amount in Pay Predictor. For this purpose, a new tab has been added in which the user can enter, edit and delete the final salary prediction amounts. | ||
| BQM-25001 | User now have the option to enter the final salary prediction amount in Pay Predictor. For this purpose, a new tab has been added in which the user can enter, edit and delete the final salary prediction amounts. | ||
| BQM-25002 | Amounts can now be copied from Adjusted or Raw prediction cards in Pay Predictor. A Copy button was added in both tabs. | ||
| BQM-25026 | The order of the cards in the prediction page was adjusted and is now displayed as follows:
| ||
| BQM-25027 | In the Pay Predictor module, it is now possible to view the entire table of salary ranges without clicking the drop-down menu. The change has been implemented and the salary ranges drop-down menu is expanded by default. | ||
| BQM-25054 | In the pay prediction page, users can now see the employee's GPID in the employee list. The GPID (if any) is displayed in parentheses along with the employee's name in the employee list. | ||
| BQM-25072 | In the Training Mode area of the Model Factory, It is now possible to enable or disable the multicollinearity flag directly from the UI. | ||
| BQM-25078 | In the Prediction page, some fields are now hidden or uneditable, depending on whether the prediction is done for a new hire or an existing employee. | ||
| BQM-25088 | It is now possible to know whether a prediction was scheduled or on-demand, with bulk operations to use the ApiKey authorization method to interact with FileApi. A new column and property was added in PredictionRequest to represent this status. The enum values are as follows: OnDemandSingle = 0, OnDemandBulk = 1, ScheduledSingle = 2, ScheduledBulk = 3, Undefined = 9999 // for backward compatibility. Also added to FileApi client flow to use ApiKey Auth method. A new operationType column has been added to the database to dbo.pay_prediction_request Impacted endpoints
| ||
| BQM-25124 | A new status was introduced for ML models. To address this, the existing "Ready" status was renamed to "Staging." | ||
| BQM-25125 | The functionality of ML was increased models. A new column was added to the ML model in the catalog database and a new status was introduced ML models. | ||
| BQM-25126 | The ML model search function used for prediction was modified to use statuses. | ||
| BQM-25127 | The salary prediction API was modified to exclude prediction models that have not been published; now only models in "Ready" status are taken into account, excluding models in "Staging" and "Draft" statuses. | ||
| BQM-25128 | A new API endpoint was created to make ML models production-ready. | ||
| BQM-25130 | New API endpoints have been added to enable prediction using models in the "Staging" status. | ||
| BQM-25131 | It is now possible to train and save a model without immediately publishing it, allowing further review or testing before deployment. A new "Staging" model status has been introduced, which is automatically assigned after training and saving. Models can be published later via the "Model List" page (play icon for transitional models) or the "Model Summary" page (publish button in the footer). | ||
| BQM-25132 | Insufficient status information was given model training and prediction processes, leading to user confusion during bulk operations when errors occurred without feedback or error messages. To correct this, a message column was added to the bqm_model_trainings table to store the causes of training errors. Prediction request error causes are stored in the Message column of the pay_prediction_request table. A new API endpoint was created for users to visualize the state of the learning and prediction processes and check related error messages: api/ml/model/predictionrequest/status/{predictionRequestUid} | ||
| BQM-25140 | The GetPayeeList query was optimized to improve the performance of the GetPayeeList endpoint following timeouts of the request. | ||
| #118749 | BQM-25147 | Statement generation merge runs did not work in override mode if the document was restricted to a given profile. | |
| BQM-25149 | To improve the performance of the pay prediction feature, a new caching strategy for critical paths was implemented in the prediction flow. The change affects all All Prediction API endpoints and Pay Predictor UI. | ||
| BQM-25157 | When trying to get 80K employees in the payees drop-down list in the prediction UI, there is a slowdown or breakdown of the employee list retrieval endpoint. To correct this, row-level security was removed from the endpoint. | ||
| BQM-25168 | When configuring a data grid with an attached document, if the document name field was not the technical name, downloading the document was not possible. This issue has now been corrected. | ||
| #109755 | BQM-25173 | When setting a conditional validation condition, if an item in the list started with a number and was used in condition validation, the evaluation was incorrect. | |
| BQM-25174 | Multicollinearity was not saved in the database. After this change, the multicollinearity check will be saved during training and returned when retrieving the model APIs. The change affects the training model and model APIs (GET api/ml/model and GET api/ml/model/{id}) | ||
| BQM-25175 | It was previously not possible to configure field visibility in the prediction UI. A new functionality was introduced to address this issue to enable visibility configuration. A new table, ml.bqm_field_configuration, has been added to the catalog database. Impacted APIs:
| ||
| BQM-25176 | It is now possible to configure the default value of fields used in salary prediction. A new table, ml.bqm_field_configuration, has been added to the catalog database. Impacted APIs:
| ||
| BQM-25177 | The visibility of fields in the prediction UI is now configurable. To achieve this, the functionality of retrieving fields based on visibility configuration has been implemented to increase flexibility. Affects the Search Fields endpoint. A new table, ml.bqm_field_configuration, has been added to the catalog database. | ||
| BQM-25178 | It is now possible to use default values when making a prediction in the pay prediction UI. Yes, updates made to the database to support default field values. Impacted APIs
| ||
| BQM-25184 | The performance of row-level security was in the pay prediction UI was not satisfactory and the attempts at improving it resulted yielded no acceptable results. The mechanism to apply row-level security in pay prediction was changed resulting in a performance improvement. | ||
| BQM-25186 | Fitted values for training with payee_id will now be stored in the database to enhance functionality. | ||
| BQM-25188 | General slowness while executing model training was reported. To improve the performance of the feature, a new caching strategy for critical paths was implemented in the model training flow. | ||
| #118247/#120155 | BQM-25196 | Users experienced issues saving an application default language in the application settings. This occurred because there is a missing configuration in the k_parameters table. This problem is now corrected. | |
| BQM-25209 | Multicollinearity was not set for transition models. An option to set multicollinearity for models that are not in draft was added to correct errors. The change affects the api endpoint Get Model. | ||
| BQM-25212 | The ability to translate feature values was hidden until the feature field search functionality is improved. | ||
| BQM-25223 | In the Pay Prediction UI, search field values were searched only for code (ignored translations). Searching for values using translations was improved. | ||
| BQM-25232 | It is now possible to hide specific fields in the Pay Predictor based on the selected prediction type. This ensures that users only see the fields relevant to their selected type, making the interface more intuitive. The changes are applied to the Analysis > Pay Predictor > Prediction page. | ||
| BQM-25237 | The use of default values was restricted to fields visible on the prediction page. | ||
| BQM-25243 | In process grids, list fields based on tables or views and cascaded fields have been added. The behavior is similar to data grids with same limitations regarding Excel export/import. The configuration of the fields can only be done in the database. Cascaded field capability is not supported in Admin Portal, the process will throw an error. A limitation of number of parents for a field is set to 5, warning message will be thrown if more than 5. The localization is not supported as it was for old list type. | ||
| BQM-25245 | It is now possible to perform extra operations via a stored procedure (SP) after saving the Final Offer in the pay prediction UI. For this purpose, the ability to call the Kernel_SP_ML_Post_Final_Offer stored procedure after saving the Final Offer has been implemented. Affected API: ~api/ml/Prediction/{predictionId}/offer. | ||
| BQM-25249 | Long running calls are awaited synchronously from RN.Service, leading to timeouts and hanging onto HTTP requests for longer than 4 minutes. The code change fixes the issue by wrapping the call guards in isolated tasks. | ||
| BQM-25253 | Row-level security (RLS) was improved to support user-level RLS on top profile-level RLS. | ||
| BQM-25259 | The ability to download and preview a document from Admin Portal has been restored. | ||
| BQM-25262 | Following a change in the API response for Model population, the front-end of the machine learning feature, specifically Model > Population > Population Criteria, has been adjusted. | ||
| BQM-25269 | An issue that prevented the prediction from running for models in status "Staging" was discovered and corrected. | ||
| BQM-25276 | Prediction intervals could only be calculated for models without collinearity. To correct this, L2 regularization was introduced for matrix generation, allowing prediction intervals to be calculated for all models. - | ||
| BQM-25278 | In Admin Portal, under Admin >Functional Admin > Users , when displaying the existing user form, the blob URL of the user image was shown in the developer tool, which posed a security threat. The issue was corrected and the URL is now hidden. | ||
| BQM-25303 | Following a change in the configuration file of the application, the Bulk functionality in ML was no longer operative. To correct this, a replacement symbol for File.ApiKey was added to the Analytics appsettings.json file. | ||
| BQM-25310 | Unused APIs were removed, specifically:
| ||
| BQM-25318 | Following the correction of BQM-25278, the code regarding the user image was improved for added efficiency. | ||
| #119968 | BQM-25322 | During the migration to .net8, some logs in k_stats were removed. This improvement reintroduces the logging of all methods in excelService, ProcessExplorerService and DataService in k_stats, for a total of 176 methods. | |
| #120703 | BQM-25337 | An issue where the real-time calculation (RTC) was not triggered when scrolling the cell out of view was reported. It has now been corrected. | |
| #121460 | BQM-25342 | A performance problem was observed with the row-level security due to missing indexes in the id_payee and code_payee columns in the salary_prediction_predict table and the security table. In addition, a row-level security issue was identified due to a missing condition, which resulted in the hierarchical selection of RLS conditions not being applied correctly. | |
| #121809 | BQM-25358 | Pre and Post actions for stored procedures have been added in the prediction UI. | |
| BQM-25373 | The fix removes secrets and integrates a Key Vault domain for local development to enhance security for statement generation service. | ||
| BQM-25374 | The fix removes secrets and integrates a Key Vault domain for local development to enhance security for dashboard service. | ||
| BQM-25400 | For more stability, the version of the Fluent Assertion library, used in Analytics, was locked to 7.0.0. | ||
| BQM-25430 | To support the Slack integration, a new configuration section was added to the Integrations (Under Admin) page in Web App. | ||
| #125005 | BQM-25461 | There was a bug in retrieving the correct value for the custom_boolean_5 field, leading to incorrect assignments in ML predictions. | |
| BQM-25506 | In Web App, under Admin > Integrations, when the Digital Adoption was disabled without any values, then it was not possible to save any change in this section. | ||
| BQM-25514 | A incorrect configuration prevented the display of the Slack token value in Web App > Admin > Integrations. | ||
| BQM-25526 | With cascading fields are configured, when clearing the parent field, not all related fields were cleared in the row. | ||
| BQM-25530 | Standard Filters were not properly working for cascading fields. The issue is now corrected and the behavior is as expected: when adding a filter on cascading fields, the non filtered list is always displayed always. When refreshing, the displayed value is displayed. | ||
| BQM-25541 | The management of filtering for cascading fields, introduces a regression on filtering on existing fields such as Fullname. The regression was corrected. | ||
| BQM-25548 | With a value selected in a cascading field, when removing the parent value and then clicking again on the cascading field, the value was still visible. The issue was corrected; no value is now visible. | ||
| BQM-25549 | When hovering over a cascading fields, some values are were still visible, even after clearing the value in the parent field. | ||
| #128061 | BQM-25623 | When an email was sent via the scheduler, if the scheduler was recurring, and an email was processed, then the values in the Scheduler queue were not updated correctly, leading to the same email being sent multiple times. The issue was corrected; emails are now sent only one time and the Scheduler statuses are properly updated. | |