Actions
개선 #793
진행중[개선] 맞춤 판정 키워드 선택 시 전역 키워드 일괄 추가 버튼 추가
개선 #793:
[개선] 맞춤 판정 키워드 선택 시 전역 키워드 일괄 추가 버튼 추가
시작일:
2026/07/01
완료일:
진척도:
0%
추정시간:
설명
배경¶
새 모니터링 생성 화면(MonitoringCreatePage)에서 긍부정 판단을 활성화하면 판정 키워드 범위를 전역 키워드 / 맞춤 키워드 중 선택할 수 있다. 현재 맞춤 키워드를 선택하면 긍정/부정 키워드를 처음부터 하나씩 직접 입력해야 하며, 전역 키워드를 출발점으로 삼아 일부만 추가·수정하는 흐름이 불편하다.
현재 동작¶
-
sentimentKeywordMode가GLOBAL이면 전역 긍정/부정 키워드를 미리보기로만 보여준다. -
CUSTOM이면SentimentKeywordEditor로 긍정/부정 키워드를 직접 입력한다. - 맞춤 키워드 영역에는 "전역 기본값으로 되돌리기" 버튼만 있어, 누르면
GLOBAL모드로 전환되고 입력한 맞춤 키워드가 모두 비워진다.
요구사항 (신규 기능)¶
- 맞춤 키워드(
CUSTOM) 모드일 때, 전역 키워드를 맞춤 키워드 목록에 한꺼번에 추가할 수 있는 버튼을 추가한다. - 이 버튼은 모드를
CUSTOM으로 유지한 채, 전역 긍정 키워드는 맞춤 긍정 목록에, 전역 부정 키워드는 맞춤 부정 목록에 병합한다. (기존 "전역 기본값으로 되돌리기"와 달리 GLOBAL로 전환하지 않는다.) - 이미 목록에 존재하는 키워드는 중복 추가되지 않도록 정규화/중복 제거를 적용한다. (
normalizeSentimentKeywordList/upsertSentimentKeyword활용) - 사용자가 직접 입력해 둔 기존 맞춤 키워드는 보존한 상태에서 전역 키워드가 뒤에 추가된다.
대상 파일¶
-
codes/app/web-front/src/page/monitor/MonitoringCreatePage.tsx- 맞춤 키워드 액션 영역(현재 "전역 기본값으로 되돌리기" 버튼 옆, 810~843 라인 부근)에 "전역 키워드 전체 추가" 버튼 추가
- 전역 소스:
positiveKeywords/negativeKeywords, 대상:draft.positiveSentimentKeywords/draft.negativeSentimentKeywords
-
codes/app/web-front/src/page/monitor/monitoringSentimentKeywordUtils.ts- 필요 시 전역 키워드 병합용 순수 헬퍼 추가 및 단위 테스트 보강(
monitoringSentimentKeywordUtils.test.ts)
- 필요 시 전역 키워드 병합용 순수 헬퍼 추가 및 단위 테스트 보강(
수용 기준 (AC)¶
- 맞춤 키워드 모드에서 "전역 키워드 전체 추가" 버튼이 노출된다. (전역 모드에서는 노출되지 않음)
- 버튼 클릭 시 전역 긍정/부정 키워드가 각각 맞춤 긍정/부정 목록에 병합되고, 모드는
CUSTOM으로 유지된다. - 이미 존재하는 키워드는 중복으로 추가되지 않으며 공백/트림 정규화가 적용된다.
- 기존에 입력한 맞춤 키워드는 유지된다.
- 전역 키워드가 비어 있을 경우 버튼 클릭이 안전하게(no-op) 처리된다.
- 관련 단위 테스트가 추가/보강되고 기존 테스트가 모두 통과한다.
참고¶
- 관련 선행 작업: #783 (모니터링 생성 검색어 입력 UX 개선)
주연 장이(가) 약 14시간 전에 변경
구현 완료 및 feature 브랜치 릴리즈.
[변경 내용]
- 맞춤(CUSTOM) 판정 키워드 모드에서 전역 긍정/부정 키워드를 맞춤 목록에 한 번에 병합하는 '전역 키워드 전체 추가' 버튼 추가.
- 순수 헬퍼 mergeSentimentKeywordLists 추가 (기존 키워드 보존 + 전역 append + 트림/중복 제거). 전역 키워드가 없으면 버튼 비활성화. CUSTOM 모드 유지.
[교차 검증]
- cleanup/optimization/regression 3개 독립 리뷰 교차 검증 완료. AC 6/6 충족.
- optimization 1건(이중 정규화), regression 1건(편집 state 미리셋) 모두 검토 결과 기각(전자는 DRY 저하·성능 무의미, 후자는 append-only라 인덱스 보존되어 오탐). 실제 결함 0건 → 추가 수정 없음.
[검증]
- web-front 단위/회귀 테스트 27/27 통과 (신규 merge 테스트 5케이스 포함).
- 변경 파일 tsc --noEmit 클린.
[릴리즈]
- 브랜치: feature/793-global-keyword-bulk-add
- 커밋: 19f32c00548e6bd7c19d5d09d0951bda70379267
- 커밋 URL: https://ap-northeast-2.console.aws.amazon.com/codesuite/codecommit/repositories/haap_poc/commit/19f32c00548e6bd7c19d5d09d0951bda70379267?region=ap-northeast-2
- main 직접 푸시는 하네스 게이트로 차단되어 feature 브랜치로 푸시함. main 반영(머지) 후 최종 완료 처리 예정.
Actions