## happier-dev/happier — ui-web-v0.2.14…ui-web-v0.2.15-dev.361

_137 commits._

### Features
- **feat(ui): loading indicator size, speed and pause settings (#484)** (29d55a0)
- **feat(cli): lit Braille planet for setup, auth and installers; one shared step printer (#457)** (45bd83c)
- **feat(ui): add dot H loading indicators with a style picker (#458)** (417c510)
- **feat(ui): align session controls with runtime state** (e78f32c)
- **feat(cli): consolidate provider runtime control flows** (e1efcca)
- **feat(ui): modernize desktop setup and native shell controls** (fc1c073)
- **feat(cli): add Herdr terminal host integration** (b1fcdf5)
- **feat(codex): bind copy receipt to materializer process** (9151172)
- **feat(codex): emit owner-bound hook copy continuity receipt** (55a3845)
- **feat(ui): show used percent on provider usage rings** (8fb2f2e)
- **feat(ui): show labeled context, 5-hour and weekly usage rings** (d210e16)
- **feat(cli): record every Claude usage window from rate-limit events** (901a169)
- **feat(cli): accept caller local id for session send** (b1afca1)

### Fixes
- **fix(ci): restore shared archives with portable local paths** (cabfa39)
- **fix(ci): repair dangling restored nohoist peer links** (e2c833f)
- **fix(ci): install cross-target binary prerequisites in the producer** (9419cfd)
- **fix(ci): use the canonical Windows binary target** (d909b4d)
- **fix(ci): let binary preparation own the versioned CLI build** (68cf5ba)
- **fix(ci): propagate nightly classifier read permission** (5f5ff2d)
- **fix(ui): refresh retained desktop setup facts at the coordinator** (84b88a9)
- **fix(ci): refresh every workspace setup owner on cache hits** (fc88c71)
- **fix(docs): render relay placeholders as literal MDX text** (43fccb3)
- **fix(desktop): reject invalid tray menu icons instead of crashing** (4651997)
- **fix(cli): register Windows background tasks for the current user** (06889c9)
- **fix(cli): report the failing import in the CLI build** (c7aaff7)
- **fix(cli): never act on another Happier home's background service** (6a09265)
- **fix(desktop): run hsetup on Windows and restore titlebar double-click** (de11eae)
- **fix(desktop): label custom window controls in every locale** (20c2475)
- **fix(ui): retain update batches and their initiating account scope** (b71bdb6)
- **fix(desktop): retain scoped setup across navigation and CLI-choice changes** (ba0cd98)
- **fix(bootstrap): preserve managed runtime during setup upgrades** (69398f2)
- **fix(desktop): refresh menu-bar status after actions and theme changes** (13c1627)
- **fix(cli): preserve pnpm release-age defaults for absent configuration** (e38f225)
- **fix(ci): select desktop setup browser checks for runtime changes** (94e6116)
- **fix(desktop): hide background consoles on Windows and keep header buttons clickable** (ee025ee)
- **fix(ui): keep account capacity on comparable quota windows** (3abb76c)
- **fix(ui): retain unmeasured usage windows in details** (73f03a1)
- **fix(cli): preserve observed ACP model controls during discovery (#456)** (0e25ec1)
- **fix(cli): preserve profile identity and scope authentication status (#459)** (2f6331a)
- **fix(ui): preserve usage details and name pinned composer rings** (dd9936b)
- **fix(ui): keep pet tiles within fractional web panes (#461)** (c386ae1)
- **fix(cli): preserve send flags while trimming local ID parsing** (d49290b)
- **fix(cli): recover malformed Codex profile config** (d1894fc)
- **fix(ui): keep remaining-first rings and use account pins as extra gauges** (714a87f)
- **fix(cli): reference account usage records only after their write lands** (04ee9a2)
- **fix(ui): label custom header back button** (68ed92b)
- **fix(stack): preserve imports targets in bundled workspaces** (2dea0fa)
- **fix(cli): unify desktop service runtime ownership** (fc184de)
- **fix(release): resume finalized desktop and completed mobile flows** (d2e97f1)
- **fix(release): reconcile accepted npm publication without republishing** (208c07a)
- **fix(ui): retain scrolling for selected quota details** (e982c74)
- **fix(ui): retain extra-meter details and bound composer gauges** (f7e1cf9)
- **fix(account-usage): preserve existing record proof across sources** (6144dac)
- **fix(composer): apply meter choices to current settings** (ed911ad)
- **fix(usage): retain session references to confirmed records** (befa261)
- **fix(usage): retain live write confirmations under queue pressure** (f4fcf4f)
- **fix(cli): report TOML errors without exposing config values** (2ccbd01)
- **fix(cli): preserve opaque option-shaped local IDs** (7650f82)
- **fix(usage): preserve window evidence and isolate meter interactions** (bcf7a35)
- **fix(cli): align send boundaries and document caller identity** (f1cef71)
- **fix(ui): make composer usage meters optional and labels compact** (7c14577)
- **fix(cli): retain profile config when native Codex config is absent** (fbbecb6)
- **fix(claude): retain rejected-window usage from unified telemetry** (249820a)
- **fix(cli): preserve Codex hook preferences without runtime receipts** (6ccf03c)
- **fix(cli): honor option terminators when sending sessions** (f8b99fc)
- **fix(release): keep registry auth out of npm candidate setup** (88d45f3)
- **fix(release): remove ambient npm credentials from contract tests** (f784e6b)
- **fix(release): isolate npm recovery contract credentials** (7a4c6da)
- **fix(ui): keep reminders usable on older mobile binaries** (2130fed)
- **fix(release): isolate channel artifacts and repair publication controls** (923d6a2)
- **fix(release): bootstrap relay validation outside slim image** (39c81fc)
- **fix(release): run artifact validation from trusted control** (7d99526)
- **fix(release): scope immutable relay validation to upgrade** (3db13d6)
- **fix(sessions): honor auth defaults during takeover** (17ba05d)
- **fix(cli): name runtime activity schema type for portable declarations** (af2b3c6)
- **fix(codex): attach direct takeover to native daemon** (28affbe)
- **fix(codex): copy hooks into materialized homes** (71d320b)
- **fix(codex): honor managed Auto approval constraints** (2d76596)
- **fix: keep Claude usage windows and confirmations through failures and limits** (ab937c2)
- **fix(cli): reject invalid session send local ids** (d566ed9)

### Backend
- **Merge remote-tracking branch 'origin/dev' into HEAD** (98d73b1)
- **Merge remote-tracking branch 'origin/dev' into HEAD** (256046d)
- **Merge remote-tracking branch 'origin/dev' into HEAD** (c0ab5a7)
- **Merge remote-tracking branch 'origin/dev' into HEAD** (1b17a3b)
- **merge: sync origin/dev into local dev** (e0c5625)
- **merge: sync origin/dev batch merges into local dev** (9800403)
- **Optionally mute phone pushes while Happier has computer focus (#471)** (7c9b656)
- **Merge pull request #440 from Rui-li023/feat/claude-usage-rings** (f03fab0)
- **Merge pull request #442 from clemenssautter-ai/feat/codex-hooks-force-copy-clean** (b1a94bf)
- **Merge pull request #436 from clemenssautter-ai/codex/board-wake-local-id-20260927** (a1e7a95)
- **revert(cli): restore the shared quota scheduler and usage persistence** (89a0775)
- **Merge remote-tracking branch 'origin/dev' into dev** (b0b8cde)
- **Preserve native Codex hook trust across staged profile replacement** (1894925)

### Tests
- **test(ci): verify restored executable behavior under host umask** (1334bae)
- **test(opencode): ignore non-state files in startup inventory proof** (855f28f)
- **test(ci): reconcile build dependency and environment fixture fixes** (743c8ce)
- **test(opencode): finish startup inventory before adding foreign fixtures** (ad2c898)
- **test(cli): isolate build policy from CI skip-build environment** (b7c8d1e)
- **test(ci): retain trust guard without forbidding build prerequisites** (045ca71)
- **test(ci): isolate setup fixtures from prepared build mode** (93c9cc8)
- **test(ci): prune copied vocabulary and matrix spellings** (c540e4c)
- **test(ci): remove redundant workflow inventories** (64d1722)
- **test(cli): retain wrapper checks without stale Windows task syntax** (5f76386)
- **test(e2e): bind fixture home and await one Codex control cycle** (6c5e879)
- **test(cli): align service and session fixtures with current ownership** (95f2a61)
- **test(ui): align runtime fixtures and assert observable outcomes** (0d4aaca)
- **test(ci): remove superseded constant concurrency assertion** (2dde317)
- **test(release): prune workflow transcription and path inventories** (917bb98)
- **test: remove blocking copy and instruction inventory scans** (dfda566)
- **test(e2e): follow current terminal host and activity controls** (8040faa)
- **test(stack): remove duplicate Windows registration planner assertion** (1315c52)
- **test(e2e): tag fifteen main-line smoke journeys** (b7e524f)
- **test(e2e): cap ordinary journeys at three minutes** (b497662)
- **test(bootstrap): exercise daemon service commands through the process boundary** (e3d4dbf)
- **test(cli): align post-merge fixtures with the merged batch contracts (#485)** (79c4899)
- **test(cli): declare the service status fixture's Happier home** (2b46c70)
- **test(cli): verify caller local ID through message delivery** (5bbd97f)
- **test(ui): compare the quota overlay host type as a string** (be64b78)
- **test(ui): assert quota popover shared scroll ownership** (62241dd)
- **test(ui): generalize drag-region pressable fixture comment** (3889157)
- **test(ui): clarify quota popover scroll evidence** (85a8d12)
- **test(codex): prove repeated hook materialization through spawn owner** (7e87271)
- **test(ui): drop the wording-only context label test** (e4ce5a3)

### Docs
- **docs(ci): clarify explicit browser spec selection** (c62e08a)
- **docs(ci): explain smoke and full browser suite selection** (c783872)
- **docs(desktop): explain retained setup and recoverable CLI updates** (abf518a)
- **docs(agents): define test audit and failure taxonomy guidance** (e53da72)

### Chore
- **ci(dispatch): expose existing local installer build source** (4cc7f4d)
- **ci(build): reuse one CLI build across test consumers** (528dcd6)
- **ci(e2e): gate pushes on smoke journeys and run full UI nightly** (cdc2b9a)
- **ci(ui): run eight shards with three configured forks** (f2b00b1)
- **ci: keep v0.3 pull requests out of the dev test workflow** (61d74ad)
- **ci: cancel superseded pull request test runs** (4b80c44)
- **ci: cache installed Yarn dependencies with fresh workspace setup** (2de4039)
- **ci(release): reuse source CI release-contract certification** (da424ee)
- **ci: report policy self-tests without blocking typecheck** (e3b1825)
- **chore(release): prepare app and server 0.2.15** (dbf4a97)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/happier-dev/happier?utm_source=github-action)._