📝 기능 설명
CreateSecretFeature의 에러 처리를 구현한다. 현재 saveResponse(.failure)는 // TODO 상태이고, projectsResponse(.failure)는 Alert 껍데기만 있다. 각 Client별 Presentation 레이어 에러 enum을 신설하고 시스템 alert로 사용자에게 노출한다 (디자인 미확정으로 시스템 alert 임시 사용, 제목·문구 정비).
✅ 작업 목록
CreateSecretError.swift 신설 (DVPresentation/Features/CreateSecret/Model)
ProjectLoadError.swift 신설 (DVPresentation/Features/CreateSecret/Model)
CreateSecretFeature 에러 핸들러 구현
Action.Alert 변경 불필요 — 모든 에러 alert는 OK 단추만 있는 informational alert.
🔗 참고 링크
docs/PLAN_CreateSecret_Live.md — Step 6, 7, 8 (에러 부분)
📝 기능 설명
CreateSecretFeature의 에러 처리를 구현한다. 현재saveResponse(.failure)는// TODO상태이고,projectsResponse(.failure)는 Alert 껍데기만 있다. 각 Client별 Presentation 레이어 에러 enum을 신설하고 시스템 alert로 사용자에게 노출한다 (디자인 미확정으로 시스템 alert 임시 사용, 제목·문구 정비).✅ 작업 목록
CreateSecretError.swift 신설 (
DVPresentation/Features/CreateSecret/Model)SecretUseCaseError→ 표시용 에러 매핑 (cryptoUnavailable/authRequired/repositoryFailure/unexpected)static func map(_ error: SecretUseCaseError) -> CreateSecretError구현AlertStatepresetstatic func createSecretFailed(_ error: CreateSecretError) -> Self추가ProjectLoadError.swift 신설 (
DVPresentation/Features/CreateSecret/Model)ProjectUseCaseError→ 표시용 에러 매핑 (repositoryFailure/unexpected)static func map(_ error: ProjectUseCaseError) -> ProjectLoadError구현AlertStatepresetstatic func projectLoadFailed(_ error: ProjectLoadError) -> Self추가CreateSecretFeature 에러 핸들러 구현
saveResponse(.failure(let error))→CreateSecretError.map(error)→state.alert = .createSecretFailed(...)projectsResponse(.failure(let error))→ProjectLoadError.map(error)→state.alert = .projectLoadFailed(...)🔗 참고 링크
docs/PLAN_CreateSecret_Live.md— Step 6, 7, 8 (에러 부분)