Xurkon
35b581d6a9
feat: Release v1.3.4 - Fix l10n initialization error and complete WotLKDB taint analysis
2026-03-18 17:35:22 -05:00
Xurkon
aed0daf4ce
feat: Release v1.3.2 — Taint Resolution & Stability patches
2026-03-18 15:08:52 -05:00
Xurkon
b3021eb06d
docs: refresh landing page and fix changelog styling
2026-03-18 00:11:50 -05:00
Xurkon
36f93718d6
chore: add v1.3.1 to CHANGELOG.md
2026-03-18 00:01:42 -05:00
Xurkon
4f1671837d
chore: bump version to 1.3.1 and update changelogs
2026-03-18 00:00:17 -05:00
Xurkon
bd31b2d383
refactor: disable guild-channel data sharing
2026-03-17 23:36:06 -05:00
Xurkon
04a769df9f
Revise versioning and add new features to CHANGELOG
...
Updated versioning in CHANGELOG and added new features.
2026-03-17 23:00:10 -05:00
Xurkon
282d7cdd22
docs: make channel join log visible for verification
2026-03-17 22:58:20 -05:00
Xurkon
a69883594c
fix: initialize QuestieLearnerComms in QuestieLearner
2026-03-17 22:52:12 -05:00
Xurkon
f66c733048
docs: update version to v1.3.0 in documentation index
2026-03-17 22:40:18 -05:00
Xurkon
53b53af3cb
docs: correct version badge to v1.3.0
2026-03-17 22:40:05 -05:00
Xurkon
b0f8ba22e7
feat: release v1.3.0 - QuestieLearner Confidence & Tiered Pruning Engine
2026-03-17 22:33:01 -05:00
Xurkon
7f16d31294
docs: add v1.2.9 changelog — cross-link engine, zone fix, untrack fix
2026-03-17 17:38:43 -05:00
Xurkon
35f2d49b6c
fix: patch IsComplete method onto QuestLogCache fallback objects in currentQuestlog so QuestieMap doesn't crash
2026-03-16 23:08:38 -05:00
Xurkon
a7a66810be
fix: store fallback quests in TrackerUtils._fallbackQuests not currentQuestlog to prevent arrow/quest module crashes
2026-03-16 23:05:58 -05:00
Xurkon
ef62d1b2b2
fix: guard IsQuestFlaggedCompleted nil on WotLK 3.3.5 in fallback quest IsComplete
2026-03-16 22:58:43 -05:00
Xurkon
d9828e6159
fix: resolve QUEST_ACCEPTED log-index vs questID ambiguity and add quest-log fallback to tracker for DB-unknown quests
2026-03-16 22:57:18 -05:00
Xurkon
5e35aa6cb5
fix: QUEST_ACCEPTED in 3.3.5 passes questID directly as first arg, not log index
2026-03-16 22:42:05 -05:00
Xurkon
f0327da3e5
fix: use GetQuestLogTitle position 9 for questID in 3.3.5 and add full-log fallback scan
2026-03-16 22:39:39 -05:00
Xurkon
f0550fddee
feat: add DEBUG_LEARNER and DEBUG_COMMS categories for targeted learner/comms debugging
2026-03-16 22:33:31 -05:00
Xurkon
6b0fdcf9b4
fix: capture Objectives Board quests via gossip cache and trace LearnQuest guards
2026-03-16 22:30:38 -05:00
Xurkon
ab60b990e8
fix: WotLKDB stats updated in cached DB path so panel shows counts on every reload
2026-03-16 22:24:40 -05:00
Xurkon
3e18f51551
fix: WotLKDB plugin.stats updated directly in LoadBaseDB so panel shows counts without timing dependency
2026-03-16 22:21:14 -05:00
Xurkon
76854a7fa3
fix: learner only records quest items (class 12) and captures auto-complete quests via QUEST_TURNED_IN
2026-03-16 22:19:09 -05:00
Xurkon
fa7974b0d8
fix: mouseover NPC check uses raw npcData instead of GetNPC to prevent CRITICAL spam
2026-03-16 22:14:04 -05:00
Xurkon
9ecd28ada2
docs: fix chat-length GUID commands and clarify target vs npc UnitGUID usage
2026-03-16 22:11:43 -05:00
Xurkon
6b9d1d548f
docs: add GUID reference, object vs NPC distinction, and settings backfill prereq to verification guide
2026-03-16 22:10:26 -05:00
Xurkon
b2ca8fa660
fix: backfill missing learnedData settings keys from old SavedVariables
...
EnsureLearnedData was using 'or' which never updates an existing table.
If learnedData was created by an older version of the code without
learnQuests/learnItems/learnObjects keys, those stayed nil (falsy),
causing every quest/item/object learn call to return immediately.
Now explicitly backfills each missing key to true so all categories
record correctly regardless of when the SavedVariables were first created.
2026-03-16 21:56:36 -05:00
Xurkon
17bc28f440
docs: update Test 2 in verification guide to reflect isNew-only debug output
2026-03-16 21:47:49 -05:00
Xurkon
003e9698c9
fix: WotLKDB plugin stats + kill tracking improvements
2026-03-16 21:37:26 -05:00
Xurkon
4e5f3ed04b
fix: move plugin panel to Database tab + fix WotLKDB 0 counts
...
- QuestieOptionsDatabase: added 'Loaded Questie-X Plugins' section at order 7
For pull-type plugins (WotLKDB) where plugin.stats are all 0, the panel now
falls back to counting QuestieDB.*Data directly — this is safe because the
name function is called after init completes (user opens the options panel)
- QuestieOptionsAdvanced: replaced full plugin panel with redirect note
pointing users to the Database tab
2026-03-16 21:27:15 -05:00
Xurkon
893d013110
refactor: reduce QuestieLearner debug noise to signal-only output
...
- LearnNPC/Quest/Item/Object: only print when entry is brand new (isNew flag)
Update calls (coord refresh, mc increment) are silent
- Remove mouseover cache log (fired on every quest giver hover)
- Remove target cache log (fired on every target switch)
- Remove network MERGE log (fired every 60s reinforcement cycle)
- Remove network NEW log (replaced by the isNew pattern above)
- Kill log kept but wording tightened to 'Kill recorded'
- Inject summary, Events registered, Initialized kept at DEBUG_INFO
(only visible when INFO level is enabled, not default DEVELOP spam)
2026-03-16 21:24:42 -05:00
Xurkon
bf2a7969df
docs: v1.2.7 changelog + Research folder with verification guide and session summary
...
- CHANGELOG.md: added v1.2.7 entry covering WotLKDB stats fix, kill tracking
filter, and WotLKDB Loader.lua stats population
- Research/QuestieLearner-Verification.md: 12-step in-game test guide for all
QuestieLearner subsystems (mouseover, quest accept/turn-in, kills, loot,
objects, export/import, plugin stats, peer sharing, quick diagnostic snippet)
- Research/SessionSummary-2026-03-16.md: full developer session log from
plugin architecture overhaul through QuestieLearner rewrite
2026-03-16 21:18:02 -05:00
Xurkon
a3eaba30fd
fix: WotLKDB plugin stats + kill tracking improvements
...
QuestieInit:LoadBaseDB:
- Count WotLKDB records BEFORE clearing globals
- Store counts in QuestieX_WotLKDB_Counts global for Loader.lua to read
QuestieLearner:OnCombatLogEvent:
- Only record kill coords for NPCs already in QuestieDB (quest objectives)
or that were explicitly cached via target/mouseover (known quest givers)
- Prevents every random mob kill from polluting the learner database
2026-03-16 20:52:25 -05:00
Xurkon
8bc74a488b
feat: QuestieLearner comprehensive overhaul v1.2.6
...
- Full quest field capture (title, level, objectives, description, money, zone)
- Mouseover filter: only record NPCs with QUESTGIVER npcFlag (0x02) or known DB entries
- OnTargetChanged: cache GUID for kill tracking only, no more spurious LearnNPC calls
- Grid-bucket coordinate clustering (COORD_GRID=2.0) replaces naive radius dedup
- Object recording: detect GameObject loot, gossip, and quest giver/finisher
- Item loot: async GetItemInfo retry via GET_ITEM_INFO_RECEIVED event
- LearnQuestGiver: entityType parameter (1=NPC,2=obj,3=item) for correct wiki layout
- InjectLearnedData: uses grid clustering in all merge paths
- MergeImport: calls InjectLearnedData immediately after merge (live override injection)
- README: corrected import reload requirement description
- CHANGELOG + docs/changelog.html updated with developer detail
2026-03-16 20:49:02 -05:00
Xurkon
46a3476884
chore: push pending changes
2026-03-16 20:02:32 -05:00
Xurkon
7cf4017d40
docs: update version badge to v1.2.5
2026-03-16 19:58:48 -05:00
Xurkon
b729628f32
docs: upgrade notice, ClassicDB link, QuestieLearner guide in README
2026-03-16 19:56:56 -05:00
Xurkon
989e35b9b1
docs: update changelog.html with full developer detail for v1.1.5 through v1.2.5
2026-03-16 19:54:31 -05:00
Xurkon
a4aca4322a
docs: update version badge to v1.2.5
2026-03-16 19:52:05 -05:00
Xurkon
4db9737a35
chore: stage all pending changes (DB cleanup, corrections, compiler, init, plugin API)
2026-03-16 19:41:52 -05:00
Xurkon
aad7972814
fix: replace table.getn with # operator in XXH_Lua_Lib (string not table)
2026-03-16 19:36:16 -05:00
Xurkon
c3a8d94a83
fix: replace table.getn with # operator in XXH_Lua_Lib (string not table)
2026-03-16 19:35:24 -05:00
Xurkon
1ed1f24f53
docs: link all plugin repos in README; add .gitattributes for clean release archives
2026-03-16 19:31:52 -05:00
Xurkon
dcb552ab04
docs: update changelog with v1.2.5 Ebonhold DB load fix
2026-03-16 19:24:42 -05:00
Xurkon
457420f90c
feat: add Database options tab with import/export/cleanup
...
New files:
- Modules/QuestieLearnerExport.lua: serialize/compress/encode pipeline using
AceSerializer + LibDeflate:CompressDeflate(level=9) + EncodeForPrint.
QxLD:<version>!<encoded> string format. Export(), ExportAll(), ValidateImport(),
MergeImport(), DryRunPrune(), Prune().
- Modules/Options/DatabaseTab/QuestieOptionsDatabase.lua: new Database tab with:
- Live learned data stats (per server)
- Per-type learner toggles (NPCs/Quests/Objects/Items/Broadcast)
- Export current server / Export all servers buttons (opens scrollable dialog)
- Import window (paste -> Validate -> Import with diff summary)
- Dry-run preview and Prune Now cleanup buttons
- Full reset button (confirm-gated)
- Contribute section with step-by-step GitHub submission instructions
Wiring:
- QuestieOptions.lua: database_tab initialized and registered in args
- All TOC files: QuestieLearnerExport.lua added before options, DatabaseTab lua added
2026-03-15 19:48:45 -05:00
Xurkon
d2861d194b
feat: expand QuestieLearner and QuestieLearnerComms
...
QuestieLearner:
- Expose QuestieLearner.data as direct ref to Questie.db.global.learnedData
- Add mc (match-count) field tracking to LearnNPC/Quest/Item/Object
- Add _Learner:BroadcastIfCommsAvailable() hook called after every write
- Add QuestieLearner:HandleNetworkData() — validates, merges, and deduplicates
incoming network data for NPC/QUEST/ITEM/OBJECT types, including coordinate
and item-drop list merging
QuestieLearnerComms:
- Move DebugLog definition to top of file (was called before definition)
- Fix IsDuplicateMessage fallback: table.getn(serializedData) -> string.len(),
mod() -> math.mod() for Lua 5.0 compatibility
- Add mutedUntil table and implement 5-minute timed mute on 3 strikes
(previously the 3-strike branch was an empty if body with no effect)
- Remove duplicated nil-check + DebugLog block in ProcessRawMessage
2026-03-15 19:10:35 -05:00
Xurkon
a89dbddb58
fix: add XXH load to TBC toc and guard plugin.stats nil access
2026-03-15 19:07:43 -05:00
Xurkon
984b9f9a68
fix: correct select() polyfill in QuestieLoader to not use arg table
...
The previous implementation used 'arg' (Lua 5.0 implicit vararg table) which
is nil inside a fixed-parameter function. Replace with the explicit index-chain
pattern matching the QuestieCompat.lua version.
2026-03-15 19:04:01 -05:00
Xurkon
b8594c9782
fix(p2): restore plugin status UI, C_QuestLog/C_Map shims, QuestieServer init
...
- QuestieOptionsAdvanced.lua: restore compat_header, plugin_header, plugin_status_desc
blocks showing loaded Questie-X plugins with stats in the Advanced options tab
- QuestieCompat.lua: add C_QuestLog shim (GetNumQuestLogEntries, GetQuestLogTitle,
GetAllQuestIDs, GetQuestObjectives, IsQuestFlaggedCompleted, GetQuestPlayerQuestLink),
C_Map shim (GetPlayerMapPosition, GetBestMapForUnit, GetMapInfo),
GetTrackedAchievements, IsAchievementCompleted, and LibUIDropDownMenu shims
- QuestieInit.lua: import QuestieServer module, add QuestieServer:Init() call with nil
guard, wrap HBDHooks:Init() in nil guard
2026-03-15 18:33:41 -05:00