Skip to content

Feature: CreateSecret 에러 처리 구현 #71

Description

@doyeonk429

📝 기능 설명

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 구현
  • AlertState preset static func createSecretFailed(_ error: CreateSecretError) -> Self 추가

ProjectLoadError.swift 신설 (DVPresentation/Features/CreateSecret/Model)

  • ProjectUseCaseError → 표시용 에러 매핑 (repositoryFailure / unexpected)
  • static func map(_ error: ProjectUseCaseError) -> ProjectLoadError 구현
  • AlertState preset static 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(...)

Action.Alert 변경 불필요 — 모든 에러 alert는 OK 단추만 있는 informational alert.

🔗 참고 링크

docs/PLAN_CreateSecret_Live.md — Step 6, 7, 8 (에러 부분)

Metadata

Metadata

Assignees

Labels

✨ Feature새로운 기능 개발

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions