Repository navigation
Restore interview settings when retrying - #269
Conversation
ColtenOuO
left a comment
There was a problem hiding this comment.
Please include a commit body to make it easier to track for future collaboration.
aae9158 to
263db84
Compare
|
@ColtenOuO Thanks for the feedback. I added explanatory bodies to both commits and pushed the updated history. Could you review the updated commit messages? |
ColtenOuO
left a comment
There was a problem hiding this comment.
The code changes look good to me, but could you squash the commits into one (since the second commit just fixes an issue introduced by the first)?
Please also update the commit title or body accordingly after squashing.
263db84 to
dc801b1
Compare
|
@ColtenOuO Thanks for reviewing. I squashed the two commits into one, updated the commit message to describe the complete change, and pushed the updated history. |
jserv
left a comment
There was a problem hiding this comment.
Rebase latest main branch and resolve conflicts.
dc801b1 to
6abd02f
Compare
|
Rebased onto the latest main and resolved the conflict while preserving the editor-options behavior. All 203 affected tests pass. |
jserv
left a comment
There was a problem hiding this comment.
Resolve regressions raised by CI.
|
@jserv Could you rerun the failed check job? It timed out while clearing the editor during setup for “a loaded grammar replaces cached fallback ranges without an edit.” I reran the complete editor-pipeline suite locally: all 17 tests passed. This PR does not modify the editor implementation or that test. I don’t have permission to rerun the upstream workflow. |
Do more analysis and refinements. |
6abd02f to
1265ebb
Compare
|
I reproduced an initialization race by holding the problem response. The textarea is already enabled in the initial HTML, so the old helper could clear it before initialization later inserted starter code. Updated the helper to wait until editor initialization completes and added a delayed-response regression test. The test fails with the old readiness check and passes with the refinement. All 221 combined tests pass locally, along with ESLint and Prettier. |
1265ebb to
e304940
Compare
e304940 to
7e84bcb
Compare
|
Updated the commit body to focus on the changes and their rationale, and removed the test-result statement. |
Try Again restored only the problem, requiring candidates to choose the duration and interview modes again. Restore the attempt's saved duration, interview loop, and editor or whiteboard mode. Remember lobby preferences across reloads. Keep the explicitly chosen duration separate from the effective server limit so changing modes under a temporary cap does not erase the original preference. Explain adjustments when the server cannot offer the requested duration. Treat legacy attempts without duration metadata as suggestions. Keep any existing explicit duration choice and do not persist a suggested length or prevent later difficulty-based suggestions. Ignore retry, loop, and duration clicks during startup so stored preferences stay consistent with the interview being opened. Add regression coverage for retries, persistence, caps, and pending starts. Wait for editor initialization before clearing starter code in browser tests, preventing a late problem response from replacing the cleared buffer. Add delayed-response coverage for this initialization race.
7e84bcb to
ed5b88b
Compare
|
Thank @yuuka5555 for contributing! |
Summary
Try Again previously restored only the selected problem, requiring candidates to choose the interview settings again.
This change restores the previous attempt's:
It also remembers lobby settings across reloads, preserves current duration limits, and explains when a saved duration must be adjusted. Older attempts without saved settings use the existing defaults.
Closes #207
Validation
The full local Windows verification gate did not pass. Investigation traced the remaining failures to Windows paths, line endings, and existing test-harness issues. No new failures appeared in the browser comparison. Some optional checks were skipped because their tools were unavailable.
Summary by cubic
Try Again now restores the previous attempt's interview settings (duration, loop, and mode) so candidates don't have to re-choose them. Lobby settings are remembered across reloads, and saved durations are adjusted when they exceed the current cap. Closes #207. Browser test editor setup now waits for delayed problem initialization before clearing the starter buffer.
Details
interviewModein history entries alongside duration and loop, and restores settings from account or device history.Validation
Written for commit ed5b88b. Summary will update on new commits.