Repository navigation
auto-changeset: version large PRs and run once per PR - #2061
Conversation
The script tested changed files with echo | grep -q under pipefail. On a file list over a pipe buffer grep quits at the first match, echo dies of SIGPIPE and the match reads as no match, so #2059 skipped versioning. All grep checks now read here-strings, with a large-PR case in the script test. The workflow also gets a per-PR concurrency group, so a label swapped seconds after another cancels the older run instead of racing it to the branch. It sits at workflow level so the newest event wins even when an older event's gate job finishes later. Closes #2060
|
ⓘ Qodo reviews are paused because your trial has ended. Ask your workspace admin to add credits to resume reviews. Manage billing |
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
PR Summary by QodoFix large-PR changeset generation and serialize runs per PR
AI Description
Diagram
High-Level Assessment
Files changed (3)
|
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can open the rule or relationship behind a finding in one click |
[Medium impact] The PR appears safe to merge; the previous test coverage gap is fixed. SummaryFixes automatic versioning for large PRs and cancels older label runs for the same PR.
No new issues were found in the changes since the previous review. Reviews (2) · Last reviewed commit: "auto-changeset test: check the large PR ..." · Reviewed by Greptile |
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 37 minutes. View limit details
No actionable comments were generated in the recent review. Walkthrough
Merge Risk:
|
The mock changeset version can now move a package version, so the large-PR case also asserts the versioned package is rebuilt.
Closes #2060
What was wrong
auto-changeset.shruns underset -eo pipefailand tested the changed-file list withecho "$CHANGED_FILES" | grep -q. On a list larger than a pipe buffer,grep -qexits at the first match,echodies of SIGPIPE, andpipefailturns the match into "no match". On SDK: vote-free bridge v2 post reads with per-node fallback #2059 (1190 changed files) a genericpatchlabel loggedNo publishable packages changedand the job still went green.fetch first).Fix
grep -qin the script now reads from a here-string, so an early exit cannot fail the test. A failinggit diffnow stops the script instead of reading as "no match".cancel-in-progress, so the newest labeled event wins. It sits at workflow level because a job only enters its group after its gate job finishes, which would let a slow gate on the older event cancel the newer run.Test plan
test-auto-changeset.shgains a large-PR case: about 170 KB of changed paths with the package match near the top, and a genericpatchlabel must write"@ecency/sdk": patch.bash .github/scripts/test-auto-changeset.sh: exit 0.The label workflow runs the script from the base branch, so this takes effect once merged.
Summary by CodeRabbit