diff --git a/.forge/SPRING-ARC-REVIEW-1783835414-attempt-2-run-77bed2c0508e.md b/.forge/SPRING-ARC-REVIEW-1783835414-attempt-2-run-77bed2c0508e.md deleted file mode 100644 index 1514024..0000000 --- a/.forge/SPRING-ARC-REVIEW-1783835414-attempt-2-run-77bed2c0508e.md +++ /dev/null @@ -1,3 +0,0 @@ -# SPRING-ARC-REVIEW-1783835414-attempt-2-run-77bed2c0508e - -Forge 이슈 작업 브랜치 `forge/SPRING-ARC-REVIEW-1783835414-attempt-2-run-77bed2c0508e`. diff --git a/docs/architecture/transaction-sequence.md b/docs/architecture/transaction-sequence.md index 441cbe9..c4e14df 100644 --- a/docs/architecture/transaction-sequence.md +++ b/docs/architecture/transaction-sequence.md @@ -1,21 +1,32 @@ ```mermaid sequenceDiagram - participant A as User - participant B as Payment Processor - participant C as External Gateway - A->>B: 결제 요청 - B->>C: 결제 정보 전달 - alt 성공 - C-->>B: 성공 응답 - B-->>A: 결제 완료 - note right of A: 결제 성공 처리 - else 외부 실패 - C-->>B: 실패 응답 - B-->>A: 결제 실패 - note right of A: 실패 처리 및 재시도 - else DB 실패 - B->>B: 롤백 처리 - B-->>A: 결제 실패 - note right of A: 롤백 기록 - end + participant User + participant PaymentGateway + participant PaymentService + participant Database + + User->>+PaymentService: Start Payment + PaymentService->>+PaymentGateway: Process Payment + PaymentGateway-->>-PaymentService: Payment Success + PaymentService->>Database: Record Payment + Database-->>-PaymentService: Payment Recorded + PaymentService-->>-User: Payment Confirmed + + %% External Failure + User->>+PaymentService: Start Payment + PaymentService->>+PaymentGateway: Process Payment + PaymentGateway-->>-PaymentService: Payment Failed + PaymentService-->>-User: Payment Failed + + %% DB Failure + User->>+PaymentService: Start Payment + PaymentService->>+PaymentGateway: Process Payment + PaymentGateway-->>-PaymentService: Payment Success + PaymentService->>Database: Record Payment + Database-->>-PaymentService: DB Failure + PaymentService-->>-User: Payment Processing Error + + %% Commit/Rollback + Note over PaymentService: Commit if successful + Note over PaymentService: Rollback if there's an error ``` \ No newline at end of file