Skip to content

Commit 9a60e22

Browse files
Xian55claude
andcommitted
Fix VendorAmmo & VendorReagent over-propagation from Phase 1/2/3
Phase DB classifies vendor sub-type flags (VendorAmmo, VendorReagent, etc.) from vendoritems.json ground truth for SoM and TBC. However, Phase 1 cross-references by Entry ID across all three expansions (SoM, TBC, Wrath), and Wrath has no vendoritems.json — its NpcFlags come from DBC data which may be incorrect. Phase 1 unions all flags and propagates them back, overwriting Phase DB ground truth for SoM/TBC vendors. Before fix (audit mismatches): SoM: -VendorAmmo: 81, -VendorReagent: 121 TBC: -VendorAmmo: 102, -VendorReagent: 235 Fix: Track all vendors present in vendoritems.json in a HashSet regardless of whether Phase DB changed their flags (since "no VendorAmmo" is ground truth too). Phase 1 (ApplyFlags), Phase 2 (ApplyFlagsBySubName), and Phase 3 (ApplyKeywordClassification) now skip these vendors — their flags are already correct from ground truth. Only the application step needs guarding because Phase DB already corrected the NpcFlag values in-memory before Phase 1 runs. The contamination only happens when Phase 1 applies unioned flags back to ground-truth vendors. After fix (audit mismatches): SoM: -VendorAmmo: 0, -VendorReagent: 0 TBC: -VendorAmmo: 0, -VendorReagent: 0 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 212c215 commit 9a60e22

1 file changed

Lines changed: 768 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)