diff --git a/backend/app/api/gateways.py b/backend/app/api/gateways.py index 1e567484..4b6e5199 100644 --- a/backend/app/api/gateways.py +++ b/backend/app/api/gateways.py @@ -138,11 +138,7 @@ async def update_gateway( organization_id=ctx.organization.id, ) updates = payload.model_dump(exclude_unset=True) - if ( - "url" in updates - or "token" in updates - or "disable_device_pairing" in updates - ): + if "url" in updates or "token" in updates or "disable_device_pairing" in updates: raw_next_url = updates.get("url", gateway.url) next_url = raw_next_url.strip() if isinstance(raw_next_url, str) else "" next_token = updates.get("token", gateway.token) diff --git a/backend/app/services/openclaw/device_identity.py b/backend/app/services/openclaw/device_identity.py index 8a94b87c..e0652a93 100644 --- a/backend/app/services/openclaw/device_identity.py +++ b/backend/app/services/openclaw/device_identity.py @@ -80,10 +80,14 @@ def _generate_identity() -> DeviceIdentity: format=serialization.PrivateFormat.PKCS8, encryption_algorithm=serialization.NoEncryption(), ).decode("utf-8") - public_key_pem = private_key.public_key().public_bytes( - encoding=serialization.Encoding.PEM, - format=serialization.PublicFormat.SubjectPublicKeyInfo, - ).decode("utf-8") + public_key_pem = ( + private_key.public_key() + .public_bytes( + encoding=serialization.Encoding.PEM, + format=serialization.PublicFormat.SubjectPublicKeyInfo, + ) + .decode("utf-8") + ) device_id = _derive_device_id(public_key_pem) return DeviceIdentity( device_id=device_id, diff --git a/frontend/src/components/BoardOnboardingChat.test.tsx b/frontend/src/components/BoardOnboardingChat.test.tsx index b32591db..20487678 100644 --- a/frontend/src/components/BoardOnboardingChat.test.tsx +++ b/frontend/src/components/BoardOnboardingChat.test.tsx @@ -1,4 +1,10 @@ -import { act, fireEvent, render, screen, waitFor } from "@testing-library/react"; +import { + act, + fireEvent, + render, + screen, + waitFor, +} from "@testing-library/react"; import type { ReactNode } from "react"; import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; @@ -21,9 +27,7 @@ vi.mock("@/components/ui/dialog", () => ({ DialogFooter: ({ children }: { children?: ReactNode }) => (
{children}
), - DialogTitle: ({ children }: { children?: ReactNode }) => ( -

{children}

- ), + DialogTitle: ({ children }: { children?: ReactNode }) =>

{children}

, })); vi.mock("@/api/generated/board-onboarding/board-onboarding", () => ({ @@ -31,10 +35,12 @@ vi.mock("@/api/generated/board-onboarding/board-onboarding", () => ({ startOnboardingMock(...args), getOnboardingApiV1BoardsBoardIdOnboardingGet: (...args: unknown[]) => getOnboardingMock(...args), - answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost: (...args: unknown[]) => - answerOnboardingMock(...args), - confirmOnboardingApiV1BoardsBoardIdOnboardingConfirmPost: (...args: unknown[]) => - confirmOnboardingMock(...args), + answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost: ( + ...args: unknown[] + ) => answerOnboardingMock(...args), + confirmOnboardingApiV1BoardsBoardIdOnboardingConfirmPost: ( + ...args: unknown[] + ) => confirmOnboardingMock(...args), })); const buildQuestionSession = (question: string): BoardOnboardingRead => ({ @@ -116,7 +122,9 @@ describe("BoardOnboardingChat polling", () => { }); await waitFor(() => { - expect(getOnboardingMock.mock.calls.length).toBeGreaterThan(callsBeforePoll); + expect(getOnboardingMock.mock.calls.length).toBeGreaterThan( + callsBeforePoll, + ); }); }); }); diff --git a/frontend/src/components/gateways/GatewayForm.tsx b/frontend/src/components/gateways/GatewayForm.tsx index 79906817..d46a4cc5 100644 --- a/frontend/src/components/gateways/GatewayForm.tsx +++ b/frontend/src/components/gateways/GatewayForm.tsx @@ -126,7 +126,9 @@ export function GatewayForm({ role="switch" aria-checked={disableDevicePairing} aria-label="Disable device pairing" - onClick={() => onDisableDevicePairingChange(!disableDevicePairing)} + onClick={() => + onDisableDevicePairingChange(!disableDevicePairing) + } disabled={isLoading} className={`inline-flex h-6 w-11 shrink-0 items-center rounded-full border transition ${ disableDevicePairing