-
-
- {{ t('admin.versions.createForm.autoUpdate') }}
-
-
- {{ t('admin.versions.createForm.autoUpdateDesc') }}
-
-
-
+
+ {{ t('admin.versions.createForm.updateMethod') }}
+
+
+
+
+
+
+ {{ t('admin.versions.methods.full') }}
+
+
+ {{ t('admin.versions.methods.hot') }}
+
+
+ {{ t('admin.versions.methods.manual') }}
+
+
+
+
+
+
+
{{ t('admin.versions.createForm.baseVersion') }}
+
+
+
+
+
+
+ {{ t('admin.versions.createForm.noBaseVersion') }}
+
+
+ v{{ ver.version }}
+
+
+
+
+ {{ t('admin.versions.createForm.baseVersionDesc') }}
+
@@ -485,8 +553,8 @@ onMounted(() => {
{{ formData.update_strategy === 'forced' ? t('common.yes') : t('common.no') }}
- {{ t('admin.versions.createForm.previewAutoUpdate') }}
- {{ formData.update_method === 'auto' ? t('common.yes') : t('common.no') }}
+ {{ t('admin.versions.createForm.previewUpdateMethod') }}
+ {{ methodLabel }}
diff --git a/frontend/src/pages/admin/versions/data/schema.ts b/frontend/src/pages/admin/versions/data/schema.ts
index b19eb45..1869e33 100644
--- a/frontend/src/pages/admin/versions/data/schema.ts
+++ b/frontend/src/pages/admin/versions/data/schema.ts
@@ -1,7 +1,8 @@
import { z } from 'zod'
export const updateStrategySchema = z.enum(['optional', 'forced'])
-export const updateMethodSchema = z.enum(['manual', 'auto'])
+export const updateMethodSchema = z.enum(['manual', 'hot', 'full'])
+export const versionStatusSchema = z.enum(['active', 'superseded'])
export const versionSchema = z.object({
id: z.number(),
@@ -14,6 +15,8 @@ export const versionSchema = z.object({
force_update: z.boolean(),
update_strategy: updateStrategySchema,
update_method: updateMethodSchema,
+ status: versionStatusSchema,
+ base_version_id: z.number().nullable(),
changelog: z.string(),
created_at: z.string(),
updated_at: z.string(),
diff --git a/frontend/src/pages/admin/versions/index.vue b/frontend/src/pages/admin/versions/index.vue
index 6f1d610..d42812b 100644
--- a/frontend/src/pages/admin/versions/index.vue
+++ b/frontend/src/pages/admin/versions/index.vue
@@ -31,6 +31,7 @@ const tableRef = ref()
const appFilter = ref