Repository navigation
refactor(handler): move error conversion to the handler - #331
Merged
Merged
Conversation
The handler now owns the failure log and the wire error conversion. Each handler method uses a named retErr and one defer. If retErr is not nil, the defer logs "<RPC> failed" with tangoerrors.Fields and converts the error with toWireError. The controller no longer logs failures and no longer converts errors. It returns the classified error. The metrics lifecycle and the repository resolver stay in the controller, so the metrics are the same as on main. handler.Params gets a Logger field. The server and the integration test pass it. Test plan: - make build, make test, make lint - handler wire error tests run the real controller through the handler Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
justinwon777
commented
Oct 9, 2026
| // repository, mirroring the stub of the same name in controller's tests. | ||
| type allowAnyRepositoryConfigProvider struct{} | ||
|
|
||
| func (allowAnyRepositoryConfigProvider) GetRepositoryConfig(remote string) (config.RepositoryConfig, bool) { |
Contributor
Author
There was a problem hiding this comment.
copied from controller/testhelper_test.go but controller version is still needed until handler is fully implemented.
Contributor
There was a problem hiding this comment.
export it? it already depends on controller
xytan0056
approved these changes
Oct 9, 2026
xytan0056
approved these changes
Oct 9, 2026
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.
The handler now owns the failure log and the wire error conversion. If retErr is not nil, the defer logs " failed" with tangoerrors.Fields and converts the error with toWireError.
Test Plan
unit tests
Issue