Skip to content

docs: add error handling proposal#6

Merged
mdnmdn merged 2 commits intomainfrom
claude/error-handling-proposal-tTlEj
Mar 31, 2026
Merged

docs: add error handling proposal#6
mdnmdn merged 2 commits intomainfrom
claude/error-handling-proposal-tTlEj

Conversation

@mdnmdn
Copy link
Copy Markdown
Owner

@mdnmdn mdnmdn commented Mar 31, 2026

Proposes a unified ProviderError type with ErrorKind categorization,
preserving provider-specific codes while enabling programmatic handling.
Six-phase incremental migration plan, each phase independently buildable.

https://claude.ai/code/session_0115EjMcwabSsDr869GXPvFi

claude added 2 commits March 31, 2026 07:24
Proposes a unified ProviderError type with ErrorKind categorization,
preserving provider-specific codes while enabling programmatic handling.
Six-phase incremental migration plan, each phase independently buildable.

https://claude.ai/code/session_0115EjMcwabSsDr869GXPvFi
- Add Is() method to ProviderError for correct errors.Is sentinel compat
- Add ErrKindCanceled to distinguish context cancellation from network errors
- Move httpStatusToKind out of pkg/model into per-provider errors.go
- Add WrapError() escape hatch for migration safety
- Note CoinGecko's different client pattern (get() vs doRequest)
- Gate Phase 3 explicitly on full Phase 2 completion
- Fix Retryable() note: 5xx retryable but callers must backoff/cap retries
- Cover ComparePrices facade ItemError construction in Phase 5
- Add test requirement to Phase 2 checklist

https://claude.ai/code/session_0115EjMcwabSsDr869GXPvFi
@mdnmdn mdnmdn merged commit 578c393 into main Mar 31, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants