From a003f3d43adafc11c28535faef36c99e4099c44c Mon Sep 17 00:00:00 2001 From: Henrique Tolentino Date: Tue, 21 Jul 2026 13:38:32 -0400 Subject: [PATCH 1/3] Fix Base Model filtering on the Virtual Models Grid Signed-off-by: Henrique Tolentino --- .../FilterFields/BaseModelSearchFilterField.tsx | 2 +- .../dataViews/VirtualModelsDataView/index.tsx | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/web/packages/studio/src/components/FilterFields/BaseModelSearchFilterField.tsx b/web/packages/studio/src/components/FilterFields/BaseModelSearchFilterField.tsx index 6d75dc5e9d..f457b48a83 100644 --- a/web/packages/studio/src/components/FilterFields/BaseModelSearchFilterField.tsx +++ b/web/packages/studio/src/components/FilterFields/BaseModelSearchFilterField.tsx @@ -39,7 +39,7 @@ const BaseModelSearchFilterFieldSingle: FC< const { models, fetchNextPage, hasNextPage, isFetchingNextPage, isLoading } = useBaseModels({ workspace, - filter: searchInput.trim() ? { name: searchInput.trim() } : undefined, + filter: searchInput.trim() ? { name: { $like: searchInput.trim() } } : undefined, sort: ModelEntitySortField.name, }); diff --git a/web/packages/studio/src/components/dataViews/VirtualModelsDataView/index.tsx b/web/packages/studio/src/components/dataViews/VirtualModelsDataView/index.tsx index 47627fb016..969c5c412e 100644 --- a/web/packages/studio/src/components/dataViews/VirtualModelsDataView/index.tsx +++ b/web/packages/studio/src/components/dataViews/VirtualModelsDataView/index.tsx @@ -77,10 +77,18 @@ export const VirtualModelsDataView: FC = ({ const columnFilters = new Map(dataViewState.debouncedColumnFilters.map((f) => [f.id, f.value])); const name = dataViewState.debouncedSearchBar || undefined; const defaultModelEntity = columnFilters.get('default_model_entity') as string | undefined; + // API requires workspace-qualified form ("default/model-name"); dropdown yields bare names. + const qualifiedDefaultModelEntity = defaultModelEntity + ? defaultModelEntity.includes('/') + ? defaultModelEntity + : `${workspace}/${defaultModelEntity}` + : undefined; const createdAt = columnFilters.get('created_at') as DatetimeFilter | undefined; return withOperators({ ...(name ? { name: { $like: name } } : {}), - ...(defaultModelEntity ? { default_model_entity: { $eq: defaultModelEntity } } : {}), + ...(qualifiedDefaultModelEntity + ? { default_model_entity: { $eq: qualifiedDefaultModelEntity } } + : {}), ...(createdAt ? { created_at: createdAt } : {}), }); }, [dataViewState.debouncedSearchBar, dataViewState.debouncedColumnFilters]); From 4c037c8dc39ca829be6f88d8b8ef440c876c77f6 Mon Sep 17 00:00:00 2001 From: Henrique Tolentino Date: Tue, 21 Jul 2026 13:58:42 -0400 Subject: [PATCH 2/3] Small fixes Signed-off-by: Henrique Tolentino --- .../src/components/dataViews/VirtualModelsDataView/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/packages/studio/src/components/dataViews/VirtualModelsDataView/index.tsx b/web/packages/studio/src/components/dataViews/VirtualModelsDataView/index.tsx index 969c5c412e..ae6d1c1941 100644 --- a/web/packages/studio/src/components/dataViews/VirtualModelsDataView/index.tsx +++ b/web/packages/studio/src/components/dataViews/VirtualModelsDataView/index.tsx @@ -91,7 +91,7 @@ export const VirtualModelsDataView: FC = ({ : {}), ...(createdAt ? { created_at: createdAt } : {}), }); - }, [dataViewState.debouncedSearchBar, dataViewState.debouncedColumnFilters]); + }, [dataViewState.debouncedSearchBar, dataViewState.debouncedColumnFilters, workspace]); const { data, isFetching, error } = useListVirtualModels( workspace, From 6604e8026f945887fb23dcb22e4a504c7cb9d6f6 Mon Sep 17 00:00:00 2001 From: Henrique Tolentino Date: Tue, 21 Jul 2026 14:23:12 -0400 Subject: [PATCH 3/3] Fix workspace issues Signed-off-by: Henrique Tolentino --- .../components/FilterFields/BaseModelSearchFilterField.tsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/web/packages/studio/src/components/FilterFields/BaseModelSearchFilterField.tsx b/web/packages/studio/src/components/FilterFields/BaseModelSearchFilterField.tsx index f457b48a83..7c406e8a56 100644 --- a/web/packages/studio/src/components/FilterFields/BaseModelSearchFilterField.tsx +++ b/web/packages/studio/src/components/FilterFields/BaseModelSearchFilterField.tsx @@ -52,7 +52,11 @@ const BaseModelSearchFilterFieldSingle: FC< }, [selectedBaseModel, form]); const options = useMemo( - () => models.map((model) => ({ value: model.name ?? '', label: model.name ?? '' })), + () => + models.map((model) => ({ + value: `${model.workspace}/${model.name ?? ''}`, + label: model.name ?? '', + })), [models] );