lightweight tag 5f3f9bb8ad8f9b125715408182a123748f115923 0.6.1
Author:	FloMoit <kororo@free.fr>
Date:	Fri Apr 10 11:40:01 2026 +0200

commit 5f3f9bb8ad8f9b125715408182a123748f115923
Author: FloMoit <kororo@free.fr>
Date:   Fri Apr 10 11:40:01 2026 +0200

    fix: remove keyboard hook ESC-to-close from KeyVote frames
    
    EnableKeyboard and OnKeyDown intercept all keyboard input including
    protected bindings, causing taint in combat. Removed the ESC handler
    from both the setup and voting frames.

commit adad260d3fede145a53398b8f73e9c86d92a6f9c
Author: FloMoit <kororo@free.fr>
Date:   Fri Apr 10 11:39:29 2026 +0200

    fix: avoid tainted secret string crash in OnChatMsgParty
    
    CHAT_MSG_PARTY can deliver senderName as a WoW secret string in some
    combat/instance contexts. Lua string methods (:match, :lower) fail on
    tainted strings because they index the string metatable. Replace with
    Ambiguate() and string.lower() which are not subject to that restriction.
    Also add a nil guard for msg and senderName.

commit 65010bea3ad56bb393605b60bb8f84e8fc631fa6
Author: FloMoit <kororo@free.fr>
Date:   Wed Apr 8 19:21:36 2026 +0200

    fix: pass dungeon names/levels in KVWHEELOPEN so receivers show correct data
    
    KVWHEELOPEN now encodes each entry as "mapID~name~level" (semicolon-separated)
    instead of bare mapIDs, so non-initiator clients no longer depend on a warm
    C_ChallengeMode cache for dungeon names. Also stores level in the wheel dungeon
    list so the results popup shows the actual key level instead of +0.
    
    Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

