배경
PR #150에서 VM 만료 삭제에 3일 유예 기간이 도입됨. 만료 시점(expires_at 경과)에 VM은 강제 정지되고, 3일 뒤 완전 삭제된다. 유예 중 연장하면 삭제가 취소된다.
현재 프론트는 만료일·D-day 표시(overview 탭, instance 헤더, instances 테이블 임박 알림)까지만 있고, 만료가 지나 삭제 대기 중인 상태를 구분해서 보여주지 않는다. 사용자에게는 그냥 정지된 VM으로만 보인다.
수정 방향
- 프론트는 이미
expires_at을 받고 있으므로 백엔드 변경 불필요
daysUntilExpiry(instance-header.tsx 기준 Math.ceil((expiresAt - now) / 86400000))가 0 이하이면 "삭제 대기 — n일 후 완전 삭제" 배지/경고 표시 (n = 3 + daysUntilExpiry)
- 연장 버튼은 이미 D-15부터 활성화되어 유예 중에도 노출되므로, 배지 옆에 연장 유도 문구만 붙이면 됨
- 적용 위치 후보:
components/instances/instance-header.tsx (D-day 배지), components/instances/tabs/overview-tab.tsx (만료일 표시), components/instances/instances-table.tsx (목록 행 상태)
참고
- 백엔드 유예 로직:
backend/main.py _process_grace_vms() (유예 3일 = EXPIRE_GRACE_DAYS)
- 프론트 코드는 현재 별도 레포로 분리되어 있어 이 레포 범위 밖 — 프론트 레포에서 작업 필요
배경
PR #150에서 VM 만료 삭제에 3일 유예 기간이 도입됨. 만료 시점(
expires_at경과)에 VM은 강제 정지되고, 3일 뒤 완전 삭제된다. 유예 중 연장하면 삭제가 취소된다.현재 프론트는 만료일·D-day 표시(overview 탭, instance 헤더, instances 테이블 임박 알림)까지만 있고, 만료가 지나 삭제 대기 중인 상태를 구분해서 보여주지 않는다. 사용자에게는 그냥 정지된 VM으로만 보인다.
수정 방향
expires_at을 받고 있으므로 백엔드 변경 불필요daysUntilExpiry(instance-header.tsx 기준Math.ceil((expiresAt - now) / 86400000))가 0 이하이면 "삭제 대기 — n일 후 완전 삭제" 배지/경고 표시 (n = 3 + daysUntilExpiry)components/instances/instance-header.tsx(D-day 배지),components/instances/tabs/overview-tab.tsx(만료일 표시),components/instances/instances-table.tsx(목록 행 상태)참고
backend/main.py_process_grace_vms()(유예 3일 =EXPIRE_GRACE_DAYS)