Ecto.Multi: Atomic Database Workflows with Named Failure Reporting
Ecto.Multi is a data structure that groups multiple database operations into a single atomic transaction, returning {:ok, changes} on success or {:error, failed_name, failed_value, changes_so_far} on failure. Each step receives results from previous steps, enabling clean dependency chaining.