release: 2026-04-17.3 (19건 커밋) #77

병합
nankyung develop 에서 main 로 5 commits 를 머지했습니다 2026-04-17 07:36:56 +09:00
소유자

릴리즈 요약

본 MR은 develop에 누적된 19건 커밋 / 98 파일 / +3734/-2703main에 반영합니다. 포함 릴리즈: [2026-04-17] + [2026-04-17.2] + [2026-04-17.3].

주요 변경

추가 (feat)

  • GEAR_IDENTITY_COLLISION 탐지 패턴 — prediction 분석 엔진에 어구 정체성 충돌 탐지 로직 신설 + 백엔드 /api/analysis/gear-collisions + 프론트 전용 화면. prediction_events 허브 카테고리 등록, dedup 367분
  • gearCollisionStatuses 카탈로그 + performanceStatus 카탈로그 등록 (design-system 쇼케이스 자동 노출)

변경 (refactor, perf)

  • 디자인 시스템 SSOT 일괄 준수 (30파일) — raw button/input/select/tab/checkbox → 공통 컴포넌트 치환, 라이트/다크 색상 쌍 대응, StatBox intent 기반 재설계
  • i18n 하드코딩 한글 제거 — alert/confirm/aria-label 40+건을 t('aria.*') / t('error.*') / t('dialog.*') 로 치환 (common.json ko/en 52키 추가)
  • iran 백엔드 프록시 잔재 제거 — dead class + application.yml 블록 정리, 아키텍처 다이어그램 현행화
  • 백엔드 계층 분리 — Controller 직접 주입 패턴 제거, Service 계층 + @Transactional(readOnly=true) 도입, RestClient Bean 통합
  • 감사 로그 보강 — EnforcementService + VesselAnalysisGroupService 쓰기 액션 @Auditable
  • alertLevels 카탈로그 확장 — 타입가드 / severity 헬퍼 / 마커 opacity·radius·tier 상수 신설
  • prediction 5분 사이클 안정화gear_correlation_scores_pkey 충돌 해소 (SAVEPOINT 격리)
  • 경량 분석 riskScore 해상도 — 45점 60.8% 고정 → 0% (11~40 구간 분산), vessel_type UNKNOWN 98.6% → 89.1%

문서 (docs)

  • CLAUDE.md 절대 지침 섹션 추가 — (1) 신규 브랜치 생성 전 origin/develop 동기화 강제, (2) frontend/ 작업 시 design-system.html 쇼케이스 규칙 전면 준수
  • 프로젝트 산출문서 2026-04-17 기준 정비 — architecture.md, sfr-traceability.md v3.0 재작성(531라인), sfr-user-guide.md 현황 갱신

테스트

  • CI/CD 빌드 통과
  • 프론트엔드 배포 후 디자인 시스템 준수 육안 확인
  • prediction 5분 사이클 안정성 재확인
  • 백엔드 API 회귀 테스트
## 릴리즈 요약 본 MR은 `develop`에 누적된 **19건 커밋 / 98 파일 / +3734/-2703**을 `main`에 반영합니다. 포함 릴리즈: `[2026-04-17]` + `[2026-04-17.2]` + `[2026-04-17.3]`. ## 주요 변경 ### 추가 (feat) - **GEAR_IDENTITY_COLLISION 탐지 패턴** — prediction 분석 엔진에 어구 정체성 충돌 탐지 로직 신설 + 백엔드 `/api/analysis/gear-collisions` + 프론트 전용 화면. `prediction_events` 허브 카테고리 등록, dedup 367분 - **gearCollisionStatuses 카탈로그** + **performanceStatus 카탈로그 등록** (design-system 쇼케이스 자동 노출) ### 변경 (refactor, perf) - **디자인 시스템 SSOT 일괄 준수 (30파일)** — raw button/input/select/tab/checkbox → 공통 컴포넌트 치환, 라이트/다크 색상 쌍 대응, StatBox intent 기반 재설계 - **i18n 하드코딩 한글 제거** — alert/confirm/aria-label 40+건을 `t('aria.*')` / `t('error.*')` / `t('dialog.*')` 로 치환 (common.json ko/en 52키 추가) - **iran 백엔드 프록시 잔재 제거** — dead class + application.yml 블록 정리, 아키텍처 다이어그램 현행화 - **백엔드 계층 분리** — Controller 직접 주입 패턴 제거, Service 계층 + `@Transactional(readOnly=true)` 도입, RestClient Bean 통합 - **감사 로그 보강** — EnforcementService + VesselAnalysisGroupService 쓰기 액션 `@Auditable` - **alertLevels 카탈로그 확장** — 타입가드 / severity 헬퍼 / 마커 opacity·radius·tier 상수 신설 - **prediction 5분 사이클 안정화** — `gear_correlation_scores_pkey` 충돌 해소 (SAVEPOINT 격리) - **경량 분석 riskScore 해상도** — 45점 60.8% 고정 → 0% (11~40 구간 분산), vessel_type UNKNOWN 98.6% → 89.1% ### 문서 (docs) - **CLAUDE.md 절대 지침 섹션 추가** — (1) 신규 브랜치 생성 전 `origin/develop` 동기화 강제, (2) `frontend/` 작업 시 `design-system.html` 쇼케이스 규칙 전면 준수 - **프로젝트 산출문서 2026-04-17 기준 정비** — architecture.md, sfr-traceability.md v3.0 재작성(531라인), sfr-user-guide.md 현황 갱신 ## 테스트 - [ ] CI/CD 빌드 통과 - [ ] 프론트엔드 배포 후 디자인 시스템 준수 육안 확인 - [ ] prediction 5분 사이클 안정성 재확인 - [ ] 백엔드 API 회귀 테스트
nankyung added 3 commits 2026-04-17 07:34:28 +09:00
nankyung added 2 commits 2026-04-17 07:35:24 +09:00
claude-bot 이 변경사항을 승인하였습니다. 2026-04-17 07:35:24 +09:00
Dismissed
claude-bot left a comment
멤버

릴리즈 승인 (via /release skill)

릴리즈 승인 (via /release skill)
nankyung dismissed claude-bot’s review 2026-04-17 07:35:24 +09:00
Reason:

New commits pushed, approval review dismissed automatically according to repository settings

claude-bot 이 변경사항을 승인하였습니다. 2026-04-17 07:36:56 +09:00
claude-bot left a comment
멤버

릴리즈 재승인 (via /release skill, 이전 승인 dismiss로 재제출)

릴리즈 재승인 (via /release skill, 이전 승인 dismiss로 재제출)
nankyung merged commit 5be83d2d9a into main 2026-04-17 07:36:56 +09:00
"로그인하여 이 대화에 참여"
No reviewers
레이블 없음
마일스톤 없음
담당자 없음
참여자 2명
알림
마감일
기한이 올바르지 않거나 범위를 벗어났습니다. 'yyyy-mm-dd'형식을 사용해주십시오.

마감일이 설정되지 않았습니다.

의존성

No dependencies set.

Reference: gc/kcg-ai-monitoring#77
No description provided.