reason: Canonical API error class and payload pattern


reason: Service and transaction handling patterns


reason: Repository and soft-delete query conventions