Spaces:
Runtime error
Runtime error
Commit History
-
feat(refactor): ready for manual QA after main sync (#274)
nyk +1: Claude Opus 4.6Unverified signature* fix: preserve gateway token query in websocket URLs * fix: classify secure-context device identity handshake errors * fix: normalize trailing dot in host allowlist checks * fix: support proxied gateway websocket paths and tailnet host normalization * fix: auto-connect startup to primary configured gateway * fix: keep gateway tokens server-side only * fix: allow authenticated viewers to resolve gateway connect credentials * fix: identify mission control as operator gateway client * fix: redirect remote http sessions to https for gateway auth * fix: support URL-style gateway hosts in health probes * fix: resolve primary gateway credentials from detected openclaw runtime * fix: hide duplicate gateway connection summary when managed * refactor: remove super admin and workspaces panels from UI navigation * fix: treat configured gateways as full-mode capability * refactor: move promo banner copy into subtle footer note * fix: stabilize gateway websocket connect protocol dete…b6ecafa
-
feat: add Update Available banner with GitHub release check (#94)
nykUnverified signature* fix: migrate middleware.ts to proxy.ts for Next.js 16 (#88) Next.js 16 deprecated the `middleware` file convention in favor of `proxy`. The proxy runs on the Node.js runtime instead of Edge, so safeCompare now uses crypto.timingSafeEqual instead of manual XOR. All auth logic, CSRF validation, host matching, and security headers are preserved unchanged. * feat: add "Update Available" banner with GitHub release check Add a dismissible emerald banner that appears when a newer GitHub release exists, so self-hosting users know an update is available. The banner dismisses per-version (reappears for new releases). - Create src/lib/version.ts as single source of truth from package.json - Add /api/releases/check route with 1hr caching and graceful fallback - Add UpdateBanner component mirroring LocalModeBanner pattern - Add update state to Zustand store with localStorage persistence - Fix hardcoded v2.0 in header-bar.tsx and 2.0.0 in websocket.ts1b11b46