Skip to content

Commit 3349df0

Browse files
chore: release v4.7.5 (#5031)
## Summary 1 new feature, 10 improvements, 7 bug fixes. ## Improvements - Update the @modelcontextprotocol/sdk dependency to ^1.31.0. ([`b5354d188`](b5354d1)) - Add `trigger.dev tasks trigger <task id>` to trigger a task from your terminal. It uses the dev environment unless you pass `--env`, and `--wait` waits for the run and prints its output or error, exiting with code 1 if it failed. The `runs` commands now use the same dev branch as `trigger dev` when you pass `--env dev`. ([`d5dc48424`](d5dc484)) ```bash npx trigger.dev@latest tasks trigger hello-world --payload '{"name":"Ada"}' --wait ``` - Manage custom metric dashboards from code. `query.dashboards` lists, creates, updates and deletes custom dashboards and their widgets, and every widget query is checked when it is saved. The MCP server adds `create_dashboard` and `set_dashboard_widgets`, so your AI assistant can build a dashboard for you. ([`252624c92`](252624c)) ```ts import { query } from "@trigger.dev/sdk"; await query.dashboards.create({ title: "Email tasks", widgets: [ { title: "Total runs", query: "SELECT count() AS total FROM runs", display: { type: "bignumber", column: "total", aggregation: "sum" }, }, ], }); ``` - `trigger deploy` and `trigger promote` now say which environment they're targeting, and accept `--prod` as a shorthand for `--env prod`. When `TRIGGER_ACCESS_TOKEN` holds an environment API key and you don't pass `--env`, they now use that key's environment instead of assuming prod. Passing an `--env` that doesn't match the key is now an error, where before the deploy went to the key's environment. ([`70ea83d38`](70ea83d)) Preview deploys now detect the branch on CI providers that check out a detached HEAD, such as GitLab, Bitbucket, CircleCI, Buildkite, Travis CI, Jenkins and Azure Pipelines, instead of creating a branch called `HEAD`. Test links printed after a preview deploy now open the preview branch you deployed instead of staging. The MCP `deploy` tool no longer defaults to prod, so your AI assistant has to choose the environment. - `trigger dev` works better when a coding agent like Claude Code, Cursor or Codex runs it: it skips the install prompts, lists the tasks it registered, and prints each run's dashboard URL and output. For everyone, a failed build now ends with a line saying it will rebuild when you fix the errors, and retried attempts and crashed task processes now show their errors. ([`d5dc48424`](d5dc484)) - Redact span content before it leaves the worker. `telemetry.spanProcessors` in `trigger.config.ts` runs your own span processors ahead of every export, to Trigger.dev and to your own exporters, so you can redact or drop span content before it reaches the run trace. `chat.agent` also takes a `telemetry` option to stop recording the user's message and `clientData` on its spans. ([`32b36b143`](32b36b1)) ```ts export default defineConfig({ telemetry: { spanProcessors: [new MyRedactingSpanProcessor()] }, }); chat.agent({ id: "my-chat", telemetry: { recordUserMessage: false, recordClientData: false }, run: async ({ messages, signal, streamText }) => streamText({ model, messages, abortSignal: signal }), }); ``` ## Bug fixes - Fix run subscriptions crashing Node with `Controller is already closed` after you `break` out of the loop, and stop polling once you do. `ApiClient` subscribe methods also accept a custom `fetchClient`. ([`9f4295bff`](9f4295b)) ## Server changes These changes affect the self-hosted Docker image and Trigger.dev Cloud: - Recent deployments made with `--local-bundle` can now be redeployed from the deployments list, rebuilding the same bundle with its build-time environment variables. - The API keys page now prompts you to create your first key instead of showing an empty table. - The short link /_/billing now takes you straight to the billing page of your current organization. - Show the $500/month price for the HIPAA BAA add-on on the Hobby and Pro plans in the plan picker. - You can now buy or reduce extra schedules from the Schedules row on the Limits page. - A `batchTriggerAndWait` could stay stuck executing after all of its child runs finished, if creating the batch was retried while the server was slow to respond. The parent now resumes with its child runs' results. - The natural-language field on the schedule form returns a cron expression again instead of an error. - Fixed runs failing to resume from a wait when the platform had already resumed them but the confirmation was lost. - Run traces returned by the API no longer include internal debug events. - Fixed natural-language schedule generation in the schedule side panel. - A run whose process is killed is now only reported as out of memory when the machine actually ran out of memory. Any other kill (e.g. the machine being shut down or reclaimed) fails the attempt straight away as a crash, which is retried using your task's retry settings on the same machine size. <details> <summary>Raw changeset output</summary> # Releases ## @trigger.dev/build@4.7.5 ### Patch Changes - Updated dependencies: - `@trigger.dev/core@4.7.5` ## trigger.dev@4.7.5 ### Patch Changes - Update the @modelcontextprotocol/sdk dependency to ^1.31.0. ([`b5354d188`](b5354d1)) - Add `trigger.dev tasks trigger <task id>` to trigger a task from your terminal. It uses the dev environment unless you pass `--env`, and `--wait` waits for the run and prints its output or error, exiting with code 1 if it failed. The `runs` commands now use the same dev branch as `trigger dev` when you pass `--env dev`. ([`d5dc48424`](d5dc484)) ```bash npx trigger.dev@latest tasks trigger hello-world --payload '{"name":"Ada"}' --wait ``` - Manage custom metric dashboards from code. `query.dashboards` lists, creates, updates and deletes custom dashboards and their widgets, and every widget query is checked when it is saved. The MCP server adds `create_dashboard` and `set_dashboard_widgets`, so your AI assistant can build a dashboard for you. ([`252624c92`](252624c)) ```ts import { query } from "@trigger.dev/sdk"; await query.dashboards.create({ title: "Email tasks", widgets: [ { title: "Total runs", query: "SELECT count() AS total FROM runs", display: { type: "bignumber", column: "total", aggregation: "sum" }, }, ], }); ``` - `trigger deploy` and `trigger promote` now say which environment they're targeting, and accept `--prod` as a shorthand for `--env prod`. When `TRIGGER_ACCESS_TOKEN` holds an environment API key and you don't pass `--env`, they now use that key's environment instead of assuming prod. Passing an `--env` that doesn't match the key is now an error, where before the deploy went to the key's environment. ([`70ea83d38`](70ea83d)) Preview deploys now detect the branch on CI providers that check out a detached HEAD, such as GitLab, Bitbucket, CircleCI, Buildkite, Travis CI, Jenkins and Azure Pipelines, instead of creating a branch called `HEAD`. Test links printed after a preview deploy now open the preview branch you deployed instead of staging. The MCP `deploy` tool no longer defaults to prod, so your AI assistant has to choose the environment. - `trigger dev` works better when a coding agent like Claude Code, Cursor or Codex runs it: it skips the install prompts, lists the tasks it registered, and prints each run's dashboard URL and output. For everyone, a failed build now ends with a line saying it will rebuild when you fix the errors, and retried attempts and crashed task processes now show their errors. ([`d5dc48424`](d5dc484)) - Redact span content before it leaves the worker. `telemetry.spanProcessors` in `trigger.config.ts` runs your own span processors ahead of every export, to Trigger.dev and to your own exporters, so you can redact or drop span content before it reaches the run trace. `chat.agent` also takes a `telemetry` option to stop recording the user's message and `clientData` on its spans. ([`32b36b143`](32b36b1)) ```ts export default defineConfig({ telemetry: { spanProcessors: [new MyRedactingSpanProcessor()] }, }); chat.agent({ id: "my-chat", telemetry: { recordUserMessage: false, recordClientData: false }, run: async ({ messages, signal, streamText }) => streamText({ model, messages, abortSignal: signal }), }); ``` - Updated dependencies: - `@trigger.dev/core@4.7.5` - `@trigger.dev/build@4.7.5` - `@trigger.dev/schema-to-json@4.7.5` ## @trigger.dev/core@4.7.5 ### Patch Changes - Manage custom metric dashboards from code. `query.dashboards` lists, creates, updates and deletes custom dashboards and their widgets, and every widget query is checked when it is saved. The MCP server adds `create_dashboard` and `set_dashboard_widgets`, so your AI assistant can build a dashboard for you. ([`252624c92`](252624c)) ```ts import { query } from "@trigger.dev/sdk"; await query.dashboards.create({ title: "Email tasks", widgets: [ { title: "Total runs", query: "SELECT count() AS total FROM runs", display: { type: "bignumber", column: "total", aggregation: "sum" }, }, ], }); ``` - `trigger deploy` and `trigger promote` now say which environment they're targeting, and accept `--prod` as a shorthand for `--env prod`. When `TRIGGER_ACCESS_TOKEN` holds an environment API key and you don't pass `--env`, they now use that key's environment instead of assuming prod. Passing an `--env` that doesn't match the key is now an error, where before the deploy went to the key's environment. ([`70ea83d38`](70ea83d)) Preview deploys now detect the branch on CI providers that check out a detached HEAD, such as GitLab, Bitbucket, CircleCI, Buildkite, Travis CI, Jenkins and Azure Pipelines, instead of creating a branch called `HEAD`. Test links printed after a preview deploy now open the preview branch you deployed instead of staging. The MCP `deploy` tool no longer defaults to prod, so your AI assistant has to choose the environment. - Redact span content before it leaves the worker. `telemetry.spanProcessors` in `trigger.config.ts` runs your own span processors ahead of every export, to Trigger.dev and to your own exporters, so you can redact or drop span content before it reaches the run trace. `chat.agent` also takes a `telemetry` option to stop recording the user's message and `clientData` on its spans. ([`32b36b143`](32b36b1)) ```ts export default defineConfig({ telemetry: { spanProcessors: [new MyRedactingSpanProcessor()] }, }); chat.agent({ id: "my-chat", telemetry: { recordUserMessage: false, recordClientData: false }, run: async ({ messages, signal, streamText }) => streamText({ model, messages, abortSignal: signal }), }); ``` - Fix run subscriptions crashing Node with `Controller is already closed` after you `break` out of the loop, and stop polling once you do. `ApiClient` subscribe methods also accept a custom `fetchClient`. ([`9f4295bff`](9f4295b)) ## @trigger.dev/python@4.7.5 ### Patch Changes - Updated dependencies: - `@trigger.dev/sdk@4.7.5` - `@trigger.dev/core@4.7.5` - `@trigger.dev/build@4.7.5` ## @trigger.dev/react-hooks@4.7.5 ### Patch Changes - Updated dependencies: - `@trigger.dev/core@4.7.5` ## @trigger.dev/redis-worker@4.7.5 ### Patch Changes - Updated dependencies: - `@trigger.dev/core@4.7.5` ## @trigger.dev/rsc@4.7.5 ### Patch Changes - Updated dependencies: - `@trigger.dev/core@4.7.5` ## @trigger.dev/schema-to-json@4.7.5 ### Patch Changes - Updated dependencies: - `@trigger.dev/core@4.7.5` ## @trigger.dev/sdk@4.7.5 ### Patch Changes - Manage custom metric dashboards from code. `query.dashboards` lists, creates, updates and deletes custom dashboards and their widgets, and every widget query is checked when it is saved. The MCP server adds `create_dashboard` and `set_dashboard_widgets`, so your AI assistant can build a dashboard for you. ([`252624c92`](252624c)) ```ts import { query } from "@trigger.dev/sdk"; await query.dashboards.create({ title: "Email tasks", widgets: [ { title: "Total runs", query: "SELECT count() AS total FROM runs", display: { type: "bignumber", column: "total", aggregation: "sum" }, }, ], }); ``` - Redact span content before it leaves the worker. `telemetry.spanProcessors` in `trigger.config.ts` runs your own span processors ahead of every export, to Trigger.dev and to your own exporters, so you can redact or drop span content before it reaches the run trace. `chat.agent` also takes a `telemetry` option to stop recording the user's message and `clientData` on its spans. ([`32b36b143`](32b36b1)) ```ts export default defineConfig({ telemetry: { spanProcessors: [new MyRedactingSpanProcessor()] }, }); chat.agent({ id: "my-chat", telemetry: { recordUserMessage: false, recordClientData: false }, run: async ({ messages, signal, streamText }) => streamText({ model, messages, abortSignal: signal }), }); ``` - Updated dependencies: - `@trigger.dev/core@4.7.5` </details> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Eric Allam <eric@trigger.dev>
1 parent f8e2e40 commit 3349df0

38 files changed

Lines changed: 217 additions & 177 deletions

‎.changeset/bufo-deps-trigger-dev-modelcontextprotocol-sdk-1-31-0.md‎

Lines changed: 0 additions & 5 deletions
This file was deleted.

‎.changeset/cli-tasks-trigger.md‎

Lines changed: 0 additions & 9 deletions
This file was deleted.

‎.changeset/dashboards-api.md‎

Lines changed: 0 additions & 22 deletions
This file was deleted.

‎.changeset/deploy-explicit-env.md‎

Lines changed: 0 additions & 10 deletions
This file was deleted.

‎.changeset/dev-output-for-agents.md‎

Lines changed: 0 additions & 5 deletions
This file was deleted.

‎.changeset/redact-span-attributes.md‎

Lines changed: 0 additions & 20 deletions
This file was deleted.

‎.changeset/run-subscription-cancel.md‎

Lines changed: 0 additions & 5 deletions
This file was deleted.

‎.server-changes/api-keys-empty-state.md‎

Lines changed: 0 additions & 6 deletions
This file was deleted.

‎.server-changes/batch-wait-resume-wrong-batch.md‎

Lines changed: 0 additions & 6 deletions
This file was deleted.

‎.server-changes/deeplink-billing.md‎

Lines changed: 0 additions & 6 deletions
This file was deleted.

0 commit comments

Comments
 (0)