Skip to content

Choose a tag to compare

@github-actions github-actions released this 16 Oct 19:55
· 133 commits to main since this release
Immutable release. Only release title and notes can be modified.
981344b

⚠️ Breaking Changes

Warning

This release changes several defaults and makes more settings host-only. Check each item below against your deployment before upgrading.

  • pip install pr-agent no longer installs the git provider SDKs (#3679): PyGithub, python-gitlab, atlassian-python-api, the Azure DevOps SDKs, boto3, giteapy, the Google Cloud SDKs and a2a-sdk moved to the github, gitlab, bitbucket, azure, codecommit, gitea, google and mosaico extras. Install the ones you use, for example pip install "pr-agent[github]", or pr-agent[all] for the previous set. The Docker images already install all.
  • Docker service images run as a non-root user (#3910): the webhook, app, polling and Mosaico targets run as UID/GID 10001 with HOME=/home/pragent. Mounted secrets must be readable by that user, output and database directories must be writable, and home-relative mounts should move to /home/pragent. The GitHub Action, CLI and Lambda images still run as root.
  • Azure DevOps and Bitbucket Server webhooks require credentials (#3911): with azure_devops_server.webhook_username/webhook_password or bitbucket_server.webhook_secret unset, every webhook is rejected with HTTP 403. Set them on both the sender and PR-Agent before upgrading.
  • GitLab webhooks backed by a secret provider need a new token format (#3913): when GitLab credentials come from AWS Secrets Manager or Google Cloud Storage, the webhook's Secret Token must be <secret-name>:<webhook-token>. Name-only tokens are rejected with HTTP 401, so update the webhooks when you deploy.
  • Namespace-wide settings are off by default (#3908): PR-Agent no longer applies <namespace>/pr-agent-settings to every repository automatically. Set the host-only config.global_settings_repo = "pr-agent-settings" to keep the old behaviour.
  • [tool.pr-agent] in pyproject.toml is no longer read (#3941): move those settings to .pr_agent.toml.
  • More settings are host-only (#3840, #3904, #3950, #4001, #4054): a repository's .pr_agent.toml and comment arguments can no longer set provider endpoints (openai.api_base and the other api_base keys), keys ending in url, endpoint, org, key, token or secret, provider auth mode and TLS settings (github.deployment_type, gitlab.auth_type/ssl_verify, bitbucket.auth_type, gitea.skip_ssl_verification/ssl_ca_cert), jira.jira_site/jira_api_email/project_keys, or LiteLLM callbacks. They are ignored with a warning, so set them in host configuration instead. Comment arguments are restricted further as well (#3902).
  • Gitea and Gerrit read repository settings from the target branch (#3906): Gitea uses the PR base and Gerrit the default branch, so a .pr_agent.toml change inside a PR no longer applies to that PR.
  • Cross-repository reads need an allowlist (#3922, #3897): GitHub ticket context only reads linked issues and sub-issues from the PR's own repository or same-owner repositories listed in config.repo_context_sibling_repos. gitlab.expand_submodule_diffs only expands submodules listed there that sit in the MR's top-level group.
  • Ignore rules now cover comment commands (#3943): config.ignore_pr_authors, ignore_pr_labels, ignore_pr_title, the branch rules and ignore_repositories now skip manually triggered commands too, not only automatic ones.
  • merge_recommendation values were renamed (#4010): with pr_reviewer.require_merge_recommendation on, safe_to_merge is now no_concerns_found and merge_with_caution is now needs_review. changes_required is unchanged. Update anything that parses review output.
  • /describe comments no longer repeat the PR description (#4118): with pr_description.publish_description_as_comment = true, the comment leaves out the User Description section even when add_original_user_description is on, because the PR body is left untouched.
  • Smaller behaviour changes: webhook servers reject request bodies over 5 MiB with HTTP 413 (config.max_webhook_request_body_bytes, #3820). A positive config.max_output_tokens below 4096 is raised to 4096 (#4013). /describe and /generate_labels drop model labels outside the PR types and enabled custom labels (#3899).

What's Changed

🚀 Features

  • feat: show agent run details on /ask, /ask_line, /update_changelog, and /help answers by @ashearin in #4091
  • feat(linear): add linked issue context for ticket compliance by @lkshrk in #4078
  • Add support for Gemini 4 Argon by @takotakot in #4120
  • feat: support CompactifAI provider credentials by @favouradesiyan in #3737
  • feat(gitea): support inline key issues by @fbidu in #4131
  • feat(ci): post PR-Agent output as the PR Agent GitHub App when configured by @naorpeled in #4051
  • feat(ci): enable sponsored descriptions and improvements on PR open by @ofir-frd in #4002
  • feat(review): honor human-resolved GitHub key issues by @erezlev13 in #4032
  • feat: cache the shared skills prefix across review tools by @utsab345 in #4014
  • feat: export PR reviews as JSON by @utsab345 in #4033
  • feat(review): honor explicit Azure key-issue dismissals by @erezlev13 in #4025
  • feat(review): add opt-in failure modes by @oleksii-tumanov in #4012
  • feat(artifacts): choose which end of the file truncation keeps by @Yoel-qin in #3990
  • feat(tickets): include native issue references from PR titles by @oleksii-tumanov in #3980
  • feat(review): treat human-resolved inline key-issue threads as dismissed by @hkn-wt in #3925
  • feat(github): stream chunk progress into in-progress check runs by @Yoel-qin in #3933
  • feat(models): add OpenAI GPT-6.1 Sol support by @PeterDaveHello in #3938
  • feat(describe): report chunk progress in the progress comment by @Yoel-qin in #3872
  • feat(push-outputs): add Telegram channel by @noooooooookro in #3868
  • feat(local): support repo context files in the local git provider by @YokoAC in #3863
  • feat(gitlab): react to how a comment command ended by @PeterDaveHello in #3852
  • feat(otel): export per-command token usage by @utsab345 in #3835
  • feat(models): add OpenAI GPT-6 Sol and Luna support by @PeterDaveHello in #3628
  • feat: report chunk progress in the progress comment by @utsab345 in #3814
  • feat(review): give /review the findings of earlier reviews by @hkn-wt in #3750

🐛 Bug Fixes

⚡ Performance

📚 Documentation

🧹 Maintenance

⬆️ Dependencies

Full Changelog: v0.47.0...v0.48.0