kcg-ai-monitoring/prediction
htlee 0a4d023c76 fix(prediction): output 5종 이상 정상화 (stats/event/lightweight)
5가지 출력 이상 동시 해결:

1. stats_aggregator (이상 1, 5)
   - aggregate_hourly에 by_category, by_zone JSON 집계 추가
   - hour_start를 KST 기준으로 변경 (대시보드 표기와 boundary 일치)

2. event_generator 룰 정리 (이상 2, 3, 4)
   - critical_risk 임계값 90→70 (risk.py CRITICAL 분류와 일치)
   - territorial_sea_violation, contiguous_zone_high_risk, special_zone_entry 신설
     (실측 zone_code: TERRITORIAL_SEA/CONTIGUOUS_ZONE/ZONE_*)
   - 잘못된 NLL/SPECIAL_FISHING_* 룰 제거
   - HIGH_RISK_VESSEL 신규 카테고리 (50~69 MEDIUM, 70+ CRITICAL)
   - break 제거: 한 분석결과가 여러 카테고리에 동시 매칭 가능

3. dedup window prime 분산 (이상 5)
   - 30/60/120/360분 → 33/67/127/367분
   - 5분 사이클 boundary와 LCM 회피하여 정시 일제 만료 패턴 완화

4. lightweight path 신호 보강 (이상 2, 3, 4 근본 해결)
   - vessel_store._tracks의 24h 누적 궤적으로 dark/spoof/speed_jump 산출
   - 6,500 vessels(전체 93%)의 is_dark, spoofing_score가 비로소 채워짐
   - compute_lightweight_risk_score에 dark gap, spoofing 가점 추가
     (max 60→100 가능, CRITICAL 도달 가능)

시간 처리 원칙 적용:
- DB 컬럼은 모두 timestamptz 확인 완료
- aggregate_hourly KST aware datetime 사용
- pandas Timestamp는 source-internal 비교만 (안전)
2026-04-08 15:18:18 +09:00
..
algorithms fix(prediction): output 5종 이상 정상화 (stats/event/lightweight) 2026-04-08 15:18:18 +09:00
cache feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
chat feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
data feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
db fix: prediction e2e — 누락 테이블 12개 + 컬럼 매핑 + NUMERIC precision 통합 수정 2026-04-07 15:00:29 +09:00
models fix: prediction e2e — 누락 테이블 12개 + 컬럼 매핑 + NUMERIC precision 통합 수정 2026-04-07 15:00:29 +09:00
output fix(prediction): output 5종 이상 정상화 (stats/event/lightweight) 2026-04-08 15:18:18 +09:00
pipeline feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
scripts feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
tests feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
config.py feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
env.example feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
fleet_tracker.py feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
main.py feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
requirements.txt feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00
scheduler.py fix(prediction): output 5종 이상 정상화 (stats/event/lightweight) 2026-04-08 15:18:18 +09:00
time_bucket.py feat: S2 prediction 분석 엔진 모노레포 이식 2026-04-07 12:56:51 +09:00