Repository navigation
ci: create the droid-reviewed label before adding it - #5
Merged
Merged
Conversation
The legacy Droid Tag and Droid Auto Review workflows ran Factory-AI/droid-action@main, unpinned, on every PR or @droid mention. The opt-in factory-review and factory-mentions workflows replace them; keeping both would give two reviews per PR and two replies per mention once the replacements are enabled. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
Factory Review now runs when a PR opens ready for review or a draft is marked ready, not on every push. A successful review adds the droid-reviewed label, and a labelled PR is skipped; comment `@droid review` to ask for another review. The review checks out the live PR head, so a push between the event and the run is still covered. Droid Wiki Refresh runs at 06:17 UTC on the 1st of each month instead of on every push to main, and can still be started by hand. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
Adding a label that does not exist yet can fail, so the review job now creates droid-reviewed when the repository lacks it. A manual wiki run started from another branch would document unmerged code, so generation runs only on the default branch. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
…head Without the synchronize trigger, a push during the first review left the new commits labelled as reviewed but unseen. Pushes now cancel and restart the review until the droid-reviewed label exists, and the label step skips when the head moved. The base-ref check is dropped so a retarget before the run still gets reviewed. The operations doc now describes the monthly wiki schedule, manual runs and GitHub's 60-day inactivity pause. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
The droid-reviewed label skipped Steward fix commits, breaking the CI Steward promise that every fix push is reviewed. A push from factory-droid[bot] now bypasses the label. Document that @droid review needs JHD_FACTORY_MENTIONS_ENABLED. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
Removing droid-reviewed sends an unlabeled event, which the workflow does not listen to, so the removal alone starts no review. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
Two first reviews finishing together can both see the label missing; the second createLabel returns 422 and used to stop the step before addLabels, leaving a reviewed PR unmarked. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
A 422 can also mean an invalid request, so look the label up again and let that lookup fail if the label is still missing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
Restore main's review workflow and add only the droid-reviewed skip (with the CI Steward exception) and one addLabels call, which creates the label when missing. Drop the label bookkeeping, head-move guard, trigger rewrite and tag check that came from bot review rounds. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
GitHub's add-labels docs do not promise that a missing label is created, so create it first and treat 422 (already exists) as success. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017U3iFTj2nxsbhbdBRHKFzi
Codex Review SummaryThis 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. |
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing: 1
✨ Finishing Touches
Comment |
This was referenced Oct 23, 2026
Merged
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.
GitHub's "Add labels to an issue" docs do not say a missing label is created, so the review workflow now creates
droid-reviewedfirst and treats 422 (already exists) as success. Nothing else changes.Checks:
scripts/validate.py, unittest,node --test(104 pass).Generated by Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.