kcg-ai-monitoring/backend/src/main/resources/db/migration
htlee 0f4a9cb7d6 fix(db): candidate_source 컬럼 VARCHAR(30)→(100) 확장 (V031)
gear_group_parent_candidate_snapshots.candidate_source 의 VARCHAR(30) 제약
때문에 prediction gear_correlation 스테이지가 매 사이클 실패하던 문제 해소.

원인:
- prediction/algorithms/gear_parent_inference.py:875 의
  candidate_source = ','.join(sorted(meta['sources']))
  가 복수 source 라벨 (CORRELATION/EPISODE/LABEL/LINEAGE/MATCH) 을 쉼표 join
  하며 최대 약 39자. VARCHAR(30) 초과 시 psycopg2.errors.StringDataRightTruncation
  을 유발해 _insert_candidate_snapshots 전체 ROLLBACK.

발견 경위:
- Phase 0-1 (PR #83) 의 stage_runner + logger.exception 전환 후 journal 에
  찍힌 풀 스택트레이스로 드러남. 기존에는 logger.warning 한 줄 ("gear
  correlation failed: ...") 만 남아 원인 특정 불가.

영향 범위:
- 백엔드 JPA 엔티티 미참조 → 재빌드·재배포 불필요
- Flyway 자동 적용 (백엔드 기동 시)
- prediction 재기동만 필요 (기존 코드 그대로, 이제 INSERT 성공 기대)

검증:
- 재배포 후 journalctl 에서 'gear correlation failed' 로그 사라짐 확인
- kcg.gear_group_parent_candidate_snapshots 에 최근 15분 건수 증가 확인
2026-04-17 11:51:35 +09:00
..
V001__auth_init.sql feat: Phase 3 - 자체 인증 + 트리 기반 RBAC + 감사로그 + 데모 계정 2026-04-07 09:29:52 +09:00
V002__perm_tree.sql feat: Phase 3 - 자체 인증 + 트리 기반 RBAC + 감사로그 + 데모 계정 2026-04-07 09:29:52 +09:00
V003__perm_seed.sql feat: Phase 2 - Spring Boot 백엔드 + DB 마이그레이션 초기화 2026-04-07 09:01:13 +09:00
V004__access_logs.sql feat: Phase 2 - Spring Boot 백엔드 + DB 마이그레이션 초기화 2026-04-07 09:01:13 +09:00
V005__parent_workflow.sql feat: Phase 2 - Spring Boot 백엔드 + DB 마이그레이션 초기화 2026-04-07 09:01:13 +09:00
V006__demo_accounts.sql feat: Phase 3 - 자체 인증 + 트리 기반 RBAC + 감사로그 + 데모 계정 2026-04-07 09:29:52 +09:00
V007__perm_tree_label_align.sql fix: 권한 트리 UX 개선 + 라벨 사이드바 일치 + EXPORT 가드 2026-04-07 10:33:29 +09:00
V008__code_master.sql feat: S1 마스터 데이터 + prediction 기반 DB 스키마 (V008~V013) 2026-04-07 11:49:26 +09:00
V009__gear_type_master.sql feat: S1 마스터 데이터 + prediction 기반 DB 스키마 (V008~V013) 2026-04-07 11:49:26 +09:00
V010__zone_polygon_master.sql feat: S1 마스터 데이터 + prediction 기반 DB 스키마 (V008~V013) 2026-04-07 11:49:26 +09:00
V011__vessel_permit_patrol.sql feat: S1 마스터 데이터 + prediction 기반 DB 스키마 (V008~V013) 2026-04-07 11:49:26 +09:00
V012__prediction_events_stats.sql fix: prediction_stats_monthly.stat_month CHAR(7) → DATE 타입 변경 2026-04-07 12:05:04 +09:00
V013__enforcement_operations.sql fix: prediction_stats_monthly.stat_month CHAR(7) → DATE 타입 변경 2026-04-07 12:05:04 +09:00
V014__fleet_prediction_tables.sql fix: prediction e2e — 누락 테이블 12개 + 컬럼 매핑 + NUMERIC precision 통합 수정 2026-04-07 15:00:29 +09:00
V015__fix_numeric_precision.sql fix: prediction e2e — 누락 테이블 12개 + 컬럼 매핑 + NUMERIC precision 통합 수정 2026-04-07 15:00:29 +09:00
V016__parent_workflow_columns.sql fix: prediction 5가지 이슈 수정 — 모든 파이프라인 정상 동작 2026-04-08 06:47:53 +09:00
V017__role_color_hex.sql feat(backend): Role.colorHex 추가 + V017 migration 2026-04-08 10:52:36 +09:00
V018__prediction_event_features.sql feat(backend): 워크플로우 연결 Step 1 — 백엔드 기반 확장 2026-04-09 10:43:53 +09:00
V019__llm_ops_perm.sql fix(frontend): 메뉴 중복 해소 + system-flow 노드 동기화 + V019 권한 트리 2026-04-09 12:05:35 +09:00
V020__menu_config.sql feat: 메뉴 DB SSOT 구조화 — auth_perm_tree 기반 메뉴·권한·i18n 통합 2026-04-09 15:54:04 +09:00
V021__menu_into_perm_tree.sql feat: 메뉴 DB SSOT 구조화 — auth_perm_tree 기반 메뉴·권한·i18n 통합 2026-04-09 15:54:04 +09:00
V022__perm_tree_i18n_labels.sql feat: 메뉴 DB SSOT 구조화 — auth_perm_tree 기반 메뉴·권한·i18n 통합 2026-04-09 15:54:04 +09:00
V023__perm_tree_sort_align.sql feat: 메뉴 DB SSOT 구조화 — auth_perm_tree 기반 메뉴·권한·i18n 통합 2026-04-09 15:54:04 +09:00
V024__flatten_perm_tree.sql feat: 메뉴 DB SSOT 구조화 — auth_perm_tree 기반 메뉴·권한·i18n 통합 2026-04-09 15:54:04 +09:00
V025__lgcns_mlops_menu.sql feat: LGCNS MLOps + AI 보안(SER-10) + AI Agent 보안(SER-11) 메뉴 추가 2026-04-13 10:51:05 +09:00
V026__data_retention_policy_menu.sql feat: 시스템관리 > 감사·보안에 데이터 보관·파기 정책(DAR-10) 메뉴 추가 2026-04-14 16:55:05 +09:00
V027__data_model_verification_menu.sql feat: 시스템관리 > 감사·보안에 데이터 모델 검증(DAR-11) 메뉴 추가 2026-04-14 16:55:05 +09:00
V028__performance_monitoring_menu.sql feat: 시스템관리 > 감사·보안에 성능 모니터링(PER-01~06) 메뉴 추가 2026-04-15 17:12:53 +09:00
V029__fishery_permit_cn.sql feat(prediction): DAR-03 탐지 로직 보강 + 한중어업협정 906척 레지스트리 적재 2026-04-16 07:43:24 +09:00
V030__gear_identity_collision.sql feat(detection): GEAR_IDENTITY_COLLISION 탐지 패턴 추가 2026-04-17 06:53:12 +09:00
V031__alter_candidate_source_length.sql fix(db): candidate_source 컬럼 VARCHAR(30)→(100) 확장 (V031) 2026-04-17 11:51:35 +09:00