Skip to content

Conversation

@mjameswh
Copy link
Contributor

@mjameswh mjameswh commented May 8, 2025

What was changed

  • Temporal Cloud requires presence of the temporal-namespace gRPC metadata on every request to the Workflow Service that contains a namespace property. This was not done on the pure-JS Connection. There it is. Fixes [Feature Request] Put temporal-namespace header on all requests from pure JS client #1697.

  • Note that this logic is taken care by Core SDK on NativeConnection.

  • Also added CI tests against Temporal Cloud. Credentials are provided through environment variables. Tests will be skipped if credentials are missing.

Breaking notice

  • IMPORTANT: We previously recommend Temporal Cloud users using API Keys to manually add the temporal-namespace metadata to their Client's connection config. This is no longer appropriate and must be removed. Keeping that metadata will result in connection failure, as the GetSystemInfo request must never contain a temporal-namespace metadata.

    Given that 1) API Keys were still marked @experimental in previous release, and 2) non-Temporal Cloud users may also need to add a temporal-namespace header that would have different constraints, we do not make any attempt to "automatically" remove that metadata is explicitly set on requests where it should not be present according to Temporal Cloud's expectations.

@mjameswh mjameswh changed the title fix(client)!: Properly set temporal-namespace header on gRPC requests fix(client): Properly set temporal-namespace header on gRPC requests May 8, 2025
@mjameswh mjameswh force-pushed the apikey-namespace-header-interceptor branch from b0d539e to f837c7f Compare May 8, 2025 23:34
@mjameswh mjameswh marked this pull request as ready for review May 8, 2025 23:35
@mjameswh mjameswh requested a review from a team as a code owner May 8, 2025 23:35
@mjameswh mjameswh requested a review from cretz May 8, 2025 23:35
@mjameswh mjameswh merged commit ea28266 into main May 9, 2025
24 checks passed
@mjameswh mjameswh deleted the apikey-namespace-header-interceptor branch May 9, 2025 23:07
mjameswh added a commit that referenced this pull request May 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request] Put temporal-namespace header on all requests from pure JS client

3 participants