# .cli/current.md ## TASK_META (수정 금지) - TASK_TITLE: Flight 종료 버튼 2초 길게 누르기(hold-to-confirm) + 원형 진행선 + 종료 모달 오픈 - TASK_SLUG: flight-finish-hold-2s-ring-and-modal ## 문제(관찰) - 현재는 종료 버튼 클릭 직후 종료 플로우가 진행되어 오작동(실수 클릭) 여지가 있다. ## 작업 목표 - 종료 버튼을 2초간 길게 눌렀을 때만 종료 모달이 열리도록 변경하고, 누르는 동안 버튼 테두리 진행선을 시각적으로 제공한다. ## 합리적 가정 - 종료 모달이 열리기 전까지는 항해 상태 저장/라우팅 같은 실제 종료 처리는 발생하지 않는다. - 길게 누르기 완료 후에는 기존 종료 모달/종료 확정 흐름을 그대로 재사용한다. ## 적용 범위 - flight HUD 종료 버튼 UI/interaction: `src/widgets/flight-hud/ui/FlightHudWidget.tsx` - flight 종료 트리거 상태/핸들러: `src/features/flight-session/model/useFlightSession.ts` - 종료 모달 렌더/연결 위치(필요 시): `src/app/flight/page.tsx` ## 작업 요구사항 1. 종료 버튼은 단순 클릭으로는 종료되지 않고, 최소 2초 이상 길게 누른 경우에만 종료 모달이 열린다. 2. 길게 누르는 동안 버튼 테두리를 따라 0%→100%로 진행되는 원형(또는 버튼 외곽형) 진행선이 표시된다. 3. 2초 이전에 누름을 해제하면 진행선은 즉시 취소되고 초기 상태로 복귀한다. 4. 진행선이 100%에 도달하는 시점(2초 경과)에 종료 모달이 자동 오픈된다. 5. 모달 오픈 후 실제 종료 확정/취소 동작은 기존 정책과 동일하게 유지된다. ## Non-scope - 타이머 계산/표시 로직 변경 금지 - 일시정지 버튼 동작 변경 금지 - 배경/스타필드/다른 페이지 UI 개편 금지 - 신규 라우트 추가 금지 ## 완료 조건(AC) - [ ] 종료 버튼 단순 클릭(짧은 터치/클릭)으로는 종료 모달이 열리지 않는다 - [ ] 2초 길게 누르면 종료 모달이 열린다 - [ ] 누르는 동안 버튼 테두리 진행선이 시간 경과에 맞춰 표시된다 - [ ] 2초 이전 해제 시 진행선이 초기화되고 아무 종료 동작도 발생하지 않는다 - [ ] 모달 이후 확정/취소 흐름은 기존과 동일하게 동작한다 ## 완료 후 출력(최소) - 수정/생성/삭제된 파일 경로 목록 - AC 체크 결과(OK/NO)