Skip to content

feat(dashboard): add tool variations menu to source detail Tools tab#3083

Merged
bflad merged 2 commits into
mainfrom
bflad-age-2350-add-tool-variations-options-to-source-tools-pages-AVNP
May 29, 2026
Merged

feat(dashboard): add tool variations menu to source detail Tools tab#3083
bflad merged 2 commits into
mainfrom
bflad-age-2350-add-tool-variations-options-to-source-tools-pages-AVNP

Conversation

@bflad
Copy link
Copy Markdown
Member

@bflad bflad commented May 28, 2026

https://linear.app/speakeasy/issue/AGE-2350/add-tool-variations-options-to-source-tools-pages

Mirror the MCP detail page's ellipsis menu on the source detail Tools tab so users can edit a tool's name, description, annotations, and tags directly from the source. Variations are global (keyed by source tool URN), so edits affect the underlying tool everywhere it's used.

Extract the variation upsert into a shared useToolUpdate hook backed by useMutation, gated on mcp:write. Add the variation badge to source rows for visual confirmation of overrides. Disable Save/Cancel during the in-flight upsert to prevent the double-submit race that also existed on the MCP page.

Telemetry uses a new source_event capture with the existing tool_variation_updated action.

CleanShot 2026-05-28 at 09 33 17 CleanShot 2026-05-28 at 09 33 06

Summary by cubic

Add a tool variations menu to the Source Details → Tools tab so users can edit a tool’s name, description, annotations, and tags directly from the source. Variations are global (keyed by the source tool URN) and ship with RBAC gating, a variation badge, safer saves, and new telemetry; satisfies Linear AGE-2350.

  • New Features

    • Ellipsis menu on source tool rows to edit name, description, annotations, and tags; includes Copy name; mirrors MCP.
    • Variation badge on rows; telemetry via source_event with tool_variation_updated.
  • Refactors

    • Introduce shared useToolUpdate hook (useMutation, gated by mcp:write) used by Source and MCP; disables Save/Cancel while updating and invalidates queries on success.
    • Fix useMemo dependency to avoid stale UI.

Written for commit cd239c0. Summary will update on new commits.

Review in cubic

https://linear.app/speakeasy/issue/AGE-2350/add-tool-variations-options-to-source-tools-pages

Mirror the MCP detail page's ellipsis menu on the source detail Tools
tab so users can edit a tool's name, description, annotations, and
tags directly from the source. Variations are global (keyed by source
tool URN), so edits affect the underlying tool everywhere it's used.

Extract the variation upsert into a shared `useToolUpdate` hook backed
by `useMutation`, gated on `mcp:write`. Add the variation badge to
source rows for visual confirmation of overrides. Disable Save/Cancel
during the in-flight upsert to prevent the double-submit race that
also existed on the MCP page.

Telemetry uses a new `source_event` capture with the existing
`tool_variation_updated` action.
@bflad bflad requested review from a team as code owners May 28, 2026 13:38
Copy link
Copy Markdown

@claude claude Bot left a comment

Choose a reason for hiding this comment

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

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review to trigger a review and subscribe this PR to future pushes, or @claude review once for a one-time review.

Tip: disable this comment in your organization's Code Review settings.

@linear-code
Copy link
Copy Markdown

linear-code Bot commented May 28, 2026

AGE-2350

@vercel
Copy link
Copy Markdown

vercel Bot commented May 28, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
gram-docs-redirect Ready Ready Preview, Comment May 28, 2026 1:56pm

Request Review

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 28, 2026

🦋 Changeset detected

Latest commit: cd239c0

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
dashboard Minor

Not sure what this means? Click here to learn what changesets are.

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

Copy link
Copy Markdown
Member

@simplesagar simplesagar left a comment

Choose a reason for hiding this comment

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

Cursory pass, this looks great. Ill go through it more closely today but giving you a green check in case it makes testing easier to have this in.

Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

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

1 issue found across 7 files

Reply with feedback, questions, or to request a fix.

Fix all with cubic | Re-trigger cubic

Comment thread client/dashboard/src/pages/sources/SourceToolActions.tsx Outdated
@simplesagar simplesagar added the preview Spawn a preview environment label May 28, 2026
@speakeasybot
Copy link
Copy Markdown
Collaborator

speakeasybot commented May 28, 2026

🚀 Preview Environment (PR #3083)

Preview URL: https://pr-3083.dev.getgram.ai

Component Status Details Updated (UTC)
✅ Database Ready Existing database reused 2026-05-29 15:43:40.
✅ Images Available Container images ready 2026-05-29 15:43:22.

Gram Preview Bot

@simplesagar simplesagar added preview Spawn a preview environment and removed preview Spawn a preview environment labels May 28, 2026
@bflad bflad added this pull request to the merge queue May 29, 2026
Merged via the queue into main with commit 67be909 May 29, 2026
90 checks passed
@bflad bflad deleted the bflad-age-2350-add-tool-variations-options-to-source-tools-pages-AVNP branch May 29, 2026 15:43
@github-actions github-actions Bot locked and limited conversation to collaborators May 29, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

preview Spawn a preview environment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants