Skip to content

chore: remove Warp hosted-commerce web (billing, pricing, credits, plans)#177

Merged
BunsDev merged 6 commits into
mainfrom
chore/minimize-hosted-commerce
Jul 2, 2026
Merged

chore: remove Warp hosted-commerce web (billing, pricing, credits, plans)#177
BunsDev merged 6 commits into
mainfrom
chore/minimize-hosted-commerce

Conversation

@BunsDev

@BunsDev BunsDev commented Jul 1, 2026

Copy link
Copy Markdown
Member

Summary

First coordinated slice of the CastCodes -> Coven minimization (see COVEN-MINIMIZATION-PLAN.md). Removes the Warp hosted-commerce web — billing, pricing, credits, and plan/upsell UI — which is dead/irrelevant in the account-less, cloud-less local (Coven/OSS) build. These surfaces are already runtime-inert in OSS (the unavailable server never populates their data), so this is dead-code deletion, not a behavior change for real OSS usage.

54 files, ~13.8k lines removed.

Removed

  • pricing + billing modules (PricingInfoModel, shared-objects-creation-denied modal)
  • Credit/plan/banner modals: free-tier-limit, build-plan-migration, cloud-agent-capacity, buy-credits banner, enable-auto-reload
  • Billing-and-usage + Teams settings pages (+ tab_menu), their SettingsSection variants/nav, and the app-wide "open billing/teams" affordances (user menu, URI deep-links, /usage slash command, prompt-alert upsells)
  • Event chains: ShowCloudAgentCapacityModal (incl. ambient-agent emitters), OpenAutoReloadModal, OpenSharedObjectsCreationDenied/OpenTeamSettings (drive)
  • The buy-credits-banner cluster in request_usage_model + its callers; dead teams-invite telemetry; TryFrom<BillingMetadata> for StripeSubscriptionPlan; and the now-dead billing test cases / test-harness PricingInfoModel singletons

Kept (still live / library)

  • warp_graphql::billing::* types — still consumed by live workspace-metadata & AI-request-limit GraphQL responses
  • BonusGrantType + all bonus-grant (ambient credit) logic
  • AIRequestUsageModel itself, autoupdate, and workspace Team data

Behavioral judgment calls (please review)

These go slightly beyond pure deletion — all in hosted-commerce paths that are dead in OSS:

  1. Drive capacity guards: removed if !has_capacity_for_shared_* { show_denied_modal; return } guards, so shared-object creation always proceeds (no tier-limit interstitial — correct in OSS with no limits).
  2. Prompt-alert upsells: converted dead "Add credits"/"increase overages" hyperlinks (which navigated to the removed billing page) to plain text, matching existing non-admin fallbacks.
  3. User menu: collapsed the paid-vs-free "Billing/Upgrade" split into a single item.
  4. Left OneTimeModalModel build-plan methods + a general_settings dismissed-flag in place (model/settings state, not the removed view; now dead but harmless).

Manual testing evidence

No screenshots are attached because the removed hosted-commerce surfaces depend on upstream account/billing state that the OSS/local build does not populate. The practical manual-testable behavior is absence of those routes/nav affordances plus successful compile of the GUI path; CI covers the cross-platform matrix.

Verification

  • cargo check -p warp-app --bin cast-codes --features gui — clean
  • cargo check -p warp-app --features gui --tests — clean
  • cargo clippy (bin, --features gui) — clean
  • ./script/check_rebrand — passed
  • cargo test -p warp_core --features local_fs castcodes — passed; affected nav + request-usage tests pass
  • rustfmt --check app/src/ai/blocklist/prompt/prompt_alert.rs — clean for the review follow-up
  • Relying on CI for the full cross-platform test + clippy matrix.

Next slices (separate PRs, per the plan): shared_session, telemetry, cloud_object+drive, then auth.

Copilot AI review requested due to automatic review settings July 1, 2026 07:05

Copilot AI left a comment

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.

Pull request overview

Removes Warp hosted-commerce web surfaces (billing/pricing/credits/plans/teams UI and related event chains) as part of the CastCodes → Coven minimization effort, focusing on deleting code paths that are inert in OSS/local builds and simplifying remaining UI flows that previously linked into removed settings/pages.

Changes:

  • Deletes pricing/billing UI modules and models (pricing info model, buy-credits banner, auto-reload + migration + limit/capacity modals) and removes associated update plumbing.
  • Removes Settings navigation/sections and URI/deep-link affordances for “Billing and usage” and “Teams”, plus related slash command (/usage) and actions.
  • Removes tier-limit interstitial/capacity guard paths (shared-object creation denied modal + drive capacity checks), aligning shared-object creation with an unlimited/local-first OSS posture.

Reviewed changes

Copilot reviewed 54 out of 56 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
app/src/workspaces/user_workspaces.rs Stops propagating pricing_info from workspace metadata responses.
app/src/workspaces/update_manager.rs Removes pricing_info updates during team/workspace update flows.
app/src/workspaces/gql_convert.rs Removes TryFrom<&BillingMetadata> for StripeSubscriptionPlan conversion logic.
app/src/workspace/view/free_tier_limit_hit_modal.rs Deletes free-tier credits limit interstitial modal UI.
app/src/workspace/view/cloud_agent_capacity_modal/mod.rs Deletes cloud-agent capacity/credits modal UI.
app/src/workspace/view/build_plan_migration_modal.rs Deletes build-plan migration modal UI and related settings updates.
app/src/workspace/view.rs Removes hookups/state/rendering for deleted modals; simplifies user menu upgrade/billing entry.
app/src/workspace/view_tests.rs Removes PricingInfoModel singleton setup from workspace view tests.
app/src/workspace/util.rs Removes workspace modal state flags for deleted billing/upgrade modals.
app/src/workspace/mod.rs Removes modal init/bindings for deleted cloud-agent/free-tier modals and debug migration bindings.
app/src/workspace/action.rs Removes debug actions for build plan migration modal.
app/src/uri/mod.rs Removes teams/billing URI/deep-link handling and associated args types.
app/src/test_util/terminal.rs Removes PricingInfoModel singleton setup from terminal test harness.
app/src/terminal/view/inline_banner/prompt_suggestions.rs Removes prompt-suggestion event for opening billing/usage settings.
app/src/terminal/view/ambient_agent/view_impl.rs Removes capacity-modal branching for paid-vs-free; always refreshes usage on out-of-credits.
app/src/terminal/view/ambient_agent/model.rs Removes capacity-modal event emission on capacity/spawn errors.
app/src/terminal/view/ambient_agent/mod.rs Removes capacity-modal event from ambient-agent view event subscription list.
app/src/terminal/view/action.rs Removes terminal actions for opening Teams settings and Billing & usage panes.
app/src/terminal/view.rs Removes terminal events for auto-reload modal + capacity modal propagation.
app/src/terminal/mod.rs Removes buy-credits banner module and enable-auto-reload modal module.
app/src/terminal/input/universal.rs Removes buy-credits banner overlay insertion in universal input rendering.
app/src/terminal/input/slash_commands/mod.rs Removes /usage handling that opened billing/usage settings.
app/src/terminal/input/common.rs Deletes buy-credits banner overlay implementation helpers.
app/src/terminal/input/agent.rs Removes buy-credits banner overlay insertion in agent input rendering.
app/src/terminal/input.rs Removes buy-credits banner view/state/event wiring and related keymap context.
app/src/terminal/input_tests.rs Removes PricingInfoModel singleton setup from input tests.
app/src/terminal/enable_auto_reload_modal.rs Deletes enable-auto-reload modal implementation.
app/src/terminal/buy_credits_banner.rs Deletes buy-credits banner implementation.
app/src/settings_view/tab_menu.rs Deletes settings tab-menu helper used by teams/billing surfaces.
app/src/settings_view/settings_page.rs Removes settings page handle variants for Teams and Billing & usage.
app/src/settings_view/mod.rs Removes Teams/Billing sections, pages, nav items, and associated event handling/exports.
app/src/settings_view/mod_tests.rs Updates settings navigation tests to reflect removed pages.
app/src/settings_view/billing_and_usage/usage_history_model.rs Deletes usage-history model used by billing & usage page.
app/src/settings_view/billing_and_usage/usage_history_entry.rs Deletes usage-history UI entry component.
app/src/settings_view/billing_and_usage/overage_limit_modal.rs Deletes overage spending-limit modal.
app/src/settings_view/billing_and_usage/mod.rs Removes billing-and-usage module exports.
app/src/settings_view/billing_and_usage_page_tests.rs Deletes billing-and-usage page tests.
app/src/server/telemetry/events.rs Removes teams-invite telemetry event variant and related wiring.
app/src/search/slash_command_menu/static_commands/commands.rs Removes /usage static command from available slash commands.
app/src/root_view.rs Removes pricing-model-driven onboarding badge updates; forces hosted pricing to None.
app/src/pricing/mod.rs Deletes PricingInfoModel implementation entirely.
app/src/pane_group/pane/terminal_pane.rs Removes forwarding of auto-reload and capacity modal events.
app/src/pane_group/mod.rs Removes pane-group events for auto-reload and capacity modal flows; removes Teams settings emission from shared session modal path.
app/src/pane_group/mod_tests.rs Removes PricingInfoModel singleton setup from pane-group tests.
app/src/lib.rs Removes billing/pricing modules and their singleton/init registration.
app/src/drive/panel.rs Removes drive events tied to team settings + shared-object denial modal and strips capacity guard logic.
app/src/drive/index.rs Removes “Open team settings” action/event and shared-object capacity denial event/guards.
app/src/billing/shared_objects_creation_denied_modal.rs Deletes shared-object creation denied modal wrapper.
app/src/billing/shared_objects_creation_denied_body.rs Deletes shared-object creation denied modal body UI/copy.
app/src/billing/mod.rs Removes billing module exports.
app/src/ai/request_usage_model.rs Removes buy-credits banner state machine + pricing-model dependency.
app/src/ai/request_usage_model_tests.rs Deletes tests for buy-credits banner display state logic.
app/src/ai/blocklist/prompt/prompt_alert.rs Removes billing settings hyperlink actions in prompt alerts; converts some upsells to plain text.
app/src/ai/blocklist/controller.rs Removes triggering of buy-credits banner enablement on request limit errors.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread app/src/ai/blocklist/prompt/prompt_alert.rs
Comment thread app/src/ai/blocklist/prompt/prompt_alert.rs
Comment thread app/src/workspace/view.rs
Comment thread app/src/root_view.rs
…ans)

Slims the CastCodes OSS/Coven client by deleting Warp hosted-commerce
functionality, which is dead/irrelevant in the account-less, cloud-less local
build (the unavailable server never populates it, so these surfaces already
render nothing at runtime). Dead-code removal, not a behavior change for real
OSS usage.

Removed: pricing + billing modules; credit/plan/banner modals (free-tier-limit,
build-plan-migration, cloud-agent-capacity, buy-credits, enable-auto-reload);
billing-and-usage + teams settings pages and all their app-wide nav affordances
(menus, URI deep-links, /usage slash command, prompt-alert upsells); the
cloud-agent-capacity / auto-reload / shared-objects event chains; the
buy-credits-banner cluster in request_usage_model; and the now-orphaned
teams/billing helper components (ClickableTextInput, CloudActionConfirmationDialog,
tab_selector, admin_actions, transfer_ownership_confirmation_modal, team-management
methods and events) plus their dead tests.

Kept (still live / library): warp_graphql::billing::* types, BonusGrantType +
bonus-grant logic, AIRequestUsageModel, autoupdate, workspace Team data.

Verified: cargo check (bin + --all-targets --tests, --features gui) clean with
zero dead-code warnings; core identity + affected tests pass; check_rebrand passes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@BunsDev BunsDev merged commit 973c1bb into main Jul 2, 2026
24 checks passed
@BunsDev BunsDev deleted the chore/minimize-hosted-commerce branch July 4, 2026 04:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants