커밋 그래프

98 커밋

작성자 SHA1 메시지 날짜
7fa4e2bfb1 feat: 센서 그래프 개선 + 지진 마커 + 시설 아이콘 정렬 + SSH 재시도 v2
- SensorChart: 히스토리 1H/2H/3H/6H, 기압 SLP 보정, 데이터 범위 확장(y축 시작)
- SensorChart Tooltip: KST 시간 포맷, 위치 상단 고정, 스타일 통일
- 지진 포인트 클릭 → 지도 flyTo + SeismicMarker 진도별 펄스 원형 표시
- SatelliteMap flyTo 지원 추가
- OilFacilityLayer: planned ring SVG 내부로 이동 (아이콘 중심 정렬 수정)
- 밝은 테마 text-shadow CSS 변수 분리 (dark/light)
- deploy.yml: SSH SCP+실행 각 3회 재시도 (kex_exchange 거부 대응)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 11:02:55 +09:00
0cda5756a8 Merge pull request 'fix(deploy): SSH 연결 재시도 로직 추가' (#57) from hotfix/ssh-retry into develop 2026-03-18 09:59:51 +09:00
b41324aa54 fix(deploy): SSH 연결 재시도 로직 추가 (kex_exchange 거부 대응)
- 본 명령 실행 전 SSH 연결 테스트 (최대 3회, 10초 간격)
- ServerAliveInterval=15 추가

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 09:59:35 +09:00
d4442c8470 Merge pull request 'docs: 릴리즈 노트 정리 (2026-03-18)' (#55) from chore/release-prep-9 into develop 2026-03-18 09:55:35 +09:00
1c563d1835 docs: 릴리즈 노트 정리 (2026-03-18) 2026-03-18 09:55:24 +09:00
80ce47baa1 Merge pull request 'feat: 센서 그래프 개선 + 한국 선박 지도 강조/인터랙션' (#54) from feature/sensor-chart-v2-korean-highlight into develop 2026-03-18 09:54:55 +09:00
98aafa558d docs: 릴리즈 노트 업데이트 2026-03-18 09:54:37 +09:00
e765cc6636 feat: 센서 그래프 개선 + 한국 선박 지도 강조/인터랙션
- SensorChart: 지진 ScatterChart(진도별 색상/크기) + 기압 관측소별 개별 라인
- 한국 선박 현황 ON/OFF 토글 → 지도 강조 링/라벨 표시 (기본 ON)
- 우측 패널 한국 선박 목록: hover 시 지도 강조 링, 클릭 시 모달 호출
- ShipLayer: hoveredMmsi/focusMmsi props, 외부 모달 트리거

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 09:54:17 +09:00
a58c78c91e Merge pull request 'docs: 릴리즈 노트 정리 (2026-03-18)' (#52) from chore/release-prep-8 into develop 2026-03-18 09:37:05 +09:00
23511e1f22 docs: 릴리즈 노트 정리 (2026-03-18) 2026-03-18 09:36:51 +09:00
fae47df1fc Merge pull request 'fix: S&P Global 사진 URL 목록 API 연동 + 로그인 DEMO 표기' (#51) from fix/ship-image-urls into develop 2026-03-18 09:35:36 +09:00
0deb55b44a docs: 릴리즈 노트 업데이트 2026-03-18 09:35:15 +09:00
1e8c0659e5 fix: S&P Global 사진 URL 목록 API 연동 + 로그인 DEMO 표기
- ShipLayer: IMO 기반 /signal-batch/api/v1/shipimg/{imo} API로 실제 이미지 목록 조회
- 각 이미지 path + _2.jpg(원본) 사용 (기존 잘못된 _1→_2→_3 번호 패턴 제거)
- IMO별 이미지 목록 캐시(spgImageCache) 적용
- LoginPage: KCG 로고 우측 하단에 DEMO 문구 오버레이

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 09:34:51 +09:00
0b0c8dc5e6 Merge pull request 'feat: 센서 그래프 실데이터 + 선박 모달 UI 개선 + KST/UTC 라디오' (#50) from feature/sensor-chart-live into develop 2026-03-18 09:29:41 +09:00
a8f6bfe1db docs: 릴리즈 노트 업데이트 2026-03-18 09:28:53 +09:00
6c54500c70 feat: 센서 그래프 실데이터 + 선박 모달 UI 개선 + KST/UTC 라디오
- SensorChart: 백엔드 실데이터(지진/기압) + 동적 x축 시간 + 히스토리 10M/30M/1H/3H/6H
- LiveControls: KST/UTC 토글 → 라디오 버튼 그룹
- ShipLayer: 모달 고정크기(300px), 드래그 가능, S&P Global 다중사진 슬라이드
- 선박 모달 CSS 통일 (태그 스타일, 2컬럼 그리드, 긴 값 단독행)
- 센서 API: hours→min 파라미터 (기본 2880=48h), 인증 예외 처리
- useIranData/useKoreaData: 센서 10분 polling + 선박 60분 초기/6분 incremental merge

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 09:23:45 +09:00
7fabe16f4f Merge remote-tracking branch 'origin/main' into develop 2026-03-18 08:58:09 +09:00
c9f295288c fix(deploy): SSH set -e 제거 + curl fallback (#49)
All checks were successful
Deploy KCG / deploy (push) Successful in 1m14s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:45:33 +09:00
7b05598714 fix(deploy): SSH 디버그 + printf 키 저장 (#48)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m12s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:42:19 +09:00
6182a79ae4 fix(deploy): SSH 호스트 내부 IP 고정 (signal-batch 패턴) (#47)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m11s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:38:49 +09:00
5d01b0e6e5 fix(deploy): gateway 감지 ip → /proc/net/route (#46)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m15s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:35:17 +09:00
db8334b08e fix(deploy): SSH 호스트 IP 동적 감지 + health check 개선 (#45)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m6s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:31:34 +09:00
1549adafc7 fix(deploy): health check + PressureCollector 중복 방지 (#44)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m12s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:25:52 +09:00
c63af7abe0 fix(frontend): 컴포넌트 import 경로 수정 (vite build 실패 해결) (#43)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m43s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:21:45 +09:00
81cd094c56 fix(frontend): 컴포넌트 import 경로 수정 (vite build 실패 해결) (#42)
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:21:42 +09:00
606083dce9 Merge pull request 'release: 2026-03-18.2 (8건 커밋)' (#41) from develop into main
Some checks failed
Deploy KCG / deploy (push) Failing after 16s
2026-03-18 08:18:42 +09:00
d87ce089c5 docs: 릴리즈 노트 정리 (2026-03-18) (#40)
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:17:52 +09:00
4b41ed0d9d feat: 지진파(USGS) + 기압(Open-Meteo) 수집기 + DB 테이블 설계 (#39)
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 08:15:45 +09:00
0fd32081b0 refactor(frontend): 패키지 구조 리팩토링 + UI 버그 수정 (#38)
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 07:41:19 +09:00
9f3eb4814a Merge pull request 'chore: main → develop 동기화' (#37) from main into develop 2026-03-18 06:56:08 +09:00
351a7c6466 fix(deploy): SSH 호스트 IP 수정 (Docker bridge gateway) (#36)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m39s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 06:52:22 +09:00
282adff6a7 fix(deploy): SSH 기반 백엔드 자동 재시작 (#35)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m8s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 06:34:24 +09:00
49c493b9da fix(deploy): CI에서 직접 백엔드 서비스 재시작 (#33)
Some checks failed
Deploy KCG / deploy (push) Failing after 1m6s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 06:13:35 +09:00
fe1de4bf51 fix(deploy): 배포 자동화 + 수집기 모니터링 + 이란 signal-batch 연동 (#32)
All checks were successful
Deploy KCG / deploy (push) Successful in 1m10s
Co-authored-by: htlee <htlee@gcsc.co.kr>
Co-committed-by: htlee <htlee@gcsc.co.kr>
2026-03-18 05:46:55 +09:00
80f8beba16 Merge pull request 'fix(deploy): application-prod.yml 코드 내장 + 외부 설정 참조 제거' (#31) from hotfix/prod-config-inline into develop 2026-03-18 04:38:46 +09:00
ef342769d4 fix(deploy): application-prod.yml 코드 내장 + 외부 설정 참조 제거
- application-prod.yml을 .gitignore에서 제거, 환경변수 참조 방식으로 코드에 포함
- deploy.yml에 DB_PASSWORD secret 추가
- systemd에서 -Dspring.config.additional-location 제거
- 서버 외부 application-prod.yml 의존 해소
2026-03-18 04:38:25 +09:00
f5984a2832 Merge pull request 'fix(backend): ddl-auto validate → none' (#29) from hotfix/ddl-auto-none into develop 2026-03-18 04:30:49 +09:00
42e50c3b58 fix(backend): ddl-auto validate → none (PostGIS geometry 타입 검증 실패 해결) 2026-03-18 04:30:32 +09:00
ed9a2e3233 Merge pull request 'release: 2026-03-18 (8건 커밋)' (#28) from develop into main
All checks were successful
Deploy KCG / deploy (push) Successful in 1m7s
2026-03-18 04:18:10 +09:00
a5a1c89f6f Merge pull request 'docs: 릴리즈 노트 정리 (2026-03-18)' (#27) from chore/release-prep-6 into develop 2026-03-18 04:17:22 +09:00
f39948557a docs: 릴리즈 노트 정리 (2026-03-18) 2026-03-18 04:16:52 +09:00
326df4c69b Merge pull request 'feat(backend): OSINT/Satellite 수집기 + Caffeine 캐시 통일 + REST API' (#26) from feature/backend-collectors into develop 2026-03-18 04:10:31 +09:00
dee52c33d5 docs: 릴리즈 노트 업데이트 2026-03-18 04:09:13 +09:00
69b2aeb3b3 feat(backend): OSINT/Satellite 수집기 + Caffeine 캐시 통일 + REST API
- OSINT: GDELT + Google News RSS 수집기 (@Scheduled 2분)
- Satellite: CelesTrak TLE 수집기 (@Scheduled 10분)
- Caffeine 캐시 TTL 2일 (Aircraft 포함 전체 통일)
- 프론트: 백엔드 API 우선 호출 + CelesTrak/GDELT fallback
2026-03-18 04:04:18 +09:00
0c78ad8bb8 feat(db): ships/osint/satellites 테이블 생성 + 샘플 데이터 적재
- ship_positions: AIS/signal-batch 선박 위치 이력 (PostGIS)
- osint_feeds: GDELT/Google News/CENTCOM 피드 (UNIQUE 중복방지)
- satellite_tle: CelesTrak TLE 위성 궤도 데이터
- 샘플: 중동 함정 16척, 한국 해역 8척, OSINT 17건, 위성 11기
2026-03-18 02:59:54 +09:00
f40a0789a2 fix(db): 002 마이그레이션 search_path에 public 추가 (PostGIS 타입 참조) 2026-03-18 02:39:40 +09:00
819575fcaf Merge pull request 'fix(ci): JDK 21 설치 — Adoptium Temurin APT 저장소 사용' (#25) from hotfix/ci-jdk21-install into main
All checks were successful
Deploy KCG / deploy (push) Successful in 1m8s
2026-03-17 16:58:51 +09:00
82a48f186b Merge pull request 'fix(ci): JDK 21 설치 — Adoptium Temurin APT 저장소 사용' (#24) from hotfix/ci-jdk21-install into develop 2026-03-17 16:58:51 +09:00
985315d147 fix(ci): JDK 21 설치 — Adoptium Temurin APT 저장소 사용
node:24(Debian bookworm) 기본 apt에 openjdk-21 없음.
Adoptium GPG 키 + 저장소 추가 후 temurin-21-jdk 설치.
2026-03-17 16:58:26 +09:00
ddc7d542dc Merge pull request 'release: 2026-03-17.5 (5건 커밋)' (#23) from develop into main
Some checks failed
Deploy KCG / deploy (push) Failing after 23s
2026-03-17 16:56:54 +09:00