프로젝트 생애주기 배분 팝업 영속성/정합성 회귀 안정화 #16

Closed
opened 2026-04-22 17:32:53 +09:00 by Hyein · 0 comments
Owner

대상 브랜치: manage

배경

manage 브랜치에서 생애주기 화면의 영업/설계 금액을 해당프로젝트/총프로젝트로 배분하는 기능이 도입되었습니다.
현장 사용 중 아래 증상이 반복 보고되었습니다.

  • 배분값 저장 후 재진입 시 1/1로 되돌아 보이는 현상
  • 삭제 버튼 부재/동작 혼선
  • 카드 금액과 반영 금액의 체감 불일치

현재 반영 상태 (코드 기준)

  • 배분 저장 API: POST /api/lifecycle-allocation/upsert
  • 배분 삭제 API: POST /api/lifecycle-allocation/delete
  • 저장 테이블: project_lifecycle_allocations
  • 관련 파일:
    • PTC/management_dashboard_preview.html
    • server/ptc_api_server.py
  • 참조 커밋: bc611c3

남은 작업 범위

  1. 팝업 저장/삭제/재조회 흐름을 회귀 시나리오로 고정
  2. 1/3, 2/5, 0/1 등 경계값 입력 검증 강화
  3. 저장 성공/실패 토스트 및 재시도 UX 명확화
  4. 배분값 재진입 시 서버값과 UI값 완전 동기화 보장
  5. 배분값 변경 시 관련 카드/합계 즉시 재계산 강제

완료 기준 (Acceptance Criteria)

  • 같은 프로젝트 재진입 시 마지막 저장값이 100% 동일하게 표시된다.
  • 잘못된 입력(분모 0, 분자>분모, 음수) 시 저장이 차단되고 이유가 표시된다.
  • 삭제 후 즉시 기본값(1/1) 반영 + 서버 DB에서도 해당 row가 제거된다.
  • 3회 이상 반복 저장/삭제 테스트에서도 화면-DB 불일치가 발생하지 않는다.

테스트 케이스

  • 케이스 A: 1/3 저장 -> 새로고침 -> 1/3 유지 확인
  • 케이스 B: 2/3 수정 저장 -> 카드 반영금액이 즉시 변경되는지 확인
  • 케이스 C: 삭제 -> 1/1 복귀 + 반영금액 원복 확인
  • 케이스 D: 분모 0 입력 시 에러 메시지 확인

비고

이 이슈는 기능 추가보다 “현장 사용 안정화(회귀 방지)”에 초점을 둡니다.

대상 브랜치: manage ## 배경 `manage` 브랜치에서 생애주기 화면의 영업/설계 금액을 `해당프로젝트/총프로젝트`로 배분하는 기능이 도입되었습니다. 현장 사용 중 아래 증상이 반복 보고되었습니다. - 배분값 저장 후 재진입 시 `1/1`로 되돌아 보이는 현상 - 삭제 버튼 부재/동작 혼선 - 카드 금액과 반영 금액의 체감 불일치 ## 현재 반영 상태 (코드 기준) - 배분 저장 API: `POST /api/lifecycle-allocation/upsert` - 배분 삭제 API: `POST /api/lifecycle-allocation/delete` - 저장 테이블: `project_lifecycle_allocations` - 관련 파일: - `PTC/management_dashboard_preview.html` - `server/ptc_api_server.py` - 참조 커밋: `bc611c3` ## 남은 작업 범위 1. 팝업 저장/삭제/재조회 흐름을 회귀 시나리오로 고정 2. `1/3`, `2/5`, `0/1` 등 경계값 입력 검증 강화 3. 저장 성공/실패 토스트 및 재시도 UX 명확화 4. 배분값 재진입 시 서버값과 UI값 완전 동기화 보장 5. 배분값 변경 시 관련 카드/합계 즉시 재계산 강제 ## 완료 기준 (Acceptance Criteria) - 같은 프로젝트 재진입 시 마지막 저장값이 100% 동일하게 표시된다. - 잘못된 입력(분모 0, 분자>분모, 음수) 시 저장이 차단되고 이유가 표시된다. - 삭제 후 즉시 기본값(`1/1`) 반영 + 서버 DB에서도 해당 row가 제거된다. - 3회 이상 반복 저장/삭제 테스트에서도 화면-DB 불일치가 발생하지 않는다. ## 테스트 케이스 - 케이스 A: `1/3` 저장 -> 새로고침 -> `1/3` 유지 확인 - 케이스 B: `2/3` 수정 저장 -> 카드 반영금액이 즉시 변경되는지 확인 - 케이스 C: 삭제 -> `1/1` 복귀 + 반영금액 원복 확인 - 케이스 D: 분모 `0` 입력 시 에러 메시지 확인 ## 비고 이 이슈는 기능 추가보다 “현장 사용 안정화(회귀 방지)”에 초점을 둡니다.
Hyein changed title from [manage] 프로젝트 생애주기 배분 팝업 영속성/정합성 회귀 안정화 to 프로젝트 생애주기 배분 팝업 영속성/정합성 회귀 안정화 2026-04-22 17:34:04 +09:00
Hyein added reference manage 2026-04-22 17:35:58 +09:00
Hyein closed this issue 2026-04-22 17:52:09 +09:00
Hyein added the ptc 실행분석 label 2026-05-04 09:28:30 +09:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Hyein/PTC#16