BABUNI.DEV

GatherMap / Roadmap

GatherMap: Roadmap

GatherMap — verification and development roadmap

Implemented in source as of October 26, 2026

This is a source inventory. No live-game behavior, interaction tool, migration run or regression-suite result was independently verified during this documentation audit.

P0 — verify data integrity and compatibility

  1. Run tests/test_interact_hook.py in an isolated environment with Python and lupa providing Lua 5.1. Verify old shared-upvalue recursion is detected in the fixture and current wrapper passes. Record exact versions and console output.
  2. Run tests/test_upgrade.ps1 in a trusted PowerShell environment against synthetic temporary fixtures. Ensure it preserves Unicode, saves originals, creates backups and refuses existing new files and unsafe folder names.
  3. Test the helper against a copy of old real-world SavedVariables, never the only surviving file; confirm both account-wide and per-character file cases. Ensure the legacy variable name matches the old TOC.
  4. Launch WoW with the intended 1.12-compatible client, confirm TOC/file/icon loading and that the code's English event text and profession lookup actually work.
  5. Create a successful herb/mining/tree interaction and a failed/interrupted interaction; verify only successes are recorded and duplicates merge as intended.
  6. Run normal interaction and the optional Interact hotkey in separate tests; add another addon that wraps Interact to check hook-chain behavior and absence of recursion.
  7. Test logout, /reload, multiple characters, schema-version-1/2 upgrades, and account-wide sharing without losing old records.
  8. Test unknown-tooltip custom resources, missing names/icons, delayed loot, two resources of same name nearby, and gathering while standing at map coordinate (0,0) or in unsupported map areas.

P1 — user experience and precise map behavior

  1. Verify four-dot corner alignment across minimap zoom, indoor/outdoor, custom zone sizes and selected world-map zones.
  2. Test marker grouping: same resource/overlapping rectangles should merge transitively; different kinds or names remain separate; worst difficulty wins inside a merged group.
  3. Test both visibility switches independently. Hidden minimap pins must not prevent learning; world-map checkbox should persist across reload.
  4. Test profession filtering across characters who have/do not have Herbalism, Mining, Survival, Skinning or Lockpicking. Treasure should remain visible irrespective of those skills.
  5. Test difficulty threshold boundaries: red/orange at requirement, yellow at +25, green at +50, gray at +100; unknown purple. Verify chest-tier level color boundaries separately.
  6. Test the moving-creature skinning case: stored location should be described as a hunting spot, not permanent node.
  7. Verify the built-in 29 herb artwork files load and correct inventory/client fallbacks resolve for mining, skinning, trees and chests.
  8. Validate every configured custom outdoor map, especially zone aliases and map index shifts; capture screenshots with test descriptions.
  9. Check usability with dense nodes, 300-group display cap, pointer hover tooltips and 85% gray opacity.

P2 — maintainability, scope and release

  1. Profile redraw frequency, grouping costs and the saved-node count on slow client hardware; the current update loop recomputes visible groups frequently.
  2. Verify English-only GetSkillLineInfo names, CHAT_MSG_SPELL_SELF_BUFF grammar and chest-name substring rules on localized clients.
  3. Preserve upstream Gatherer/MetaHunt credits and resolve third-party artwork and code licensing, plus this repository's currently absent LICENSE, before wider redistribution.
  4. Clarify old project naming in portfolio materials: Octo Gather historically, Gather Map now.
  5. Add carefully scoped automated tests for grouping, difficulty thresholds, and learning-state transitions where feasible; mock tests do not substitute for live WoW.
  6. Record each user-observed game result and any actual code changes in DEVLOG, CHANGELOG and DECISIONS with a commit.

Open creative decisions (not approved)

Keep existing interaction concepts intact until Babuni.dev chooses otherwise.

Document information

Creator and approval authority: Babuni.dev
Status of this file: Technical verification backlog and possible alternatives, not creator-approved implementations.

View source