1 breaking change, 3 security patches, and 11 server changes.
Breaking changes
- Self-hosted deployments no longer ship shared default credentials. Fresh installs generate their own unique values. If yours still uses a previously published default, set a unique value before upgrading, or set
ALLOW_INSECURE_DEFAULT_SECRETS=trueto keep booting while you migrate. (#4316)
Security patches
- Require explicit browser approval for CLI and MCP login, with resilient polling while approval is pending. (#4316)
- Deployed task telemetry now reports the deployment identifier (e.g.
deployment_abc123) in theworker.idattribute instead of an opaque internal value. Upgrade to get the readable identifier in your own OpenTelemetry exporters. (#4316) - Prevent prototype pollution when applying run metadata operations or reconstructing nested telemetry attributes, while preserving legitimate
constructorandprototypefields. (#4316)
Server security patches
These changes are included in the v4.5.6 Docker image and are already live on Trigger.dev Cloud:
- Add helpers to mint and verify the deployment-scoped token used to authenticate run controllers to the platform. (#4316)
- Added optional request rate limiting for telemetry ingestion endpoints. (#4316)
- Background-worker deployment lookups are now scoped to the authenticated environment. (#4316)
- Updating a GitHub App installation from the callback flow is now scoped to your own organization, preventing an installation ID from another organization from being used to refresh its installation record. The GitHub App installation session is also now single-use: completing a callback invalidates its state so it can no longer be replayed. (#4316)
- Scope schedule and environment-variable writes to the caller's project and environment. (#4316)
- Reject compute snapshot callbacks that do not match the snapshot request that created them. (#4316)
- Require secret-key authentication to initialize the agent-to-client session stream, matching the append route. (#4316)
- Live run and trace subscriptions now validate their identifiers more strictly and only return data from your own organization. (#4316)
- Window-function names in the query compiler are now validated against the allowlist, matching how other function calls are handled. (#4316)
- Authenticate run controllers to the platform with a signed, deployment-scoped token. (#4316)
- Verify that worker actions (starting, completing, and continuing a run, and reading its snapshots) target a run belonging to the caller's environment. (#4316)
How to upgrade
Update the trigger.dev/* packages to v4.5.6 using your package manager:
npx trigger.dev@latest update # npmpnpm dlx trigger.dev@latest update # pnpmyarn dlx trigger.dev@latest update # yarnbunx trigger.dev@latest update # bun
Self-hosted users: update your Docker image to ghcr.io/triggerdotdev/trigger.dev:v4.5.6.
