Software, Atomic Transaction, Event Driven Architecture, Event Sourcing, Dynamodb.
the order has been placed but no items will be shipped. As a solution, you can try to add checks and compensation actions for all failures: processing succeeded but publishing the event failed? Retry publishing. Although valid, this can lead to a convoluted implementation that it is hard to follow,