-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Handle 404s #5791
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Handle 404s #5791
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds explicit 404 handling to provider error responses and simplifies error handling logic across multiple providers by consolidating duplicate code into the centralized handle_status_openai_compat function.
- Adds dedicated 404 handling with clear "Resource not found" messages
- Simplifies error message extraction with a reusable
extract_message()closure - Removes duplicate error handling code from OpenAI, Ollama, Anthropic, and Tetrate providers
- Removes unused
OpenAIErrorResponsestruct andformat_server_error_messagefunction
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| crates/goose/src/providers/utils.rs | Adds 404 handling, introduces extract_message() closure for consistent error message extraction, simplifies map_http_error_to_provider_error, streamlines handle_status_openai_compat, removes dead code and outdated test |
| crates/goose/src/providers/openai.rs | Removes duplicate error handling, delegates to handle_status_openai_compat |
| crates/goose/src/providers/ollama.rs | Removes duplicate error handling, delegates to handle_status_openai_compat |
| crates/goose/src/providers/anthropic.rs | Imports and uses handle_status_openai_compat for error handling |
| crates/goose/src/providers/tetrate.rs | Renames variable from response to resp for clarity before error handling |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 6 out of 6 changed files in this pull request and generated no new comments.
* main: (48 commits) [fix] generic check for gemini compat (#5842) Add scheduler to diagnostics (#5849) Cors and token (#5850) fix sessions coming back with empty messages (#5841) markdown export from URL (#5830) Next camp refactor live (#5706) Add out of context compaction test via error proxy (#5805) fix: Add backward compatibility for conversationCompacted message type (#5819) Add /agent/stop endpoint, make max active agents configurable (#5826) Handle 404s (#5791) Persist provider name and model config in the session (#5419) Comment out the flaky mcp callers (#5827) Slash commands (#5718) fix: remove setx calls to not permanently edit the windows shell PATH (#5821) fix: Parse maas models for gcp vertex provider (#5816) fix: support Gemini 3's thought signatures (#5806) chore: Add Adrian Cole to Maintainers (#5815) [MCP-UI] Proxy and Better Message Handling (#5487) Release 1.15.0 Document New Window menu in macOS dock (#5811) ...
Co-authored-by: Douwe Osinga <[email protected]> Signed-off-by: Sai Karthik <[email protected]>
Co-authored-by: Douwe Osinga <[email protected]> Signed-off-by: Blair Allan <[email protected]>
Handles 404s instead of just saying 404:
now:
before:
also cleans up general error handling