fix(motherlode): recover from logout interruptions#489
Open
JogOnJohn wants to merge 1 commit into
Open
Conversation
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.
Summary
This PR hardens Motherlode Mine against logout/break interruptions so the script does not remain enabled but silently idle after the player logs back in.
It builds on the recent upstream scheduler guard by adding the recovery pieces needed for the observed failure mode:
worldViewreadinessEMPTY_SACKresumable across scheduled ticks instead of a blocking loop1.9.7because upstream already contains1.9.6Context
The original issue presented after scheduled BreakHandler logout/login cycles. MLM stayed marked active after login, but produced no further transitions until manually restarted. One captured failure included a null actor/world-view path during logout, and another occurred while the script was in
EMPTY_SACKwith no explicit MLM exception before it became silent.Upstream
developmentrecently added a broadtry/catcharound the MLM loop, which prevents the scheduler from dying outright. This PR keeps that direction but adds explicit state reset and lifecycle checks so the next tick starts from a clean, valid runtime state instead of continuing with stale workflow flags.Test plan
chsami/Microbot-Hub:developmentafter upstream Motherlode changes and resolved the MLM conflict.MINING,DEPOSIT_HOPPER,EMPTY_SACK, andFIXING_WATERWHEELtransitions.Notes
This is intentionally scoped to the Motherlode Mine plugin. The separate QoL/Wintertodt null-player exceptions seen during logout are not addressed here.