Repository navigation
v2.1.5 — Phase 9.9 review post manager + brand-meta extraction
·
69 commits
to epic/refactor-april
since this release
Phase 9.9 — review post manager + brand-meta extraction. Pulls 6 helper methods (~200 LOC) out of dataflair-toplists.php into single-responsibility classes under src/Frontend/Content/ and src/Frontend/Render/.
New classes
- src/Frontend/Content/ReviewPostManager.php — slug-tolerant get-or-create review CPT
- src/Frontend/Content/ReviewPostFinder.php — single-brand meta lookup
- src/Frontend/Content/ReviewPostBatchFinder.php — batched brand-meta lookup (H8)
- src/Frontend/Render/BrandMetaPrefetcher.php — prefetch brand metas for items
- src/Frontend/Render/BrandMetaLookup.php — cascade lookup api_brand_id → id → slug → name
- src/Frontend/Render/SyncLabelFormatter.php — relative time labels for admin UI
Invariants preserved
- Render-time read-only invariant (Phase 0A) — ReviewPostManager is never called from card render path
- H7 brand-meta prefetch
- H8 batched review-post lookup
Tests
- 478 tests / 1,111 assertions, all green
- 26 new unit tests across 7 new test files
Release ritual
- Squash-merged from epic/refactor-april-phase-9-9-review-content
- Tagged v2.1.5 on epic/refactor-april (main untouched)
- Plugin description + changelog + README synced
- Composer dev-deps stripped; rsync to both strike-odds plugin folders
🤖 Phase 9.9 of the v2.1.x continuation arc; v2.1.6 (Phase 9.10) next.