{"record":{"id":"bbbe214399142295","repo":"warpdotdev/warp","slug":"this-feature-is-not-enabled-bbbe21","errorCode":null,"errorMessage":"This feature is not enabled","messagePattern":"This feature is not enabled","errorType":"validation","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"app/src/ai/agent_sdk/secret.rs","lineNumber":71,"sourceCode":"    fn row(&self) -> Vec<Cell> {\n        vec![\n            Cell::new(&self.name),\n            Cell::new(&self.scope),\n            Cell::new(format_secret_type(&self.secret_type)),\n            Cell::new(format_approx_duration_from_now_utc(self.created_at)),\n            Cell::new(format_approx_duration_from_now_utc(self.updated_at)),\n        ]\n    }\n}\n\n/// Run secret-related commands.\npub fn run(\n    ctx: &mut AppContext,\n    global_options: GlobalOptions,\n    command: SecretCommand,\n) -> Result<()> {\n    if !FeatureFlag::WarpManagedSecrets.is_enabled() {\n        return Err(anyhow::anyhow!(\"This feature is not enabled\"));\n    }\n\n    match command {\n        SecretCommand::Create(args) => create_secret(ctx, args),\n        SecretCommand::Delete(args) => delete_secret(ctx, args),\n        SecretCommand::Update(args) => update_secret(ctx, args),\n        SecretCommand::List(args) => list_secrets(ctx, global_options.output_format, args),\n    }\n}\n\n/// Deferred secret value reader. Constructed during argument parsing but read after validation\n/// (refresh metadata, resolve owner) so users are not prompted for secrets before we know the\n/// request is valid.\nenum SecretInput {\n    /// Single-field secret types (raw value, Anthropic API key).\n    Simple {\n        secret_type: SecretType,\n        value_args: ValueArgs,","sourceCodeStart":53,"sourceCodeEnd":89,"githubUrl":"https://github.com/warpdotdev/warp/blob/e72fd7aacbbb2236d9b3be2aad7e7178fe94b4bc/app/src/ai/agent_sdk/secret.rs#L53-L89","documentation":"The whole oz secret command group is gated on the runtime feature flag WarpManagedSecrets. secret::run checks the flag before dispatching to any subcommand and returns this generic error when the flag is disabled for the current build, user, or rollout cohort. Nothing is wrong with the arguments; the feature simply is not switched on.","triggerScenarios":"Any oz secret ... invocation (create/delete/update/list) on a build or account where WarpManagedSecrets is disabled, e.g. a stable build without the rollout or a flag rolled back server-side.","commonSituations":"Scripts written against a dogfood build run on stable; local dev build without the flag; feature disabled by admin policy; preview flag removed before release.","solutions":["Run the command from a build/channel where WarpManagedSecrets is enabled (dogfood or preview rollout)","Check the feature-flag surface for the current user/build before scripting secret commands","If you own the rollout, enable WarpManagedSecrets for this user/cohort and retry"],"exampleFix":"// before\n#!/bin/sh\noz secret list\n# Error: This feature is not enabled\n\n// after\n#!/bin/sh\noz features get WarpManagedSecrets | grep -q true || { echo 'secrets unavailable'; exit 1; }\noz secret list","handlingStrategy":"validation","validationCode":"if !FeatureFlag::WarpManagedSecrets.is_enabled() {\n    anyhow::bail!(\"WarpManagedSecrets is disabled here; skipping secret commands\");\n}\nsecret::run(ctx, global_options, command)?;","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Gate secret automation on a feature-availability check","Pin CI to a channel where the flag is enabled","Re-check flags after client upgrades; rollouts change"],"tags":["agent-sdk","secrets","feature-flag","gating"],"backgroundTag":null,"analyzedSha":"e72fd7aacbbb2236d9b3be2aad7e7178fe94b4bc","analyzedAt":"2026-08-16T08:27:25.381Z","schemaVersion":2},"datasetVersion":"2026-08-16T13:17:31.715Z"}