{"_type":"issue","id":"cmb2-u2a","title":"Harden #[AllowDynamicProperties] coverage across CMB2 class roots","description":"The PHP 8.2+ dynamic-property deprecation fix shipped only on the CMB2 class (a leaf), leaving CMB2_Field, all CMB2_Type_* field types, and all CMB2_Display_* classes still emitting deprecations when user code/extensions assign undeclared properties (CMB2's most common customization idiom). None of these classes define __set, so the deprecation fires. Not a regression (2.11.0 had zero coverage) but incomplete. Fix: place #[AllowDynamicProperties] on the extension-surface roots (CMB2_Base covers CMB2 + CMB2_Field via inheritance; CMB2_Type_Base; CMB2_Field_Display) and remove the now-redundant leaf attribute on CMB2. Parsed as a harmless # comment on PHP 7.4-7.x.","status":"closed","priority":1,"issue_type":"task","owner":"justin@dsgnwrks.pro","created_at":"2026-05-30T18:02:19Z","created_by":"Justin Sternberg","updated_at":"2026-05-30T18:13:36Z","started_at":"2026-05-30T18:02:24Z","closed_at":"2026-05-30T18:13:36Z","close_reason":"Widened #[AllowDynamicProperties] to CMB2_Base, CMB2_Type_Base, CMB2_Field_Display; pushed in f372385","dependency_count":0,"dependent_count":0,"comment_count":0}
