| name |
Update rust-analyzer |
| emoji |
🦀 |
| description |
Update the rust-analyzer version used by the Rust extractor and prepare a pull request. |
| intent |
Keep the Rust extractor on the latest compatible rust-analyzer version with a reviewable, validated pull request. |
| true |
|
| permissions |
| contents |
actions |
pull-requests |
copilot-requests |
read |
read |
read |
write |
|
| strict |
true |
| checkout |
|
| concurrency |
| group |
cancel-in-progress |
update-rust-analyzer |
false |
|
| timeout-minutes |
180 |
| tools |
| github |
bash |
edit |
| mode |
toolsets |
gh-proxy |
repos |
pull_requests |
actions |
|
|
|
true |
|
| network |
| allowed |
defaults |
github |
github-actions |
rust |
bazel |
python |
|
|
| steps |
| name |
uses |
Set up CodeQL |
./.github/actions/fetch-codeql |
|
| name |
run |
Configure Git |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
|
| name |
continue-on-error |
run |
Install cargo-edit |
true |
cargo install cargo-edit@0.13.0 --locked |
|
| name |
run |
Run rust-analyzer updater script |
mkdir -p /tmp/gh-aw/agent
set +e
python3 rust/scripts/update_rust_analyzer.py \
2>&1 | tee /tmp/gh-aw/agent/rust-analyzer-update.log
status=${PIPESTATUS[0]}
set -e
printf '%s\n' "$status" > /tmp/gh-aw/agent/rust-analyzer-update-status.txt
if grep -Fxq "No new rust-analyzer version available." \
/tmp/gh-aw/agent/rust-analyzer-update.log; then
printf '%s\n' "no-update" > /tmp/gh-aw/agent/rust-analyzer-update-result.txt
else
printf '%s\n' "update" > /tmp/gh-aw/agent/rust-analyzer-update-result.txt
fi
|
|
|
| safe-outputs |
| report-incomplete |
create-pull-request |
|
| title-prefix |
branch-prefix |
draft |
max-patch-size |
max-patch-files |
allowed-files |
Rust: |
automation/update-rust-analyzer/ |
true |
10240 |
1000 |
Cargo.toml |
Cargo.lock |
shared/tree-sitter-extractor/Cargo.toml |
shared/yeast/Cargo.toml |
shared/yeast-macros/Cargo.toml |
shared/yeast-schema/Cargo.toml |
ruby/extractor/Cargo.toml |
unified/extractor/Cargo.toml |
unified/swift-syntax-rs/Cargo.toml |
unified/extractor-unsupported-os/Cargo.toml |
cpp/extractor/bmn/** |
ql/extractor/** |
ql/buramu/** |
shared/yeast/src/** |
shared/yeast-macros/src/** |
shared/yeast-schema/src/** |
shared/tree-sitter-extractor/src/** |
MODULE.bazel |
MODULE.bazel.lock |
rust-toolchain.toml |
rust/** |
misc/bazel/3rdparty/** |
|
|
|
The workflow has already run rust/scripts/update_rust_analyzer.py. Read:
/tmp/gh-aw/agent/rust-analyzer-update.log for its complete output.
/tmp/gh-aw/agent/rust-analyzer-update-status.txt for its exit status.
/tmp/gh-aw/agent/rust-analyzer-update-result.txt for the deterministic result classification.
If the result is no-update, call noop with the reason
No new rust-analyzer version available. and stop immediately. Do not inspect
CI, modify files, or create a pull request.
Otherwise, continue the update from the existing working tree and commits:
- Review the updater log, exit status, commits, and working tree. Do not rerun
the updater script or undo changes that it successfully made.
- Read
rust/updating-rust-analyzer.md and all applicable repository
instructions, then complete the remaining update steps.
- Review the complete diff and commits. Do not include secrets. Do not refer
to private repositories, internal issues, or internal pull requests in the
public pull request.
- Use
create_pull_request exactly once. Summarize the updater output,
changes, and validation. If the update cannot be finished, still create a
partial draft pull request when
there are useful changes, and clearly list failures, missing work, and the
next commands for a maintainer.
The pull request is created after this agent execution, so its newly triggered
CI cannot be awaited in this run. Compensate with the strongest practical
local validation and state this limitation accurately in the pull request.
If the updater did not report no-update but no useful patch can be produced,
call report_incomplete with the updater failure and exact blocker.