fix: preserve original error in requestSessionResult#35
Draft
dobby-coder[bot] wants to merge 1 commit into
Draft
fix: preserve original error in requestSessionResult#35dobby-coder[bot] wants to merge 1 commit into
dobby-coder[bot] wants to merge 1 commit into
Conversation
Wrapping the caught error with new Error(e) coerced it to the string "[object Object]" and discarded the original stack trace. Log the failure with context and rethrow the original error instead. Fixes #28 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #28.
IrmaService.requestSessionResultwrapped caught errors withnew Error(e), which coerces the original error to a string — for HTTP/network error objects the message becomes"[object Object]"and the original stack trace is lost. The author had left a// TODO: Fix error handlingacknowledging this.Change
Replace the wrapping with log-and-rethrow, following the issue's suggested fix:
%osplat style already used elsewhere in the codebase (server/src/api/index.ts,server/src/api/vote.ts).Also removed the now-unneeded
: anyannotation on the catch binding and the stale TODO.Verification
npm testis a no-op placeholder), so verification is via type-checking:tsc --noEmitreports 0 errors.server/src/api/result.ts) — it does not depend on the wrapped error, so behaviour is unchanged apart from improved error fidelity.🤖 Generated with Claude Code