[CLDAPP-423] Add Encryption Validation - #113
daehan-temporal wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 8dd25b5. Configure here.
| if spec.Mode == namespacev1.EncryptionValidationSpec_ENCRYPTION_VALIDATION_MODE_DISABLED { | ||
| spec.Mode = mode | ||
| } | ||
| return spec |
There was a problem hiding this comment.
Enable skips defaults after disable
Medium Severity
enable applies encoding / binary/encrypted defaults only when EncryptionValidation is nil. disable on an unconfigured namespace writes a disabled spec with empty metadata, so a later enable turns validation on without those defaults. The resulting warn/deny config has no metadata key or values, so payload identification does not match the documented enable path.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 8dd25b5. Configure here.


What was changed
Adds Cloud CLI support for namespace payload encryption validation (EVE):
namespace createalso accepts optional--encryption-validation-*flags. If any of those flags is set,--encryption-validation-modeis required.warn/encoding/binary/encrypted). Disabled namespaces are re-enabled and keep metadata/inspect. Already-warn or already-deny is left unchanged.--denyonly applies when turning validation on.disabledand keeps metadata/inspect.Pins
go.temporal.io/cloud-sdktov0.18.1-0.20260915065746-d48c11f885cb(v0.18.0 plus EncryptionValidation). Temporarily sendsAPIVersion: developmentbecause staging still gates this field.Why?
Give customers a CLI to inspect and change namespace encryption-validation settings, with enable/disable for the common on/off path and set as an explicit replace.
Checklist
Closes - CLDAPP-423
How was this tested:
https://docs.temporal.io/cli/command-reference/cloud/namespace
Note
Medium Risk
Changes namespace security-related settings and forces a development API version on all Cloud clients until the gate is removed; misconfiguration in deny mode could block workflows.
Overview
Adds namespace payload encryption validation to the Temporal Cloud CLI, including a new
encryption-validationcommand group with get, set, enable, and disable. Set fully replaces the nested spec (omitted flags become empty/false); enable applies sensible defaults or re-enables disabled config while preserving metadata; disable only sets mode todisabled.namespace createnow accepts optional--encryption-validation-*flags; if any are set,--encryption-validation-modeis required. The CLI pinsgo.temporal.io/cloud-sdkto a pre-release that exposesEncryptionValidation, andBuildCloudClienttemporarily sendsAPIVersion: developmentso staging can use the new API. The--api-keyflag help no longer mentionsTEMPORAL_API_KEY.Reviewed by Cursor Bugbot for commit 8dd25b5. Bugbot is set up for automated code reviews on this repo. Configure here.