diff --git a/app/src/main/java/com/medithings/vesiscan/ui/views/monitoring/PlacementGuideView.kt b/app/src/main/java/com/medithings/vesiscan/ui/views/monitoring/PlacementGuideView.kt index f25b587..04f4810 100644 --- a/app/src/main/java/com/medithings/vesiscan/ui/views/monitoring/PlacementGuideView.kt +++ b/app/src/main/java/com/medithings/vesiscan/ui/views/monitoring/PlacementGuideView.kt @@ -939,10 +939,13 @@ fun PlacementGuideView(appState: AppState) { placementScore = 5 } else { directionHint = localizedMsg - // STOP 액션은 두 경우 — CH3_STABILIZE 의 "위치 유지" (still in progress) vs - // LR_BALANCE 의 "정렬 완료" (truly done). 후자만 finalStop 으로 GREEN lock. + // STOP 액션은 여러 경우 — CH3_STABILIZE 위치 유지 / LR_BALANCE 유예 STOP / + // FINAL_CONFIRM 완료. 2026-07-07 fix: 진짜 완료는 FINAL_CONFIRM commit STOP. + // 이전 로직은 LR_BALANCE STOP 만 인정 → FINAL_CONFIRM 진입 즉시 phase 가 + // 바뀌면서 GREEN lock 이 풀려 "측정 시작" 버튼이 활성화 안 되는 버그가 있었다. val finalStop = st.action == com.medithings.vesiscan.managers.AlignAction.STOP && - v2Aligner.phase == com.medithings.vesiscan.managers.AlignGuide4Stage.Phase4.LR_BALANCE + st.state == "commit" && + v2Aligner.phase == com.medithings.vesiscan.managers.AlignGuide4Stage.Phase4.FINAL_CONFIRM directionIcon = when (st.action) { com.medithings.vesiscan.managers.AlignAction.MOVE_UP -> "arrow.up" com.medithings.vesiscan.managers.AlignAction.MOVE_DOWN -> "arrow.down"