test: 登记 subtitle_write 表、来源枚举与 subtitles 模块

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-10-03 01:18:34 +08:00
1 parent ef29bd62ce
commit 4b11c2466e
4 files changed
+25

No files matched your search

+18
View File
@@ -120,5 +120,23 @@ export const SubtitleApplyResult = z.object({
});
export type SubtitleApplyResult = z.infer<typeof SubtitleApplyResult>;
/** 表 subtitle_write 的行(0064) */
export const SubtitleWriteRow = z.object({
id: Id,
mediaEntityId: Id,
videoLocationId: Id.nullable(),
subtitleAssetId: Id.nullable(),
libraryRootId: Id,
relativePath: z.string(),
language: z.string(),
source: SubtitleSource,
sourceName: z.string(),
sourceRef: z.string().nullable(),
backupPath: z.string().nullable(),
actor: z.string().nullable(),
createdAt: Timestamp,
undoneAt: Timestamp.nullable(),
});
export const SubtitleWritesQuery = z.object({ entityId: Id });
export const SubtitleWritesResponse = z.object({ items: z.array(SubtitleWriteView) });
+2
View File
@@ -77,6 +77,7 @@ const ROWS: Record<string, { row: Obj; dbOnly?: string[]; apiOnly?: string[] }>
ReconcileRun: { row: C.ReconcileRun },
Secret: { row: C.Secret, dbOnly: ["ciphertext", "nonce", "authTag"] },
ScrapeRecord: { row: C.ScrapeRecordRow },
SubtitleWrite: { row: C.SubtitleWriteRow },
ServerMapping: { row: C.ServerMapping },
Settings: { row: C.SettingEntry },
// deleted_at:软删除只在服务端过滤(已删站点不出 API);capabilities 由类型 ∩ 站点定义算出(IA-2)
@@ -246,6 +247,7 @@ const ENUMS: Record<string, z.ZodEnum> = {
ScheduledJobRunStatus: C.ScheduleRunStatus,
ScrapeRecordStatus: C.ScrapeStatus,
ScrapeRecordTrigger: C.ScrapeTrigger,
SubtitleWriteSource: C.SubtitleSource,
ScrapeRecordMode: C.ScrapeMode,
PiUpstreamAuthKind: C.PiAuthKind,
PiUpstreamStatus: C.PiUpstreamStatus,
+4
View File
@@ -126,6 +126,8 @@ const EXPECTED_TABLES = [
"site_request_count",
// SCR-2 刮削记录(0058,替代 0057 media_scrape)
"scrape_record",
// 补字幕写入历史(0064)
"subtitle_write",
].sort();
/** 不走 entityTable() 的表:追加型/引擎自有表,没有 uuid id + created_at/updated_at 三件套 */
@@ -146,6 +148,8 @@ const NON_ENTITY_TABLES = [
// 进程心跳:instance_id 主键 / 只追加的采样
"process_heartbeat",
"process_heartbeat_sample",
// 补字幕写入历史:只有 created_at / undone_at
"subtitle_write",
// 单行配置(id = 1)
"mcp_server_config",
// 一次性凭据:只记创建 / 用掉的时间