fix: address self-review findings on PR #90
PR Ready Gate / clear-labels (pull_request) Successful in 2s
CI / test (pull_request) Successful in 17s
CI / review (anthropic--claude-4.6-sonnet, sonnet, SONNET_REVIEW_TOKEN) (pull_request) Successful in 33s
CI / review (gpt-5, security, ., rodin/security-patterns, SECURITY_REVIEW.md, SECURITY_REVIEW_TOKEN) (pull_request) Successful in 48s
CI / review (gpt-5, gpt, GPT_REVIEW_TOKEN) (pull_request) Successful in 2m44s
PR Ready Gate / clear-labels (pull_request) Successful in 2s
CI / test (pull_request) Successful in 17s
CI / review (anthropic--claude-4.6-sonnet, sonnet, SONNET_REVIEW_TOKEN) (pull_request) Successful in 33s
CI / review (gpt-5, security, ., rodin/security-patterns, SECURITY_REVIEW.md, SECURITY_REVIEW_TOKEN) (pull_request) Successful in 48s
CI / review (gpt-5, gpt, GPT_REVIEW_TOKEN) (pull_request) Successful in 2m44s
- Remove unused error return from BuildPositionToLineMap (always nil) - Add comment explaining intentional CommitID drop in PostReview - Refactor TestAdapter_PostReview_WithComments to route by URL path - Add TestAdapter_GetFileContent_RefRouting test - Acknowledge maxPosition O(n) with code comment - Remove redundant TestAdapter_CompileTimeCheck (compile-time var _ exists) - Fix GetPullRequestFiles comment (Patch field is omitted, not 'set to empty') - Acknowledge translateEvent fallback as intentional design
This commit is contained in:
+8
-5
@@ -56,7 +56,7 @@ func (a *Adapter) GetPullRequestDiff(ctx context.Context, owner, repo string, nu
|
||||
}
|
||||
|
||||
// GetPullRequestFiles maps []gitea.ChangedFile to []vcs.ChangedFile.
|
||||
// Patch is set to empty string since Gitea's /pulls/{n}/files does not return patch text.
|
||||
// Patch field is omitted (zero-value) since Gitea's /pulls/{n}/files does not return patch text.
|
||||
func (a *Adapter) GetPullRequestFiles(ctx context.Context, owner, repo string, number int) ([]vcs.ChangedFile, error) {
|
||||
files, err := a.client.GetPullRequestFiles(ctx, owner, repo, number)
|
||||
if err != nil {
|
||||
@@ -135,6 +135,9 @@ func translateEvent(event vcs.ReviewEvent) string {
|
||||
case vcs.ReviewEventComment:
|
||||
return "COMMENT"
|
||||
default:
|
||||
// Unknown events pass through as-is. This is intentional: new event types
|
||||
// added to vcs.ReviewEvent will still be forwarded without a code change here,
|
||||
// and Gitea will reject truly invalid values with a clear API error.
|
||||
return string(event)
|
||||
}
|
||||
}
|
||||
@@ -153,16 +156,16 @@ func (a *Adapter) PostReview(ctx context.Context, owner, repo string, number int
|
||||
return nil, fmt.Errorf("fetch diff for position translation: %w", err)
|
||||
}
|
||||
|
||||
posMap, err := BuildPositionToLineMap(diff)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("build position map: %w", err)
|
||||
}
|
||||
posMap := BuildPositionToLineMap(diff)
|
||||
|
||||
for _, c := range req.Comments {
|
||||
lineNum, err := posMap.Translate(c.Path, c.Position)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("translate position %d in %s: %w", c.Position, c.Path, err)
|
||||
}
|
||||
// CommitID from vcs.ReviewComment is intentionally not forwarded:
|
||||
// Gitea review comments are pinned to the PR head SHA automatically,
|
||||
// and the CreatePullReview API has no per-comment commit_id field.
|
||||
giteaComments = append(giteaComments, ReviewComment{
|
||||
Path: c.Path,
|
||||
NewPosition: int64(lineNum),
|
||||
|
||||
Reference in New Issue
Block a user