diff --git a/.forge/iss-2499ff1ad79a-attempt-3-run-30d98199f9aa.md b/.forge/iss-2499ff1ad79a-attempt-3-run-30d98199f9aa.md new file mode 100644 index 0000000..7f5d948 --- /dev/null +++ b/.forge/iss-2499ff1ad79a-attempt-3-run-30d98199f9aa.md @@ -0,0 +1,3 @@ +# iss-2499ff1ad79a-attempt-3-run-30d98199f9aa + +Forge 이슈 작업 브랜치 `forge/iss-2499ff1ad79a-attempt-3-run-30d98199f9aa`. diff --git a/docs/architecture/transaction-sequence.md b/docs/architecture/transaction-sequence.md new file mode 100644 index 0000000..6da3f2e --- /dev/null +++ b/docs/architecture/transaction-sequence.md @@ -0,0 +1,24 @@ +```mermaid +sequenceDiagram + participant User + participant PaymentGateway + participant Application + participant Database + User->>Application: Initiate Payment + Application->>PaymentGateway: Process Payment + alt Successful Payment + PaymentGateway-->>Application: Payment Approved + Application->>Database: Commit Transaction + Database-->>Application: Transaction Committed + Application-->>User: Payment Successful + else External Failure + PaymentGateway-->>Application: Payment Error + Application-->>User: Payment Failed + else DB Failure + Application->>Database: Attempt Transaction + Database-->>Application: Transaction Error + Application->>Database: Rollback Transaction + Database-->>Application: Transaction Rolled Back + Application-->>User: Payment Failed + end +``` \ No newline at end of file