Features
freeform: apply the default mount preset when no saved config exists (7332f37), closes #244pages: device mount rotation and orientation trigger fields (experimental) (764b194), closes #249pages: hide the broken Input Control page behind the secret UI gate (fc5ddf7)pages: reorder Features and gate experimental switches behind consent (2a0bb08), closes #253pages: show the mode badges on the service status card (2b6de9d), closes #253pages: ungate Input Control and flag left-handed devices (1e811ef), closes #258pages: unhide developer mode and regroup the service tiles (12180b7), closes #253pie: canonical workspace scale through the profile-preset seam (acb96b7), closes #243service: bump embedded service version to 3.5.3 (8fc49f2)session-config: profile-scoped mount presets behind a namespaced dropdown (24a8757), closes #242session-settings: make basis editable only in developer mode (1aecbc8)session-settings: reapply the Global default onto Hub viz session (4d860b6)session-settings: warn that Global filters act on the device (5f57f66)settings: rework the gate toggles and hidden-feature unlock (ae0c33d), closes #253 #254transform: add session-scoped force_scale slider (5f336e3), closes #239transform: document session fields with SDK-sourced tooltips (b8411f4), closes #239ui: mark experimental-API fields with an icon-only experimental badge (d39d349)ui: surface active developer/experimental modes in title and footer (8397eb0), closes #253ui: wheel stepping on sliders and numeric fields (76c11b8), closes #248Bug Fixes
academy: correct tutorial wording and demo files (0b6445b)ci: pin release toolchain and repair changelog generation (73395eb), closes #240i18n: align German VerseGrip button labels (ce4bd24)i18n: correct mistranslated device terms across locales (8290458)i18n: drop the stale 'edits preview locally' clause from noActiveSession (4c0ab61)i18n: never translate Grip, and repair machine-translated labels (eb9a6b9), closes #239i18n: repair French returnToHome and vgRemap labels (c0e4856)i18n: restore missing host rumble clause in French gamepad demo (687b764)overview: gate footer firmware-update UI behind the inverse3x branch check (b2fd9c9)pages: hide stale safety feature toggles (cb69d35), closes #251pages: show the device firmware button only on the About tab (d33c3be)session-config: align ActiveSession payload and invoke args with the backend (b85af58)session-settings: drop the stale Global preset warning (a998b15)session-settings: fall back to Global when the selected profile's sessions die (bcfb713)session-settings: preview Global config edits in the editor (b350edf)session-settings: reword the Global profile hint (1ecd74b)shortcuts: require a modifier on keyboard triggers (6730744), closes #247triggers: stop the C double-tap from flashing the scale pie (e173ced), closes #247ui: panel badge tooltip says some features require the API while off (4aa8ac7)