Normalize error handling at one boundary so no catch is silent
Catch blocks that each do something different, brought onto one convention with nothing swallowed.
The ticket
Give one boundary a consistent error-handling convention with no silent catches.
Acceptance criteria
- Every catch logs with context or rethrows
- Error types follow the project's convention
- Tests assert the behaviour of each catch path
- Deliberate control-flow catches are marked with a reason
What lands as proof
A test per catch path asserting it either surfaces or rethrows, so silence is proven absent.
Why teams defer it
- Each catch was written to fix a specific noisy failure, so removing it brings the noise back.
- Silent catches produce no symptom until somebody is debugging something else entirely.
Questions
- What does the agent actually change?
- The ticket is scoped to one outcome: give one boundary a consistent error-handling convention with no silent catches. Work that serves that outcome is in scope, and anything outside it is left for a separate ticket, so the pull request stays reviewable.
- How do I know the work is done?
- The pull request carries the evidence, not only the diff. Here that means every catch logs or rethrows, asserted by tests, so a reviewer can confirm the result without reproducing the work locally.
- How much oversight does this need?
- None is required before the run starts. Every claim this ticket makes can be checked by machine, so the agent works straight through and a person reviews the finished pull request like any other.