Skip to content

feat(flue): add initial flue issue triage agent - #15059

Open
NuroDev wants to merge 17 commits into
mainfrom
NuroDev/DEVX-2630
Open

feat(flue): add initial flue issue triage agent#15059
NuroDev wants to merge 17 commits into
mainfrom
NuroDev/DEVX-2630

Conversation

@NuroDev

@NuroDev NuroDev commented Aug 6, 2026

Copy link
Copy Markdown
Member

Adds a Flue-powered issue triage Worker that responds to newly opened GitHub issues and attempts to reproduce the reported behavior in an isolated Cloudflare Sandbox.

The Worker includes the GitHub webhook channel, issue triage agent, Cloudflare runtime and container configuration, environment template, and monorepo workspace integration.

Flow

GitHub Webhook event
└ Worker RESTful endpoint
    └ Flue GitHub Channel
        └ Flue agent(s)
            └ Post comment to GitHub

  • Tests
    • Tests included/updated
    • Automated tests not possible - manual testing has been completed as follows: Deployed and exercised the equivalent Worker in NuroDev/triage-playground, verifying that newly opened issues trigger reproduction attempts and GitHub comments. The workspace build, typecheck, lint, and formatting checks also pass locally.
    • Additional testing not necessary because:
  • Public documentation
    • Cloudflare docs PR(s):
    • Documentation not necessary because: This adds internal issue triage automation and does not change public Workers SDK behavior or APIs.

A picture of a cute animal (not mandatory, but encouraged)

🐬

@changeset-bot

changeset-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 47e315b

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-project-automation github-project-automation Bot moved this to Untriaged in workers-sdk Aug 6, 2026
@NuroDev NuroDev added the ci:no-changeset-required Skip pull request checks for a valid changeset label Aug 6, 2026
@NuroDev NuroDev self-assigned this Aug 6, 2026
ask-bonk[bot]

This comment was marked as resolved.

@ask-bonk

ask-bonk Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Review posted successfully to PR #15059.

I reviewed PR #15059 (feat(flue): add issue triage agent and Cloudflare worker app) and posted a batch review with the following findings:

  1. (High) core-js-pure flipped from falsetrue in pnpm-workspace.yaml, silently re-enabling its telemetry postinstall monorepo-wide.
  2. (High) protobufjs flipped from falsetrue, re-enabling a postinstall that was intentionally disabled and unrelated to .flue.
  3. (Medium) New allowBuilds entries (@google/genai, @mongodb-js/zstd, node-liblzma) enable arbitrary postinstall scripts without the explanatory comments the file's convention requires.
  4. (Low) Missing changeset (flagged by changeset-bot).

The .flue app code itself (agent, github channel, wrangler config) looked reasonable; the substantive concerns are the monorepo-wide build-script changes.

github run

@pkg-pr-new

pkg-pr-new Bot commented Aug 6, 2026

Copy link
Copy Markdown
@cloudflare/autoconfig

npm i https://pkg.pr.new/@cloudflare/autoconfig@15059

@cloudflare/build-output-utils

npm i https://pkg.pr.new/@cloudflare/build-output-utils@15059

@cloudflare/config

npm i https://pkg.pr.new/@cloudflare/config@15059

create-cloudflare

npm i https://pkg.pr.new/create-cloudflare@15059

@cloudflare/deploy-helpers

npm i https://pkg.pr.new/@cloudflare/deploy-helpers@15059

@cloudflare/kv-asset-handler

npm i https://pkg.pr.new/@cloudflare/kv-asset-handler@15059

miniflare

npm i https://pkg.pr.new/miniflare@15059

@cloudflare/pages-functions

npm i https://pkg.pr.new/@cloudflare/pages-functions@15059

@cloudflare/pages-shared

npm i https://pkg.pr.new/@cloudflare/pages-shared@15059

@cloudflare/unenv-preset

npm i https://pkg.pr.new/@cloudflare/unenv-preset@15059

@cloudflare/vite-plugin

npm i https://pkg.pr.new/@cloudflare/vite-plugin@15059

@cloudflare/vitest-pool-workers

npm i https://pkg.pr.new/@cloudflare/vitest-pool-workers@15059

@cloudflare/workers-auth

npm i https://pkg.pr.new/@cloudflare/workers-auth@15059

@cloudflare/workers-editor-shared

npm i https://pkg.pr.new/@cloudflare/workers-editor-shared@15059

@cloudflare/workers-utils

npm i https://pkg.pr.new/@cloudflare/workers-utils@15059

wrangler

npm i https://pkg.pr.new/wrangler@15059

commit: 47e315b

@NuroDev NuroDev changed the title feat(flue): add issue triage agent and Cloudflare worker app feat(flue): add initial flue issue triage agent Aug 6, 2026
@NuroDev
NuroDev marked this pull request as ready for review August 7, 2026 11:03
@workers-devprod
workers-devprod requested review from a team and dario-piotrowicz and removed request for a team August 7, 2026 11:04
@workers-devprod

workers-devprod commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Codeowners approval required for this PR:

  • ✅ @cloudflare/wrangler
Show detailed file reviewers

devin-ai-integration[bot]

This comment was marked as resolved.

@dario-piotrowicz dario-piotrowicz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Looks good to me 😄

(as we chatted offline, a README.md file in the .flue dir would probably be nice here 😊)

Comment thread pnpm-workspace.yaml Outdated
Comment thread packages/auto-triage-bot/src/agents/issue-triage.ts
Comment thread .flue/src/app.ts Outdated

@workers-devprod workers-devprod 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.

Codeowners reviews satisfied

@github-project-automation github-project-automation Bot moved this from Untriaged to Approved in workers-sdk Aug 7, 2026
devin-ai-integration[bot]

This comment was marked as resolved.

devin-ai-integration[bot]

This comment was marked as resolved.

devin-ai-integration[bot]

This comment was marked as resolved.

@devin-ai-integration devin-ai-integration Bot 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.

Devin Review found 1 new potential issue.

View 4 additional findings in Devin Review.

Open in Devin Review

Comment on lines +51 to +66
message: {
attributes: {
deliveryId: delivery.deliveryId,
...(installation === undefined
? {}
: { installationId: String(installation.id) }),
issueNumber: String(issueRef.issueNumber),
owner: issueRef.owner,
repo: issueRef.repo,
sender: sender.login,
title: issue.title,
},
body: `Issue description:\n${issue.body ?? "(No description provided.)"}`,
kind: "signal",
type: "github.issue.opened",
},

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.

🟨 Untrusted issue content is fed to an agent that can execute code in a sandbox and comment as the bot

The webhook handler forwards the raw issue body and title from any user-opened GitHub issue into the agent message (packages/auto-triage-bot/src/channels/github.ts:52-66), and the agent prompt instructs the model to clone and run the repository's setup and tests inside a sandbox (packages/auto-triage-bot/src/agents/issue-triage.ts:42-50). A crafted issue can attempt prompt injection to steer the agent's sandbox commands or the content of the comment it posts with the bot's GitHub token.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:no-changeset-required Skip pull request checks for a valid changeset

Projects

Status: Approved

Development

Successfully merging this pull request may close these issues.

3 participants