Add automatic issue creation for scheduled fuzzing job failures with area/fuzzing label filtering#823
Merged
jsturtevant merged 8 commits intomainfrom Sep 2, 2025
Merged
Conversation
Copilot
AI
changed the title
[WIP] Cron jobs need to alert on failure
Add automatic issue creation for fuzzing job failures
Aug 26, 2025
jsturtevant
reviewed
Aug 26, 2025
Copilot
AI
changed the title
Add automatic issue creation for fuzzing job failures
Add automatic issue creation for scheduled fuzzing job failures
Aug 27, 2025
jsturtevant
reviewed
Aug 27, 2025
jsturtevant
reviewed
Aug 27, 2025
Contributor
|
@copilot address feedback |
jsturtevant
reviewed
Aug 27, 2025
Contributor
Author
I've addressed the feedback by reverting to the inline approach where fuzzing steps are directly in Fuzzing.yml and the notification runs as an additional step (not a separate job) only on failure. The script includes --repo parameter support for testing as requested. |
deed6c7 to
e29625c
Compare
Copilot
AI
changed the title
Add automatic issue creation for scheduled fuzzing job failures
Add automatic issue creation for scheduled fuzzing job failures with enhanced label-based filtering
Aug 28, 2025
b5856cc to
f3bac73
Compare
ludfjig
approved these changes
Aug 29, 2025
ludfjig
requested changes
Aug 29, 2025
Contributor
ludfjig
left a comment
There was a problem hiding this comment.
kind/fuzzing -> area/fuzzing
jsturtevant
reviewed
Aug 29, 2025
Copilot
AI
changed the title
Add automatic issue creation for scheduled fuzzing job failures with enhanced label-based filtering
Add automatic issue creation for scheduled fuzzing job failures with area/fuzzing label filtering
Aug 29, 2025
jsturtevant
reviewed
Aug 29, 2025
jsturtevant
reviewed
Aug 29, 2025
Contributor
|
@copilot look at the feedback |
- Created dev/notify-fuzzing-failure.sh script to handle GitHub issue creation/updates - Modified Fuzzing.yml and dep_fuzzing.yml workflows to add failure notifications - Added proper permissions for issue creation and comments - Script checks for existing open fuzzing failure issues and either creates new ones or adds comments - Includes robust error handling and test mode for validation Co-authored-by: jsturtevant <648372+jsturtevant@users.noreply.github.com>
… workflow - Removed notification step and issues permission from dep_fuzzing.yml (reusable workflow) - Added separate notify-failure job to Fuzzing.yml (scheduled workflow) - This ensures issues are only created for scheduled cron job failures, not PR runs Co-authored-by: jsturtevant <648372+jsturtevant@users.noreply.github.com>
- Added --repo "$REPO" to gh issue comment command (line 103) - Added --repo "$REPO" to gh issue create command (line 148) - This enables testing against specific repositories by setting the REPO variable Co-authored-by: jsturtevant <648372+jsturtevant@users.noreply.github.com>
Signed-off-by: James Sturtevant <jsturtevant@gmail.com>
Co-authored-by: jsturtevant <648372+jsturtevant@users.noreply.github.com>
Co-authored-by: jsturtevant <648372+jsturtevant@users.noreply.github.com>
Co-authored-by: jsturtevant <648372+jsturtevant@users.noreply.github.com>
c49cab9 to
1583008
Compare
ludfjig
approved these changes
Sep 2, 2025
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.
fixes: #181
This PR implements automatic GitHub issue creation and management for fuzzing job failures in scheduled workflows. When fuzzing jobs fail during the weekly scheduled runs, the system automatically creates new issues or adds comments to existing ones with proper error handling and repository-standard labeling.
Key Features
area/fuzzinglabel for precise issue identification instead of title pattern matchingarea/testing,kind/bug,area/fuzzing,lifecycle/needs-review)--repoparameter for testing against different repositoriesImplementation
The notification system is implemented as an additional step in the main fuzzing job that runs only on failure (
if: failure()). All fuzzing steps from the reusable workflow have been inlined directly intoFuzzing.ymlto ensure the notification only triggers for scheduled runs, maintaining the matrix strategy for different fuzzing targets (fuzz_host_print,fuzz_guest_call,fuzz_host_call).The script searches for existing open issues with the
area/fuzzinglabel and either adds a comment to the most recent one or creates a new issue with comprehensive details including workflow run links and next steps for investigation. The label-based filtering approach eliminates pagination concerns and ensures reliable issue management by using precise label queries instead of title pattern matching.💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.