Files
2meet-data-optimizer-bookin…/CHANGELOG.md
T
wpdev bb71e38408
Tests / PHP Lint (pull_request) Successful in 6s
fix: partner 偵測符號對齊實際存在的常數 + schema 期望值補齊
TMDO_Bookings::register() 舊版偵測 TMEETIC_Booking_Plugin 類別與 TMEETIC_BOOKING_VERSION 常數(TMEETIC_Booking 則要到 :26 才載入),
在 partner 外掛中並不存在(或載入太晚),偵測實際完全靠 file_exists() 後備
撐著——程式碼讀起來像在驗證「partner 已載入」,實際只驗證了「目錄存在」。

改用 TMB_VERSION / TMB_PLUGIN_DIR,兩者在 partner 主檔的檔案解析當下即
define,早於 plugins_loaded,故本 AddOn bootstrap 的 :6 時點確實可用。
file_exists() 後備保留不動,行為不變;但偵測不再是死碼,即使將來移除後備也
不會重演 infocards-addon 那種「整個 AddOn 靜默失效」的事故。

同一版本另含先前未提交的 schema 工作:補齊 expected_columns / indexes,
並將 registry 索引 config key 由 expected_indexes 更正為 indexes
(wp_parse_args() 會靜默丟棄未知 key,索引期望值先前等同從未送達)。

實測驗證(mu-plugin 於 plugins_loaded:6 量測真實請求):
新常數 AVAILABLE;wp wpdo doctor 89 OK / 0 FAIL;表註冊欄位與索引 100% 完整。
2026-08-09 00:47:26 +08:00

2.2 KiB
Raw Blame History

Changelog

All notable changes to this AddOn will be documented here.

Format follows Keep a Changelog. Versioning follows Semantic Versioning.


[Unreleased]

  • Phase 4 implementation in progress.

[0.1.1] — 2026-08-08 — 8 張 2mb_* 表補齊 schema 期望值

Added

  • 為全部 8 張 2mb_* 表補上 expected_columns 與索引定義:2mb_services2mb_availability2mb_date_overrides2mb_bookings2mb_vendor_settings2mb_service_reviews2mb_waitlist_submissions2mb_audit_log。欄位與索引 逐項轉錄自 2meet-bookings activator 的 CREATE TABLE。先前只註冊表名, wp wpdo doctor 只知道表存在,無從判斷欄位或索引是否漂移——這正是升級後 漏建欄位/漏建索引最容易矇混過關的地方。

Fixed

  • TMDO_Custom_Table_Registry::register() 的索引期望值 config key 由 expected_indexes 更正為 indexes。該 API 以 wp_parse_args() 併入預設值, 未知 key 會被靜默丟棄——先前索引期望值等同從未送達 registry, wp wpdo doctor 的 schema drift 只驗欄位、不驗索引。此問題橫跨全部 8 個 AddOn, 已一併更正。
  • TMDO_Bookings::register() 的 partner 偵測符號對齊實際存在的常數。舊版偵測 TMEETIC_Booking_Plugin 類別與 TMEETIC_BOOKING_VERSION 常數,兩者在 2meet-bookings 中根本不存在TMEETIC_Booking 雖存在,但要到 plugins_loaded:26tmb_run 才 require,在本 AddOn bootstrap 的 :6 當下必定 MISSING。改用 TMB_VERSION / TMB_PLUGIN_DIR,兩者在主檔檔案解析當下即 define,早於 plugins_loaded。 實測(mu-plugin 於 plugins_loaded:6 量測,同一請求內對照): TMB_VERSION = AVAILABLE、TMEETIC_Booking = MISSING。 file_exists() 後備保留不動,行為不變;但偵測不再是死碼。

[0.1.0] — TBD

Added (initial release, scaffold)

  • Plugin scaffold from wp-data-optimizer v2.16.0 extraction plan.
  • Plugin Header + bootstrap stub + 7 MD + composer.json.
  • Requires Plugins: 2meet-data-optimizer, 2meet-bookings.