Skip to content

feat(telemetry): enforce enterprise policy in native clients#12285

Open
captainsafia wants to merge 1 commit into
masterfrom
oz/rev-1620-native-oz
Open

feat(telemetry): enforce enterprise policy in native clients#12285
captainsafia wants to merge 1 commit into
masterfrom
oz/rev-1620-native-oz

Conversation

@captainsafia
Copy link
Copy Markdown
Contributor

@captainsafia captainsafia commented Jun 6, 2026

Description

  • Add rollout-gated native organization telemetry policy states: Unknown, Unmanaged, and Enforced Enabled/Disabled.
  • Enforce the effective policy at native queue, send, telemetry-log, persisted-event, startup, periodic, active-usage, and shutdown boundaries.
  • Apply fresh current-workspace policy before CLI.Execute.Agent.Run and the Oz core loop; propagate final refresh failures.
  • Keep daemon startup telemetry fail-closed until successful post-auth policy resolution while leaving daemon functionality non-blocking.
  • Preserve legacy behavior while FeatureFlag::EnterpriseTelemetryPolicy is off and leave SetupClientEventReporter and functional/control-plane APIs unchanged.

Linked Issue

Rollout

  • FeatureFlag::EnterpriseTelemetryPolicy is enabled for dogfood only and excluded from release/default features until the pre-enforcement decision gate is complete.

Testing

  • /workspace/warp/script/format --check
  • /workspace/warp/script/check_no_inline_test_modules
  • CARGO_BUILD_JOBS=1 cargo check -p warp_graphql -p warp --lib
  • Required full workspace clippy checks, including warp_completer
  • Focused nextest policy/conversion/workspace/update-manager/telemetry/CLI/daemon regressions
  • Full workspace nextest/presubmit test suite and manual end-to-end validation were deferred; an earlier broad focused build was SIGKILLed under sandbox memory pressure.
  • I have manually tested my changes locally with ./script/run

Agent Mode

  • Warp Agent Mode - This PR was created via Warp's AI Agent Mode

CHANGELOG-NONE

Co-Authored-By: Oz oz-agent@warp.dev

Conversation: https://staging.warp.dev/conversation/6c18a6aa-377a-4c2f-987e-e69c2102bfe3
Run: https://oz.staging.warp.dev/runs/019e99c5-30bc-70f0-8dd6-8dca323d137b
Plans:

This PR was generated with Oz.

@cla-bot cla-bot Bot added the cla-signed label Jun 6, 2026
@captainsafia captainsafia marked this pull request as ready for review June 7, 2026 05:06
@oz-for-oss
Copy link
Copy Markdown
Contributor

oz-for-oss Bot commented Jun 7, 2026

@captainsafia

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Copy link
Copy Markdown
Contributor

@oz-for-oss oz-for-oss Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR adds rollout-gated native enforcement for organization telemetry policy, including policy conversion from GraphQL, privacy settings propagation, queue/persistence enforcement, daemon startup handling, and CLI agent-run deferral.

Concerns

  • The PR changes user-facing Privacy settings behavior for organization-managed telemetry states, but the description has no screenshot or screen recording and notes manual end-to-end validation was deferred. Warp review guidance requires visual evidence for behavioral/UI-impacting changes.

Verdict

Found: 0 critical, 1 important, 0 suggestions

Request changes

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

UgcCollectionEnablementSetting::Disable => (false, false),
UgcCollectionEnablementSetting::RespectUserSetting => {
(true, privacy_settings.is_telemetry_enabled)
let (is_toggleable, is_checked) = match privacy_settings.organization_telemetry_policy() {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ [IMPORTANT] For this user-facing settings change, include screenshots or a screen recording demonstrating the enterprise-managed analytics states working end to end.

Fail closed until organization policy loads, honor force-disabled across native telemetry paths, and preserve functional Oz behavior.

Co-Authored-By: Oz <oz-agent@warp.dev>
@captainsafia captainsafia force-pushed the oz/rev-1620-native-oz branch from e821869 to fb209a3 Compare June 7, 2026 06:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant