Saturday, September 12, 2026
5 changes · master
Code cleanup and technical improvements
This internal cleanup changes several mail and live chat values so they are calculated only when needed instead of stored separately. This reduces unnecessary data updates and helps keep messaging behavior simpler and more reliable without changing what users see.
Original PR description
Before this commit, a value like isVideoStreaming or offlineMembers is a field with a compute. Nothing else writes it, so the field only stores what the compute makes. This commit declares each of them as a computed instead, made on read. A member list writes nothing when it sorts now, so its FIXME goes. https://github.com/odoo/enterprise/pull/131284
The mail notification popover now reads notification information directly instead of going through an internal proxy. This is a small internal cleanup that simplifies the code and reduces maintenance risk without changing user-facing behavior.
Original PR description
Before this commit, the notification popover reads isFollowerNotification through _proxy. A relation gives the proxy of each record, so notification._proxy is the notification. This commit reads the field from the notification. Nothing outside the model reads _proxy any more.
This update simplifies how the Mail app defines certain internal default values. It does not change user-facing behavior, but helps keep the code easier to maintain and less prone to future mistakes.
Original PR description
Before this commit, suggestedRecipients wraps its default array in fields.Attr, and _resolve declares no value at all. This commit declares both with the value alone. https://github.com/odoo/enterprise/pull/131312
This update simplifies internal field definitions across several Odoo Enterprise apps and fixes an issue where social conversations waiting for an operator were not visible in the Livechat tab. Business users benefit from more reliable livechat handling, while the broader cleanup reduces technical complexity without changing day-to-day workflows.
Original PR description
Before this commit, these models wrap the default value of a field in fields.Attr. This commit declares those fields with the value alone, which leaves no fields.Attr in enterprise. Counterpart of "[REF] mail: declare a plain value without fields.Attr". https://github.com/odoo/odoo/pull/287950
This update streamlines how WhatsApp discussion information is managed behind the scenes. It removes an unnecessary internal field, helping keep the codebase cleaner and easier to maintain without changing the user experience.
Original PR description
Enterprise counterpart of "[REF] mail: drop the compute-only fields for computeds", which explains the why. https://github.com/odoo/odoo/pull/287867