Friday, August 14, 2026
10 changes · master
Resolved issues and error corrections
The Swiss payroll time off form layout has been corrected so HR users can view and complete the form more easily. This reduces confusion when managing employee absences in the Swiss payroll module.
Original PR description
This commit fixes the layout of the time off form view for the Swiss payroll module. task-6275864
This fixes a small compatibility issue in the UK tax reporting screen after a recent reporting framework update. Businesses using UK reports should see the HMRC submission button read report settings correctly, reducing the risk of errors when preparing submissions.
Original PR description
https://github.com/odoo/enterprise/commit/5da8982a0edf9655ef622f1937ebe2cb72abff07 ([IMP] account_reports: Report Virtual Grids and Reactivalypse) made `AccountReportController.options` a signal but forget a caller that (probably) landed in master after the author started its PR (but before he closed it) https://github.com/odoo/enterprise/commit/f648605aac92fa6414bb7ab5f9a4347c3bf7aa05
The AI tools now avoid loading full file contents when reading records, preventing oversized requests and improving reliability. For website-related AI use, file fields can still be referenced through a URL when needed instead of raw data.
Original PR description
Instead of using the binary field raw content and overflowing the context, we are searching with `bin_size=True`. This way, result will contain only binary field's size, instead of the raw content. However, in ai_website it might be useful to have an address of the field, instead of its size, as ai might need to use it.
The self-order test flow was adjusted because the takeaway option is now selected automatically when it is the only available choice. This keeps the validation aligned with the current customer experience and avoids false test failures.
Original PR description
In this commit: - The takeaway preset is now automatically selected when it is the only available option. Remove the explicit "Takeaway" selection step from the tour to match the updated behavior. Task:6217791 Community PR : https://github.com/odoo/odoo/pull/274301 Forward-Port-Of: odoo/enterprise#127350 Forward-Port-Of: odoo/enterprise#122979
Corrects an incorrect classification used in Swiss withholding tax mutation reporting. This helps payroll declarations use the expected official values, reducing the risk of rejected or inaccurate submissions.
Original PR description
task-6116327 Forward-Port-Of: odoo/enterprise#127745
The Planning menu now appears in the intended order when Field Service is installed. This avoids confusion for users who navigate Planning while preserving the normal menu structure for installations without Field Service.
Original PR description
Ensure the Planning menus are displayed in the correct order when Field Service is installed, without affecting the standard Planning menu structure. task-6443397 Forward-Port-Of: odoo/enterprise#127377
This fixes an internal automated test for payroll pay runs so it waits for the correct page to finish loading before continuing. The change reduces false test failures and helps keep payroll development and releases reliable without changing end-user payroll behavior.
Original PR description
Currently in payroll_payrun_tour in hr_payroll module, if we put step_delay as paramater in tour test. the tour test will get fail, after the validation in payslip step. When return to Payrun View Page, the next step to click New Button and Select the Payrun in the Dropdown option. But New Button with dropdown only available in the Payslip steps. The reason it works in runboot before due to race conditions where the test still click new button in Payslip step, expected there is dropdown in this view. The reason it's not work in with step_delay, because step_delay make we have time to change the payrun view, when we trigger the new button, the button is no longer reflected to Payslip step but in PayRun View. In this PR, expected to wait the tour test to fully reload the Payrun View before click the New button, so it will work with or without step_delay. task-6455499 Forward-Port-Of: odoo/enterprise#127204
The Generate Sample Data button now works even when ActivityWatch is connected. Users can view generated sample events together with their real activity data, making demos and testing easier without disconnecting ActivityWatch.
Original PR description
Before this commit, the Generate Sample Data button only worked when the ActivityWatch server was unavailable. When ActivityWatch was running, users could only load real activity data. After this commit, clicking Generate Sample Data while ActivityWatch is connected injects the generated sample events alongside the real ActivityWatch events, allowing both to be displayed together. task-6373606 Forward-Port-Of: odoo/enterprise#126498 Forward-Port-Of: odoo/enterprise#124981
Australian Single Touch Payroll submissions now check that required payslips or employees are present before sending data to the ATO. Instead of an unexpected system error, users receive a clear validation message, helping them correct incomplete payroll records before submission.
Original PR description
When submitting payroll data to the ATO from an STP record without any payslips or employees, a traceback is raised. Steps to reproduce the error: - Install ``l10n_au_hr_payroll_account`` module -…
When submitting payroll data to the ATO from an STP record without any payslips or employees, a traceback is raised. Steps to reproduce the error: - Install ``l10n_au_hr_payroll_account`` module - Switch to ``My australian Company`` - Go to Payroll > Configuration > Settings > In Australian Localization, Set BMS ID > Set STP Responsible and his date of birth - Go to Payroll > Reporting > Single Touch Payroll > Create a new record > Set Payment Date > Submit to ATO > Sign & Submit to ATO Traceback: ```py IndexError: tuple index out of range ``` https://github.com/odoo/enterprise/blob/b0e48baaf99bdc4faefd2ffdd3bd5637fb548593/l10n_au_hr_payroll_account/models/l10n_au_stp.py#L228-L233 The traceback occurs because ``_get_fiscal_year_start()`` assumes that the STP record always contains at least one payslip or one employee. When these recordsets are empty, indexing the first element raises an IndexError. Solution: This commit validates that the required payslips or employees are present before the submission and raises a validation error instead of a traceback. Forward-Port-Of: odoo/enterprise#127733 Forward-Port-Of: odoo/enterprise#124096
This fix prevents the Sign app from crashing when a document field has an empty value and no automatic fallback value. Users can continue processing signature requests reliably even when optional fields are left blank.
Original PR description
Forward-Port-Of: odoo/enterprise#127426