GRIP-EMS v1.9.0
Released April 7, 2026. 16 entries in the author's notes.
Every entry
The author's own words, complete. Long sections are sorted into areas by LazyGrip.
Added
16Variables and recommendations4
SettingsPanel CVar Dashboard tab: full scrollable UI with per-section grouping, live current/recommended value display, individual Fix buttons, per-CVar auto-fix toggles, health score header, profile selector dropdown, and "What Changed?" notification banner
Per-CVar auto-fix on login (replaces blanket auto-fix of all recommended CVars) -- only user-opted CVars are touched
SQWOptimizer engine (Engine/SQWOptimizer.lua): real-time SpellQueueWindow optimization using EWMA latency smoothing with outlier rejection, GCD-aware haste tracking, hysteresis to prevent flapping, click rate advisory, and automatic PLAYER_LOGOUT restore to user's original SQW value
SettingsPanel SQW dashboard: 4 header widgets (enable toggle, sensitivity slider, live SQW display, click rate advisory badge), per-CVar managed badge integration, Fix button guard, auto-fix skip for optimizer-managed CVar
Repair and spell warnings3
Defaults.lua: D.CVAR_SECTIONS data-driven architecture replacing D.RECOMMENDED_CVARS -- 212 unique CVars across 13 sections with per-CVar metadata (description, critical flag, recommended value, category). D.CvarMatch() float comparison helper for tolerance-aware CVar validation
/gems msadvisor now uses live optimizer data (EWMA latency, current GCD, applied SQW) when optimizer is active, falling back to raw GetNetStats/GetHaste when inactive
Repair Module Enhancements
Fix All button in single-sequence repair view with live fixable-issue counter, undo support (full sequence snapshot before batch fix), and automatic re-analysis after all fixes applied
Languages2
Combat and the Options pages1
Combat-safe CVar writes gated behind InCombatLockdown() check
Dynamic SQW Optimizer
Saving, naming and editing1
enUS source strings for all CVar section headings, descriptions, SQW optimizer UI labels, and profile names
Everything else5
CvarProfileManager (Data/CvarProfileManager.lua): 4 built-in profiles (Raid, M+, Solo, PvP) with context-aware auto-switching via ZONE_CHANGED_NEW_AREA, manual profile selection, per-CVar auto-fix opt-in, and "What Changed?" login detection comparing cvarSnapshot to current values
/gems cvar slash command for profile management from chat
/gems status now shows CVar health summary (OK/warn/critical counts) using new CVAR_SECTIONS format
/gems sqw slash command for optimizer status and manual control
Grab it
Release notes written by Sataana and reproduced here with his permission.