Organize uploader storage and restore transfer readiness
This commit is contained in:
@@ -22,7 +22,7 @@
|
||||
|
||||
받은 항목과 임시 저장은 각각 저장 시점부터 최대 7일이다. 기존 자료도 마이그레이션 시점부터 최대 7일로 제한하며, 더 가까운 기존 만료는 유지한다. 즐겨찾기로 만료를 우회할 수 없다. 만료 항목과 접근권을 정리하고 마지막 유효한 파일 참조가 사라지면 원본 파일을 제거한다. 새 전송의 수신 기록은 새 저장 시점부터 7일이며 원본 기록의 만료를 연장하지 않는다.
|
||||
|
||||
물리 파일은 `uploads/originals`에 저장하고 안전한 원래 확장자를 무작위 식별자에 붙인다. 수신자의 다운로드 응답이 끝난 뒤 유효한 계정 보관함 참조가 없으면 `uploads/completed`로 이동한다. 삭제 실행 취소 시간 안의 계정 참조도 보호한다. 진행 중인 다운로드·이미지 미리보기가 모두 종료될 때까지 이동을 미루며, 계정 참조가 생기거나 복원되면 정리 시 `originals`로 돌아온다. 폴더 이동으로 접근권·용량·만료일을 바꾸지 않는다. 두 폴더 모두 수동 삭제 감지와 만료 정리를 적용한다. 이동 기록으로 중단 후 DB·물리 경로를 복구하고, 확장자 없는 기존 파일은 시작 시 이름을 변경한다. 이전 다운로드 완료 여부는 추정하지 않는다.
|
||||
물리 파일은 `uploads/originals/user-계정ID` 또는 `uploads/originals/guest-기기세션ID`에 업로드한 사람 기준으로 저장하고 안전한 원래 확장자를 무작위 식별자에 붙인다. 로그인 중 기기 전송은 계정 폴더를 선택하되 기존 기기 세션의 업로드 권한·용량 정책을 유지한다. 수신 보관함은 같은 원본을 참조하며 다른 수신자별로 복제하지 않는다. 다운로드 완료로 폴더를 바꾸지 않으며 `completed`는 사용하지 않는다. 기존 평면 및 `completed` 파일은 시작 시 기록된 업로드 소유자 폴더로 이동한다. 계정 정보가 기록되지 않은 과거 파일은 기기 세션 소유자를 사용하며 추정하지 않는다. 진행 중인 파일 읽기는 보호하며 이동 기록으로 중단 후 DB·물리 경로를 복구한다. 사용자 폴더 안에도 수동 삭제 감지와 기존 만료·고아 정리를 적용한다.
|
||||
|
||||
## 주변 발견과 방
|
||||
|
||||
|
||||
Reference in New Issue
Block a user