#23 Improve backend error handling