Skip to content

Instantly share code, notes, and snippets.

@alopezari
Created May 6, 2026 14:50
Show Gist options
  • Select an option

  • Save alopezari/2aaf7774679d4177e96579ffdd02d5e5 to your computer and use it in GitHub Desktop.

Select an option

Save alopezari/2aaf7774679d4177e96579ffdd02d5e5 to your computer and use it in GitHub Desktop.
Desktop Mode v0.7.1 — Feature coverage matrix (Magellan)

Feature coverage matrix — 2026-05-06T13-23-40_desktop-mode

Coverage mode: full-surface

No FOCUS_OVERRIDE set; MISSION.md declares full-surface coverage with every major subsystem getting ≥1 probe.

Feature Surface Traits Depth Covered by
F1 Admin-bar toggle Admin bar node desktop-mode-toggle (all admin pages) AJAX-exposed, settings-form, output-rendering, user-facing-text, mode-toggle depth portal-session-cluster, usability-first-use, breadth-tour-admin
F2 AJAX save-desktop-mode wp-admin/admin-ajax.php?action=save-desktop-mode (POST) AJAX-exposed, DB-writing, settings-form depth portal-session-cluster, breadth-tour-admin
F3 Portal URL /desktop-mode/ parse_request hook — portal.php output-rendering, DB-writing, settings-form, mode-toggle depth portal-session-cluster, breadth-tour-admin
F4 Auto-enable on portal visit portal.php:105 — update_user_meta DB-writing, mode-toggle depth portal-session-cluster, breadth-tour-admin
F5 Portal redirect from wp-admin admin_init hook — portal.php:234 output-rendering depth portal-session-cluster, breadth-tour-admin
F6 Chromeless iframe mode helpers.php:149 — query flag + Sec-Fetch heuristic output-rendering, AJAX-exposed depth window-manager-cluster, breadth-tour-shell
F7 Detach to new tab (classic mode) portal.php:36 + render.php:2486 output-rendering depth window-manager-cluster, usability-first-use
F8 REST: GET/POST /os-settings /wp-json/desktop-mode/v1/os-settings settings-form, DB-writing, output-rendering, user-facing-text depth os-settings-save, breadth-tour-shell
F9 REST: GET/POST/DELETE /session /wp-json/desktop-mode/v1/session DB-writing, settings-form, scale-sensitive depth portal-session-cluster, breadth-tour-shell
F10 REST: GET/POST /presence /wp-json/desktop-mode/v1/presence DB-writing, scale-sensitive depth scale-presence-cluster, breadth-tour-lifecycle
F11 REST: GET/POST /extended-options /wp-json/desktop-mode/v1/extended-options settings-form, DB-writing, output-rendering, user-facing-text depth os-settings-save, breadth-tour-lifecycle
F12 REST: POST /default-window /wp-json/desktop-mode/v1/default-window DB-writing, settings-form depth os-settings-save, breadth-tour-shell
F13 REST: GET /debug (devtools) /wp-json/desktop-mode/v1/debug output-rendering breadth-only breadth-tour-lifecycle
F14 REST: GET /recycle-bin list /wp-json/desktop-mode/v1/recycle-bin scale-sensitive, output-rendering depth recycle-bin-andlist, scale-presence-cluster
F15 REST: POST /recycle-bin/restore /wp-json/desktop-mode/v1/recycle-bin/restore destructive-operation, DB-writing depth recycle-bin-andlist
F16 REST: POST /recycle-bin/purge /wp-json/desktop-mode/v1/recycle-bin/purge destructive-operation, DB-writing depth recycle-bin-andlist
F17 REST: POST /recycle-bin/empty /wp-json/desktop-mode/v1/recycle-bin/empty destructive-operation, DB-writing, scale-sensitive depth recycle-bin-andlist, scale-presence-cluster
F18 REST: GET /recycle-bin/count /wp-json/desktop-mode/v1/recycle-bin/count output-rendering breadth-only recycle-bin-andlist, breadth-tour-recycle
F19 Dock rail (admin menu builder) helpers.php:503 — desktop_mode_build_dock_items() output-rendering, user-facing-text depth window-manager-cluster, breadth-tour-shell
F20 Presence tracking (heartbeat) heartbeat_received filter — presence.php:373 DB-writing, scale-sensitive depth scale-presence-cluster, breadth-tour-lifecycle
F21 Presence cron prune desktop_mode_presence_daily_prune event — presence.php:321 DB-writing depth lifecycle-cluster, breadth-tour-lifecycle
F22 Recycle bin: attachment capture pre_delete_attachment + deleted_post hooks — capture.php destructive-operation, DB-writing depth recycle-bin-andlist, breadth-tour-recycle
F23 Recycle bin: realtime badge heartbeat_received — realtime.php:288 DB-writing, output-rendering depth recycle-bin-andlist, breadth-tour-recycle
F24 Media Library enhancement (drag shim) admin_enqueue_scripts — extended-options.php:166 output-rendering breadth-only breadth-tour-shell
F25 Media query REST extension media-query.php — REST args extension output-rendering, scale-sensitive breadth-only breadth-tour-lifecycle
F26 OS Settings window (native window) components.php registration — native window os-settings settings-form, output-rendering, user-facing-text depth os-settings-save, breadth-tour-shell
F27 Recycle Bin native window recycle-bin/window.php destructive-operation, output-rendering, user-facing-text depth recycle-bin-andlist, breadth-tour-recycle
F28 Admin-bar layout menu Admin bar submenu desktop-layout-menu output-rendering, user-facing-text depth window-manager-cluster, breadth-tour-shell
F29 Virtual Desktops (Spaces) Client-side JS, persisted via /session settings-form depth window-manager-cluster, breadth-tour-shell
F30 Window chrome / detach / multi-window render.php + window-chrome.php output-rendering, user-facing-text depth window-manager-cluster, breadth-tour-shell
F31 Lifecycle hooks (absent) desktop-mode.php:49 — no activation/deactivation/uninstall hooks destructive-operation depth lifecycle-cluster

