Monday, July 20, 2026
2 changes · saas-19.3
Resolved issues and error corrections
Fixes an issue where clicking the AI icon could fail if the default AI prompt had been duplicated. The system now selects one matching AI composer record, preventing an error and keeping the AI menu accessible for users.
Original PR description
Currently an error is generated when the user clicks on the AI icon as per the below steps: - Install `ai_app` - Go to `AI` > Configuration > Default Prompts - Duplicate `Ask AI` record…
Currently an error is generated when the user clicks on the AI icon as per the below steps: - Install `ai_app` - Go to `AI` > Configuration > Default Prompts - Duplicate `Ask AI` record (`ai.composer`) - An error occurs on clicking the `AI` icon on the navbar menu systray Error: `ValueError: Expected singleton: ai.composer(4, 14)` This issue was introduced during the refactoring in [1]. In the previous implementation, the AI Composer search was executed with `limit=1` (see [2]), ensuring that only a single composer record was returned. After the changes in [1], the limit=1 constraint was removed (see [3]), causing the search to return multiple composer records. As a result, the code now encounters an error when it expects a single record. This commit fixes the issue by adding `limit=1` to the AI Composer search, ensuring that only a single record is returned. [1]: https://github.com/odoo/enterprise/commit/800208fdc485b9e37f77648a01100b8eff118490 [2]: https://github.com/odoo/enterprise/blob/188dcc5078be7c7fee1a52f86505144d3b6309cf/ai/models/ai_composer.py#L71-L83 [3]: https://github.com/odoo/enterprise/blob/2972805fd1a4daacd7f1c47d5e3c7672e2aec61c/ai/models/ai_composer.py#L74-L77 Sentry-7549108967
Belgian payroll now correctly treats employees marked as judicially separated when calculating withholding tax and special social security contributions. This prevents affected payslips from incorrectly applying a zero rate or excessive reductions, improving payroll accuracy and compliance.
Original PR description
**Steps to Reproduce:** 1. Create a new employee. 2. Set their marital status to "Judicially Separated". 3. Generate a payslip. **Reason:** - The "Judicially Separated" marital status was not explicitly included in the conditions for calculating withholding taxes or special social contributions. As a result, employees with this status bypassed the calculations entirely, receiving a rate of 0 for both and a significantly larger reduction on master which also appears to be incorrect. **Solution:** - Included the 'separated' status in isolated tax and CSSS logic. Task-6321245 Forward-Port-Of: odoo/enterprise#122263 Forward-Port-Of: odoo/enterprise#121457