- Shipped
- October 14, 2026 at 4:27 AM UTC
- Author
- Kamo
- Commit
- 16648d4
From an independent review of the shipped Cameras screens. Viewer: - A Settings "Watch" of a camera not shared with the manager showed "unavailable": the window now reads such cameras from the management list (useManagerPreviewCameras) — the nav menu stays the member's own cameras. - A tile that gave up comes back when its camera reports ONLINE again or its site reconnects. - The reconnect counter resets only after a connection has stayed up 10 s: a session dropped a moment after forming reconnected forever and never offered Retry. - A viewer-limit refusal is tried once more after 8 s (a session just closed can still count). - A cameras change that arrives while /mine is in flight now gets a fresh answer, not the one sent before the change; the first-load state shows when rights arrive after mounting. Settings: - Discovery stores a credential-free key (discoveryKeyFor = KamoCameraService's transform): Ring/Tuya hits carried the account login in their URL, kept in clear and listed to every camera manager; "already added" now matches long URLs too. - Site actions (status, logs, discover, probe …) no longer make every Cameras screen in the organization refetch: rpc is read-like. - Clearing a group's description works (null meant "unchanged"). - A failed move between groups re-reads the server (the first of its two saves may have landed). - Pasting an enrollment code with spaces works (maxLength cut it). - Watch buttons only for View Cameras holders (managing alone cannot watch). - The advanced YAML guard follows the server's allowlist (streams, log, webrtc); limits match the server (200 viewers, 256 channels); applied version 0 reads "not applied yet". Gates: tsc clean, 183 test files / 2218 tests green, the three Dockerfile guards against the published dictionary, next build.
