thunguo opened a new issue, #93: URL: https://github.com/apache/incubator-seata-go-samples/issues/93
## Scenario An insurance claim processing workflow runs as a sequential multi-step flow, where each step may take a long time and involve an external system. A failure mid-way currently leaves data inconsistent with no way to recover cleanly. The steps are: 1. Verify claimant identity 2. Create damage assessment record 3. Reserve payout funds 4. Notify assigned surveyor 5. Execute bank transfer ## What to implement Migrate this flow to Saga mode using seata-go's state machine engine. Each step is an independent Go service. Each step has a corresponding compensating action (e.g., if bank transfer fails, release reserved funds, cancel the surveyor notification, delete the assessment record, and unverify the claim — in reverse order). The Saga workflow is defined as a state machine. The sample should make the migration pattern clear: showing what the original sequential flow looked like, and how each step maps to a forward action and a compensating action in Saga. Include a failure simulation where the bank transfer step fails, and demonstrate that all previous steps are compensated in reverse order. ## Deliverables - Five runnable Go services (one per step) - Saga state machine definition file - docker-compose with MySQL and Seata server - README explaining the before/after migration pattern and how to run -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
