Phase 6: iran 백엔드 실연결 + 화면 연동 - application.yml: app.iran-backend.base-url=https://kcg.gc-si.dev - IranBackendClient: RestClient 확장 (Accept JSON header, getAs<T>) - VesselAnalysisProxyController: HYBRID 합성 로직 추가 - GET /api/vessel-analysis: stats + 7423건 분석 결과 통과 - GET /api/vessel-analysis/groups: 476건 그룹 + 자체 DB resolution 합성 - GET /api/vessel-analysis/groups/{key}/detail - GET /api/vessel-analysis/groups/{key}/correlations - 권한: detection / detection:gear-detection (READ) - 프론트 services/vesselAnalysisApi.ts: 타입 + 필터 헬퍼 (filterDarkVessels, filterSpoofingVessels, filterTransshipSuspects) - features/detection/RealGearGroups.tsx: 어구/선단 그룹 실시간 표시 (FLEET/GEAR_IN_ZONE/GEAR_OUT_ZONE 필터, 통계 5종, 운영자 결정 합성 표시) - features/detection/RealVesselAnalysis.tsx: 분석 결과 모드별 렌더 - mode='dark' / 'spoofing' / 'transship' / 'all' - 위험도순 정렬 + 6개 통계 카드 + 해역/Dark/Spoofing/전재 표시 - 화면 연동: - GearDetection → RealGearGroups 추가 - DarkVesselDetection → RealDarkVessels + RealSpoofingVessels - ChinaFishing(dashboard) → RealAllVessels - TransferDetection → RealTransshipSuspects Phase 7: 시스템 상태 대시보드 - features/monitoring/SystemStatusPanel.tsx - 3개 서비스 카드: KCG Backend / iran 백엔드 / Prediction - 위험도 분포 (CRITICAL/HIGH/MEDIUM/LOW) 4개 박스 - 30초 자동 폴링 - MonitoringDashboard 최상단에 SystemStatusPanel 추가 Phase 8: AI 채팅 기반 (SSE는 Phase 9 인증 후) - 프론트 services/chatApi.ts: sendChatMessage (graceful fallback) - 백엔드 PredictionProxyController.chat 추가 - POST /api/prediction/chat - 권한: ai-operations:ai-assistant (READ) - 현재 stub 응답 (iran chat 인증 토큰 필요) - AIAssistant 페이지에 백엔드 호출 통합 (handleSend → sendChatMessage → 응답 표시 + graceful 메시지) 검증: - 백엔드 컴파일/기동 성공 (Started in 5.2s) - iran 프록시: 471개 그룹, 7423건 분석 결과 정상 통과 - 프론트 빌드 통과 (502ms) - E2E 시나리오: - admin 로그인 → /api/vessel-analysis/groups → 476건 + serviceAvailable=true - /api/prediction/chat → stub 응답 (Phase 9 안내) 설계 원칙: - iran 백엔드 미연결 시 graceful degradation (serviceAvailable=false + 빈 데이터) - HYBRID 합성: prediction 후보 + 자체 DB의 운영자 결정을 백엔드에서 조합 - 향후 iran 인증 토큰 통과 후 SSE 채팅 활성화 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| .mvn/wrapper | ||
| src | ||
| .sdkmanrc | ||
| mvnw | ||
| mvnw.cmd | ||
| pom.xml | ||
| README.md | ||
Backend (Spring Boot)
Phase 2에서 초기화 예정.
계획된 구성
- Spring Boot 3.x + Java 21
- PostgreSQL + Flyway
- Spring Security + JWT
- Caffeine 캐시
- 트리 기반 RBAC 권한 체계 (wing 패턴)
책임
- 자체 인증/권한/감사로그
- 운영자 의사결정 (모선 확정/제외/학습)
- iran 백엔드 분석 데이터 프록시
- 관리자 화면 API
상세 설계: .claude/plans/vast-tinkering-knuth.md