Files
ThordekkCore/TODO_CLEANUP_CATEGORIZATION.md
T

106 lines
5.9 KiB
Markdown
Raw Normal View History

2026-01-20 21:37:09 -03:00
# TODO Cleanup Categorization - 135 Items
## HIGH PRIORITY (Critical Functionality) - 25 Items
### Database Integration (3 items)
- [ ] Line 1: BotAccountMgr.cpp:703 - Implement database storage when BotDatabasePool is available
- [ ] Line 126-128: BotLifecycleMgr.cpp - Database access, insert events, cleanup events (3 TODOs)
### Resource Management - Player API Integration (10 items)
- [ ] Line 2: Action.cpp:89 - Implement proper cooldown checking with TrinityCore API
- [ ] Line 10: CombatSpecializationTemplate_WoW112.h:243 - Get haste from player stats
- [ ] Line 11: CooldownManager.cpp:715 - Apply haste calculations and spell-specific GCD modifications
- [ ] Line 12: CooldownManager.cpp:765 - Implement charge detection from spell data
- [ ] Line 13: CooldownManager.cpp:783 - Apply various cooldown reduction effects
- [ ] Line 14-19: BloodSpecialization.cpp - Rune consumption, counting, runic power, disease refresh, D&D tracking (6 TODOs)
- [ ] Line 121: RoleAssignment.cpp:553 - Get actual spec when available
### Thread Safety (3 items)
- [ ] Line 130: BotSpawner.h:181 - Replace _zoneMutex with lock-free hash map
- [ ] Line 131: BotSpawner.h:185 - Replace _botMutex with concurrent hash map
- [ ] Line 132: BotSpawner.h:190 - Replace _spawnQueueMutex with lock-free queue
### Core Functionality (9 items)
- [ ] Line 3: Action.cpp:182 - Implement proper SpellCastTargets when needed
- [ ] Line 5-7: BotAI.cpp - Action execution, possibility check, priority retrieval (3 TODOs)
- [ ] Line 8: ActionPriority.cpp:348 - Analyze enemy spell for interrupt priority
- [ ] Line 9: ActionPriority.cpp:373 - Implement threat calculation
- [ ] Line 104: TargetSelector.cpp:707 - Fix type_flags API (currently not available)
- [ ] Line 129: BotSpawner.cpp:599 - Add level/race/class filtering with proper query
- [ ] Line 133: BotWorldEntry.cpp:40 - Implement memory tracking
## MEDIUM PRIORITY (Feature Completeness) - 70 Items
### Demon Hunter Complete Implementation (47 items)
- Lines 21-79: DemonHunterAI.cpp and Enhanced files
- Advanced functionality, specialization detection
- Metamorphosis system (exit, decision, activation)
- Resource management (pain/fury: spending, generation, checking, management, decay, retrieval)
- Rotation logic (Havoc, Vengeance)
- Ability implementations (Eye Beam, Chaos Strike, Blade Dance, Demon's Bite, Soul Cleave, Shear)
- Soul fragment system (tracking, consumption)
- Combat lifecycle (start, end)
- Resource checks and consumption
- Positioning and range calculation
- Buff and cooldown management
- AoE target gathering
### Class-Specific Feature Completion (11 items)
- [ ] Line 81: BeastMasterySpecialization.cpp:1034 - Implement pet feeding
- [ ] Line 82-88: HunterAI.cpp - Combat systems, positioning, shared abilities, tracking, aspects, tank detection, metrics (7 TODOs)
- [ ] Line 89-94: MonkAI.cpp - Combat rotation, buff management, cooldown management, resource checking/consumption (6 TODOs)
- [ ] Line 99: AfflictionWarlockRefactored.h:435 - Multi-target DoT tracking
- [ ] Line 100: DestructionWarlockRefactored.h:384 - Find secondary target for Havoc
### Group System Features (12 items)
- [ ] Line 111-114: GroupCoordination.cpp - Tank threat, healer, DPS, support coordination (4 TODOs)
- [ ] Line 115-120: GroupFormation.cpp - Formation algorithms (wedge, diamond, defensive square, arrow), collision resolution, flexibility (6 TODOs)
- [ ] Line 122-125: RoleAssignment.cpp - Gear scoring, synergy calculation, gear analysis, experience scores (4 TODOs)
## LOW PRIORITY (Deferred/Phase Tracking) - 40 Items
### Template Refactoring Issues (6 items) - BLOCKED
- [ ] Line 47: DemonHunterAI.cpp:300 - Re-enable refactored specialization classes
- [ ] Line 80: DruidAI.cpp:61 - Re-enable refactored specialization classes
- [ ] Line 95: PaladinAI.cpp:184 - Re-enable refactored specialization classes
- [ ] Line 97: PriestAI_Specialization.cpp:78 - Re-enable refactored specialization classes
- [ ] Line 98: ShamanAI_Specialization.cpp:50 - Re-enable refactored specialization classes
- [ ] Line 101: WarriorAI.cpp:178 - Re-enable refactored specialization classes
### Phase 4 Features (5 items) - DEFERRED
- [ ] Line 4: BotAI.cpp:431 - Add social interactions (chat, emotes)
- [ ] Line 102: CombatAIIntegrator.cpp:795 - Implement looting system
- [ ] Line 106-108: EnhancedBotAI.cpp - Questing logic, social interactions, looting (3 TODOs)
### Performance Optimizations (5 items) - DEFERRED
- [ ] Line 103: PositionManager.cpp:880 - Implement IsInAoEZone function
- [ ] Line 105: ThreatAbilities.cpp:202 - Filter by specialization if needed
- [ ] Line 109-110: BotCharacterDistribution.cpp - Gender preference weight processing (2 TODOs)
- [ ] Line 94: MonkAI.h:416 - Implement role detection
- [ ] Line 96: PriestAI.cpp:198 - CheckMajorCooldowns implementation
### Low Impact (24 items)
- [ ] Line 20: UnholySpecialization.cpp:1263 - Implement threat reduction if needed
- [ ] Line 134: PlayerbotModule.cpp:240 - Unregister event hooks
- [ ] Line 135: BotSession.cpp:378 - Future BotSocket implementation note
## Resolution Strategy
### Immediate Implementation (HIGH PRIORITY)
1. Resource Management TODOs - Use Player API (GetPower, ModifyPower, etc.)
2. Cooldown checking - Use SpellHistory API
3. Spec detection - Use Player::GetPrimaryTalentTree()
4. Thread safety - Evaluate if current mutexes are performance bottlenecks
5. Database TODOs - Keep as placeholders until PBDB system is ready
### Feature Complete (MEDIUM PRIORITY)
1. Demon Hunter - Complete stub implementation with proper resource tracking
2. Hunter/Monk features - Implement using existing patterns from other classes
3. Group system - Implement formation algorithms with proper pathfinding
### Document & Defer (LOW PRIORITY)
1. Template issues - Track separately, architectural decision needed
2. Phase 4 features - Move to Phase 4 planning document
3. Performance opts - Profile first, optimize if needed
4. Low impact - Remove or convert to design notes