📌 Description
문서 API QA(시나리오 3) 중 발견했습니다. 프론트에서 문서를 업로드하거나 새 버전을 올려도 화면이 갱신되지 않아 사용자가 결과를 볼 수 없습니다. 수동 새로고침해야만 반영됩니다.
브라우저 네트워크 로그로 확인한 내용:
POST /api/documents → 201 (이후 목록 refetch 없음)
POST /api/documents/14/versions → 201 (이후 상세 refetch 없음)
PATCH /api/documents/14 → 204 → GET detail/status/content 재요청 ✅
DELETE /api/documents/14 → 204 → /documents 리다이렉트 + 목록 재요청 ✅
즉 PATCH/DELETE는 정상이고 업로드 경로 2개만 갱신이 누락됐습니다. 원인은 DocGridApp에서 UploadModal의 onSuccess가 notify(토스트)에만 연결돼 있어, 갱신 신호가 DocumentsPage/DocumentDetailPage까지 도달하지 않는 구조입니다.
실제 재현: 새 버전 업로드 후 백엔드는 currentVersion=v2/INDEXED인데 화면은 계속 v1을 표시했습니다.
폴링 부재
문서 상세의 "인덱싱 진행 상태" 카드에 "실시간 조회" 배지가 붙어 있지만 실제 폴링이 없습니다. 20초간 관찰하는 동안 /status 호출이 0건이었습니다. 인덱싱이 비동기라 폴링이 없으면 사용자는 완료 시점을 영원히 볼 수 없습니다.
✅ To-do
✅ 완료 기준
📌 Description
문서 API QA(시나리오 3) 중 발견했습니다. 프론트에서 문서를 업로드하거나 새 버전을 올려도 화면이 갱신되지 않아 사용자가 결과를 볼 수 없습니다. 수동 새로고침해야만 반영됩니다.
브라우저 네트워크 로그로 확인한 내용:
즉
PATCH/DELETE는 정상이고 업로드 경로 2개만 갱신이 누락됐습니다. 원인은DocGridApp에서UploadModal의onSuccess가notify(토스트)에만 연결돼 있어, 갱신 신호가DocumentsPage/DocumentDetailPage까지 도달하지 않는 구조입니다.실제 재현: 새 버전 업로드 후 백엔드는
currentVersion=v2/INDEXED인데 화면은 계속 v1을 표시했습니다.폴링 부재
문서 상세의 "인덱싱 진행 상태" 카드에 "실시간 조회" 배지가 붙어 있지만 실제 폴링이 없습니다. 20초간 관찰하는 동안
/status호출이 0건이었습니다. 인덱싱이 비동기라 폴링이 없으면 사용자는 완료 시점을 영원히 볼 수 없습니다.✅ To-do
DocGridApp에refreshKey카운터 추가하고UploadModal.onSuccess에서 증가DocumentsPage/DocumentDetailPage가refreshKey를 prop으로 받아load의존성에 포함 → 업로드 성공 시 자동 refetchDocumentDetailPage에 조건부 폴링 추가 —processingVersion != null일 때만/status를 2~3초 간격 호출INDEXED뿐 아니라FAILED도 포함 (무한 폴링 방지)useEffectcleanup으로 언마운트 시 타이머 정리✅ 완료 기준
/status반복 호출이 중단됨).