테이블 변경:
- source: tb_ship_risk_info → tb_ship_risk_detail_info
- target: tb_ship_risk_info → tb_ship_risk_detail_info
- target history: tb_ship_risk_hstry → tb_ship_risk_detail_hstry
- target 추가: tb_ship_risk_detail_info_hstry (indicator 값 변경 이력)
Job 분리:
- riskDataSyncJob: 데이터 동기화 + 스냅샷 이력
- riskDetailChangeDataSyncJob: 스냅샷 시계열 비교 → 값 변경 이력
RiskDto/Entity: indicator(Integer) + desc(String) 컬럼 추가 (42→83 필드)
BaseSyncReader: while 루프로 모든 그룹 연속 로드 (null=Step종료 문제 해결)
BatchWriteListener: 청크 내 모든 고유 job_execution_id P→S 업데이트
README.md 추가
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
mda-snp-batch 기반으로 snp-sync-batch 프로젝트 생성
- 프론트엔드: Thymeleaf → React + TypeScript + Vite + Tailwind CSS 전환
- 컨텍스트: /snp-sync, 포트 8051
- 재수집(Recollection) 관련 코드 제거
- displayName → job_schedule.description 기반으로 전환
- 누락 API 추가 (statistics, jobs/detail, executions/recent)
- 실행 이력 조회 속도 개선 (JDBC 경량 쿼리)
- 스케줄 CRUD API 메서드 매핑 수정 (PUT/DELETE)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>