File Details
1.3-release
- R
- Mar 21, 2026
- 365.18 KB
- 7
- 12.0.1
- Retail
File Name
CombatAnalytics-1.3-release.zip
Supported Versions
- 12.0.1
tag ac27508720f69df2a5848f62e0d57a7be917c8d0 1.3-release
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:53:19 2026 +0200
Release 1.3 fix counters
commit dd8a7690497d98e1ac85f9205663a8b15ee03c48
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:44:00 2026 +0200
feat(threat): show coefficient-based baseline threat when fights < 3
commit 4fe7f123d49dddafabeb0fc625bd65ad641bad2c
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:40:02 2026 +0200
refactor(threat): add optional alpha param to addBar
commit f85784c63c88780f4c2c4252a8b3aa6c923369cb
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:36:46 2026 +0200
feat(threat): expose baselineThreatScore in GetCounterGuide return
commit 1c2f55153edef675533b750c6df7325032d0bbf3
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:33:20 2026 +0200
feat(threat): add ComputeBaselineThreatScore local function
commit 40d8f923b1e3aaa593534d5492ac8f3d9fdd338f
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:32:05 2026 +0200
fix(helpers): use string.* globals in Trim/StartsWith to avoid secret string taint crash
Colon-method syntax (value:match, value:sub) indexes the value via its string
metatable __index, which fails with 'attempt to index (a secret string value)'
when the string was returned by a WoW API (UnitName, UnitGUID, etc.) in a
tainted execution context.
Replace with string.match() and string.sub() direct global calls which accept
secret strings as arguments without indexing them.
Also add tostring() sanitization in getOrCreateBucket (CombatStore.lua) so any
secret string key is converted to a plain Lua string before table/string use.
commit b56dce4122f5087ebf6f56372866029997613397
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:28:39 2026 +0200
fix(widgets): replace SetBackdrop in hooks with SetBackdropColors to fix taint crash
Calling SetBackdrop() inside script hooks (OnEnter/OnLeave/SetActive etc.)
causes 'secret number' arithmetic errors in Blizzard's Backdrop.lua when the
execution context is tainted by our addon. SetBackdrop rebuilds all backdrop
textures and reads GetWidth()/GetHeight() internally, which returns secret
values in tainted contexts.
Fix: add Widgets.SetBackdropColors() which calls only SetBackdropColor() and
SetBackdropBorderColor() — color-only setters that never trigger texture
rebuilds. Replace all ApplyBackdrop calls inside script hooks and data-update
methods with SetBackdropColors. ApplyBackdrop (full SetBackdrop) now only runs
at frame creation time.
commit b95e4362631901b3b3e8d6eaffabfd6e0c4b51c4
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:16:23 2026 +0200
feat(threat): add baseline threat score coefficient constants
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
commit 62454e76db03eb3ece32ce96f28ad7b5892c5c8c
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:10:01 2026 +0200
docs: baseline threat score implementation plan
6-task plan covering coefficient constants, ComputeBaselineThreatScore
function, GetCounterGuide wiring, addBar alpha param, and CounterGuideView
three-tier fallback render. No new files, two Lua files touched.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
commit 2a58da840200224300a9ea3f0eae3a9b85d7c53c
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 23:07:52 2026 +0200
docs: baseline threat score design doc
Coefficient-based fallback for Threat Level when personal fight data
is insufficient (< 3 fights). Derived from archetype, threat tags,
range bucket, and CC family count already in seed data. No API calls,
no new seed files.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

