Repository navigation
chore(deps): update qodo-ai/pr-agent action to v0.50.0 - #334
Merged
Merged
Conversation
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.
Note
This PR body was truncated due to platform limits.
This PR contains the following updates:
v0.49.0→v0.50.0Release Notes
qodo-ai/pr-agent
v0.50.0Compare Source
.pr_agent.tomlfiles can no longer override GitHub pacing and retry settings (github.seconds_between_requests,github.seconds_between_writes,github.api_retries,github.ratelimit_retries),config.num_retries,azure_devops_server.agent_identity, custom-label settings (config.enable_custom_labelsand[custom_labels]), orpr_code_suggestions.max_number_of_calls.config.num_retriesis capped at 10. Per-directory.pr_agent.tomlfiles also cannot setpr_code_suggestions.dual_publishing_score_threshold. Move values you rely on to host configuration. (#4445, #4475, #4485, #4632, #4745)config.ai_timeoutandpr_code_suggestions.max_number_of_callscan no longer be set through command comments. (#4445)pr_code_suggestions.approve_pr_on_self_reviewandpr_code_suggestions.fold_suggestions_on_self_revieware removed from the shipped configuration. PR-Agent warns if they remain set; they never changed/improvebehavior. (#4598)config.enable_auto_approvalis now host-only. The auto-approval path remains disabled in this release. (#4700)🔐 Trusted Publishing
PyPI releases now use PyPI Trusted Publishing through GitHub Actions OIDC and produce package attestations. The release workflow rejects commits that are not reachable from
main. (#3909)🚀 Features
🐛 Bug Fixes
[Bug] Prefetch review diff outside the event loop by @askarshabdanov1-collab in #4403
fix(ci): Restrict releases to main and attest PyPI packages by @oleksii-tumanov in #3909
fix(config): keep dual_publishing_score_threshold out of per-directory settings by @shu-chen-dot-ca in #4745
fix(gitea): build file links for AGit-flow PRs from the head SHA by @Yi-111-a in #4744
fix(plain-diff): strip terminal controls from Markdown output by @jiangjiang248 in #4738
fix(github): keep suggestions just outside a hunk instead of dropping them by @ylcn91 in #4734
fix(servers): parse string-valued boolean settings in webhook servers by @ylcn91 in #4735
fix: pin auto-approval to the reviewed head and make enable_auto_approval host-only by @wanjinhao1 in #4700
fix(improve): reuse persistent summaries when history is disabled by @PeterDaveHello in #4717
fix(servers): honor disabled string-valued push triggers by @PeterDaveHello in #4720
fix(output): preserve stdout JSON on restricted encodings by @PeterDaveHello in #4719
fix(doctor): keep the report when stdout cannot encode it by @Bortlesboat in #4714
fix(security): reject host-only and forbidden keys written with whitespace around the section dot by @Yi-111-a in #4686
fix(push_outputs): require exact channel names by @PeterDaveHello in #4705
fix(gitlab): ignore unified-diff file headers in per-file line counts by @zhengqiuyang in #4651
fix: neutralize GitLab mentions by @utsab345 in #4631
fix(github): support GitHub Enterprise Cloud data residency (*.ghe.com) by @alexjansons in #4688
fix(providers): build help_docs links from the whole repo URL by @Xch4rt in #4687
fix(review): preserve distinct ticket identities across chunks by @rudycelekli in #4662
fix(improve): preserve literal data in already aligned replacements by @rudycelekli in #4674
fix(diff): keep negative context settings from corrupting hunk counts by @rudycelekli in #4680
fix(usage): reject negative and boolean token counts by @rudycelekli in #4664
fix(describe): retain files when unused optional summaries are malformed by @rudycelekli in #4676
fix(improve): retain suggestions with quoted or unusable length caps by @rudycelekli in #4681
fix(add_docs): validate model anchors and placement before insertion by @rudycelekli in #4677
fix(doctor): align endpoint and key checks with model routing by @PeterDaveHello in #4570
fix(bitbucket): preserve significant spaces in rename paths by @rudycelekli in #4682
fix(action): write Unicode outputs using UTF-8 by @rudycelekli in #4663
fix(diff): preserve Git line boundaries in supplied diff parsing by @rudycelekli in #4668
fix(azure): preserve physical lines in suggestion ranges and reconciliation by @rudycelekli in #4672
fix(azure): keep the suggestion fence in inline /improve threads by @Chebaleomkar in #4659
fix(review): keep invalid chunk scores out of conservative reduction by @rudycelekli in #4669
fix(routing): skip overflowing model limits by @rudycelekli in #4667
fix: keep an unpaired backtick literal in replace_code_tags by @kevin9327 in #4679
fix(tickets): offload blocking ticket reads by @PeterDaveHello in #4658
fix(action): skip duplicate first-open review requests by @Aschenbath in #4654
fix(bitbucket): decode raw file contents as UTF-8 by @tanishqbaweja in #4648
fix(describe): strip whitespace from type items before schema validation by @mirzasnowy in #4647
fix: scope response language instructions to each command by @PeterDaveHello in #4645
fix(jira): accept Jira Cloud project keys that contain digits by @tanishqbaweja in #4646
fix: retry truncated responses before publishing tool results by @PeterDaveHello in #4640
fix(diff): preserve complete filenames in compressed metadata by @PeterDaveHello in #4639
fix(azure): preserve encoded PR names in published links by @Aschenbath in #4637
fix(labels): remove labels left out of the set on Gitea by @tanishqbaweja in #4628
fix: protect custom labels from repo overrides by @utsab345 in #4632
fix(gerrit): keep credentials out of child arguments by @utsab345 in #4569
fix(labels): remove labels left out of the set on Azure DevOps by @tanishqbaweja in #4618
fix: deprecate no-op self-review marker keys by @utsab345 in #4598
fix(azure): resolve agent identity for persistent reviews by @dellch in #4613
fix: align config comments and large patch fallback by @utsab345 in #4593
fix(bitbucket-server): find the projects/users segment by its position in the PR URL by @tanishqbaweja in #4563
fix(github-action): allow static commands without model keys by @PeterDaveHello in #4583
fix(structural-reach): preserve imports for blobs shared across languages by @oleksii-tumanov in #4579
fix(improve): retry truncated suggestion responses by @PeterDaveHello in #4582
fix(ci): preserve the test image cache after smoke builds by @PeterDaveHello in #4610
fix: exclude NuGet and Swift lockfiles from analysis by @PeterDaveHello in #4608
fix: include Gradle build scripts in default analysis by @PeterDaveHello in #4600
fix: align config comments and gitlab bot log by @utsab345 in #4592
fix(ask): keep inline diff reads off the event loop by @PeterDaveHello in #4601
fix: match patch_extension_skip_types regardless of case by @RagedPanda in #4605
fix(improve): preserve const-to-let reassignment suggestions by @PeterDaveHello in #4607
fix(gitlab): skip webhook events from ignored user IDs by @sarankumar1325 in #4562
fix: filter generated suffixes regardless of case by @oleksii-tumanov in #4572
fix(plain-diff): preserve the default title in describe output by @PeterDaveHello in #4571
fix(gitlab): handle single-line /ask diff notes by @PeterDaveHello in #4568
fix(describe): tolerate mixed category list values by @PeterDaveHello in #4578
fix(tools): remove unmatched closing rows from HTML tables by @PeterDaveHello in #4576
fix(polling): preserve queued work when marking another notification fails by @PeterDaveHello in #4567
fix(improve): honor publish_output when reconciling suggestion threads by @PeterDaveHello in #4566
fix(yaml): preserve reviews with unicode separators by @awais-ur-rehman in #4555
fix: default server logging to info by @utsab345 in #4556
fix: narrow default auto title ignore by @utsab345 in #4554
fix: ignore bot push commits in github app by @utsab345 in #4558
fix: align suggestions score threshold default by @utsab345 in #4559
fix(review): retry truncated model completions before publishing by @PeterDaveHello in #4533
fix(providers): validate suggestion line ranges in Gerrit, Gitea and CodeCommit by @TheNetherWatcher in #4520
fix(github-action): fail when the required GitHub token missing by @PeterDaveHello in #4544
fix(review): render split themes without GFM by @oleksii-tumanov in #4542
fix: clarify unresolved token limits and guard model budgets by @PeterDaveHello in #4539
fix(polling): preserve command text after repeated bot mentions by @PeterDaveHello in #4540
fix(doctor): apply the ambient-auth exemption to the doctor key check by @Kiddo4993 in #4536
fix(ignore): drop a non-list ignore setting instead of disabling every rule by @RagedPanda in #4510
fix(review): drop look-alike structural_reach keys and skip malformed tsconfig files by @RagedPanda in #4522
fix(gitlab): request max page size for full lists by @utsab345 in #4517
fix(add_docs): keep local failures out of review.md by @utsab345 in #4516
fix(providers): classify GitLab and Gitea URLs by path segment by @RagedPanda in #4509
fix(providers): include filtered filenames in local review context by @oleksii-tumanov in #4504
fix(labels): report label read and publication failures by @oleksii-tumanov in #4502
fix(github): avoid rebuilding diffs from failed content reads by @PeterDaveHello in #4473
fix(providers): share LF-based diff line counting by @PeterDaveHello in #4489
fix(deps): Replace deprecated Uvicorn workers in Gunicorn service images by @PeterDaveHello in #4491
fix(bitbucket): reject invalid diffstat line counts by @PeterDaveHello in #4490
fix(github): classify issue and pull request URLs by path by @PeterDaveHello in #4486
fix(similar_issue): stop embedding fallback on access errors by @PeterDaveHello in #4497
fix(improve): match const and let as whole words by @PeterDaveHello in #4499
fix(azure_devops): make azure_devops_server.agent_identity host-only by @itsvrushabh in #4485
fix: keep valid ignore rules when a pattern has the wrong type by @Aschenbath in #4484
fix(servers): disable_auto_feedback stops push and review commands too by @MilkteaTW1 in #4461
fix(local): stop failed /improve and /describe from overwriting review.md by @YokoAC in #4483
fix: move describe and improve diff fetch off event loop by @utsab345 in #4462
fix: cap config.num_retries and keep host only by @utsab345 in #4475
fix(improve): only update comments authored by the agent by @Aschenbath in #4330
fix(deps): Update certifi to 2026.10.23 to drop distrusted roots by @PeterDaveHello in #4478
fix(packaging): honor the declared uv version requirement by @PeterDaveHello in #4474
fix(telemetry): mark recorded tool errors as command span errors by @PeterDaveHello in #4477
fix(describe): preserve large PR file walkthrough format by @PeterDaveHello in #4432
fix(github-action): honor PR ignore policy for automatic tools by @PeterDaveHello in #4471
fix(describe): use provider head SHA in marker headers by @PeterDaveHello in #4467
fix(improve): preserve Git line boundaries in code suggestions by @PeterDaveHello in #4472
fix: merge section-level comment args into the section instead of replacing it by @mirzasnowy in #4458
fix(settings): declare the Bitbucket push settings and document the Server switch by @MilkteaTW1 in #4457
fix(settings): declare app_key under [bitbucket] in secrets template by @vishalkaay in #4459
fix: use model_dump in prepare_logs to avoid pydantic dict deprecation by @mirzasnowy in #4456
fix: load tiktoken files bundled with LiteLLM so token counting works… by @luisrviz in #4423
fix(similar_issue): migrate deprecated Pydantic Config to ConfigDict by @itsvrushabh in #4447
fix(security): make pacing and retry settings host-only by @utsab345 in #4445
fix(litellm): make the handler the only retry layer by @dodoshell in #4425
fix: publish empty improve results in GitHub workflow by @ofir-frd in #4442
fix(config): share boolean parsing across command entry points by @PeterDaveHello in #4438
fix(similar_issue): enforce embedding model token limits by @PeterDaveHello in #4437
fix(gitlab): record the head used by the reviewed diff by @PeterDaveHello in #4431
fix(add-docs): preserve Git line numbers in source anchors by @PeterDaveHello in #4435
fix: enforce tiny skills token budgets by @utsab345 in #4415
fix(improve): handle quoted integer impact thresholds by @PeterDaveHello in #4399
fix(gitlab): publish validated suggestions from patch-only files by @PeterDaveHello in #4428
fix: only use static AWS fallback for auth errors by @pei711 in #4414
fix(gerrit): preserve commit-message Jira context by @oleksii-tumanov in #4416
fix(improve): retry malformed suggestion responses with fallback models by @PeterDaveHello in #4408
fix(github-action): skip ignored comments before repo setup by @PeterDaveHello in #4406
fix(describe): preserve title and labels in structured outputs by @PeterDaveHello in #4405
fix(describe): retain fallback entries in file walkthroughs by @PeterDaveHello in #4402
fix(add-docs): skip suggestions without the original source line by @PeterDaveHello in #4401
fix(diff): exclude metadata from inline comment anchors by @PeterDaveHello in #4398
fix: skip GitHub merge commits in incremental reviews by @utsab345 in #4371
fix(providers): reset the whole diff state between auto commands by @Yoel-qin in #4373
fix(improve): retry unusable self-reflection feedback by @PeterDaveHello in #4377
fix(improve): don't state identifiers that aren't visible in the diff as fact by @ira-at-work in #4223
fix: reject invalid webhook body sizes by @utsab345 in #4388
fix(telemetry): isolate direct Prometheus runs by @oleksii-tumanov in #4380
fix(review): preserve prose TODO findings across chunks by @PeterDaveHello in #4384
fix(review): include commit context in contribution-time estimates by @oleksii-tumanov in #4381
fix(describe): handle nullable description output by @PeterDaveHello in #4382
fix(review): retain partial compliance in ticket summaries by @PeterDaveHello in #4383
fix(review): preserve effort labels without a valid replacement by @PeterDaveHello in #4378
fix(help): retry unusable structured answers with fallback models by @PeterDaveHello in #4365
fix: preserve quoted headers in user descriptions by @oleksii-tumanov in #4358
⚡ Performance
📚 Documentation
docs: simplify compatible provider setup by @copilot-swe-agent[bot] in #4441
docs: correct configuration and usage guidance by @PeterDaveHello in #4722
docs(readme): add linked release and project status badges by @PeterDaveHello in #4584
docs: clarify doctor CLI entry point on service Docker images by @Yi-111-a in #4701
docs: clarify doctor command in service images by @dajiaohuang in #4641
docs: correct CLI example and section boundaries by @PeterDaveHello in #4643
docs: describe config keys and push trigger scope by @utsab345 in #4594
docs: shorten long configuration descriptions by @utsab345 in #4597
docs: align documentation with implementation by @utsab345 in #4557
docs(platforms): align provider matrix with implementation by @utsab345 in #4524
docs: document config.num_retries for rate-limit handling by @HarshRajSinghania in #4194
docs: add APIClaw to changing_a_model by @ankita37105 in #4355
docs: add a Runcrate section to changing_a_model by @heydryft in #4374
🧹 Maintenance
test(config): record the keys PR comments can override by @atishay-kasliwal in #4706
test: exercise real lockfile filtering in provider diff tests by @PeterDaveHello in #4609
test: clean up SyntaxWarning escape sequences and PytestRemovedIn10Warning by @itsvrushabh in #4482
ci: cancel superseded pull request test runs by @PeterDaveHello in #4466
refactor: one command registry so aliases behave the same in every entry point by @SpinachDigital in #4727
chore(deps): bump oauthlib from 4.0.0 to 4.0.1 by @dependabot[bot] in #4709
chore: remove helpers only their own tests called by @Goldloli in #4692
chore(providers): remove unused provider methods by @utsab345 in [#4691](https://redirect.github.com/qodo-ai/
Configuration
📅 Schedule: (in timezone Asia/Tokyo)
* 0-23 * * *)🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.