Skip to content

[Feat] Add Buildkite built-in integration - #2994

Merged
roomote-roomote[bot] merged 6 commits into
developfrom
roomote/integration-buildkite
Sep 19, 2026
Merged

roomote-roomote[bot] merged 6 commits into
developfrom
roomote/integration-buildkite

Conversation

@roomote-roomote

@roomote-roomote roomote-roomote Bot commented Sep 19, 2026 •

Copy link
Copy Markdown
Contributor

​Opened on behalf of @daniel-lxs. Follow up by mentioning @roomote-roomote, in the web UI, or in Telegram.

What changed

  • Added Buildkite to the existing MCP_INTEGRATIONS registry using the provider-enforced https://mcp.buildkite.com/mcp/readonly endpoint, deployment-scoped OAuth/DCR, the exact OAuth resource, and the read scope.
  • Reused the existing Settings integration list and generic OAuth connection flow. Integrations.tsx continues to render directly from MCP_INTEGRATIONS; this adds no new list, section, or special UI.
  • Wired the shared URL-detection registry into active Slack agent context so Buildkite links in authored text, block links, and attachment title links trigger built-in integration setup guidance while public, API, and MCP URLs are excluded.
  • Added the Simple Icons Buildkite mark, self-setup and Slack recommendation metadata, task setup guidance including SSO/IP-allowlist caveats, focused registry/runtime tests, and public docs.

Why this change was made

Buildkite's public OAuth metadata confirms dynamic client registration and PKCE. Its hosted read-only endpoint provides a safer built-in default without inventing a tool-name allowlist.

Impact

Operators can connect Buildkite once from Settings > Integrations, and pasted or unfurled organization links now give Slack tasks an explicit setup recommendation when the built-in integration is unavailable. URL parsing uses bounded punctuation handling rather than the regex flagged by CodeQL, with direct repeated-punctuation coverage. Focused URL-detection, Slack-context, attachment-unfurl, and event-normalization tests passed alongside full check-types, lint:fast, and git diff --check. Live OAuth consent, tool discovery, and credential-backed Buildkite calls were not performed.

Related PRs

@roomote-community

roomote-community Bot commented Sep 19, 2026 •

Copy link
Copy Markdown
Contributor

No new code issues found. See task

  • Buildkite Slack URL-detection metadata is now consumed, so pasted Buildkite URLs trigger setup recommendations.
  • Trailing-punctuation cleanup now runs in linear time on crafted Slack URL candidates.
  • Attachment-only Buildkite title_link URLs now trigger setup recommendations.
  • Repeated-punctuation coverage now exercises the stripping path.

Reviewed 89ed506

Comment thread packages/types/src/mcp-service-detection.ts
Comment thread packages/types/src/mcp-service-detection.ts Fixed
Comment thread packages/slack/src/forwarded-message-context.ts
Comment thread packages/types/src/__tests__/mcp-service-detection.test.ts Outdated
@roomote-roomote
roomote-roomote Bot marked this pull request as ready for review September 19, 2026 20:26
@roomote-roomote
roomote-roomote Bot merged commit 1b7c609 into develop Sep 19, 2026
19 checks passed
@roomote-roomote
roomote-roomote Bot deleted the roomote/integration-buildkite branch September 19, 2026 21:39
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