fix(strr-examiner-web): clear stale confirmations on navigation - #1820
Draft
Jacky-Pham wants to merge 1 commit into
Draft
Jacky-Pham wants to merge 1 commit into
Jacky-Pham wants to merge 1 commit into
Conversation
|
This branch has not been deployed
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.



A confirmation opened on one Examiner record can remain actionable after navigation. A real router/modal regression shows an unassignment opened for registration 222 sending a PUT for registration 111 after Back navigation. Moving between records on the same route also bypasses the existing unsaved-note leave guard.
Remove the current modal and its confirmation callbacks immediately before leaving a record without unsaved notes, and apply the existing keep/discard-note guard to route-path changes as well as route leaves. Query-only changes remain unrestricted. Confirmed navigation replaces the deferred action, while keeping the note stays on the current record.
Validation: 28 new cases exercise real application/registration pages, store, both action-control modes, the Nuxt UI modal and Vue Router memory-history Back navigation. Twelve fail on the parent source. Delaying closing animation frames also reproduces eight stale-action failures if cleanup only closes the modal; immediate reset removes that transition window. All 96 targeted cases pass after the repair, including normal confirmation/cancellation, note preservation/discard and query-only updates. Lint reports only the two existing store warnings. All 361 Examiner unit tests pass locally. Paired strict checking retains the same 140 existing diagnostics, with none introduced. Standalone CI passes lint, 361 tests and build. Combined CI passes all five frontend lint/test/build jobs with 936 tests, including 378 Examiner tests. Combined strict checking retains 364 existing diagnostics, with none introduced.
Stacked on #1819. Tests use synthetic APIs and stub unrelated page content; authenticated browser verification remains outstanding.