From d4b0b527baf0da148fe74ba3bb2bc3cf4c799208 Mon Sep 17 00:00:00 2001 From: Myasnikov Daniil Date: Tue, 23 Jun 2026 12:22:39 +0500 Subject: [PATCH] fix(dashboard): gate options query on tenant namespace Address review feedback from gemini-code-assist on DynamicOptionsWidget.tsx: gate the useK8sList options query with enabled: !!tenantNamespace so it does not fire a cluster-wide request to core.cozystack.io options (403 for non-admin tenants) while the tenant namespace is still resolving. Co-Authored-By: Claude Opus 4.8 (1M context) Signed-off-by: Myasnikov Daniil --- .../src/components/DynamicOptionsWidget.tsx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/system/dashboard/images/console/apps/console/src/components/DynamicOptionsWidget.tsx b/packages/system/dashboard/images/console/apps/console/src/components/DynamicOptionsWidget.tsx index ee5e1c5f6..d7511efae 100644 --- a/packages/system/dashboard/images/console/apps/console/src/components/DynamicOptionsWidget.tsx +++ b/packages/system/dashboard/images/console/apps/console/src/components/DynamicOptionsWidget.tsx @@ -40,12 +40,15 @@ export function DynamicOptionsWidget(props: WidgetProps) { "x-cozystack-options" ]?.source - const { data: optionList, isLoading } = useK8sList({ - apiGroup: "core.cozystack.io", - apiVersion: "v1alpha1", - plural: "options", - namespace: tenantNamespace ?? undefined, - }) + const { data: optionList, isLoading } = useK8sList( + { + apiGroup: "core.cozystack.io", + apiVersion: "v1alpha1", + plural: "options", + namespace: tenantNamespace ?? undefined, + }, + { enabled: !!tenantNamespace }, + ) const items: OptionItem[] = optionList?.items?.find((o) => o.metadata.name === source)?.spec?.items ?? []