Skip to content

Detect cross-author issue reposts as spam - #14285

Draft
williammartin wants to merge 1 commit into
trunkfrom
williammartin-audit-spam-labeling
Draft

Detect cross-author issue reposts as spam#14285
williammartin wants to merge 1 commit into
trunkfrom
williammartin-audit-spam-labeling

Conversation

@williammartin

Copy link
Copy Markdown
Member

Related: #14284

Description

Issue triage treated a copied GitHub Discussion post as a genuine question because the copied content was relevant and detailed. Update the shared spam criteria to classify unattributed-context cross-author reposts as spam when GitHub's original-post attribution names a different account and the current author adds no original context.

The criterion preserves legitimate quotations when the issue author adds their own problem statement or explains the quotation's relevance. A regression fixture based on #14284 covers the missed case.

How did you test this change?

Given the cross-author repost fixture based on #14284, when I ran the spam-detection evaluator filtered to that case, I saw it return the expected spam verdict. I also compiled issue-triage.md with its declared non-strict policy and reviewed the generated lockfile change.

Key points

The rule requires both a different attributed author and no added original context. This avoids treating ordinary quotations or issue authors moving their own Discussion content as spam.

Notes for reviewers

Start with .github/workflows/shared/spam-criteria.md, then review the #14284 regression fixture in .github/workflows/scripts/spam-detection/eval-prompts.yml.

Authorship and follow-up

Who wrote this:

  • A human wrote it.
  • An agent wrote it under close human direction.
  • An agent wrote it independently, and no human has guided the implementation beyond the initial prompt.

Who answers review comments:

  • @williammartin will read and reply directly. Name the account.
  • An agent will draft replies and @username will read them before they are posted.
  • Nobody has explicitly committed to replying.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 01f95841-8600-480f-a657-1c25b43dbb9f
Copilot AI balanced review requested due to automatic review settings August 28, 2026 15:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

Review tier: Balanced
Findings: 1 Medium severity

New issues introduced by this change (1)
Severity Finding
Medium severity .github/​workflows/​shared/​spam-criteria.md — 🛑 Requirement: Cover both non-spam exception branches in the evaluator This criterion requires…
What changed in this PR

Updates issue triage to detect cross-author reposts like #14284 as spam while preserving contextual quotations.

Changes:

  • Adds cross-author repost spam criteria.
  • Adds a regression evaluator fixture.
  • Regenerates workflow metadata.
File Description
.github/​workflows/​shared/​spam-criteria.md Defines the new spam rule and exceptions.
.github/​workflows/​scripts/​spam-detection/​eval-prompts.yml Tests the detected spam case.
.github/​workflows/​issue-triage.lock.yml Updates the generated body hash.

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +61 to +65
"_Originally posted by @..._" attribution to an account other than the current
issue author, when the current author adds no original context outside the
copied material. Treat this as spam even when the copied material is relevant,
detailed, or asks a sensible question. Do not apply this criterion when the
current author adds their own problem statement or explains why the quotation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants