Update temporalio-ts monorepo to v1.17.0#7731
Conversation
5907383 to
644b84c
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7731 +/- ##
=======================================
Coverage 62.49% 62.49%
=======================================
Files 1318 1318
Lines 134235 134235
Branches 5521 5521
=======================================
+ Hits 83894 83896 +2
+ Misses 49426 49424 -2
Partials 915 915 Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
644b84c to
8fb41a3
Compare
8fb41a3 to
3ff9f9c
Compare
3ff9f9c to
bbebd93
Compare
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Here's the code health analysis summary for commits Analysis Summary
Code Coverage Report
|
cf0aec4 to
7fe19ad
Compare
7fe19ad to
6e67031
Compare
6e67031 to
368b18d
Compare
368b18d to
3ca5a86
Compare
3ca5a86 to
ee915c6
Compare
PR SummaryMedium Risk Overview No application code changes are included; this PR is purely a coordinated dependency bump to keep Temporal client/worker/workflow packages in sync. Reviewed by Cursor Bugbot for commit 9543e8c. Bugbot is set up for automated code reviews on this repo. Configure here. |
Benchmark results
|
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| resolve_policies_for_actor | user: empty, selectivity: high, policies: 2002 | Flame Graph | |
| resolve_policies_for_actor | user: empty, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: empty, selectivity: medium, policies: 1001 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: high, policies: 3314 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: medium, policies: 1526 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: high, policies: 2078 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: medium, policies: 1033 | Flame Graph |
policy_resolution_medium
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| resolve_policies_for_actor | user: empty, selectivity: high, policies: 102 | Flame Graph | |
| resolve_policies_for_actor | user: empty, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: empty, selectivity: medium, policies: 51 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: high, policies: 269 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: medium, policies: 107 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: high, policies: 133 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: medium, policies: 63 | Flame Graph |
policy_resolution_none
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| resolve_policies_for_actor | user: empty, selectivity: high, policies: 2 | Flame Graph | |
| resolve_policies_for_actor | user: empty, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: empty, selectivity: medium, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: high, policies: 8 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: medium, policies: 3 | Flame Graph |
policy_resolution_small
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| resolve_policies_for_actor | user: empty, selectivity: high, policies: 52 | Flame Graph | |
| resolve_policies_for_actor | user: empty, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: empty, selectivity: medium, policies: 25 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: high, policies: 94 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: seeded, selectivity: medium, policies: 26 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: high, policies: 66 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: low, policies: 1 | Flame Graph | |
| resolve_policies_for_actor | user: system, selectivity: medium, policies: 29 | Flame Graph |
read_scaling_complete
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| entity_by_id;one_depth | 1 entities | Flame Graph | |
| entity_by_id;one_depth | 10 entities | Flame Graph | |
| entity_by_id;one_depth | 25 entities | Flame Graph | |
| entity_by_id;one_depth | 5 entities | Flame Graph | |
| entity_by_id;one_depth | 50 entities | Flame Graph | |
| entity_by_id;two_depth | 1 entities | Flame Graph | |
| entity_by_id;two_depth | 10 entities | Flame Graph | |
| entity_by_id;two_depth | 25 entities | Flame Graph | |
| entity_by_id;two_depth | 5 entities | Flame Graph | |
| entity_by_id;two_depth | 50 entities | Flame Graph | |
| entity_by_id;zero_depth | 1 entities | Flame Graph | |
| entity_by_id;zero_depth | 10 entities | Flame Graph | |
| entity_by_id;zero_depth | 25 entities | Flame Graph | |
| entity_by_id;zero_depth | 5 entities | Flame Graph | |
| entity_by_id;zero_depth | 50 entities | Flame Graph |
read_scaling_linkless
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| entity_by_id | 1 entities | Flame Graph | |
| entity_by_id | 10 entities | Flame Graph | |
| entity_by_id | 100 entities | Flame Graph | |
| entity_by_id | 1000 entities | Flame Graph | |
| entity_by_id | 10000 entities | Flame Graph |
representative_read_entity
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/block/v/1
|
Flame Graph | |
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/book/v/1
|
Flame Graph | |
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/building/v/1
|
Flame Graph | |
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/organization/v/1
|
Flame Graph | |
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/page/v/2
|
Flame Graph | |
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/person/v/1
|
Flame Graph | |
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/playlist/v/1
|
Flame Graph | |
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/song/v/1
|
Flame Graph | |
| entity_by_id | entity type ID: https://blockprotocol.org/@alice/types/entity-type/uk-address/v/1
|
Flame Graph |
representative_read_entity_type
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| get_entity_type_by_id | Account ID: bf5a9ef5-dc3b-43cf-a291-6210c0321eba
|
Flame Graph |
representative_read_multiple_entities
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| entity_by_property | traversal_paths=0 | 0 | |
| entity_by_property | traversal_paths=255 | 1,resolve_depths=inherit:1;values:255;properties:255;links:127;link_dests:126;type:true | |
| entity_by_property | traversal_paths=2 | 1,resolve_depths=inherit:0;values:0;properties:0;links:0;link_dests:0;type:false | |
| entity_by_property | traversal_paths=2 | 1,resolve_depths=inherit:0;values:0;properties:0;links:1;link_dests:0;type:true | |
| entity_by_property | traversal_paths=2 | 1,resolve_depths=inherit:0;values:0;properties:2;links:1;link_dests:0;type:true | |
| entity_by_property | traversal_paths=2 | 1,resolve_depths=inherit:0;values:2;properties:2;links:1;link_dests:0;type:true | |
| link_by_source_by_property | traversal_paths=0 | 0 | |
| link_by_source_by_property | traversal_paths=255 | 1,resolve_depths=inherit:1;values:255;properties:255;links:127;link_dests:126;type:true | |
| link_by_source_by_property | traversal_paths=2 | 1,resolve_depths=inherit:0;values:0;properties:0;links:0;link_dests:0;type:false | |
| link_by_source_by_property | traversal_paths=2 | 1,resolve_depths=inherit:0;values:0;properties:0;links:1;link_dests:0;type:true | |
| link_by_source_by_property | traversal_paths=2 | 1,resolve_depths=inherit:0;values:0;properties:2;links:1;link_dests:0;type:true | |
| link_by_source_by_property | traversal_paths=2 | 1,resolve_depths=inherit:0;values:2;properties:2;links:1;link_dests:0;type:true |
scenarios
| Function | Value | Mean | Flame graphs |
|---|---|---|---|
| full_test | query-limited | Flame Graph | |
| full_test | query-unlimited | Flame Graph | |
| linked_queries | query-limited | Flame Graph | |
| linked_queries | query-unlimited | Flame Graph |
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 9543e8c. Configure here.
| "@temporalio/interceptors-opentelemetry": "1.17.0", | ||
| "@temporalio/proto": "1.17.0", | ||
| "@temporalio/worker": "1.17.0", | ||
| "@temporalio/workflow": "1.17.0", |
There was a problem hiding this comment.
Lockfile not updated to match package.json versions
High Severity
All package.json files declare @temporalio/* at 1.17.0, but yarn.lock still resolves every @temporalio/* package to 1.12.1 with no 1.17.0 entries present. CI runs yarn install --immutable, which will reject any install where the lockfile doesn't satisfy the declared dependency ranges, causing all CI builds to fail.
Additional Locations (2)
Reviewed by Cursor Bugbot for commit 9543e8c. Configure here.


This PR contains the following updates:
1.12.1→1.17.01.12.1→1.17.01.12.1→1.17.01.12.1→1.17.01.12.1→1.17.01.12.1→1.17.01.12.1→1.17.0Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
temporalio/sdk-typescript (@temporalio/activity)
v1.17.0Compare Source
Notable Changes
lamba-worker, pre-release] New @temporalio/lambda-worker package (#1995) that wraps the full per-invocation lifecycle for runningTemporal workers inside AWS Lambda (connect, create worker, poll, graceful shutdown). Now in pre-release!
client, pre-release] 💥 Standalone Activities support (#2029). Activities can now be started directly from a Temporal Client, independent of any workflow. See https://docs.temporal.io/standalone-activity for documentation. Standalone Activity as a server feature is in Public Preview, but TS implementation is still pre-release.Features
worker] feat(metrics): add UpDownCounter to Buffered Metrics and RuntimeMetricMeter (#2007). First contribution from @gibbonjj! Thank you!Bug Fixes
workflow] fix(workflow): do not import @temporalio/proto from workflow code (#2010)worker] fix(worker): 'occured' -> 'occurred' in error log message (#2013). First contribution from @SAY-5! Thank you!Chores / Cleanup
ci]: Update and pin all GHA actions (#2016)core]: update submodule to sdk-rust (#2026)Dependencies
core, deps] bump sdk-core and protobufjs (#2011)core] core commit to latest (#2028)New Contributors
Full Changelog: temporalio/sdk-typescript@v1.16.0...v1.17.0
v1.16.1: 1.16.1Compare Source
Bug Fixes
workflow] Fix NDE when multiple patches in a single WFT exceed SA's 2048-byte limit (Core SDK #1225)Full Changelog: temporalio/sdk-typescript@v1.16.0...v1.16.1
v1.16.0: 1.16.0Compare Source
Notable Changes
NexusClienthas been renamed toNexusServiceClient(#1993), andNexusInboundCallsInterceptornow requiresexecuteStartOperationandexecuteCancelOperationinstead of the old genericexecutemethod (#1979).Features
worker] Extend bundler to support pre-loading modules into the reusable V8 context via a newpreloadModulesoption onBundleOptions/WorkerOptions.bundleOptions; pre-loaded modules are shared across workflow executions, reducing per-workflow memory and startup overhead (#1999)nexus] 💥 Add Nexus Inbound Interceptors —NexusInboundCallsInterceptornow exposesexecuteStartOperationandexecuteCancelOperation, replacing the previous genericexecuteinterceptor (#1979)opentelemetry] 💥 Nexus OpenTelemetry support — adds inbound interceptors and distributed trace context propagation across Nexus service boundaries; renames interceptor I/O types fromExecuteNexusOperation*toNexusStartOperation*/NexusCancelOperation*, and addsRunStartNexusOperationandRunCancelNexusOperationspan names (#1998)nexus] 💥 Nexus error serialization now uses TemporalProtoFailureend-to-end, aligning with other SDKs; also fixes a JS bug where comma-separatedcasevalues in gRPC status code mapping silently matched only the last value (#1973)nexus] 💥 RenameNexusClienttoNexusServiceClientin preparation for upcoming Nexus Standalone Operations (#1993)nexus] AddscheduleToStartTimeoutandstartToCloseTimeoutoptions to the workflow Nexus client API (#1942)nexus] Standardize Nexus operation input deserialization error handling: payload codec decode failures are now surfaced as retryableINTERNALhandler errors, while payload converter failures remain non-retryableBAD_REQUEST;ApplicationFailureis passed through directly (#1949)nexus] Infer workflow result type fromWorkflowRunOperationHandler—startWorkflownow returnsWorkflowHandle<WorkflowResultType<T>>, removing the need to explicitly type the handler (#1968)worker] AllowWorkerDeploymentOptionsto omitdefaultVersioningBehaviorwhenuseWorkerVersioningisfalse, enabling workers to report a build ID to the Temporal UI without opting into full worker versioning (#1963)worker] PropagatetargetWorkerDeploymentVersionChangedand Continue-As-New suggested reasons for worker deployment versioning trampolining (#1972)Bug Fixes
client] Suppress spurious unhandled rejection fromWithStartWorkflowOperationwhenexecuteUpdateWithStartfails before a response is received (#1990)opentelemetry] Do not markCompleteAsyncErroras a span error (#1989)opentelemetry] AvoidTypeErrorwhen user code throws a non-Errorvalue (#1984)worker] Tolerate emptyrootWorkflowExecution/parentWorkflowExecutionobjects from pre-v1.24 servers, preventingIllegalStateErroron resumed workflows (#1969)ai] UseactivityOptionsincallToolproxy (#1954)Dependencies
core] Update sdk-core (#1959)deps] Bump vulnerable dependencies (#1957, #1988)deps] Bump rustls-webpki from 0.103.9 to 0.103.10 (#1978)deps] Bump quinn-proto from 0.11.13 to 0.11.14 (#1961)deps] Bump tar (#1976, #1946)Breaking changes are marked with 💥
Full Changelog: temporalio/sdk-typescript@v1.15.0...v1.16.0
v1.15.0: 1.15.0Compare Source
Notable Changes
ResourceExhaustedand other gRPC errors. See PRs temporalio/sdk-core#1110 and temporalio/sdk-core#1111 for more details.Features
opentelemetry] Expose functionality as plugin (#1884)worker] Worker Connection Replacement (#1902)workflow] Nexus Cancellation Types (#1894)worker] Worker deployment versioning is now GA (#1924)envconfig] Environment configuration is now GA (#1924)testing] Add API to setup Nexus endpoint on ephemeral test server (#1897)nexus] Expose Temporal Nexus operation info to Temporal Nexus operation (#1896)bun] 🧪 Bun support - experimental (#1906)runtime] 🧪 Buffered metrics - experimental (#1922)Bug Fixes
worker] Add exponential backoff onResourceExhaustedand other gRPC errors in Poller autoscaler (#1938 and #1944)native] Correct native binding type for workerValidate (#1939)client] ExposeoperatorServiceonConnectionLikeinterface (#1904)opentelemetry] Serialize TraceState before exporting to sink (#1891)opentelemetry]makeWorkflowExporteraccepts SpanProcessor (#1886)ai] Addawaitto tool execution (#1882)ai] Description was missing from the derived mcp tools (#1905)ai] Fix a bug in AI SDK MCP Schema conversion (#1890)common] Make search attribute type more lenient when parsing (#1943)workflow] Allow logging queries validators during replay (#1927)ai] Add missing dependency to ai package (#1878)worker] Fix wf_task_replay_latency metric recording for non-replay tasks (#1083)worker] Always send shutdown_worker RPC, fix WorkerStatus state when shutting down worker (#1082)worker] Fix bug where we count first WFT as sticky cache hit (#1091)Dependencies
api] Update Temporal Protobuf APIs to v1.61.0 (#1100)deps] Bump vulnerable dependencies (hono, jws, tar, ...) (#1900)deps] Run cargo update (#1937)deps] Bump webpack from 5.94.0 to 5.104.1 (#1929)deps] Bump bytes from 1.10.1 to 1.11.1 in /packages/core-bridge (#1921)deps] Bump @modelcontextprotocol/sdk from 1.25.2 to 1.26.0 (#1928)deps] Bump tar from 7.5.3 to 7.5.7 (#1916)Breaking changes are marked with 💥
Experimental features are marked with 🧪
Full Changelog: temporalio/sdk-typescript@v1.14.1...v1.15.0
v1.14.1: 1.14.1Compare Source
Minor Features
ai-sdk] Upgrade to AI SDK v6 with embedding model support (#1865, thabnks @ItsWendell)Bug Fixes
workflow] Automatically cleanup AsyncLocalStorage on workflow context disposal (#1871)OpenTelemetry] Avoid lazy loading workflow package in interceptors (#1872)heartbeatJSDoc (#1863, thanks @daveyarwood)Security
Full Changelog: temporalio/sdk-typescript@v1.14.0...v1.14.1
v1.14.0: 1.14.0Compare Source
Noteworthy Features
ai] Introduced (experimental) AI SDK Integration (#1792).client] TLS is enabled by default if an API key is provided (#1847). To disable TLS in that specific context, explicitly settls: false.Minor Features
opentelemetry] Create spans for all interceptor events (#1835)worker] Enable Worker heartbeating (#1818). Worker heartbeating allows smoother server-side behaviors when a Worker is shut down or somehow become unreachable.Bug Fixes
worker] The reusable workflow executor now properly runs dispose interceptors (#1834, thanks @mnahkies 🙏).core-bridge] Include bridge macros rust package in core-bridge npm package to allow building from source (#1852, thanks @stathis-alexander 🙏)Security
@temporalio/create]: bump glob from 10.3.10 to 10.5.0 (#1828)SDK-Core update
Commit temporalio/sdk-core@
bd02cce-> temporalio/sdk-core@44a6576temporalprefix to resource tuner metrics (temporalio/sdk-core#1043)Full Changelog: temporalio/sdk-typescript@v1.13.2...v1.14.0
v1.13.2: 1.13.2Compare Source
[1.13.2] - 2025-11-10
Note Worthy Features
envconfigpackage (#1795)envconfigprovides a way to configure clients using TOML filesMinor Features
RawValuefrom direct payload using identity payload converter (#1806)Bug Fixes
otel] Mark peer dependencies as optional (#1812)otel] Remove await from OTEL handleSignal interceptor (#1803)Security
Notable Changes
SDK-Core update
Commit
871b320->bd02cce:v1.13.1: 1.13.1Compare Source
[1.13.1] - 2025-10-08
Minor features
Bug Fixes
Vulnerabilities
v1.13.0: 1.13.0Compare Source
Note Worthy Features
Bug Fixes
New Contributors
Full Changelog: temporalio/sdk-typescript@v1.12.3...v1.13.0
v1.12.3: 1.12.3Compare Source
[1.12.3] - 2025-08-19
Bug Fixes
workflowExecution.runIdto a UUID inMockActivityEnvironment(#1723, thanks @TastyPi).Minor features
Full Changelog: temporalio/sdk-typescript@v1.12.2...v1.12.3
v1.12.2: 1.12.2Compare Source
[1.12.2] - 2025-08-13
Bug Fixes
Minor features
RawValuesupport for payloads to bypass custom payload converters (#1664)__temporal_prefix is now reserved for internal entities. The__stack_traceand__enhanced_stack_traceare also reserved for internal queries (#1644)Notable changes
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Renovate Bot.