From 6e81dc51c538bc1861cb532a269d6aeb6d143a64 Mon Sep 17 00:00:00 2001 From: wpdev Date: Fri, 31 Jul 2026 05:22:21 +0800 Subject: [PATCH] =?UTF-8?q?fix(sync-bridge):=20=E8=AE=80=E5=8F=96=E8=88=87?= =?UTF-8?q?=E5=88=AA=E9=99=A4=E8=B7=AF=E5=BE=91=E8=A3=9C=20entity-bridge?= =?UTF-8?q?=20=E6=89=80=E6=9C=89=E6=AC=8A=E5=AE=88=E8=A1=9B=EF=BC=88A13?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit intercept_get / intercept_delete 先前沒有 is_owned_by_entity_bridge() 檢查, post entity 進入 dual_write 以上時:讀路徑會用 zone 值蓋掉 Hook Bus 的值、 刪路徑會在 aeav_only 下誤刪 flat 欄位(A v3.3.3 P1-24)。 unit 379 / integration 398 GREEN Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01TbG1keQQ7XBa7qMQY16KCY --- includes/interceptors/class-tmdo-sync-bridge.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/includes/interceptors/class-tmdo-sync-bridge.php b/includes/interceptors/class-tmdo-sync-bridge.php index 94c39b4..0e5d722 100644 --- a/includes/interceptors/class-tmdo-sync-bridge.php +++ b/includes/interceptors/class-tmdo-sync-bridge.php @@ -74,6 +74,11 @@ class TMDO_Sync_Bridge { return $value; } + // P1-24: defer to Hook Bus for reads when post entity is dual_write or higher. + if ( self::is_owned_by_entity_bridge( $meta_key ) ) { + return $value; + } + $module = $this->get_zone_module( $field['zone'], $post_type ); if ( ! TMDO_Feature_Flags::is_read_custom( $module ) ) { return $value; @@ -245,6 +250,11 @@ class TMDO_Sync_Bridge { return; } + // P1-24: skip zone cleanup when Hook Bus owns this key (aeav_only blocks native delete). + if ( self::is_owned_by_entity_bridge( $meta_key ) ) { + return; + } + $module = $this->get_zone_module( $field['zone'], $post_type ); if ( ! TMDO_Feature_Flags::is_write_active( $module ) ) { return;