From f01f5551463e911faeabde9d93ed1958036245c5 Mon Sep 17 00:00:00 2001 From: "Junyan Qin (Chin)" Date: Mon, 26 Jan 2026 19:48:33 +0800 Subject: [PATCH 1/3] chore: increase plugin cache ttl to 1 hour (#31552) --- api/tasks/process_tenant_plugin_autoupgrade_check_task.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/tasks/process_tenant_plugin_autoupgrade_check_task.py b/api/tasks/process_tenant_plugin_autoupgrade_check_task.py index e6492c230d..b5e6508006 100644 --- a/api/tasks/process_tenant_plugin_autoupgrade_check_task.py +++ b/api/tasks/process_tenant_plugin_autoupgrade_check_task.py @@ -17,7 +17,7 @@ logger = logging.getLogger(__name__) RETRY_TIMES_OF_ONE_PLUGIN_IN_ONE_TENANT = 3 CACHE_REDIS_KEY_PREFIX = "plugin_autoupgrade_check_task:cached_plugin_manifests:" -CACHE_REDIS_TTL = 60 * 15 # 15 minutes +CACHE_REDIS_TTL = 60 * 60 # 1 hour def _get_redis_cache_key(plugin_id: str) -> str: From f561656a899fe58b9987f30e38fca708a984a25b Mon Sep 17 00:00:00 2001 From: yyh <92089059+lyzno1@users.noreply.github.com> Date: Mon, 26 Jan 2026 20:20:14 +0800 Subject: [PATCH 2/3] chore: follow-up fixes for storybook vite migration (#31545) --- .../base/icons/icon-gallery.stories.tsx | 18 ++++++++---------- web/eslint-suppressions.json | 5 ----- web/package.json | 2 +- web/vite.config.ts | 16 ++++++++++++++++ web/vitest.config.ts | 10 ++++------ 5 files changed, 29 insertions(+), 22 deletions(-) create mode 100644 web/vite.config.ts diff --git a/web/app/components/base/icons/icon-gallery.stories.tsx b/web/app/components/base/icons/icon-gallery.stories.tsx index 15206f2735..8d49f70ce2 100644 --- a/web/app/components/base/icons/icon-gallery.stories.tsx +++ b/web/app/components/base/icons/icon-gallery.stories.tsx @@ -1,9 +1,9 @@ +/// import type { Meta, StoryObj } from '@storybook/nextjs-vite' import * as React from 'react' -declare const require: any - type IconComponent = React.ComponentType> +type IconModule = { default: IconComponent } type IconEntry = { name: string @@ -12,18 +12,16 @@ type IconEntry = { Component: IconComponent } -const iconContext = require.context('./src', true, /\.tsx$/) +const iconModules: Record = import.meta.glob('./src/**/*.tsx', { eager: true }) -const iconEntries: IconEntry[] = iconContext - .keys() - .filter((key: string) => !key.endsWith('.stories.tsx') && !key.endsWith('.spec.tsx')) - .map((key: string) => { - const mod = iconContext(key) - const Component = mod.default as IconComponent | undefined +const iconEntries: IconEntry[] = Object.entries(iconModules) + .filter(([key]) => !key.endsWith('.stories.tsx') && !key.endsWith('.spec.tsx')) + .map(([key, mod]) => { + const Component = mod.default if (!Component) return null - const relativePath = key.replace(/^\.\//, '') + const relativePath = key.replace(/^\.\/src\//, '') const path = `app/components/base/icons/src/${relativePath}` const parts = relativePath.split('/') const fileName = parts.pop() || '' diff --git a/web/eslint-suppressions.json b/web/eslint-suppressions.json index 9f4d2da5d4..2c06b37115 100644 --- a/web/eslint-suppressions.json +++ b/web/eslint-suppressions.json @@ -1085,11 +1085,6 @@ "count": 2 } }, - "app/components/base/icons/icon-gallery.stories.tsx": { - "ts/no-explicit-any": { - "count": 1 - } - }, "app/components/base/icons/utils.ts": { "ts/no-explicit-any": { "count": 3 diff --git a/web/package.json b/web/package.json index 85fce3a08a..5d8003d6d6 100644 --- a/web/package.json +++ b/web/package.json @@ -48,7 +48,7 @@ "analyze-component": "node ./scripts/analyze-component.js", "refactor-component": "node ./scripts/refactor-component.js", "storybook": "storybook dev -p 6006", - "build-storybook": "storybook build", + "storybook:build": "storybook build", "preinstall": "npx only-allow pnpm", "analyze": "ANALYZE=true pnpm build", "knip": "knip" diff --git a/web/vite.config.ts b/web/vite.config.ts new file mode 100644 index 0000000000..23fe36bce4 --- /dev/null +++ b/web/vite.config.ts @@ -0,0 +1,16 @@ +import path from 'node:path' +import { fileURLToPath } from 'node:url' +import react from '@vitejs/plugin-react' +import { defineConfig } from 'vite' +import tsconfigPaths from 'vite-tsconfig-paths' + +const __dirname = path.dirname(fileURLToPath(import.meta.url)) + +export default defineConfig({ + plugins: [tsconfigPaths(), react()], + resolve: { + alias: { + '~@': __dirname, + }, + }, +}) diff --git a/web/vitest.config.ts b/web/vitest.config.ts index f6e8424e44..c58a92f217 100644 --- a/web/vitest.config.ts +++ b/web/vitest.config.ts @@ -1,9 +1,7 @@ -import react from '@vitejs/plugin-react' -import tsconfigPaths from 'vite-tsconfig-paths' -import { defineConfig } from 'vitest/config' +import { defineConfig, mergeConfig } from 'vitest/config' +import viteConfig from './vite.config' -export default defineConfig({ - plugins: [tsconfigPaths(), react()], +export default mergeConfig(viteConfig, defineConfig({ test: { environment: 'jsdom', globals: true, @@ -13,4 +11,4 @@ export default defineConfig({ reporter: ['text', 'json', 'json-summary'], }, }, -}) +})) From 5eaf0c733acdfd1fab3ac0fbc549a417ddd3eb37 Mon Sep 17 00:00:00 2001 From: Asuka Minato Date: Mon, 26 Jan 2026 21:59:02 +0900 Subject: [PATCH 3/3] fix: service api doc can not gen (#31549) --- api/controllers/service_api/dataset/metadata.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/api/controllers/service_api/dataset/metadata.py b/api/controllers/service_api/dataset/metadata.py index aab25c1af3..b8d9508004 100644 --- a/api/controllers/service_api/dataset/metadata.py +++ b/api/controllers/service_api/dataset/metadata.py @@ -11,7 +11,9 @@ from controllers.service_api.wraps import DatasetApiResource, cloud_edition_bill from fields.dataset_fields import dataset_metadata_fields from services.dataset_service import DatasetService from services.entities.knowledge_entities.knowledge_entities import ( + DocumentMetadataOperation, MetadataArgs, + MetadataDetail, MetadataOperationData, ) from services.metadata_service import MetadataService @@ -22,7 +24,13 @@ class MetadataUpdatePayload(BaseModel): register_schema_model(service_api_ns, MetadataUpdatePayload) -register_schema_models(service_api_ns, MetadataArgs, MetadataOperationData) +register_schema_models( + service_api_ns, + MetadataArgs, + MetadataDetail, + DocumentMetadataOperation, + MetadataOperationData, +) @service_api_ns.route("/datasets//metadata")