--- phase: research agent: research-advisor agent_version: 2 generated_at: 2026-06-30T02:41:09Z concerns: [] source_confidence: high workers_spawned: 5 --- # 프론트엔드 중복/이슈 분석 ## 주제 JSP 기반 프론트엔드 코드에서 컴포넌트 중복 구현, 유지보수·확장성 이슈 조사 --- ## 확정 중복 패턴 (이미 파악된 사실) ### JS 함수 4중 중복 — admin 4개 파일 | 함수 | 파일 | 영향도 | |---|---|---| | `notify(message)` | admin-console, admin-jam-list, admin-post-categories, admin-unity-feeds 각각 선언 | Medium | | `post(url, params)` | 동일 4개 파일. 구현이 약간씩 다름 (params 처리, _csrf 추가 여부) | High | | `handleResult(res)`, `handleError()` | 동일 4개 파일 동일 패턴 | Medium | 신뢰도: 확인됨 (입력 사실 보존) ### BibimbapModal.alert 체크 인라인 반복 - `window.BibimbapModal && typeof window.BibimbapModal.alert === 'function'` 패턴이 15개 이상 파일에 인라인 반복 - 신뢰도: 확인됨 (입력 사실 보존, 탐색 E에서 구체 위치 확인) ### CSRF 토큰 추출 방식 불일치 - admin-console/jam-scoring/jam-detail: `request.getAttribute("csrfToken")` rawCsrf 패턴 - admin-post-categories/admin-unity-feeds: `(String) request.getAttribute("csrfToken")` 캐스팅 - signup/login: `CsrfTokens.getOrCreate(request.getSession())` 직접 호출 - JS에서 일부는 `` 읽기, 일부는 `<%= csrfTokenJs %>` 직접 출력 - 신뢰도: 확인됨 (입력 사실 보존) --- ## CSS 중복 (탐색 A) ### 규모 요약 - 전체 27개 JSP 파일 중 26개에 인라인 `