Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
105 commits
Select commit Hold shift + click to select a range
4d9829d
docs: fix automations note to reflect self-hosted deployments (#3201)
shashankvarma499 Sep 8, 2026
349d106
chore: remove dead bandit configuration (#3203)
asarakhatun17-lgtm Sep 8, 2026
b11a1db
TYP: ship a py.typed marker for PEP 561 compliance (#3205)
utsab345 Sep 8, 2026
11c1442
chore(deps): update yanked Python dependencies (#3211)
PeterDaveHello Sep 8, 2026
5e41d97
ci: run the pre-commit workflow on pull requests (#3212)
utsab345 Sep 8, 2026
f7656a9
docs: drop stale README release entries (#3208)
Shaisolaris Sep 8, 2026
1dcd346
chore: pin uv 0.12.10 in pyproject.toml (#3153)
PeterDaveHello Sep 8, 2026
29709d4
test(providers): enforce capability predicate truth (#3156)
auroraxo Sep 8, 2026
6f2e0ff
fix(polling): bound active workers across polling iterations (#3063)
PeterDaveHello Sep 9, 2026
d9395ee
fix(describe): retain successful chunks after partial failure (#3163)
oleksii-tumanov Sep 9, 2026
bf05b46
fix(deps): declare certifi as a range per the security-pin policy (#3…
7487 Sep 9, 2026
172d261
refactor(help): select help rendering by provider capability (#3213)
7487 Sep 9, 2026
00b8c9d
fix(providers): report code-suggestion publication failure (#3219)
auroraxo Sep 9, 2026
d5c15c4
fix(bitbucket): restore persistent comment links (#3226)
junnhwan Sep 9, 2026
a648424
fix(review): preserve findings after failed chunks (#3229)
junnhwan Sep 9, 2026
8bd1532
fix(github): report total inline suggestion fallback failure (#3232)
yashaskn8 Sep 9, 2026
70d3f27
Harden Dockerfiles for stable and predictable builds (#3218)
PeterDaveHello Sep 9, 2026
aaa2992
fix(release): keep uv.lock in sync with version bumps (#3214)
PeterDaveHello Sep 9, 2026
17651f7
refactor: select PR chat link by provider capability (#3239)
auroraxo Sep 9, 2026
5307248
ci: verify uv.lock freshness (#3245)
PeterDaveHello Sep 9, 2026
1f1abd1
perf(gitlab): avoid redundant project fetches for file reads (#3247)
PeterDaveHello Sep 10, 2026
539d0b8
refactor: remove 14 dead functions in the tool layer (#3182) (#3236)
utsab345 Sep 10, 2026
2296abb
docs: add a documentation page for the MOSAICO A2A server (#3234)
utsab345 Sep 10, 2026
3abfc84
chore: optimize list(x.values) -> x.to_list() pandas (#3233)
even-even Sep 10, 2026
847dcbb
chore(github): upgrade PyGithub to 2.x and migrate off deprecated aut…
utsab345 Sep 10, 2026
5bf8b40
docs: add a complete configuration reference covering every option (#…
utsab345 Sep 10, 2026
db06a90
test(docs): guard mkdocs and GitBook navs against drift (#3231)
Mihailchik Sep 10, 2026
cb4177c
docs: correct stale and inaccurate documentation and comments (#3250)
PeterDaveHello Sep 10, 2026
b2d3dde
docs: remove stale best practices guidance (#3202)
macjayz Sep 10, 2026
6e13fa6
fix(similar_issue): port pinecone backend to the current SDK (#3227)
utsab345 Sep 10, 2026
7d642fb
fix(claude): warn when thinking is enabled but no model in the chain …
utsab345 Sep 10, 2026
6324188
fix(tickets): match hyphens and periods in cross-repo issue reference…
auroraxo Sep 10, 2026
c3f1999
fix(help): try fallback models after completion failures (#3266)
oleksii-tumanov Sep 10, 2026
e705c10
refactor(similar_issue): select issue indexing by provider capability…
auroraxo Sep 10, 2026
f196f21
chore: burn down the first five rules in the ruff lint.ignore ledger …
utsab345 Sep 10, 2026
554c5fa
docs: document the [push_outputs] feature (#3210)
utsab345 Sep 10, 2026
b1a8737
fix(codecommit): update persistent review comments (#3158)
oleksii-tumanov Sep 10, 2026
a9f15a5
fix: drop a sign-off the model adds after the closing fence (#3243)
Carlos0196 Sep 10, 2026
22248a5
docs: repair four dead outbound links (#3270)
auroraxo Sep 10, 2026
fa5a3c7
refactor(describe): select help text by provider capability (#3244)
auroraxo Sep 10, 2026
18d6757
refactor(changelog): select changelog review by provider capability (…
auroraxo Sep 10, 2026
4196ea6
fix(gpt5): map reasoning_effort 'max' to 'xhigh' for OpenAI models (#…
auroraxo Sep 10, 2026
bc3a9a4
test(contract): carry the suggestion outcome invariant in the table (…
auroraxo Sep 10, 2026
2565e2b
docs: document GitHub Copilot as a custom model provider (#3241)
utsab345 Sep 10, 2026
f51d821
docs: self-host the documentation images (#3257)
auroraxo Sep 10, 2026
fa7b1a3
fix: isolate LiteLLM provider credentials per request (#2999)
PeterDaveHello Sep 10, 2026
ae197b6
feat(telemetry): expose a native prometheus scrape endpoint (#3238)
utsab345 Sep 10, 2026
e5c060b
refactor: drop MAX_TOKENS entries that exactly duplicate LiteLLM (#3220)
utsab345 Sep 10, 2026
2421623
fix: key repo-context cache on the fetched revision (#3149)
utsab345 Sep 10, 2026
9259987
fix(providers): make the base persistent comment actually persist (#3…
auroraxo Sep 10, 2026
1421c67
refactor(tickets): select ticket extraction by provider capability (#…
auroraxo Sep 10, 2026
24b66a3
chore(ci): add Dependabot version updates (#3278)
auroraxo Sep 11, 2026
e92eaa1
fix: keep truncated comments within character limit (#3258)
oleksii-tumanov Sep 11, 2026
e899d56
chore(ci): pin release-drafter to the v6.4.0 commit rather than its t…
dependabot[bot] Sep 11, 2026
531bcda
chore(ci): bump pypa/gh-action-pypi-publish from 1.14.0 to 1.14.2 in …
dependabot[bot] Sep 11, 2026
101dcaf
chore(docker): bump python from 3.12.14-slim to 3.14.7-slim in /docke…
dependabot[bot] Sep 11, 2026
921fe9a
fix(plain-diff): preserve partial suggestion output (#3287)
oleksii-tumanov Sep 11, 2026
1d6016f
fix(improve): keep fallback suggestions in artifacts (#3301)
oleksii-tumanov Sep 11, 2026
b245e51
fix: stop dropping the changes walkthrough via dead inline_file_summa…
utsab345 Sep 11, 2026
f7ef913
fix(help): allow question mode without an OpenAI key (#3262)
oleksii-tumanov Sep 11, 2026
9933a01
docs: document custom CA and self-signed certificate configuration (#…
utsab345 Sep 11, 2026
ae2fcce
docs(similar_issue): refresh page with experimental status and backen…
utsab345 Sep 11, 2026
0818a5f
fix(codecommit): cap comment bodies at the PostCommentForPullRequest …
L4XB Sep 11, 2026
f3d8a5b
fix: point runtime documentation links to current site (#3281)
oleksii-tumanov Sep 11, 2026
2b308ad
fix(cli): validate output artifact options (#3289)
oleksii-tumanov Sep 11, 2026
4d209ab
perf(review): reuse prepared diff chunks (#3291)
junnhwan Sep 11, 2026
ed2817a
perf(tickets): fetch Asana task context concurrently (#3293)
junnhwan Sep 11, 2026
97703ef
feat: add Jira ticket-context support (#2420)
dellch Sep 11, 2026
c810eff
fix: build real Bitbucket Server language map and ignore non-numeric …
MostafaHassanzadeh Sep 11, 2026
ca725b1
docs: add an Atlas Cloud section to changing_a_model (#3037)
binyangzhu000-sudo Sep 11, 2026
de2ed28
docs(review): correct ticket-compliance documentation (#3330)
swayamg20 Sep 12, 2026
fe771a1
fix(add_docs): align prompt example field (#3325)
oleksii-tumanov Sep 12, 2026
6ac10ea
fix(help): fit prompts for each attempted model (#3308)
oleksii-tumanov Sep 12, 2026
9d1735e
fix(push_outputs): isolate destination failures (#3307)
oleksii-tumanov Sep 12, 2026
796a6fc
chore(ci): bump the actions-major group with 11 updates (#3297)
dependabot[bot] Sep 12, 2026
c3a5878
fix(reviewer): normalize aware commit dates in incremental review (#3…
utsab345 Sep 12, 2026
92c0aa6
fix(azure): return language names from get_languages (#3334)
utsab345 Sep 12, 2026
05a007e
fix(review): preserve resolved finding markdown (#3092)
be-student Sep 13, 2026
74210c4
fix: remove dead configuration keys with no reader (#3279)
utsab345 Sep 13, 2026
03d532b
fix(algo): skip non-unified hunk headers when anchoring lines (#3345)
utsab345 Sep 13, 2026
5a3dbc7
fix(review): align ticket compliance prompt examples (#3326)
oleksii-tumanov Sep 13, 2026
a02d418
perf(gitlab): skip unused project metadata during ticket extraction (…
junnhwan Sep 13, 2026
d2d3eea
fix(ask): keep image blocks for user-message-only models (#3339)
utsab345 Sep 13, 2026
2eb64fe
fix(bitbucket): return empty languages when repo has none (#3341)
utsab345 Sep 13, 2026
417b300
docs: drop dead large-PRs link from usage index (#3342)
utsab345 Sep 13, 2026
bd70782
refactor(litellm_ai_handler): deduplicate config coercion, API key ca…
high-tail Sep 13, 2026
d24b6f3
feat(jira): add project-key allowlist to skip lookups for key-shaped …
Fayupable Sep 13, 2026
2c5967e
feat(improve): recover failed chunks with fallback models (#3324)
junnhwan Sep 14, 2026
e980788
fix: load repo settings before push automation (#3347)
oleksii-tumanov Sep 14, 2026
c41775b
fix(bitbucket): load repo PR commands before dispatch (#3350)
oleksii-tumanov Sep 14, 2026
dabb8ce
fix(help_docs): isolate malformed model rows (#3365)
oleksii-tumanov Sep 14, 2026
c1a4398
fix: correct /help project identity (#3367)
oleksii-tumanov Sep 14, 2026
729877a
docs: remove unsupported ignore_ticket_labels setting (#3369)
keii-2596 Sep 14, 2026
4fa8427
fix(improve): don't publish empty suggestions when anchors are unreso…
utsab345 Sep 14, 2026
8386ba5
ci: smoke-run /describe on a real GitHub PR (#3358)
utsab345 Sep 14, 2026
48e7c36
feat: per-directory .pr_agent.toml for monorepo settings (#3282)
utsab345 Sep 14, 2026
aa7f5d3
fix(cli): report propagated request failures (#3368)
oleksii-tumanov Sep 14, 2026
b06126f
fix: delete Bitbucket Server comments (#3376)
utsab345 Sep 14, 2026
d048e72
fix(reviewer): make the prompt examples agree with the types they dec…
L4XB Sep 14, 2026
4e01503
fix(review): retry malformed responses with fallback models (#3359)
taljeon Sep 14, 2026
d2f8650
test(tools): pin the git-provider capability contract for callers (#3…
AmirF194 Sep 14, 2026
a4dfdc5
feat: add typed prompt output models (#3371)
utsab345 Sep 14, 2026
3fc1a6d
fix(github-app): add opt-in webhook delivery deduplication (#3374)
junnhwan Sep 14, 2026
8ac8f7a
feat(context): load repo-context files from sibling repos (same names…
utsab345 Sep 14, 2026
20bfcad
fix: retry only failed large-review chunks
utsab345 Sep 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 88 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
version: 2

updates:
# Python. `uv` rather than `pip`: it resolves through the uv CLI and rewrites
# pyproject.toml alongside uv.lock, so the declared pins here — which carry
# policy, not just versions — do not drift away from the lock file.
- package-ecosystem: uv
directory: /
schedule:
interval: weekly
day: monday
open-pull-requests-limit: 5
groups:
python-minor-and-patch:
applies-to: version-updates
patterns:
- "*"
update-types:
- minor
- patch
python-major:
applies-to: version-updates
patterns:
- "*"
update-types:
- major
commit-message:
prefix: chore(deps)

# GitHub Actions. Every `uses:` here is `@<sha> # vX.Y.Z` on one line, which
# is the format Dependabot rewrites, comment included.
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
day: monday
open-pull-requests-limit: 5
groups:
actions-minor-and-patch:
applies-to: version-updates
patterns:
- "*"
update-types:
- minor
- patch
actions-major:
applies-to: version-updates
patterns:
- "*"
update-types:
- major
ignore:
# .github/workflows/pr-agent-review.yaml pins this action to a commit on
# `main`, not to a release. There is no version to bump to, and the
# documented behaviour for an untagged sha is to move it to whatever HEAD
# happens to be. Moving the self-review action is a deliberate act.
- dependency-name: Codium-ai/pr-agent
commit-message:
prefix: chore(ci)

# Base images. The docker file fetcher matches any file whose name contains
# "dockerfile", so `/` picks up Dockerfile.github_action_dockerhub and
# `/docker` picks up both Dockerfile and Dockerfile.lambda.
- package-ecosystem: docker
directories:
- /
- /docker
schedule:
interval: weekly
day: monday
open-pull-requests-limit: 3
ignore:
# Dockerfile.github_action_dockerhub builds FROM this project's own
# published image, tracked by a stage tag rather than a version.
- dependency-name: pragent/pr-agent
commit-message:
prefix: chore(docker)

# Hook revisions in .pre-commit-config.yaml. The `local` repo has no upstream
# and is left alone by the ecosystem.
- package-ecosystem: pre-commit
directory: /
schedule:
interval: weekly
day: monday
open-pull-requests-limit: 3
commit-message:
prefix: chore(pre-commit)
16 changes: 11 additions & 5 deletions .github/workflows/build-and-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,21 @@ jobs:

steps:
- id: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- id: uv
uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1

- name: Check uv.lock
run: uv lock --check

- id: dockerx
name: Setup Docker Buildx
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
uses: docker/setup-buildx-action@37fe631027851001ddb9b187196cc803df7f5f0e # v4.3.0

- id: build
name: Build dev docker
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7.3.0
with:
context: .
file: ./docker/Dockerfile
Expand All @@ -47,15 +53,15 @@ jobs:
exit 1
fi
- name: Upload coverage to Codecov
uses: codecov/codecov-action@75cd11691c0faa626561e295848008c8a7dddffe # v5.5.4
uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0
with:
token: ${{ secrets.CODECOV_TOKEN }}

# Unit tests override CMD, so a broken server launcher never fails CI.
# Smoke-start github_app (gunicorn + uvicorn) with no secrets; GET / → 200.
- id: build-smoke
name: Build github_app docker
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7.3.0
with:
context: .
file: ./docker/Dockerfile
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,14 @@ jobs:
- language: python
build-mode: none
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- uses: github/codeql-action/init@7fd177fa680c9881b53cdab4d346d32574c9f7f4 # v3.35.4
- uses: github/codeql-action/init@cdf488f595d80d6e07e03d4674febd5ab45fa938 # v4.37.9
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
queries: security-extended,security-and-quality

- uses: github/codeql-action/analyze@7fd177fa680c9881b53cdab4d346d32574c9f7f4 # v3.35.4
- uses: github/codeql-action/analyze@cdf488f595d80d6e07e03d4674febd5ab45fa938 # v4.37.9
with:
category: "/language:${{ matrix.language }}"
6 changes: 3 additions & 3 deletions .github/workflows/docs-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,16 @@ jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Configure Git Credentials
run: |
git config user.name github-actions[bot]
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: 3.x
- run: echo "cache_id=$(date --utc '+%V')" >> "$GITHUB_ENV"
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
key: mkdocs-material-${{ env.cache_id }}
path: .cache
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/e2e_tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@ jobs:
name: PR-Agent E2E GitHub App Test
steps:
- name: Checkout repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
uses: docker/setup-buildx-action@37fe631027851001ddb9b187196cc803df7f5f0e # v4.3.0

- id: build
name: Build dev docker
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7.3.0
with:
context: .
file: ./docker/Dockerfile
Expand Down
10 changes: 6 additions & 4 deletions .github/workflows/pre-commit.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
# disabled. We might run it manually if needed.
# Runs every pre-commit hook (ruff, actionlint, YAML/TOML checks, ...) on
# pull requests, so the hooks are enforced in CI rather than manual-only.
name: pre-commit

on:
workflow_dispatch:
# pull_request:
pull_request:
# push:
# branches: [main]

jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1
# SEE https://github.com/pre-commit/action
- uses: pre-commit/action@2c7b3805fd2a0fd8c1884dcaebf91fc102a13ecd # v3.0.1
32 changes: 32 additions & 0 deletions .github/workflows/provider-smoke.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Provider smoke

on:
pull_request:
branches:
- main
push:
branches:
- main

permissions:
contents: read
pull-requests: read
issues: read

jobs:
github-provider-smoke:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Setup uv
uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1

- name: Install dependencies
run: uv sync

- name: Smoke /describe on a real GitHub PR
env:
GITHUB.USER_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: PYTHONPATH=. uv run pytest tests/health_test/test_github_smoke.py -q
40 changes: 22 additions & 18 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,11 +83,11 @@ jobs:
runs-on: ubuntu-latest
environment: release
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: ${{ needs.prepare.outputs.sha }}

- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: '3.12'

Expand All @@ -99,7 +99,7 @@ jobs:
python -m pip install --upgrade pip build
python -m build

- uses: pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b # v1.14.0
- uses: pypa/gh-action-pypi-publish@dc37677b2e1c63e2034f94d8a5b11f265b73ba33 # v1.14.2
with:
password: ${{ secrets.PYPI_API_TOKEN }}
# Re-running the workflow for the same version (e.g. after a
Expand Down Expand Up @@ -168,25 +168,25 @@ jobs:
suffix: gitlab_lambda
rolling: gitlab_lambda
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: ${{ needs.prepare.outputs.sha }}

- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: '3.12'

- name: Set version in pyproject.toml
run: python scripts/set_pyproject_version.py "${{ needs.prepare.outputs.version }}"

- uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
- uses: docker/setup-qemu-action@1f40c72289eff860ee54a304f1438e3cff362e0a # v4.3.0
with:
# amd64 is the runner's native arch; only arm64 needs emulation.
platforms: arm64

- uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
- uses: docker/setup-buildx-action@37fe631027851001ddb9b187196cc803df7f5f0e # v4.3.0

- uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
- uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
Expand All @@ -208,7 +208,7 @@ jobs:
echo "tags=$TAGS" >> "$GITHUB_OUTPUT"

- id: push
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7.3.0
with:
context: .
file: ${{ matrix.dockerfile }}
Expand All @@ -219,7 +219,7 @@ jobs:
cache-from: type=gha,scope=${{ matrix.suffix || 'cli' }}
cache-to: type=gha,mode=max,scope=${{ matrix.suffix || 'cli' }}

- uses: actions/attest-build-provenance@977bb373ede98d70efdf65b84cb5f73e068dcc2a # v3
- uses: actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8 # v4.2.2
with:
subject-name: index.docker.io/pragent/pr-agent
subject-digest: ${{ steps.push.outputs.digest }}
Expand All @@ -245,16 +245,18 @@ jobs:
# the push rather than rebasing onto a newer commit that wasn't built.
# This preserves the invariant that `git checkout vX.Y.Z` resolves to a
# commit whose tree was published.
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: ${{ needs.prepare.outputs.sha }}
fetch-depth: 0
token: ${{ secrets.RELEASE_TOKEN || secrets.GITHUB_TOKEN }}

- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: '3.12'

- uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1

- name: Flag missing PyPI publish
if: needs.publish-pypi.result != 'success'
env:
Expand All @@ -267,28 +269,30 @@ jobs:
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"

- name: Bump pyproject.toml
run: python scripts/set_pyproject_version.py "${{ needs.prepare.outputs.version }}"
- name: Bump pyproject.toml and sync uv.lock
run: |
python scripts/set_pyproject_version.py "${{ needs.prepare.outputs.version }}"
uv lock

- name: Commit & push bump (fast-forward only)
id: commit
env:
VERSION: ${{ needs.prepare.outputs.version }}
PUBLISHED_SHA: ${{ needs.prepare.outputs.sha }}
run: |
if git diff --quiet pyproject.toml; then
echo "pyproject.toml already at $VERSION on $PUBLISHED_SHA; nothing to commit."
if git diff --quiet pyproject.toml uv.lock; then
echo "pyproject.toml and uv.lock already at $VERSION on $PUBLISHED_SHA; nothing to commit."
echo "bumped=false" >> "$GITHUB_OUTPUT"
echo "sha=$PUBLISHED_SHA" >> "$GITHUB_OUTPUT"
exit 0
fi
git add pyproject.toml
git add pyproject.toml uv.lock
git commit -m "chore(release): bump version to $VERSION [skip ci]"
if git push origin "HEAD:refs/heads/main"; then
echo "bumped=true" >> "$GITHUB_OUTPUT"
echo "sha=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT"
else
echo "::warning::main has moved past the published commit ($PUBLISHED_SHA); skipping the bump push rather than rebasing onto a commit that was not built. Bump pyproject.toml on main manually: git checkout main && python scripts/set_pyproject_version.py $VERSION && git commit -am 'chore(release): bump version to $VERSION' && git push"
echo "::warning::main has moved past the published commit ($PUBLISHED_SHA); skipping the bump push rather than rebasing onto a commit that was not built. Bump pyproject.toml and uv.lock on main manually: git checkout main && python scripts/set_pyproject_version.py $VERSION && uv lock && git commit -am 'chore(release): bump version to $VERSION' && git push"
echo "bumped=false" >> "$GITHUB_OUTPUT"
echo "sha=$PUBLISHED_SHA" >> "$GITHUB_OUTPUT"
fi
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-drafter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,6 @@ jobs:
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: release-drafter/release-drafter@67e173cadb2fbd3de94f4a861e0c48c913b462ae # v6.4.0
- uses: release-drafter/release-drafter@6a93d829887aa2e0748befe2e808c66c0ec6e4c7 # v6.4.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ dist/
build/
.DS_Store
docs/.cache/
docs/site/
.qodo
poetry.lock
.log
Loading
Loading