# SessionGoldTracker — STATUS.md ## Completed Steps - [x] 1. Skeleton - [x] 2. DB init - [x] 3. Money tracking - [x] 4. Frame ## In Progress - [ ] 5. Drag and save position ## Pending - [ ] 6. Reset button - [ ] 7. Slash command - [ ] 8. Lifetime total - [ ] 9. Polish ## API Verification Status | API | Source | Verified? | |---|---|---| | `GetMoney()` | PlayerScriptDocumentation.lua | ✅ VERIFIED | | `GetTime()` | SystemTimeDocumentation.lua | ✅ VERIFIED | | `MONEY_DISPLAY_UPDATING` | — | ❌ NOT FOUND (unverified) | | `PLAYER_LOGIN` | SystemDocumentation.lua | ✅ VERIFIED | | `PLAYER_MONEY` | CurrencyInfoDocumentation.lua | ✅ VERIFIED | | `PLAYER_LOGOUT` | SystemDocumentation.lua | ✅ VERIFIED | | `CreateFrame` | FrameAPI docs | ✅ VERIFIED | | `frame:SetMovable(true)` | SimpleFrameAPIDocumentation.lua | ✅ VERIFIED | | `frame:EnableMouse(true)` | SimpleScriptRegionAPIDocumentation.lua | ✅ VERIFIED | | `frame:RegisterForDrag("LeftButton")` | SimpleFrameAPIDocumentation.lua | ✅ VERIFIED | | `frame:SetScript("OnDragStart", ...)` | Frame scripts | ✅ VERIFIED | | `frame:SetScript("OnDragStop", ...)` | Frame scripts | ✅ VERIFIED | | `frame:GetPoint()` | SimpleScriptRegionResizingAPIDocumentation.lua | ✅ VERIFIED | | `frame:SetPoint()` | SimpleScriptRegionResizingAPIDocumentation.lua | ✅ VERIFIED | | `frame:SetClampedToScreen(true)` | SimpleFrameAPIDocumentation.lua | ✅ VERIFIED | | `SlashCmdList` / `SLASH_GT1` | SlashCommandsRegistry.lua.annotated.lua | ✅ VERIFIED | | `GetMoneyString()` | QuestInfo.lua, MerchantFrame.lua, etc. | ✅ VERIFIED | | `SecondsToTime()` | SharedBasicControls.lua, Blizzard_TimeManager.lua | ✅ VERIFIED | ## Design Decisions - **Gold per hour**: Shows "---" until 60 seconds have elapsed - **Frame visible on login**: No — hidden by default, toggled with `/gt` - **Session survives /reload**: Yes — restored from `lastSession` in SavedVariables - **Lifetime total**: Accumulated on every positive money change (not only at logout), so Reset doesn't lose gold earned before reset ## Known Issues (None yet)