Bump commit to 8e7ac81 (v0.3.2 — revert bank handler, yield blacklist, gate-heartbeat fix)#11701
Merged
runelite-github-app[bot] merged 1 commit intoApr 29, 2026
Conversation
|
Internal use only: Reviewer details Maintainer details |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
v0.3.2 changeset:
Revert v0.3.0 bank handler architecture. Empirical settle: Endless Harvest auto-bank on a fresh OSRS Leagues alt produces zero detection on v0.3.1 (no overlay, no events recorded). That's the architecture's exact intended target case, and it failed — the load-bearing assumption (bank events fire while bank UI is closed) is empirically false. Full revert across
MiningSuccessGate,MiningStatsPlugin,InventoryDelta(~80 LOC removed). Direct-to-bank auto-deposit relics now documented as a known limitation; recovering them requires screen-scraping the chat log or polling the bank container, both out of scope.Yield blacklist for categorically-non-mining items. OSRS Leagues coin-drop and smithing relics inflated v0.3.1 Ores/hr to ~375k and collapsed inventory ETA to 0s via the
freeSlots / (oresPerHour / 3600)formula. Curated exclude-set inInventoryDelta.itemsGainedcovering coins (995), all furnace bars (bronze→rune + gold + silver), uncut gems from mining (sapphire/emerald/ruby/diamond/dragonstone), clue geodes (all four tiers), clue scrolls (all five tiers including Leagues beginner), scroll box (beginner). Negative-filter only — anything not on the list still passes through, preserving v0.2.0's "future Jagex yield won't silently zero-rate" property.Animation-gate heartbeat (regression fix). v0.3.1 base-game testing surfaced two display regressions. (1) Title indicator never turned green during active mining:
AnimationChangedfires only on animation-ID transitions, but pickaxe animations frequently loop in-place during continuous mining without re-emitting an ID change, leaving the gate'slastMiningAnimationMsfrozen at the first swing's transition. Added@Subscribe onGameTickheartbeat that pollsclient.getLocalPlayer().getAnimation()per game tick (~600ms) and refreshes the gate. Mirrors the first-partyminingplugin's tick-based detection pattern.Wall-clock auto-hide (regression fix). (2) Overlay never auto-hid after the player walked away from mining:
RollingWindow.currentActiveTimecaps the trailing gap atafkThresholdMs, freezing bothcurrentActiveand the rate cutoff once the AFK threshold elapses; events stayed inside the window forever. AddedRollingWindow.hasEventsWithinWallTimewhich scans the events deque tail-first against wall-clock; overlay swapsrate > 0for the wall-clock check. Rate calculation itself is unchanged (still active-time-based, which is the right semantic for "mining rate excluding AFK").Tests: 85 pass locally (IntelliJ). Added per-blacklist-category fixtures in
InventoryDeltaTest, 4 heartbeat tests including a 30-tick continuous-mining simulation inPluginEventRoutingTest, 7 wall-clock tests inRollingWindowTest(including the regression guard that proves wall-clock check drains correctly while active-time-based rate stays > 0 post-AFK). Stripped 13 v0.3.0 bank-watch tests; un-@Ignore'dbankEventBetweenXpAndInventory_doesNotStealInventoryEmit(passes naturally post-revert). Inventory-only Path B tests unchanged.