# Changelog All notable changes to this AddOn will be documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versioning follows [Semantic Versioning](https://semver.org/). --- ## [Unreleased] - Phase 4 implementation in progress. --- ## [0.1.1] — 2026-08-08 — 8 張 `2mb_*` 表補齊 schema 期望值 ### Added - 為全部 8 張 `2mb_*` 表補上 `expected_columns` 與索引定義:`2mb_services`、 `2mb_availability`、`2mb_date_overrides`、`2mb_bookings`、`2mb_vendor_settings`、 `2mb_service_reviews`、`2mb_waitlist_submissions`、`2mb_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:26`(`tmb_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`.