Peter Steinberger
d239a59d82
fix(ui): make Control UI ownership and permissions reliable (#115364)
* fix(ui): unify connection-owned gateway event dispatch
* fix(qa): keep hosted UI smoke evidence truthful
* fix(ui): make mobile navigation drawer an accessible modal
* refactor(ui): centralize settings search destinations
* fix(ui): own chat media resource lifecycles
* fix(ui): unify sidebar session scope ownership
* refactor(ui): remove obsolete navigation backdrop styles
* refactor(ui): isolate dashboard provider lease capabilities
* fix(ui): centralize gateway operator permissions
* style(ui): format gateway event regressions
* fix(ui): render live dashboard permissions immediately
* fix(ui): enforce approval grant authority
* fix(gateway): fence retired sockets after event gaps
* fix(ui): isolate sidebar gateway fixtures across shared workers
* test(ui): isolate singleton-sensitive browser suites
* fix(ui): retire stale catalog pagination on gateway reconnect
* fix(ui): restore drawer focus after native dialog dismissal
* fix(ui): seed drawer threads and preserve modal focus ownership
* fix(ui): isolate nested native drawer overlay lifecycle
* test(ui): prove isolated dashboard lease authorization
* fix(ui): bound settled managed image resources
* fix(ui): type native modal focus and shared test helper
* fix(ui): correct approval mock types and trim dead export
* fix(ui): keep settings section metadata private
* fix(qa): keep hosted coverage regression within lint limit
* refactor(ui): keep catalog presence in its session data owner
* fix(browser): regenerate bundled copilot runtime
* test(ui): split board lease authorization regressions
* fix(ui): snapshot gateway listener fanout without redundant spread
* fix(ui): bind chat media subscriptions to image lifetime
* fix(ui): extract overlay access lifecycle
* fix(ui): restore guarded media after Lit reconnection
* test(ui): localize board lease fixture title
* fix(ui): reuse system approval fixture labels
* test(ui): narrow managed media lifecycle source
* fix(ui): prevent retired board gateway clients from rolling back leases
* fix(ui): expose pairing to pairing-scoped operators
* fix(ui): preserve legacy device pairing access
* fix(ui): preserve responsive sidebar ownership
* fix(ui): preserve responsive navigation and prove media ownership
* fix(ui): retire revoked catalog and refresh pairing grants
* test(ui): align typed catalog fixtures with main
2026-07-28 16:42:05 -04:00
..
2026-07-28 11:37:37 -04:00
2026-07-28 06:04:25 -04:00
2026-07-20 20:40:12 -07:00
2026-07-27 01:36:32 -04:00
2026-07-26 01:29:55 -04:00
2026-07-28 11:37:37 -04:00
2026-07-26 01:29:55 -04:00
2026-07-27 03:20:02 -04:00
2026-07-25 15:39:49 +08:00
2026-07-28 10:22:23 -04:00
2026-07-27 17:31:34 -04:00
2026-07-23 16:17:13 +00:00
2026-07-26 01:29:55 -04:00
2026-07-28 16:42:05 -04:00
2026-07-26 14:21:36 -05:00
2026-07-27 03:20:02 -04:00
2026-07-25 03:24:19 -07:00
2026-07-27 01:29:53 -04:00
2026-07-26 01:29:55 -04:00
2026-07-27 03:20:02 -04:00
2026-07-27 22:03:58 -04:00
2026-07-26 01:29:55 -04:00
2026-07-28 14:21:42 -04:00
2026-07-27 01:29:53 -04:00
2026-07-25 21:51:47 -07:00
2026-07-28 09:16:35 -04:00
2026-07-28 16:48:04 +08:00
2026-07-25 05:17:09 -07:00
2026-07-28 10:22:23 -04:00
2026-07-27 16:47:41 -04:00
2026-07-26 01:29:55 -04:00
2026-07-26 01:29:55 -04:00
2026-07-27 22:55:44 -04:00
2026-07-26 01:29:55 -04:00
2026-07-28 15:49:09 -04:00
2026-07-19 19:09:09 -07:00
2026-07-25 05:17:09 -07:00
2026-07-26 01:29:55 -04:00
2026-07-25 15:39:49 +08:00
2026-07-27 01:29:53 -04:00
2026-07-28 13:29:20 -04:00
2026-07-28 03:41:47 -04:00
2026-07-27 07:20:25 -04:00
2026-07-27 01:29:53 -04:00
2026-07-28 08:52:21 -04:00
2026-07-28 10:22:23 -04:00
2026-07-27 21:13:44 -04:00
2026-07-28 11:05:31 +02:00
2026-07-28 01:50:51 -04:00
2026-07-26 01:29:55 -04:00
2026-07-27 03:20:02 -04:00
2026-07-27 01:29:53 -04:00
2026-07-28 03:28:08 -05:00
2026-07-26 01:29:55 -04:00
2026-07-27 03:49:37 -04:00
2026-07-27 01:29:53 -04:00
2026-07-28 08:52:21 -04:00
2026-07-27 22:46:21 -04:00
2026-07-21 19:29:57 -06:00
2026-07-26 01:29:55 -04:00
2026-07-23 16:17:13 +00:00
2026-07-28 04:18:51 -04:00
2026-07-26 01:29:55 -04:00
2026-07-24 15:15:17 -07:00
2026-07-27 01:29:53 -04:00
2026-07-28 11:47:49 -05:00
2026-07-28 08:17:20 -04:00
2026-07-29 03:53:43 +08:00
2026-07-27 06:39:47 -04:00
2026-07-28 03:41:47 -04:00
2026-07-27 01:29:53 -04:00
2026-07-25 05:30:52 -07:00
2026-07-25 08:33:05 -07:00
2026-07-27 03:42:00 -04:00
2026-07-27 16:47:41 -04:00
2026-07-27 01:29:53 -04:00
2026-07-27 16:47:41 -04:00
2026-07-28 08:47:51 -04:00
2026-07-26 01:29:55 -04:00
2026-07-27 03:49:37 -04:00
2026-07-28 13:34:23 -04:00
2026-07-28 10:22:23 -04:00
2026-07-28 10:22:23 -04:00
2026-07-27 05:44:16 -04:00
2026-07-28 08:52:21 -04:00
2026-07-27 03:15:17 -04:00
2026-07-28 15:05:55 -04:00
2026-07-28 11:37:37 -04:00
2026-07-28 08:52:21 -04:00
2026-07-28 01:10:17 -04:00
2026-07-28 14:53:46 -04:00
2026-07-26 01:29:55 -04:00
2026-07-26 01:29:55 -04:00
2026-07-26 01:29:55 -04:00
2026-07-27 05:44:16 -04:00
2026-07-28 13:00:22 -04:00
2026-07-28 16:42:05 -04:00
2026-07-28 08:52:21 -04:00
2026-07-27 17:12:41 -04:00
2026-07-27 14:15:53 -04:00
2026-07-27 03:49:37 -04:00
2026-07-27 11:27:53 +10:00
2026-07-25 15:39:49 +08:00
2026-07-26 01:29:55 -04:00
2026-07-28 08:41:14 -04:00
2026-07-29 00:00:12 +08:00
2026-07-28 14:41:50 -05:00
2026-07-27 03:49:37 -04:00
2026-07-26 01:29:55 -04:00
2026-07-27 03:49:37 -04:00
2026-07-27 01:29:53 -04:00
2026-07-26 01:29:55 -04:00
2026-07-27 05:44:16 -04:00
2026-07-28 07:08:08 -04:00
2026-07-26 01:29:55 -04:00
2026-07-19 20:48:44 -07:00
2026-07-28 06:53:37 -04:00
2026-07-28 10:22:23 -04:00
2026-07-26 01:29:55 -04:00
2026-07-28 07:08:56 -04:00
2026-07-26 01:29:55 -04:00
2026-07-28 08:52:21 -04:00
2026-07-27 01:29:53 -04:00
2026-07-28 08:41:14 -04:00
2026-07-28 11:47:39 -04:00
2026-07-28 08:52:21 -04:00
2026-07-25 15:39:49 +08:00
2026-07-23 16:17:13 +00:00
2026-07-28 05:25:58 +00:00
2026-07-27 20:56:44 -04:00
2026-07-28 01:10:17 -04:00
2026-07-27 16:47:41 -04:00
2026-07-27 16:47:41 -04:00
2026-07-28 01:50:51 -04:00
2026-07-27 23:04:28 -04:00
2026-07-27 05:44:16 -04:00
2026-07-25 21:51:47 -07:00
2026-07-27 20:20:13 -04:00
2026-07-25 21:51:47 -07:00