$ rezi
Widgets

Widget Stability

Rezi uses stability tiers so teams can choose widgets with clear behavior guarantees.

Rezi uses stability tiers so teams can choose widgets with clear behavior guarantees.

Tiers

  • stable: behavior contract and deterministic tests exist; semver guarantees apply to the documented stable surface.
  • beta: usable and tested for core invariants, but parts of the contract can still evolve.
  • experimental: no compatibility guarantees; behavior and APIs can change quickly.

Stable Guarantees

When a widget is marked stable, Rezi guarantees:

  • deterministic behavior for documented keyboard, pointer, and editing contracts
  • deterministic regression tests that pin those contracts in packages/core/src/**/__tests__
  • no breaking changes to documented stable behavior in minor or patch releases
  • any required stable-surface behavior change is treated as semver-major

Daily Driver Status

These widgets are the EPIC-04 hardening targets and are currently stable.

WidgetTierContract coverage
InputstableCursor/edit/paste/focus-capture contract tests in packages/core/src/runtime/__tests__/inputEditor.contract.test.ts
TablestableSelection/column-width/viewport/row-key tests in packages/core/src/widgets/__tests__/table.golden.test.ts and packages/core/src/app/__tests__/table.renderCache.test.ts
Virtual ListstableVisible-range/overscan/scroll-clamp/navigation tests in packages/core/src/widgets/__tests__/virtualList.contract.test.ts
Command PalettestableAsync fetch ordering/stale-cancel/query/nav/escape tests in packages/core/src/app/__tests__/commandPaletteRouting.test.ts and packages/core/src/widgets/__tests__/commandPalette.test.ts
File PickerstableExpand/collapse/selection/open/toggle contracts in packages/core/src/app/__tests__/filePickerRouting.contracts.test.ts
File Tree ExplorerstableFocus/activation/toggle/context-menu contracts in packages/core/src/app/__tests__/fileTreeExplorer.contextMenu.test.ts

Full Catalog Status

The full catalog is tiered below. stable is intentionally conservative and reserved for widgets with hardened behavior contracts.

CategoryWidgetTier
PrimitivesTextstable
PrimitivesBoxstable
PrimitivesRow / Columnstable
PrimitivesSpacerstable
PrimitivesDividerstable
IndicatorsIconbeta
IndicatorsSpinnerbeta
IndicatorsProgressbeta
IndicatorsSkeletonbeta
IndicatorsRichTextbeta
IndicatorsKbdbeta
IndicatorsBadgebeta
IndicatorsStatusbeta
IndicatorsTagbeta
Form InputsButtonbeta
Form InputsInputstable
Form InputsSliderbeta
Form InputsCheckboxbeta
Form InputsRadio Groupbeta
Form InputsSelectbeta
Form InputsFieldbeta
Data DisplayTablestable
Data DisplayVirtual Liststable
Data DisplayTreebeta
OverlaysLayersbeta
OverlaysModalbeta
OverlaysDropdownbeta
OverlaysLayerbeta
OverlaysToastbeta
OverlaysFocus Zonebeta
OverlaysFocus Trapbeta
LayoutSplit Panebeta
LayoutPanel Groupbeta
LayoutResizable Panelbeta
AdvancedCommand Palettestable
AdvancedFile Pickerstable
AdvancedFile Tree Explorerstable
AdvancedCode Editorbeta
AdvancedDiff Viewerbeta
AdvancedLogs Consolebeta
AdvancedTool Approval Dialogexperimental
ChartsGaugebeta
ChartsSparklinebeta
ChartsBar Chartbeta
ChartsMini Chartbeta
FeedbackCalloutbeta
FeedbackError Displaybeta
FeedbackEmptybeta

On this page