AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Informational 15 Bitcoin

ci: split issue dedupe into find and post jobs

Public commit record

What the developer wrote

Authored by Olaoluwa Osuntokun

80/100 · Strong
ci: split issue dedupe into find and post jobs

In this commit, we give the issue dedupe workflow the same shape: one job
finds the duplicate candidates, another posts the comment. The find job
records the candidate issue numbers to a file, and the post job hands
those numbers to comment-on-duplicates.sh, which already validates each
number and renders the comment from a fixed template.

Keeping detection and posting apart mirrors how the script is already
factored, so the post job ends up a thin wrapper over it. We also drop the
unused id-token permission and turn off checkout credential persistence
while we're in here.
✓ Descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit is a hardening and refactoring change to a GitHub Actions workflow that detects duplicate issues. It splits the workflow into two jobs: one that only reads issue data and uses an AI model to find duplicates, and a second that only posts comments. The change reduces the privileges available to the AI step, pins the action to a specific version, disables credential persistence, and adds concurrency controls. There is no indication of a security vulnerability being fixed or introduced; it is a defensive improvement.

Recommended action

No action required. Review the workflow change as a normal hardening/refactoring PR. If desired, verify that `scripts/comment-on-duplicates.sh` performs the validation described in the comments.

Security signals we found

01

Principle of least privilege: AI/model job no longer holds issues:write or id-token:write

02

Action dependency pinned to full commit SHA instead of mutable tag

03

persist-credentials: false set on checkout steps

04

Concurrency group added to prevent race-condition double-posting

05

Input validation: post-comment job extracts only numeric issue IDs and delegates to comment-on-duplicates.sh for re-validation

06

Workflow is purely CI/infrastructure; no application code changed

Risk score

Why this scored 15/100

Our methodology →
Potential impact 0/30
Exploitability 0/25
Stealth signal 0/15
Affected reach 0/15
Confidence 10/10
Evidence quality 5/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.