As a release manager, I want to publish to different release channels so that I can control which users receive which versions (e.g., beta testers get early access).
Design
Channel Hierarchy
alpha → beta → stable
↓ ↓ ↓
Dev Testers Everyone
Command Interface
# Publish to alpha (default for dev env)
qrun publish --env dev
# Publish to beta channel
qrun publish --env staging --channel beta
# Publish to stable (production)
qrun publish --env prod --channel stable
# Promote from beta to stable
qrun promote --from beta --to stable --version 1.2.3
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Part of #13
User Story
As a release manager, I want to publish to different release channels so that I can control which users receive which versions (e.g., beta testers get early access).
Design
Channel Hierarchy
Command Interface
Channel Configuration
In
qrun.yaml:Environment-Channel Matrix
Voyage API
Files to Create/Modify
ReleaseChannel.javaChannelConfig.javaPromoteCommand.javaPublishCommand.javaVoyageClient.javaImplementation Tasks
ReleaseChannelenum (ALPHA, BETA, STABLE)ChannelConfigfor channel settings--channeloption toPublishCommandPromoteCommandfor channel promotionrequireApprovalhandling for stableautoPromotesupportAcceptance Criteria
--channeloption works on publishqrun promotemoves between channelsrequireApprovalblocks direct stable publish