Respira_Builder_Tree_Utility::matches() content identifier_type now deep-searches options / attrs / settings
- fix Respira_Builder_Tree_Utility::matches() content identifier_type now deep-searches options / attrs / settings. Pre-7.0.51 the content matcher only checked $element['content'] (Elementor / Divi 4 top-level string) and $ele
- fix update_element adds a normalize_element_updates($existing_element, $updates, $wrap_target) hook on Respira_Builder_Interface; Oxygen overrides it to route ct_image / ct_image_overlay flat patches into options.original. P
- note Verified end-to-end on Studio :8882 with Oxygen Classic 4.9.7. Test fixture: synthetic page with a ct_text_block whose options.ct_content is "Hello world<br>this is a paragraph ending in br" plus a ct_image with options.
- note The normalize_element_updates hook lands on the interface as an optional method — adapters that don't override it pay no cost. Future adapter-specific patch normalisations (Beaver's nested font field family, Breakdance's
- note Wider M.P. Härtetest findings: items #1, #2, #3, #5 are addressed by v7.0.47 → v7.0.50 (already shipped); the 4-minute timeout he flagged separately should also clear once v7.0.49's auto-heal removes the upstream 500 tri