Releases: CallunaLabs/calluna-companion-wp
Release list
v0.8.7 — Plugin nach Update reaktivieren
Fix: Plugin-Updates ließen ein vorher aktives Plugin dauerhaft deaktiviert zurück.
Plugin_Upgrader::upgrade() hängt deactivate_plugin_before_upgrade ein, das nur bei wp_doing_cron() übersprungen wird und nie reaktiviert — im Browser-Pfad übernimmt das wp-admin/update.php. Companion läuft per REST, also weder Cron noch Admin-UI: jedes vorher aktive Plugin blieb nach dem Update aus, bei ok: true.
So verschwand am 2026-08-06 WP Rocket auf stadtlandmama.de; der zurückgebliebene advanced-cache.php-Dropin lieferte danach 5 Tage lang eingefrorenes HTML aus.
Jetzt wird der Aktiv-Zustand vor dem Update gemerkt und danach per activate_plugin(..., silent) wiederhergestellt — auch wenn das Update fehlschlägt. Die Response meldet was_active, active_after, reactivated, reactivate_error; verlorene Aktivierung ergibt ok: false + HTTP 207 statt eines falschen Erfolgs.
v0.8.6 — Index-Connector (Feedback + reise/v1) entfernt
Entfernt: Calluna-Index-Connector (lib/index-connector.php) — ersatzlos.
- Feedback-Overlay + Button (Frontend, nur eingeloggt)
reise_feedback-CPT inkl. WP-Admin-Menü, AJAX submit/list/status, Screenshot-Handlingreise/v1-REST-Bridge (feedback, feedback/status, feedback/github, site, categories, brand)- „Calluna Index"-Token-Einstellungsseite (
reise_index_token,reise_variant)
Version-Header (0.8.4) + Konstante (0.8.5) auf 0.8.6 vereinheitlicht. 532 Zeilen entfernt. PHP-Lint grün, keine verwaisten Referenzen.
Rollt per Auto-Update fleet-weit aus.
v0.8.5
critical-css-regenerate + pages endpoints
v0.8.4 — i18n languages + /i18n/overview (Translate-Library)
Additiv. /info i18n.languages (WPML+Polylang), GET /calluna/v1/i18n/overview (pro Quell-Post die vorhandenen Sprachversionen — Basis der Translate-Library).
v0.8.3 — Translate: hreflang + Switcher + i18n-Erkennung + same-site-Verlinkung + Logo
Additiv, keine Breaking Changes. /info i18n-Block (Polylang/WPML/TranslatePress/Weglot), POST /hreflang/{id} + wp_head-Tags + x-default, [calluna_language_switcher], POST /i18n/link (Polylang+WPML same-site), Calluna-Logo auf der Settings-Seite.
v0.7.2 — noindex/robots + term-level SEO
Adds seo.robots = ['noindex','nofollow',…] support to the existing POST /posts/{id} endpoint, plus new POST /terms/{taxonomy}/{id}/seo for category-level robots. Plugin-agnostic mapping (Rank Math array, Yoast 0/1/2, AIOSEO flags).
v0.7.1 — Update-Trigger mit Force-Refresh
Update-Endpoint liest Update-Daten jetzt frisch (delete update_plugins transient + clean plugins cache), damit keine veraltete Paket-URL hängenbleibt.
v0.7.0 — /maintenance/option (Proxy-Secret/Token remote setzen)
Schmaler whitelisted Option-Setter (nur *_github_token + calluna_proxy_secret), admin-gated. Für die zentrale Update-Proxy-Anbindung.
v0.6.0 — Raidboxes server-cache purge
What's new
Multi-mechanism Raidboxes Varnish/Nginx cache flush, wired into the existing cache/clear endpoint and exposed as a new dedicated endpoint.
Changes
- Detection: four-signal probe (RB constants, plugin-active check,
myrdbx.iohostname, filesystem markers) /maintenance/cache/clearnow also purges Raidboxes server cache when running on Raidboxes infra; response includes newraidboxesfield- New endpoint
POST /maintenance/cache/raidboxes— targeted Raidboxes-only purge, returns{ok, attempts}with per-mechanism outcome /maintenance/healthreportsraidboxesincaches_availablemap (used by Monitor UI to conditionally show the Raidboxes card)- Purge mechanisms (in order):
rb_clear_cacheaction hook → known function names → HTTP PURGE → HTTP BAN
Best-effort fail-soft — returns 400 not_raidboxes on non-Raidboxes sites.
v0.5.5 — Heartbeat self-heal
Critical fix: heartbeat cron event now self-heals on every init action. Earlier versions used register_activation_hook which doesn't fire on plugin auto-updates — so sites updating from <0.5.4 never registered the heartbeat. Now: schedule check runs every page load (cheap no-op when already scheduled).
Also adds POST /wp-json/calluna/v1/monitor/heartbeat (admin-only) for on-demand testing.