fix: switch Job Details UI out of manual selection immediately after submit (closes #182) - #183
Merged
Merged
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.
Automated Fix
Fixes #182
Changes
The Job Details page kept showing the "▶ Continue Rip" button (and the track checkbox column) after a manual track selection was submitted, until a manual page refresh. Root cause:
submitManualSelection()calledlocation.reload()immediately after the API returned success, but the pipeline needs several DB round-trips before the job status actually leavesmanual_selection— so the reload re-rendered the button. The SignalR live-update path also never removed the checkbox column.submitManualSelection()now optimistically removes the manual-selection UI (Continue button + track checkboxes) the moment the API confirms success, then pollsGET /api/jobs/{id}until the job leavesmanual_selectionbefore reloading (with a ~10s fallback so the page can never get stuck).updateActionButtons()now strips the manual-selection UI whenever the status changes away frommanual_selection(covers the SignalR path, e.g. timeout → failure), and won't re-add the Continue button if a stale broadcast arrives after the user already submitted.Testing
JobDetail_ManualSelectionState_RendersSelectionUiAndSubmitHelpers