Skip to content

Conversation

cornmander
Copy link

This PR mitigates a prompt injection vulnerability in the issue triage workflows by separating the label suggestion and application steps.

uses: './'
id: 'gemini_issue_triage'
id: 'suggest_labels'
env:
GITHUB_TOKEN: '${{ steps.generate_token.outputs.token || secrets.GITHUB_TOKEN }}'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we remove this too by fetching labels upfront? then we can also remove gh label list

LABELS_TO_APPLY: '${{ steps.suggest_labels.outputs.result }}'
ISSUE_NUMBER: '${{ github.event.issue.number }}'
run: |
set -euo pipefail
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we really need all this bash? It seems pretty brittle... I wonder if we could export JSON or something machine-parseable instead? Alternatively, could we use the action-script action to do this in node, which would likely be a bit cleaner?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implemented this approach in #171

@sethvargo
Copy link
Member

Superceeded by #171

@sethvargo sethvargo closed this Aug 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants