- 해경 관련 코드/에셋 정리 (KCGV, 해경관할구역 FGB, PatrolShipSelector)
- 위성/기상/퍼블리시/레거시 모듈 전체 삭제
- STOMP WebSocket → AIS Target API HTTP 폴링 방식 전환
- 세션 인증 임시 비활성화 (VITE_DEV_SKIP_AUTH)
- 환경변수 민간 데모용으로 재구성
- 팀 워크플로우 v1.2.0 구조 적용 (.claude/rules, skills, settings)
- .githooks, .editorconfig, .node-version 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- useCoastGuardLayer: flatgeobuf 해경관할구역 레이어 (테마별 스타일)
- userSettingApi: 필터 개인설정 저장/불러오기 API
- applyFilterSettings/buildFilterSettings에 AI모드(6개 서브) + 위험물 추가
- AI모드 전체 토글: 선종/국적/신호와 동일 every 패턴으로 통일
- DisplayComponent: AI모드/위험물/해경관할구역/관심구역 토글 바인딩
- 해경관할구역 기본값 ON
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- favoriteApi: 관심선박/관심구역 API 연동
- favoriteStore: favoriteSet(O(1) lookup), realmList 상태 관리
- ShipBatchRenderer: 관심선박 필터 우선 통과 + 밀도 제한 최우선
- shipLayer: 관심선박 위치에 ico_favship.svg 강조 IconLayer 오버레이
- useRealmLayer: 관심구역 OpenLayers 폴리곤(이름/색상/윤곽선) 렌더링
- useShipLayer: favoriteStore 변경 시 즉시 리렌더 구독
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- authStore: 메인 프로젝트 세션 쿠키 기반 인증 상태 관리
- fetchWithAuth: 401 응답 시 메인 프로젝트 로그인 페이지 리다이렉트
- SessionGuard: 앱 진입 시 세션 유효성 검증 래퍼 컴포넌트
- 기존 API 모듈 fetch → fetchWithAuth 전환
- 환경변수에 VITE_MAIN_APP_URL, VITE_DEV_SKIP_AUTH 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Vite 마이그레이션, OpenLayers+Deck.gl 지도 연동
- STOMP WebSocket 선박 실시간 데이터 수신
- 선박 범례/필터/카운트, 다크시그널 처리
- Ctrl+Drag 박스선택, 우클릭 컨텍스트 메뉴
- 측정도구, 상세모달, 호버 툴팁
- darkSignalIds Set 패턴, INSHORE/OFFSHORE 타임아웃
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>