Skip to content

Gate native workspace team creation to admins - #14707

Open
warp-agent-staging[bot] wants to merge 3 commits into
masterfrom
factory/app-5171-native-workspace-team-controls
Open

Gate native workspace team creation to admins#14707
warp-agent-staging[bot] wants to merge 3 commits into
masterfrom
factory/app-5171-native-workspace-team-controls

Conversation

@warp-agent-staging

@warp-agent-staging warp-agent-staging Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Description

Native workspaces were enabled solely from billing policy, even when a workspace had fewer than two teams. The Teams create/join page also always exposed team creation, regardless of workspace-level permissions.

This change:

  • requires an enabled native-workspaces policy and more than one team;
  • hides the complete Create a team section for native-workspace non-admins or unresolved identities;
  • preserves existing create-team behavior for non-native workspaces and native workspace admins;
  • keeps team discovery visible with a standalone heading when creation is hidden.

Linked Issue

APP-5171

Originating thread: https://warpdev.slack.com/archives/C0BDQDW8V5E/p1785873369852859

Testing

  • Regression tests intentionally omitted at the requester's explicit direction for this change.
  • ./script/format --check
  • CARGO_INCREMENTAL=0 cargo clippy -p warp --all-targets --tests -- -D warnings
  • CARGO_INCREMENTAL=0 cargo build -p warp
  • Manually exercised native-admin, native-non-admin, and non-native Settings > Teams states on the current PR head in the running authenticated Warp client using temporary runtime fixtures that were removed after capture.

Screenshots / Videos

Computer-use screenshots

Settings > Teams under native-admin: "Create a team" with description, Team name input, Create button, separator, "Or, join an existing team within your company", and the Acme Engineering (24 teammates) discoverable card with a Join button.
Settings > Teams under native-non-admin: no "Create a team" section; heading "Teams" with "Join an existing team within your company" and the Acme Engineering (24 teammates) card with a Join button.
Settings > Teams under non-native: full "Create a team" section (description, Team name input, Create button), separator, "Or, join an existing team within your company", and the Acme Engineering (24 teammates) card with Join.

Computer-use video recordings

Continuous current-head flow showing Settings > Teams under native-admin, then relaunching under native-non-admin, then non-native, lingering on each rendered Teams page.

Agent Mode

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

CHANGELOG-IMPROVEMENT: Restrict team creation in native workspaces to workspace admins.

Conversation: https://staging.warp.dev/conversation/03ef05c7-2917-4f80-b77d-3a3c6441ead1
Run: https://oz.staging.warp.dev/runs/019fce62-eeb0-7385-8347-f710351b7c7f

Co-Authored-By: Warp Agent agent@warp.dev
This PR was generated with Oz.

Require multiple teams before enabling native workspace behavior and hide team creation from native-workspace non-admins while preserving the join flow.

Co-Authored-By: Warp Agent <agent@warp.dev>
@cla-bot cla-bot Bot added the cla-signed label Aug 4, 2026
@warp-agent-staging warp-agent-staging Bot added the warpy-factory Label associated to the "Wob the Wuilder" factory on staging, also known as Warpy Factory. label Aug 4, 2026
Co-Authored-By: Warp Agent <agent@warp.dev>
@warp-agent-staging
warp-agent-staging Bot marked this pull request as ready for review August 4, 2026 22:26
Keep the native workspace behavior changes while removing the added test coverage at the requester's explicit direction.

Co-Authored-By: Warp Agent <agent@warp.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed warpy-factory Label associated to the "Wob the Wuilder" factory on staging, also known as Warpy Factory.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant