refactor: type FetchRecordError and populate NamedSource on body failures
- Replace (Option<u16>, String, bool) tuple return with typed FetchRecordError enum
- Add variants: Network, NotFound, HttpStatus, MissingValue, ParseEnvelope, ParseRecord
- Populate NamedSource for body-related failures (missing_value, parse_envelope, parse_record)
- Update call site to match on error variants and construct diagnostics with source context
- This addresses I-RE-1 and I-RE-2 deferred issues across two previous cycles
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>