Skip to content

feat(functions): support and ingest code-defined tool tags#3031

Merged
bflad merged 1 commit into
mainfrom
bflad-age-2348-gram-function-source-tag-ingestion-IrWT
May 27, 2026
Merged

feat(functions): support and ingest code-defined tool tags#3031
bflad merged 1 commit into
mainfrom
bflad-age-2348-gram-function-source-tag-ingestion-IrWT

Conversation

@bflad
Copy link
Copy Markdown
Member

@bflad bflad commented May 26, 2026

https://linear.app/speakeasy/issue/AGE-2348/gram-function-source-tag-ingestion

Wires up end-to-end ingestion for tags declared on Gram Functions:

  • Promotes tags to a first-class field on ManifestToolV0 (Go) and ToolDefinition / ManifestTool (TS framework). Both layers validate against the 40-tag cap before hitting the Postgres CHECK constraint.
  • Persists tags via CreateFunctionsTool and propagates them through CloneDeploymentToolFunctions (which also picks up the previously missing meta column).
  • Surfaces tags through the tools mv layer, the toolset rendering layer, and the Goa-designed FunctionToolDefinition API type.
  • Flips the dashboard supportsTags gate so function tools get the same tag editor that HTTP tools already use; clears the TODO(AGE-2348) placeholders.

@bflad bflad requested review from a team as code owners May 26, 2026 17:45
@linear-code
Copy link
Copy Markdown

linear-code Bot commented May 26, 2026

AGE-2348

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.

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 26, 2026

🦋 Changeset detected

Latest commit: 1801e98

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

This PR includes changesets to release 4 packages
Name Type
server Minor
dashboard Minor
@gram-ai/functions Minor
@gram-ai/create-function 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

@vercel
Copy link
Copy Markdown

vercel Bot commented May 26, 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 27, 2026 4:51pm

Request Review

@github-actions github-actions Bot added the preview Spawn a preview environment label May 26, 2026
@speakeasybot
Copy link
Copy Markdown
Collaborator

speakeasybot commented May 26, 2026

🚀 Preview Environment (PR #3031)

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

Component Status Details Updated (UTC)
✅ Database Ready Existing database reused 2026-05-27 16:57:06.
✅ Images Available Container images ready 2026-05-27 16:56:45.

Gram Preview Bot

@bflad bflad force-pushed the bflad-age-2348-gram-function-source-tag-ingestion-IrWT branch from 349604f to aa541ae Compare May 27, 2026 14:39
@bflad bflad force-pushed the bflad-age-2348-gram-function-source-tag-ingestion-IrWT branch from aa541ae to 6a8af6f Compare May 27, 2026 16:27
@bflad bflad enabled auto-merge May 27, 2026 16:27
@bflad bflad added this pull request to the merge queue May 27, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to a conflict with the base branch May 27, 2026
https://linear.app/speakeasy/issue/AGE-2348/gram-function-source-tag-ingestion

Wires up end-to-end ingestion for tags declared on Gram Functions:

- Promotes `tags` to a first-class field on `ManifestToolV0` (Go) and `ToolDefinition` / `ManifestTool` (TS framework). Both layers validate against the 40-tag cap before hitting the Postgres `CHECK` constraint.
- Persists tags via `CreateFunctionsTool` and propagates them through `CloneDeploymentToolFunctions` (which also picks up the previously missing `meta` column).
- Surfaces tags through the `tools` mv layer, the toolset rendering layer, and the Goa-designed `FunctionToolDefinition` API type.
- Flips the dashboard `supportsTags` gate so function tools get the same tag editor that HTTP tools already use; clears the `TODO(AGE-2348)` placeholders.
@bflad bflad force-pushed the bflad-age-2348-gram-function-source-tag-ingestion-IrWT branch from 6a8af6f to 1801e98 Compare May 27, 2026 16:50
@bflad bflad enabled auto-merge May 27, 2026 16:51
@bflad bflad added this pull request to the merge queue May 27, 2026
Merged via the queue into main with commit 37158f0 May 27, 2026
31 checks passed
@bflad bflad deleted the bflad-age-2348-gram-function-source-tag-ingestion-IrWT branch May 27, 2026 17:02
@github-actions github-actions Bot locked and limited conversation to collaborators May 27, 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