Fb optic 1870 investigation: DO NOT MERGE #7389
Closed
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.
This pull request introduces a significant improvement to the stability of the
AppStoreandTabStoreby adding checks for theisAlivestate from themobx-state-treelibrary. These changes ensure that operations are not performed on instances that have been destroyed, preventing potential runtime errors. Additionally, theisAlivecheck has been applied consistently across views, actions, and flows in both stores.Stability Enhancements:
AppStoreUpdates:isAlivechecks to computed properties likeisLabeling,currentView, anddataStoreto prevent accessing properties of destroyed instances. [1] [2] [3]startPolling,setMode, andremoveActionwithisAlivechecks to ensure they are only executed on valid instances. [1] [2]setTask,fetchProject, andfetchUsersto return early if the instance is no longer alive. [1] [2] [3]TabStoreUpdates:isAlivechecks to views likeall,canClose, andcolumnsto prevent returning invalid data.setSelected,deleteView, andaddVieware only executed when the instance is alive. [1] [2] [3]saveView,updateViewOrder, andduplicateViewwithisAlivechecks to avoid modifying destroyed instances. [1] [2] [3]These changes collectively enhance the robustness of the application by preventing operations on invalid or destroyed store instances.