Components/Release

Release

A release console from CI build to a staged rollout a person approves.

Since 0.6.0BETA

This component doc is in progress

This page is still being migrated. Demos and API details may change.

Usage

Staged rollout

The pipeline runs through, then waits at the approval gate for your click. Versions, checksums, and signatures are sample data.

Loading demo...

Overview

One release of the Tuff desktop app; the pipeline runs itself, and anything that ships to users waits for your click.

  • Once in view the pipeline runs through signing, notarization, and staging in about four seconds, then stops at the approval gate with no timer; reduced motion renders everything up to the gate at once.
  • Start rollout rolls the share to 5%, and promotion unlocks once the guardrails fill in; Not yet only stages the release, and you can ask again at any time.
  • The gate's checkbox reads "Pause automatically if a guardrail fails": the one automatic action on the page, and it only moves the safe way.
  • Promote, halt, and resume each ask for a second click; while a guardrail fails or the target isn't above the current share, Promote is disabled and says why.
  • "Simulate a crash-rate dip" drops crash-free sessions below 99.50%: with automatic pausing checked the rollout halts at once; otherwise promotion is blocked.
  • Builds in the version capsule's download panel are samples with no download, and Esc in an open panel closes only the panel; a copied sha256 carries a SAMPLE- prefix.
  • Wide (≥ 960px) is three columns; the docs column (640–959px) switches between Log, Artifacts, and Notes; narrow (< 640px) makes Rollout the first tab.

Customization

  • To wire real CI, replace the timed steps in pipelinePlan() with events from your build system; each event updates one step and appends a log line.
  • Use TxToolConfirmation for actions like the first rollout and let it wait indefinitely; its "remember" checkbox can't be hidden, so give it a meaning that points the safe way.
  • TxSteps' active index overrides each step's status: to show an error state such as a halt, pass :active="-1" and control every step yourself.
  • Make sample data obvious: a pre-release tag that never ships, checksums and signatures labeled as samples, and no href on TxVersionDownloadPanel builds.
RegionComponentsRole
HeaderTxVersionCapsule, TxTag, TxWorkingIndicator, TxStatusBadge, TxButtonSample version, state, and Halt
PipelineTxStepsFive controlled pipeline steps
ArtifactsTxDataTable, TxCopyButton, TxStatusBadgeFive artifacts with sample checksums
LogTxCodeStreamBuild log, line by line
Release notesTxMarkdownViewNotes for the selected version
RolloutTxTextMorph, TxProgressBar, TxSegmentedSlider, TxAlertShare, target stage, and Promote
Approval gateTxToolConfirmationWaits for you before rollout
GuardrailsTxSignalMeter, TxSwitch, TxSparkChartThree guardrails and a simulator
This releaseTxTimelineRelease history, newest first
Confirmation and feedbackTxModal, TxToastPanelSecond click and outcome notices