1.6.2-release
What's new
tag 73fc389d03026a84be386799ab1c7a7b2b2b0c2c 1.6.2-release
Author: Tushar Saxena <tushar.saxena@gmail.com>
Date: Fri Sep 11 22:10:19 2026 +0530
commit 1639fdeed8d0438368ec03b7167f9f73d7dd77fa
Author: Tushar Saxena <tushar.saxena@gmail.com>
Date: Fri Sep 11 22:05:51 2026 +0530
Release 1.6.2
One fix since 1.6.1: hovering AIO Health or AIO Mana on the macro bar
showed the macro's text instead of the tooltip of the item or spell the
macro will use.
Version rolled in the TOC, KCM.VERSION and the /cm help example in
docs/slash-dispatch.md. The README's "What's new" section moves to 1.6.2
and Version History gains a row.
The release run 20260911-220327 gated green on all four suites with zero
functions above CCN 15, measured on a clean tree at e911907: lint 0/0
over 102 files, 796/796 tests, 5 perf scenarios, max CCN 15.
Its ANALYSIS.md records one new action. settings/Category.lua and
settings/Panel.lua have now been carried as Accepted in the 1000-1500
band across three consecutive release runs (1.6.0, 1.6.1, 1.6.2), which
anti-pattern #53 says is owed a fix or a tracked deviation ID. That is
left for the maintainer to decide, not ratified here.
sync-docs found no drift. The AIO fix commit had already updated
macro-manager.md, module-map.md and smoke-tests.md; its new comments cite
paths that resolve and members that are called; no doc was added since
the last sync; DEPENDENCIES.md and CLAUDE.md are unchanged.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ACvnRhhSv9qU4hWC2PU2Zr
commit e911907471afdb4faba4fe89cc20528c5e05af5f
Author: Tushar Saxena <tushar.saxena@gmail.com>
Date: Fri Sep 11 22:03:16 2026 +0530
fix(bar): show the AIO macro's real step in its tooltip, not its body
Hovering AIO HP or AIO MP on the macro bar printed the raw macro text
(#showtooltip, /castsequence ..., /cast [nocombat] Recuperate) where
every other slot shows the item's or spell's own tooltip.
A composite stores no lastItemID, since no single item is behind it.
SetCompositeMacro commits with iconItemID = nil on purpose, so
MacroDisplay.PickID came back nil and SetTooltip fell through to its
macro-name-plus-body fallback. The icon was right all along only
because it falls back to GetMacroInfo, which the client resolves
through #showtooltip.
MacroManager.CompositeDisplayPick(cat, inCombat) now answers the step
#showtooltip is showing: the head of the /castsequence in combat, the
first [nocombat] line out of it. It walks the same compositeConfig and
drops the same unresolvable picks (tokenForPick / actionLineForPick)
as the body builders, so it cannot name a step the body left out.
MacroDisplay.SetTooltip uses it when a composite has no stored pick.
The client's own GetMacroSpell / GetMacroItem would have answered this
directly, but neither appears in Blizzard's generated API docs, so
there is no way to check their secret-value behavior in combat.
Two limits, both stated in the code and docs: mid-fight the tooltip
still shows step 1 after a click advances the sequence, because the
client's position in it is not readable from Lua; and AIO slots still
show no count or cooldown swipe, because MD.Count / MD.Cooldown run on
every refresh tick and this lookup ranks sub-categories.
Four cases in tests/test_macrobar.lua. Three were red before the fix
and are green after it: the out-of-combat Recuperate spell, the
healthstone heading the in-combat sequence, and a disabled or pickless
healthstone handing over to the potion. The fourth, already green,
guards the fallback: an empty side still shows the macro text rather
than borrowing the other side's pick.
luacheck 0/0 across 102 files, 796 tests green, docs/test-cases.md
regenerated with the runner and the README badge agrees with both.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ACvnRhhSv9qU4hWC2PU2Zr
This mod has no additional files