fix(interview): 자기소개 답변 오롤백 방지 (#136 회귀)#137
Merged
Merged
Conversation
#136(#9 라이브 답변 롤백)의 회귀를 회의적 리뷰(3/3)가 발견해 수정. 문제: 낙관적 답변 프루닝 트리거는 SESSION_MESSAGE(→메시지 리페치→pendingAnswers content 매칭)뿐인데, 자기소개(모든 세션 첫 답변)는 placeholder/에코 없이 SelfIntroAnsweredEvent 만 발행되고 첫 SESSION_MESSAGE 는 Pro 모델 질문 풀 생성 이후에야 온다. 풀 생성이 10초를 넘기면 성공한 자기소개 답변에 ACK 타이머가 발화 → 오롤백 + 입력 복원 + 실패 토스트, 재제출은 SESSION_INVALID_STATE 로 드롭되어 오류 루프. 수정: 타임아웃 시 연결이 'open'이면 전송 실패가 아니라 '서버가 아직 에코 전'이므로 롤백하지 않는다(이후 SESSION_MESSAGE 가 프루닝). 연결이 끊긴(closed/connecting) 경우에만 진짜 실패로 보고 롤백. connectionRef 미러 추가. 일반 꼬리질문(즉시 에코)은 무영향, 진짜 전송 실패(연결 끊김) 안전망도 유지. build 통과, lint 신규 에러 없음. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
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.
변경 사항
#136(#9 라이브 텍스트 답변 롤백) 회의적 max 리뷰(3/3 검증)에서 발견한 HIGH 회귀 수정.
문제 (모든 세션의 첫 답변)
낙관적 답변은
SESSION_MESSAGE→ 메시지 리페치 →pendingAnswerscontent 매칭으로만 프루닝된다. 일반 꼬리질문은 백엔드가 placeholder를 즉시 INSERT+SESSION_MESSAGE발행 → sub-second 프루닝. 그러나 자기소개(첫 질문) 답변은isSelfIntroduction()분기라 에코 없이SelfIntroAnsweredEvent만 발행되고, 첫SESSION_MESSAGE는 Pro 모델 질문 풀 생성이 끝난 뒤에야 온다. 풀 생성이 10초를 넘기면(품질 모델·콜드스타트에서 흔함) 성공한 답변에 ACK 타이머가 발화 → 오롤백 + 입력 복원 + 실패 토스트. 재제출은SESSION_INVALID_STATE로 드롭되어 오류 루프.수정 (프론트, contained)
타임아웃 시 연결이
open이면 롤백하지 않는다 — 전송 실패가 아니라 '서버가 아직 에코 전'이므로(자기소개 답변은 풀 생성 후 SESSION_MESSAGE가 프루닝). 연결이 끊긴(closed/connecting) 경우에만 진짜 실패로 보고 롤백.connectionRef미러 추가.build 통과, lint 신규 에러 없음. 프론트 전용.
🤖 Generated with Claude Code