Add a dedicated ValidationError type for response validation failures.
Should include:
- message
- original response data (optional / safe)
- requestId (if available)
Acceptance criteria
- error extends base error type
- distinguishable from HttpError / NetworkError