Migrate rv CLI from TypeScript to Rust - #1
Conversation
Co-authored-by: Darren <68653294+DarrenBaldwin07@users.noreply.github.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 4 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 62f2f18. Configure here.
| .send() | ||
| .await?; | ||
| response_empty(response).await | ||
| } |
There was a problem hiding this comment.
Bitbucket resolve uses wrong method
High Severity
Resolving a Bitbucket comment sends PUT to /comments/{id}/resolve. Bitbucket Cloud expects POST on that path, so resolve_comment fails instead of resolving the thread.
Reviewed by Cursor Bugbot for commit 62f2f18. Configure here.
| .send() | ||
| .await?; | ||
| Ok(Comment::from(response_json::<ApiComment>(response).await?)) | ||
| } |
There was a problem hiding this comment.
GitHub lists issue comments only
Medium Severity
get_comments and get_comment call the issues comment endpoints, so they return conversation comments and miss inline review comments. GitLab and Bitbucket include inline comments in the same APIs, and the previous GitHub client used pulls review-comment routes.
Reviewed by Cursor Bugbot for commit 62f2f18. Configure here.
| .query(&[("per_page", 100)]) | ||
| .send() | ||
| .await?; | ||
| let notes: Vec<ApiNote> = response_json(response).await?; |
There was a problem hiding this comment.
GitLab lists only the first page
Medium Severity
Notes and discussions are fetched once with per_page 100 and no follow-up pages. Larger merge requests lose comments and threads, and resolve_comment can fail to find a note that exists on a later page.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 62f2f18. Configure here.
|
|
||
| let repo = parts[marker - 1]; | ||
| let owner = parts[..marker - 1].join("/"); | ||
| return parsed(Provider::Gitlab, &owner, repo, parts[marker + 2]); |
There was a problem hiding this comment.
PR URLs with extra path segments fail
Medium Severity
URL parsing requires an exact path (/pull/123, /pull-requests/123, or /-/merge_requests/123) and rejects common suffixes such as /files, /diffs, or /commits. github view and setup then fail on normal browser address-bar URLs.
Reviewed by Cursor Bugbot for commit 62f2f18. Configure here.


Summary
~/.rv.jsonconfig formatfrayt/platform/coreTesting
cargo fmt --all -- --checkcargo clippy --all-targets --all-features -- -D warningscargo test --all-targets--helpoutput