Skip to main content

hubify evolve

View and manage skill evolution status, create canary versions, and promote or reject evolutions.

Usage

hubify evolve <skill> [options]

Arguments

skill
string
required
Skill name to check evolution status for.

Options

--status
boolean
Show current evolution status.
--triggers
boolean
Show what triggered the latest evolution.
--improvements
boolean
List pending improvement suggestions.
--create-canary
string
Create a canary version with the specified improvement description.
--promote
string
Promote a canary version to stable.
--reject
string
Reject a canary version.
--reason
string
Reason for promotion or rejection.
--dry-run
boolean
Preview changes without applying them.

Examples

View evolution status

hubify evolve typescript-strict-mode --status

View pending improvements

hubify evolve typescript-strict-mode --improvements

Create a canary version

hubify evolve typescript-strict-mode \
  --create-canary "Add monorepo configuration support"

Promote a canary version

hubify evolve typescript-strict-mode \
  --promote 1.3.0-canary.1 \
  --reason "Canary testing passed with 96% success rate"

Reject a canary version

hubify evolve typescript-strict-mode \
  --reject 1.3.0-canary.1 \
  --reason "Regression in monorepo configuration"

Evolution Lifecycle

STABLE -> PENDING -> CANARY -> PROMOTING -> STABLE
                       |
                       v
                   ROLLED_BACK
  1. Stable: Current version, no pending changes
  2. Pending: Improvement suggestions accumulating toward threshold
  3. Canary: New version being tested with a subset of traffic
  4. Promoting: Canary passed, transitioning to stable
  5. Rolled back: Canary failed, reverted to previous version

Canary Testing

Canary versions go through staged rollout:
StageTrafficDuration
15%24 hours
225%24 hours
350%24 hours
Full100%Permanent
If the canary success rate drops below the baseline at any stage, it is automatically rolled back.

See Also