fix: narrow exception in agent integration lookup from Exception to specific types - #3915
Quratulain-bilal wants to merge 2 commits into
Conversation
There was a problem hiding this comment.
Pull request overview
Narrows exception handling during integration lookup to avoid suppressing unexpected failures.
Changes:
- Catches only
ImportError,KeyError, andValueError. - Preserves fallback separator behavior for expected failures.
Show a summary per file
| File | Description |
|---|---|
src/specify_cli/agents.py |
Narrows separator lookup exception handling. |
Review details
Tip
Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
- Files reviewed: 1/1 changed files
- Comments generated: 1
- Review effort level: Balanced
…pecific types Bare 'except Exception' silently swallows all errors including MemoryError, RecursionError, etc. Narrow to (ImportError, KeyError, ValueError) which are the realistic failure modes.
…pecific types Narrow except Exception to (ImportError, KeyError, ValueError) which are the realistic failure modes from invoke_separator_for_mode(). Add regression tests: - RuntimeError (non-whitelisted) propagates through register_commands - KeyError (whitelisted) falls back to default separator Co-authored-by: GitHub Copilot (model: mimo-v2.5-free, supervised)
bf20059 to
47e1952
Compare
| if _integ is not None: | ||
| _sep = _integ.invoke_separator_for_mode(registrar_writes_skills) | ||
| except (ImportError, ValueError, KeyError): | ||
| except (ImportError, KeyError, ValueError): |
|
Thanks @Quratulain-bilal, but this change is a no-op. The only code change reorders the exception tuple from (Drafted with AI assistance — GitHub Copilot.) |
Problem
Bare
except Exceptionsilently swallows all errors includingMemoryError,RecursionError, etc.Fix
Narrow to
(ImportError, KeyError, ValueError)which are the realistic failure modes.Testing