Charters generated

  • portal-session-cluster (hypothesis-cluster, critical) — Portal entry, auto-enable CSRF guard, session write-path and race (F1–F5, F9)
  • os-settings-save (hypothesis-cluster, critical) — OS Settings save path, persistence, extended-options, default-window (F8, F11, F12, F26)
  • recycle-bin-andlist (andlist, critical) — Recycle Bin — destructive-operation AND-list (b1–b7) + scale (c1–c3) (F14–F18, F22, F23, F27)
  • window-manager-cluster (hypothesis-cluster, critical) — Window manager — chromeless, dock, virtual desktops, singleton, admin-bar two-click trap (F6, F7, F19, F28–F30)
  • lifecycle-cluster (hypothesis-cluster, high) — Plugin lifecycle — no activation/deactivation hooks, orphaned data, cron orphan (F20, F21, F31)
  • scale-presence-cluster (hypothesis-cluster, high) — Scale-sensitive features — presence option growth, recycle-bin unbounded list, session limit (F9, F10, F14, F17, F20)
  • i18n-admin (hypothesis-cluster, high) — i18n lens — JS translation filename mismatch, POT version lag, RTL layout, wp.i18n fallback (H4, H5, H23, H24)
  • usability-first-use (hypothesis-cluster, high) — Usability lens — first activation, onboarding gap, mode indicator, feedback, consistency (H19, H25, H26, H14, H16)
  • breadth-tour-admin (breadth, critical) — Breadth tour — admin entry, portal, admin-bar toggle, AJAX, chromeless, detach (F1–F7)
  • breadth-tour-shell (breadth, critical) — Breadth tour — desktop shell, dock, windows, OS Settings window, virtual desktops, media library (F8, F12, F19, F24, F26, F28–F30)
  • breadth-tour-recycle (breadth, high) — Breadth tour — recycle bin window, attachment capture, realtime badge, count (F18, F22, F23, F27)
  • breadth-tour-lifecycle (breadth, high) — Breadth tour — presence, cron, extended-options, media-query REST, devtools (F10, F11, F13, F20, F21, F25)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment