promote-feature

Promote a gated FeatureFlag across runtime and compile-time layers.

64.1k|5.4k|Updated Jul 8, 2021
One-click install
npx skills add https://github.com/warpdotdev/warp --skill promote-feature-warpdotdev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: promote-feature
Source: https://github.com/warpdotdev/warp/tree/main/.agents/skills/promote-feature
Command: npx skills add https://github.com/warpdotdev/warp --skill promote-feature-warpdotdev

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Automates the safe, staged promotion of a gated FeatureFlag across runtime and compile-time layers, reducing rollout risk and coordinating cleanup timing.

Core Features & Use Cases

  • Promote a FeatureFlag from Dogfood to Preview to Stable with a controlled rollout, keeping a path for rollback.
  • Wire up runtime flags (DOGFOOD_FLAGS, PREVIEW_FLAGS, RELEASE_FLAGS) and Cargo features, and ensure the compile-time bridge remains consistent.
  • Use cases include releasing a guarded feature to a broader audience while deferring cleanup for 1–2 release cycles.

Quick Start

Follow the steps to promote your gated FeatureFlag from Dogfood through Preview to Stable and schedule cleanup after stabilization.

Frequently Asked Questions about promote-feature

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I safely promote a feature flag from Dogfood to Stable in a Rust codebase?

Safe feature flag promotion involves moving from Dogfood to Preview to Stable by updating runtime flags and Cargo features in sync. This coordinates the compile-time bridge across app/Cargo.toml and app/src/lib.rs to keep rollback options open.

How does staged feature flag promotion work with Cargo features and runtime flags?

It works by synchronizing Cargo features with runtime flag arrays across rollout stages. Updating app/Cargo.toml and warp_core/src/features.rs aligns the compile-time bridge with the active runtime environment for safe codebase releases.

When do I need to coordinate compile-time and runtime layers for a feature rollout?

You need this coordination during codebase releases and feature rollouts where safe rollback is required. Aligning runtime flags with Cargo features ensures the compile-time bridge remains consistent across deferred cleanup cycles.

Can I defer feature flag cleanup after promoting a gated feature to Stable?

Yes, cleanup can be deferred for 1–2 release cycles after stabilization. The workflow includes documenting the follow-up cleanup step so the feature flag removal is scheduled rather than immediate.

What files do I need to modify to promote a feature flag in a Rust project?

You must modify warp_core/src/features.rs, app/Cargo.toml, and app/src/lib.rs. These files manage the runtime flag definitions and Cargo features necessary for the staged promotion and safe rollback.

What is the best way to keep a rollback path open during a Rust feature rollout?

The best way is to coordinate staged promotions across runtime and compile-time layers. This approach keeps a path for rollback by deferring cleanup and maintaining consistency between runtime flags and Cargo features.