[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.
# Conflicts: # go.mod # go.sum # temporalcloudcli/commands.yml
8dd25b5 to
132c20e
Compare


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.