From 28930136d75eb0c8f1fd50f31f12742e3ed6adc0 Mon Sep 17 00:00:00 2001 From: zipg Date: Fri, 4 Sep 2026 10:25:57 +0800 Subject: [PATCH] feat(sidebar): page full table search results under database --- .../sidebar/SidebarTreeRuntimeHost.vue | 3 +- .../connectionStore.metadataLoading.spec.ts | 82 ++++++++++++++++++ apps/desktop/src/stores/connectionStore.ts | 52 ++++++----- issue-assets/issue-7114-search-load-more.png | Bin 0 -> 136899 bytes ...arLocalTableSearchIndexFirstSearch.test.ts | 52 ++++++----- 5 files changed, 146 insertions(+), 43 deletions(-) create mode 100644 issue-assets/issue-7114-search-load-more.png diff --git a/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue b/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue index 9fed88801a..e33b829014 100644 --- a/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue +++ b/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue @@ -1094,8 +1094,9 @@ function openDriverStoreForInstallError(errMsg: string, node: TreeNode = activeN async function loadMoreObjectGroupChildren() { const node = activeNode.value; + const searchFilter = node.loadMore?.parentId ? connectionStore.sidebarTableSearchQueries[node.loadMore.parentId]?.trim() || "" : ""; try { - await connectionStore.loadMoreObjectGroupChildren(node); + await connectionStore.loadMoreObjectGroupChildren(node, { searchFilter }); } catch (e: any) { toast(t("connection.connectFailed", { message: translateBackendError(t, e) }), 5000); } diff --git a/apps/desktop/src/stores/__tests__/connectionStore.metadataLoading.spec.ts b/apps/desktop/src/stores/__tests__/connectionStore.metadataLoading.spec.ts index 35edf1c93d..1e942c07d7 100644 --- a/apps/desktop/src/stores/__tests__/connectionStore.metadataLoading.spec.ts +++ b/apps/desktop/src/stores/__tests__/connectionStore.metadataLoading.spec.ts @@ -3244,6 +3244,88 @@ describe("connectionStore metadata loading", () => { expect(listTables).toHaveBeenCalledTimes(5); }); + it("pages table-scoped search results instead of truncating at the search budget", async () => { + const tables = Array.from({ length: 5 }, (_, index) => ({ + name: `t_${String(index + 1).padStart(4, "0")}`, + table_type: "TABLE" as const, + comment: null, + })); + const listTables = vi.fn((_connectionId: string, _database: string, _schema: string, searchFilter?: string, limit?: number, offset?: number) => { + const matches = searchFilter ? tables.filter((table) => table.name.includes(searchFilter)) : tables; + const start = offset ?? 0; + return Promise.resolve(matches.slice(start, start + (limit ?? matches.length))); + }); + + vi.doMock("@/lib/backend/tauriRuntime", () => ({ isTauriRuntime: () => false })); + vi.doMock("@/lib/backend/api", () => ({ + checkConnectionHealth: vi.fn().mockResolvedValue(undefined), + deleteSchemaCachePrefix: vi.fn().mockResolvedValue(undefined), + listTables, + loadSchemaCache: vi.fn().mockResolvedValue(null), + saveConnections: vi.fn().mockResolvedValue(undefined), + saveSchemaCache: vi.fn().mockResolvedValue(undefined), + saveSidebarLayout: vi.fn().mockResolvedValue(undefined), + })); + + const { useConnectionStore } = await import("@/stores/connectionStore"); + const { useSettingsStore } = await import("@/stores/settingsStore"); + const store = useConnectionStore(); + const settingsStore = useSettingsStore(); + settingsStore.editorSettings.sidebarObjectDisplay = "grouped"; + settingsStore.desktopSettings.sidebar_table_page_size = 2; + + const connection = mysqlConnection(); + const tablesGroup: TreeNode = { + id: "mysql-1:app:__tables", + label: "tree.tables", + type: "group-tables", + connectionId: connection.id, + database: "app", + isExpanded: true, + children: [], + }; + store.connections = [connection]; + store.connectedIds.add(connection.id); + store.treeNodes = [ + { + id: connection.id, + label: connection.name, + type: "connection", + connectionId: connection.id, + isExpanded: true, + children: [ + { + id: "mysql-1:app", + label: "app", + type: "database", + connectionId: connection.id, + database: "app", + isExpanded: true, + children: [tablesGroup], + }, + ], + }, + ]; + + store.sidebarTableSearchQueries[tablesGroup.id] = "t"; + await store.loadObjectGroupChildren(tablesGroup, { + force: true, + searchFilter: "t", + sidebarTableSearchParentId: tablesGroup.id, + expectedSidebarTableSearchQuery: "t", + }); + + expect(tablesGroup.children?.map((child) => child.label)).toEqual(["t_0001", "t_0002", "tree.loadMore"]); + expect(tablesGroup.children?.at(-1)?.type).toBe("load-more"); + expect(listTables.mock.calls[0].slice(3, 6)).toEqual(["t", 3, 0]); + + await store.loadMoreObjectGroupChildren(tablesGroup.children!.at(-1)!, { searchFilter: "t" }); + + expect(tablesGroup.children?.map((child) => child.label)).toEqual(["t_0001", "t_0002", "t_0003", "t_0004", "tree.loadMore"]); + expect(tablesGroup.children?.at(-1)?.type).toBe("load-more"); + expect(listTables.mock.calls[1].slice(3, 6)).toEqual(["t", 3, 2]); + }); + it("keeps connection-name matches out of object metadata filters", async () => { const listTables = vi.fn((_connectionId: string, _database: string, _schema: string, searchFilter?: string) => Promise.resolve(searchFilter === "orders" || !searchFilter ? [{ name: "orders", table_type: "TABLE" as const, comment: null }] : [])); diff --git a/apps/desktop/src/stores/connectionStore.ts b/apps/desktop/src/stores/connectionStore.ts index cde3d0ec6e..e34f4cc391 100644 --- a/apps/desktop/src/stores/connectionStore.ts +++ b/apps/desktop/src/stores/connectionStore.ts @@ -2087,6 +2087,7 @@ export const useConnectionStore = defineStore("connection", () => { offset: number; pageSize: number; searchFilter?: string; + pagedSearch?: boolean; force?: boolean; }): Promise<{ children: TreeNode[]; objectCount: number; hasMore: boolean; nextOffset: number; loadMoreParent?: TableTreeLoadMoreParent }> { if (!options.node.connectionId || options.node.database == null) { @@ -2102,15 +2103,12 @@ export const useConnectionStore = defineStore("connection", () => { }); const tableNameFilter = effectiveTableNameFilterForNode(options.node, userTableNameFilter); const sourceRevision = tableListSourceRevision(options.node.connectionId); - // A search must never truncate the fuzzy result set to the first page: the - // target table can sort beyond it (e.g. "T_Erp_Nc_SuPlan_List" for - // "erpncs" in a large ERP schema), which silently drops it from the first - // search even though later, narrower queries succeed. Results are bounded - // by SIDEBAR_TABLE_SEARCH_RESULT_BUDGET so a wide fuzzy query cannot push - // an unbounded result set through database → IPC → store → tree rendering. - // Unfiltered loads keep the page+1 probe used for load-more detection. - const fetchLimit = searchFilter ? SIDEBAR_TABLE_SEARCH_RESULT_BUDGET : options.pageSize + 1; - const fetchOffset = searchFilter ? undefined : options.offset; + // Table-scoped search must page through the full ordered result set, just + // like unfiltered loads, instead of silently stopping at the first budget + // window. Global sidebar search keeps the bounded single-shot fetch. + const paginate = options.pagedSearch || !searchFilter; + const fetchLimit = paginate ? options.pageSize + 1 : SIDEBAR_TABLE_SEARCH_RESULT_BUDGET; + const fetchOffset = paginate ? options.offset : undefined; const tables = await loadCachedMetadataListPage( metadataListCacheScope({ kind: "table-list-page", @@ -2128,7 +2126,7 @@ export const useConnectionStore = defineStore("connection", () => { () => listTablesWithOptionalTableNameFilter(options.node.connectionId!, options.node.database!, options.querySchema, searchFilter, fetchLimit, fetchOffset, options.objectTypes, options.node.catalog, tableNameFilter), { force: options.force }, ); - const hasMore = searchFilter ? false : tables.length > options.pageSize; + const hasMore = paginate ? tables.length > options.pageSize : false; const pageTables = hasMore ? tables.slice(0, options.pageSize) : tables; if (tableListSourceRevision(options.node.connectionId) === sourceRevision) { indexCompletionTables(options.node.connectionId, options.node.database, options.effectiveSchema, tableInfosToCompletionTables(pageTables, options.effectiveSchema)); @@ -2223,6 +2221,7 @@ export const useConnectionStore = defineStore("connection", () => { offset: number; pageSize: number; searchFilter?: string; + pagedSearch?: boolean; force?: boolean; }): Promise<{ children: TreeNode[]; objectCount: number; hasMore: boolean; nextOffset: number; loadMoreParent?: TableTreeLoadMoreParent }> { const searchFilter = (options.searchFilter ?? sidebarSearchQuery.value) || undefined; @@ -2233,12 +2232,9 @@ export const useConnectionStore = defineStore("connection", () => { nodeKind: "simple-tables", }); const sourceRevision = tableListSourceRevision(options.connectionId); - // A search must never truncate the fuzzy result set to the first page (see - // loadPagedTableGroupChildren); results are bounded by - // SIDEBAR_TABLE_SEARCH_RESULT_BUDGET, and unfiltered loads keep the - // page+1 probe. - const fetchLimit = searchFilter ? SIDEBAR_TABLE_SEARCH_RESULT_BUDGET : options.pageSize + 1; - const fetchOffset = searchFilter ? undefined : options.offset; + const paginate = options.pagedSearch || !searchFilter; + const fetchLimit = paginate ? options.pageSize + 1 : SIDEBAR_TABLE_SEARCH_RESULT_BUDGET; + const fetchOffset = paginate ? options.offset : undefined; const tables = await loadCachedMetadataListPage( metadataListCacheScope({ kind: "table-list-page", @@ -2255,7 +2251,7 @@ export const useConnectionStore = defineStore("connection", () => { () => listTablesWithOptionalTableNameFilter(options.connectionId, options.database, options.querySchema, searchFilter, fetchLimit, fetchOffset, undefined, undefined, tableNameFilter), { force: options.force }, ); - const hasMore = searchFilter ? false : tables.length > options.pageSize; + const hasMore = paginate ? tables.length > options.pageSize : false; const pageTables = hasMore ? tables.slice(0, options.pageSize) : tables; if (tableListSourceRevision(options.connectionId) === sourceRevision) { indexCompletionTables(options.connectionId, options.database, options.effectiveSchema, tableInfosToCompletionTables(pageTables, options.effectiveSchema)); @@ -5553,9 +5549,10 @@ export const useConnectionStore = defineStore("connection", () => { offset: 0, pageSize, searchFilter: options?.searchFilter === "" ? "" : searchFilter || undefined, + pagedSearch: isSidebarTableSearch, force: options?.force, }); - children = page.hasMore && !searchFilter ? appendTableTreeLoadMoreNode(page.children, buildLoadMoreNode(node, page.nextOffset, pageSize), page.loadMoreParent) : page.children; + children = page.hasMore && (!searchFilter || isSidebarTableSearch) ? appendTableTreeLoadMoreNode(page.children, buildLoadMoreNode(node, page.nextOffset, pageSize), page.loadMoreParent) : page.children; nextObjectCount = page.objectCount; } else if (simpleObjectDisplay) { // The synthetic public scope contains no tables. Avoid issuing a @@ -5706,9 +5703,10 @@ export const useConnectionStore = defineStore("connection", () => { offset: 0, pageSize: sidebarObjectGroupPageSize(), searchFilter: options?.searchFilter === "" ? "" : searchFilter || undefined, + pagedSearch: isSidebarTableSearch, force: options?.force, }); - children = page.hasMore && !searchFilter ? appendTableTreeLoadMoreNode(page.children, buildLoadMoreNode(node, page.nextOffset, sidebarObjectGroupPageSize()), page.loadMoreParent) : page.children; + children = page.hasMore && (!searchFilter || isSidebarTableSearch) ? appendTableTreeLoadMoreNode(page.children, buildLoadMoreNode(node, page.nextOffset, sidebarObjectGroupPageSize()), page.loadMoreParent) : page.children; nextObjectCount = page.objectCount; } else { const pageSize = sidebarObjectGroupPageSize(); @@ -5791,6 +5789,7 @@ export const useConnectionStore = defineStore("connection", () => { schema: parent.schema, nodeKind: parent.type, objectTypes: objectTypesForScope, + searchFilter: options?.searchFilter, limit: loadMore.pageSize + 1, offset: loadMore.offset, sidebarDisplayMode: useSettingsStore().editorSettings.sidebarObjectDisplay, @@ -5819,6 +5818,8 @@ export const useConnectionStore = defineStore("connection", () => { nonTableObjectTypes: [], offset: loadMore.offset, pageSize: loadMore.pageSize, + searchFilter: options?.searchFilter, + pagedSearch: !!options?.searchFilter, force: false, }); const targetParent = treeNodeLoadRelatedTarget(load, parent); @@ -5828,7 +5829,9 @@ export const useConnectionStore = defineStore("connection", () => { const nextChildren = page.hasMore ? appendTableTreeLoadMoreNode(mergedChildren, buildLoadMoreNode(targetParent, page.nextOffset, loadMore.pageSize), page.loadMoreParent) : mergedChildren; targetParent.objectCount = mergedChildren.length; setChildren(targetParent, nextChildren); - await savePersistedTreeChildren(schemaCacheKey(parentConnectionId, parentDatabase, parent.schema || "", ownerAwareMetadataCacheVersion(config, "objects-simple-v8")), nextChildren); + if (!options?.searchFilter) { + await savePersistedTreeChildren(schemaCacheKey(parentConnectionId, parentDatabase, parent.schema || "", ownerAwareMetadataCacheVersion(config, "objects-simple-v8")), nextChildren); + } const currentTargetParent = treeNodeLoadRelatedTarget(load, parent); if (currentTargetParent && parentEpoch.isCurrent()) currentTargetParent.isExpanded = true; return; @@ -5855,6 +5858,7 @@ export const useConnectionStore = defineStore("connection", () => { offset: loadMore.offset, pageSize: loadMore.pageSize, searchFilter: options?.searchFilter, + pagedSearch: !!options?.searchFilter, force: false, }); const targetParent = treeNodeLoadRelatedTarget(load, parent); @@ -5881,7 +5885,9 @@ export const useConnectionStore = defineStore("connection", () => { nextChildren = page.hasMore ? [...mergedChildren, buildLoadMoreNode(targetParent, page.nextOffset, loadMore.pageSize)] : mergedChildren; targetParent.objectCount = mergedChildren.length; setChildren(targetParent, nextChildren); - await savePersistedTreeChildren(objectGroupCacheKey(targetParent), nextChildren); + if (!options?.searchFilter) { + await savePersistedTreeChildren(objectGroupCacheKey(targetParent), nextChildren); + } const currentTargetParent = treeNodeLoadRelatedTarget(load, parent); if (currentTargetParent && parentEpoch.isCurrent()) currentTargetParent.isExpanded = true; return; @@ -5890,7 +5896,9 @@ export const useConnectionStore = defineStore("connection", () => { if (!targetParent || !parentEpoch.isCurrent()) return; targetParent.objectCount = mergedChildren.length; setChildren(targetParent, nextChildren); - await savePersistedTreeChildren(objectGroupCacheKey(targetParent), nextChildren); + if (!options?.searchFilter) { + await savePersistedTreeChildren(objectGroupCacheKey(targetParent), nextChildren); + } const currentTargetParent = treeNodeLoadRelatedTarget(load, parent); if (currentTargetParent && parentEpoch.isCurrent()) currentTargetParent.isExpanded = true; } catch (e) { diff --git a/issue-assets/issue-7114-search-load-more.png b/issue-assets/issue-7114-search-load-more.png new file mode 100644 index 0000000000000000000000000000000000000000..b43d95598a6029bf029ca4acb649ca3d5974d742 GIT binary patch literal 136899 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

sQKz}F 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 >7Rf_ac1w za;eQfeK)57Y3;{J!~|uTJDMbOE+FT?BB-`$4}j}|!2Hd{etTR_9+v_T>0Cpa{-98a zV31%Amn$evgQoWkD73&+R#{M9 zxs8Cn^Z)w;w3M1(z#xT01FsWgb`|70gnOmJ7rpeB3`kvGl#Z{G2;8H^;CYAWMiLJ+0LN#HGf`m0 z!Q~zRXEgkZ&@F6(2Cd=Z4gaf`qh9*yt42rLN|nIH>r?%A>e!2zsSuTT4w= znO_n1d#;PWzrH^PngfWPg&>0^OHUr(2g-0OcVr?!XryJ9Ux13R{Rx#-$7|yS)STV{2-PBBoD<|6 zF;^j8%iu_OupW0ucAkWZ|5{rMm0jE1EGbZP_^z`|y8P=`6d~AoyH^({`SrGMkUv$| z!6a~=!OIGYJJcsP%blUU3!a}w2S8M!9XRJlfl+XxoUEnQ3!b5GmH(=dcHg?6rHlc_ z&Hs&O7c^Hapb~NKx$;D@W)jBmB1kDbTkjVI+C4A>kew>@rvdPAP@wi_ zKUJJVP~GPzz?R$>{u!3rITlO7+0RF$)bt$gC0*<3Rf)VS-p&#G4Nw08un@o=Tx#(m z)rkt0=rMB|%?lnk-q~-zQSd!-`e6(Z|Jf@|qEa`I2@u&Z7BBz_Y0XXmH^HQtlPBg1 zx;2>kp%(^K7ra4by{i41FA50%zd<0p8;sN@(Qc`D*Nq~;_*4ii+^F13A(lMDMp2>; z#Px4Ck0ix~Ki*5d$l?tbxbxcJa$zHhUh*ErR!5`oBC*hUryC-X&U~uOK*bao^PIuc zRW>TJ$~K)sDVZQ*r)(d2)`heCKUx6mtpKBn>0x2Z* z%$@|==ttwm9_ww M9$(%P}T4_gfD9aZUj7{JP2E59F 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 literal 0 HcmV?d00001 diff --git a/packages/app-tests/sidebarLocalTableSearchIndexFirstSearch.test.ts b/packages/app-tests/sidebarLocalTableSearchIndexFirstSearch.test.ts index 9c91c1a3e1..692de26d4d 100644 --- a/packages/app-tests/sidebarLocalTableSearchIndexFirstSearch.test.ts +++ b/packages/app-tests/sidebarLocalTableSearchIndexFirstSearch.test.ts @@ -8,19 +8,14 @@ // for the fuzzy query "erpncs". This test locks in the fixed behavior: the // first search builds the index so the complete table set is searchable. // -// Remote searches must stay bounded: every fuzzy match travels -// database → IPC → store → tree rendering, so the result set is capped by -// SIDEBAR_TABLE_SEARCH_RESULT_BUDGET (mirrored from connectionStore.ts). +// Table-scoped remote searches are paginated at the configured sidebar table +// page size, so a wide fuzzy query can still reach alphabetically-late matches +// by loading more instead of being silently truncated to one budget window. import { createPinia, setActivePinia } from "pinia"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { matchSidebarLabel } from "../../apps/desktop/src/lib/sidebar/sidebarSearch.ts"; import type { ConnectionConfig, TableInfo, TreeNode } from "@/types/database"; -// Mirrors SIDEBAR_TABLE_SEARCH_RESULT_BUDGET in connectionStore.ts (4× the -// default sidebar_table_page_size of 500). Kept as a local constant because -// connectionStore must stay dynamically imported for vi.doMock isolation. -const SIDEBAR_TABLE_SEARCH_RESULT_BUDGET = 2000; - function installLocalStorage() { const data = new Map(); vi.stubGlobal("localStorage", { @@ -202,7 +197,7 @@ describe("sidebar local table search first-search index build (#6190)", () => { expect(cached?.map((entry) => entry.name)).toContain("T_Erp_Nc_SuPlan_List"); }, 30000); - it("remote search returns the complete fuzzy result set within the result budget", async () => { + it("remote search pages through the complete fuzzy result set", async () => { const allTables = buildTables(); const listTables = listTablesFor(allTables); const { store, tablesGroup } = await installStore(listTables); @@ -219,29 +214,40 @@ describe("sidebar local table search first-search index build (#6190)", () => { await store.loadObjectGroupChildren(tablesGroup, searchOptions(searchFilter)); }; - // First remote search: the backend receives the result budget as the - // limit — 4× the page size, comfortably above the 801 fuzzy matches of - // this schema — so the alphabetically-late target is never truncated. + // The first remote search loads one 500-table page plus a load-more node. + // The alphabetically-late target is on the next page, so it must not be + // dropped from the first result set. await search("erpncs"); - const firstResults = (tablesGroup.children ?? []).map((node) => node.label); - expect(firstResults).toContain("T_Erp_Nc_SuPlan_List"); - expect(listTables.mock.calls.some((call) => call[3] === "erpncs" && call[4] === SIDEBAR_TABLE_SEARCH_RESULT_BUDGET)).toBe(true); + let children = tablesGroup.children ?? []; + expect(children).toHaveLength(501); + expect(children.at(-1)?.type).toBe("load-more"); + expect(children.map((node) => node.label)).not.toContain("T_Erp_Nc_SuPlan_List"); + expect(listTables.mock.calls.some((call) => call[3] === "erpncs" && call[4] === 501 && call[5] === 0)).toBe(true); + + await store.loadMoreObjectGroupChildren(children.at(-1)!, { searchFilter: "erpncs" }); + children = tablesGroup.children ?? []; + expect(children.map((node) => node.label)).toContain("T_Erp_Nc_SuPlan_List"); + expect(listTables.mock.calls.some((call) => call[3] === "erpncs" && call[4] === 501 && call[5] === 500)).toBe(true); // Repeated searches are order-independent. await search("terpncs"); expect((tablesGroup.children ?? []).map((node) => node.label)).toContain("T_Erp_Nc_SuPlan_List"); await search("erpncs"); + children = tablesGroup.children ?? []; + expect(children.at(-1)?.type).toBe("load-more"); + await store.loadMoreObjectGroupChildren(children.at(-1)!, { searchFilter: "erpncs" }); expect((tablesGroup.children ?? []).map((node) => node.label)).toContain("T_Erp_Nc_SuPlan_List"); }, 30000); - it("remote search results never exceed the result budget", async () => { - // 3000 tables whose names all contain "erpncs": an unbounded search would - // return all 3000; the budget caps a single result set at 2000. + it("remote search results remain paginated for very wide queries", async () => { + // 3000 tables whose names all contain "erpncs": pagination keeps every + // loaded page bounded by the configured sidebar table page size. const allTables: TableInfo[] = []; for (let i = 0; i < 3000; i++) allTables.push({ name: `ErpNcS${i}`, table_type: "TABLE", comment: null }); const listTables = listTablesFor(allTables); const { store, tablesGroup } = await installStore(listTables); + store.setSidebarTableSearchQuery(tablesGroup.id, "erpncs"); await store.loadObjectGroupChildren(tablesGroup, { force: true, searchFilter: "erpncs", @@ -250,8 +256,14 @@ describe("sidebar local table search first-search index build (#6190)", () => { }); const children = tablesGroup.children ?? []; - expect(children.length).toBeLessThanOrEqual(SIDEBAR_TABLE_SEARCH_RESULT_BUDGET); - expect(listTables.mock.calls.some((call) => call[3] === "erpncs" && call[4] === SIDEBAR_TABLE_SEARCH_RESULT_BUDGET)).toBe(true); + expect(children).toHaveLength(501); + expect(children.at(-1)?.type).toBe("load-more"); + expect(listTables.mock.calls.some((call) => call[3] === "erpncs" && call[4] === 501 && call[5] === 0)).toBe(true); + + await store.loadMoreObjectGroupChildren(children.at(-1)!, { searchFilter: "erpncs" }); + const loadedRows = (tablesGroup.children ?? []).filter((node) => node.type !== "load-more"); + expect(loadedRows).toHaveLength(1000); + expect((tablesGroup.children ?? []).at(-1)?.type).toBe("load-more"); }, 30000); it("an empty (cleared) query never issues a remote fuzzy search", async () => {