Skip to content

Experimental → stable sweep (2.45)

FL-004 close-out — verdict table for types teams confuse with stable. Gallery shows Experimental / Permanent defer badges on catalog pages (PageHeader + Home Recently shipped).

Related: stable-api.md · friction-log.md · gallery-catalog-expansion.md


Verdict legend

Badge Meaning Ship in product?
(none) Stable — on stable-api.md Yes
Experimental Gallery-backed; API may change Only with eyes open + friction row
Permanent defer Do not promote; use compose recipe No — use stable alternative

Sweep matrix (2.45)

Area Verdict Stable alternative / doc
Stable six charts Stable LineChart, BarChart, DonutChart, RingGauge, KpiTile, ChartCardcharts.md
Sibling charts/gauges Permanent defer (2.08) Area→LineChart.showArea; Spark→KpiTile.trendValues; Pie→DonutChart; gauges→RingGauge
Media Permanent defer (2.09) App-owned Multimedia — media.md
OSK / IME Experimental Promote path 2.01on-screen-keyboard.md
FileTree / TreeDataGrid / ItemsWrapGrid Experimental tree-data.md · items-wrap-grid.md
CalendarView Experimental Date pickers stable — calendar-view.md
NotificationCenter Experimental Toast/InfoBar stable — feedback.md
RichEdit Experimental Mail/template rich text — rich-edit-261.md
SemanticZoom Experimental Grid ↔ index shared selection — semantic-zoom-262.md
SwipeControl Experimental touch-pointer.md
DashboardShell Experimental (2.52 preview) examples/first-app — promote 2.65first-app-252.md
AnimatedIcon / motion helpers Experimental icons.md · animations.md
FrameStats Stable dev tooling (2.44) applyRetailProfile() in retail — developer-diagnostics.md
Shell extras (Snap/battery/…) Gallery demo Taskbar/attention/reveal stable — shell-extras.md
TabView tear-out Experimental Core TabView stable — navigation.md

Mechanism Location
ControlCatalog.apiStabilityForComponent(id) src/gallery/ControlCatalog.qml
ApiStabilityBadge Page title + Home Recently shipped
Pitfalls checklist Gallery Pitfalls — FL-004
Catalog descriptions Still mention defer/experimental in prose

Out: Removing experimental types from the kit (→ 3.00 cleanup). Zero experimental types (unrealistic).


App checklist

  • [ ] Product code imports only stable-api.md types unless documented experimental
  • [ ] Dashboard uses stable six — not deferred gauges in shipping UI
  • [ ] No MediaPlayerElement without reading media.md permanent defer
  • [ ] OSK path gated — not enabled for all users until 2.01 promote
  • [ ] Read Gallery badge before copying a demo page wholesale

Next: 2.67 experimental promote wave 2