@musnows/scriverse 0.7.3 → 0.7.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/README.en.md +3 -0
  2. package/README.md +3 -0
  3. package/dist/ai-connectivity-test.js +109 -0
  4. package/dist/ai-connectivity-test.js.map +1 -0
  5. package/dist/ai-conversation-export.js +70 -0
  6. package/dist/ai-conversation-export.js.map +1 -0
  7. package/dist/ai-stream-timeout.js +18 -0
  8. package/dist/ai-stream-timeout.js.map +1 -0
  9. package/dist/ai.js +681 -107
  10. package/dist/ai.js.map +1 -1
  11. package/dist/app.js +326 -53
  12. package/dist/app.js.map +1 -1
  13. package/dist/character-extraction.js +133 -0
  14. package/dist/character-extraction.js.map +1 -0
  15. package/dist/cli-core.js +7 -6
  16. package/dist/cli-core.js.map +1 -1
  17. package/dist/database.js +175 -2
  18. package/dist/database.js.map +1 -1
  19. package/dist/epub-export.js +319 -0
  20. package/dist/epub-export.js.map +1 -0
  21. package/dist/hybrid-search.js +8 -0
  22. package/dist/hybrid-search.js.map +1 -1
  23. package/dist/public/ai-connectivity-test.d.ts +7 -0
  24. package/dist/public/ai-connectivity-test.js +82 -0
  25. package/dist/public/ai-request-manager.js +99 -0
  26. package/dist/public/ai-stream-protocol.js +51 -0
  27. package/dist/public/app.js +2567 -265
  28. package/dist/public/chapter-version-diff.d.ts +20 -0
  29. package/dist/public/chapter-version-diff.js +116 -0
  30. package/dist/public/foreshadow-reminder.d.ts +32 -0
  31. package/dist/public/foreshadow-reminder.js +73 -0
  32. package/dist/public/global-replace-refresh.js +60 -0
  33. package/dist/public/index.html +120 -12
  34. package/dist/public/outline-board.d.ts +61 -0
  35. package/dist/public/outline-board.js +137 -0
  36. package/dist/public/page-route.d.ts +1 -0
  37. package/dist/public/page-route.js +8 -0
  38. package/dist/public/reading-preview.d.ts +32 -0
  39. package/dist/public/reading-preview.js +136 -0
  40. package/dist/public/styles.css +485 -4
  41. package/dist/public/upload-progress.d.ts +2 -0
  42. package/dist/public/upload-progress.js +10 -0
  43. package/dist/security.js +5 -2
  44. package/dist/security.js.map +1 -1
  45. package/dist/server-runtime.js +2 -0
  46. package/dist/server-runtime.js.map +1 -1
  47. package/dist/store.js +825 -88
  48. package/dist/store.js.map +1 -1
  49. package/dist/user-auth.js +45 -9
  50. package/dist/user-auth.js.map +1 -1
  51. package/dist/utils.js +3 -0
  52. package/dist/utils.js.map +1 -1
  53. package/dist/version.js +1 -1
  54. package/package.json +2 -1
@@ -0,0 +1,133 @@
1
+ import { createHash } from "node:crypto";
2
+ import { AppError } from "./errors.js";
3
+ import { normalizeCharacterName } from "./store.js";
4
+ export const CHARACTER_EXTRACTION_MAX_CANDIDATES = 500;
5
+ export const CHARACTER_EXTRACTION_MAX_NAME_LENGTH = 200;
6
+ export const CHARACTER_EXTRACTION_MAX_ALIASES = 100;
7
+ export const CHARACTER_EXTRACTION_MAX_IDENTITY_LENGTH = 20_000;
8
+ export const CHARACTER_EXTRACTION_MAX_SPECIES_LENGTH = 200;
9
+ function recordValue(value) {
10
+ return value && typeof value === "object" && !Array.isArray(value)
11
+ ? value
12
+ : null;
13
+ }
14
+ export function normalizeCharacterExtractionText(value) {
15
+ return typeof value === "string" ? value.normalize("NFKC").trim().replace(/\s+/gu, " ") : "";
16
+ }
17
+ export function normalizeCharacterExtractionAliases(name, value) {
18
+ if (!Array.isArray(value))
19
+ return [];
20
+ const primary = normalizeCharacterName(name);
21
+ const aliases = new Map();
22
+ for (const item of value.slice(0, CHARACTER_EXTRACTION_MAX_ALIASES)) {
23
+ const alias = normalizeCharacterExtractionText(item);
24
+ if (!alias || alias.length > CHARACTER_EXTRACTION_MAX_NAME_LENGTH)
25
+ continue;
26
+ const normalized = normalizeCharacterName(alias);
27
+ if (!normalized || normalized === primary || aliases.has(normalized))
28
+ continue;
29
+ aliases.set(normalized, alias);
30
+ }
31
+ return [...aliases.values()];
32
+ }
33
+ export function normalizeCharacterExtractionCandidate(value, index) {
34
+ const candidate = recordValue(value);
35
+ if (!candidate)
36
+ return null;
37
+ const name = normalizeCharacterExtractionText(candidate.name);
38
+ if (!name || name.length > CHARACTER_EXTRACTION_MAX_NAME_LENGTH)
39
+ return null;
40
+ const identity = normalizeCharacterExtractionText(candidate.identity);
41
+ const species = normalizeCharacterExtractionText(candidate.species);
42
+ const evidence = recordValue(candidate.firstEvidence);
43
+ const chapterId = normalizeCharacterExtractionText(evidence?.chapterId);
44
+ const chapterTitle = normalizeCharacterExtractionText(evidence?.chapterTitle);
45
+ const quote = normalizeCharacterExtractionText(evidence?.quote);
46
+ const stableCharacterId = normalizeCharacterExtractionText(candidate.stableCharacterId);
47
+ const candidateId = normalizeCharacterExtractionText(candidate.candidateId) || `candidate-${index + 1}`;
48
+ if (candidateId.length > 100 || !/^[A-Za-z0-9_-]+$/u.test(candidateId))
49
+ return null;
50
+ if (stableCharacterId.length > 200)
51
+ return null;
52
+ return {
53
+ candidateId,
54
+ name,
55
+ aliases: normalizeCharacterExtractionAliases(name, candidate.aliases),
56
+ species: species.length <= CHARACTER_EXTRACTION_MAX_SPECIES_LENGTH ? species : "",
57
+ identity: identity.length <= CHARACTER_EXTRACTION_MAX_IDENTITY_LENGTH ? identity : "",
58
+ firstChapterId: normalizeCharacterExtractionText(candidate.firstChapterId) || null,
59
+ firstEvidence: chapterId && quote && quote.length <= 80
60
+ ? { chapterId, chapterTitle: chapterTitle.slice(0, 300), quote }
61
+ : null,
62
+ stableCharacterId: stableCharacterId || null
63
+ };
64
+ }
65
+ export function parseStoredCharacterExtractionCandidates(value) {
66
+ if (!Array.isArray(value) || value.length > CHARACTER_EXTRACTION_MAX_CANDIDATES) {
67
+ throw new AppError(409, "CHARACTER_EXTRACTION_PREVIEW_INVALID", "角色抽取预览数据无效,请重新运行任务");
68
+ }
69
+ const candidates = value.map((item, index) => normalizeCharacterExtractionCandidate(item, index));
70
+ if (candidates.some((candidate) => candidate === null)) {
71
+ throw new AppError(409, "CHARACTER_EXTRACTION_PREVIEW_INVALID", "角色抽取预览包含无效字段,请重新运行任务");
72
+ }
73
+ const parsed = candidates;
74
+ if (new Set(parsed.map((candidate) => candidate.candidateId)).size !== parsed.length) {
75
+ throw new AppError(409, "CHARACTER_EXTRACTION_PREVIEW_INVALID", "角色抽取预览候选标识重复,请重新运行任务");
76
+ }
77
+ return parsed;
78
+ }
79
+ export function editableCharacterExtractionCandidate(candidate, selection) {
80
+ const name = selection.name === undefined
81
+ ? candidate.name
82
+ : normalizeCharacterExtractionText(selection.name);
83
+ if (!name || name.length > CHARACTER_EXTRACTION_MAX_NAME_LENGTH) {
84
+ throw new AppError(400, "CHARACTER_EXTRACTION_NAME_INVALID", "角色标准名不能为空且不能超过 200 个字符", {
85
+ candidateId: candidate.candidateId
86
+ });
87
+ }
88
+ const aliases = selection.aliases === undefined
89
+ ? candidate.aliases
90
+ : normalizeCharacterExtractionAliases(name, selection.aliases);
91
+ const rawAliases = selection.aliases ?? candidate.aliases;
92
+ const normalizedAliases = rawAliases.map((alias) => normalizeCharacterName(normalizeCharacterExtractionText(alias)));
93
+ if (rawAliases.length > CHARACTER_EXTRACTION_MAX_ALIASES
94
+ || aliases.length !== rawAliases.length
95
+ || normalizedAliases.some((alias) => !alias || alias === normalizeCharacterName(name))
96
+ || new Set(normalizedAliases).size !== normalizedAliases.length) {
97
+ throw new AppError(400, "CHARACTER_EXTRACTION_ALIASES_INVALID", "角色别名不能为空、重复、等同标准名或超过长度限制", {
98
+ candidateId: candidate.candidateId
99
+ });
100
+ }
101
+ const species = selection.species === undefined
102
+ ? candidate.species
103
+ : normalizeCharacterExtractionText(selection.species);
104
+ const identity = selection.attributes?.identity === undefined
105
+ ? candidate.identity
106
+ : normalizeCharacterExtractionText(selection.attributes.identity);
107
+ if (species.length > CHARACTER_EXTRACTION_MAX_SPECIES_LENGTH || identity.length > CHARACTER_EXTRACTION_MAX_IDENTITY_LENGTH) {
108
+ throw new AppError(400, "CHARACTER_EXTRACTION_ATTRIBUTES_INVALID", "角色种族或身份字段超过长度限制", {
109
+ candidateId: candidate.candidateId
110
+ });
111
+ }
112
+ return { name, aliases, species, identity };
113
+ }
114
+ function canonicalValue(value) {
115
+ if (Array.isArray(value))
116
+ return value.map(canonicalValue);
117
+ const record = recordValue(value);
118
+ if (!record)
119
+ return value;
120
+ return Object.fromEntries(Object.keys(record).sort().map((key) => [key, canonicalValue(record[key])]));
121
+ }
122
+ export function characterExtractionHash(value) {
123
+ return createHash("sha256").update(JSON.stringify(canonicalValue(value))).digest("hex");
124
+ }
125
+ export function characterExtractionSelectionFingerprint(selections) {
126
+ return characterExtractionHash([...selections]
127
+ .map((selection) => ({
128
+ ...selection,
129
+ aliases: selection.aliases ? [...selection.aliases] : undefined
130
+ }))
131
+ .sort((left, right) => left.candidateId.localeCompare(right.candidateId)));
132
+ }
133
+ //# sourceMappingURL=character-extraction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"character-extraction.js","sourceRoot":"","sources":["../src/character-extraction.ts"],"names":[],"mappings":"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"}
package/dist/cli-core.js CHANGED
@@ -450,7 +450,7 @@ function helpText() {
450
450
  scriverse work get <workId>
451
451
  scriverse work history <workId>
452
452
  scriverse work restore <workId> --version <number>
453
- scriverse manuscript get <workId> [--format json|markdown|txt|docx] [--output <path>]
453
+ scriverse manuscript get <workId> [--format json|markdown|txt|docx|epub] [--output <path>]
454
454
  scriverse search <workId> --query <text> [--type <type>] [--limit <number>]
455
455
  scriverse audit <workId>
456
456
  scriverse writing progress <workId>
@@ -486,7 +486,7 @@ AI 编辑辅助:
486
486
  }
487
487
  function schemaList() {
488
488
  return {
489
- output: "除 manuscript 的 markdown/txt/docx 外,所有成功结果都输出 JSON;错误输出到 stderr 并返回非零状态码。",
489
+ output: "除 manuscript 的 markdown/txt/docx/epub 外,所有成功结果都输出 JSON;错误输出到 stderr 并返回非零状态码。",
490
490
  input: {
491
491
  json: "create/update 使用 --input file.json 或 --input - 从标准输入读取 JSON 对象",
492
492
  longText: "使用可重复的 --field-file field=path 注入长文本字段",
@@ -715,15 +715,16 @@ async function execute(parsed, dependencies) {
715
715
  const workId = requiredPosition(parsed.positionals, 2, "workId");
716
716
  assertPositionCount(parsed.positionals, 3);
717
717
  const format = option(parsed, "format") ?? "json";
718
- if (!["json", "markdown", "txt", "docx"].includes(format))
719
- throw new CliError("CLI_FORMAT_INVALID", "format 必须是 json、markdown、txt 或 docx");
718
+ if (!["json", "markdown", "txt", "docx", "epub"].includes(format))
719
+ throw new CliError("CLI_FORMAT_INVALID", "format 必须是 json、markdown、txt、docxepub");
720
720
  if (format === "json") {
721
721
  if (option(parsed, "output"))
722
722
  throw new CliError("CLI_OUTPUT_UNSUPPORTED", "JSON 格式直接输出到标准输出,不支持 --output");
723
723
  emitJson(dependencies.stdout, await apiRequest(dependencies.fetchImpl, config, `/api/works/${encoded(workId)}`), compact);
724
724
  }
725
- else if (format === "markdown" || format === "docx") {
726
- const outputPath = option(parsed, "output") ?? (format === "docx" ? `novel-${workId}.docx` : `novel-${workId}.zip`);
725
+ else if (format === "markdown" || format === "docx" || format === "epub") {
726
+ const defaultOutput = format === "docx" ? `novel-${workId}.docx` : format === "epub" ? `novel-${workId}.epub` : `novel-${workId}.zip`;
727
+ const outputPath = option(parsed, "output") ?? defaultOutput;
727
728
  emitJson(dependencies.stdout, {
728
729
  format,
729
730
  ...(await downloadToFile(dependencies.fetchImpl, config, `/api/works/${encoded(workId)}/export?format=${format}`, outputPath, dependencies.cwd))
@@ -1 +1 @@
1
- {"version":3,"file":"cli-core.js","sourceRoot":"","sources":["../src/cli-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-core.js","sourceRoot":"","sources":["../src/cli-core.ts"],"names":[],"mappings":"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"}
package/dist/database.js CHANGED
@@ -4,9 +4,9 @@ import { DatabaseSync } from "node:sqlite";
4
4
  import { logger, sanitizeError } from "./logger.js";
5
5
  import { documentShortSearchTerms, normalizeDocumentSearchText, splitDocumentParagraphs } from "./utils.js";
6
6
  export const PLATFORM_AI_WORK_ID = "__scriverse_platform_ai__";
7
- // 版本 81 用于列表查询索引;版本 82 由 Store 写入实体版本基线标记;版本 83 创建协作状态表;版本 84 创建备份加密表;版本 85 持久化协作变更动作;版本 86 扩展直接图片上传格式。
7
+ // 版本 81 用于列表查询索引;版本 82 由 Store 写入实体版本基线标记;版本 83 创建协作状态表;版本 84 创建备份加密表;版本 85 持久化协作变更动作;版本 86 扩展直接图片上传格式;版本 87 增加作品与分卷回收站;版本 88 持久化 AI 对话分支幂等键;版本 89 持久化 AI 对话流请求锁与幂等状态;版本 90 持久化 AI 连通性测试冷却状态。
8
8
  export const ENTITY_VERSION_BASELINE_MIGRATION_VERSION = 82;
9
- export const DATABASE_SCHEMA_VERSION = 86;
9
+ export const DATABASE_SCHEMA_VERSION = 90;
10
10
  export const SQLITE_IOERR_SHMSIZE = 4874;
11
11
  export function isSqliteDiskIoError(error) {
12
12
  if (!(error instanceof Error))
@@ -185,6 +185,7 @@ export class Database {
185
185
  tags_json TEXT NOT NULL DEFAULT '[]',
186
186
  is_internal INTEGER NOT NULL DEFAULT 0,
187
187
  version_no INTEGER NOT NULL DEFAULT 1,
188
+ deleted_at TEXT,
188
189
  created_at TEXT NOT NULL,
189
190
  updated_at TEXT NOT NULL
190
191
  );
@@ -211,6 +212,7 @@ export class Database {
211
212
  keywords_json TEXT NOT NULL DEFAULT '[]',
212
213
  sort_order INTEGER NOT NULL,
213
214
  version_no INTEGER NOT NULL DEFAULT 1,
215
+ deleted_at TEXT,
214
216
  created_at TEXT NOT NULL,
215
217
  updated_at TEXT NOT NULL
216
218
  );
@@ -228,6 +230,7 @@ export class Database {
228
230
  analysis_status TEXT NOT NULL DEFAULT 'pending',
229
231
  excluded_from_analysis INTEGER NOT NULL DEFAULT 0,
230
232
  deleted_at TEXT,
233
+ deleted_via_volume_id TEXT,
231
234
  created_at TEXT NOT NULL,
232
235
  updated_at TEXT NOT NULL
233
236
  );
@@ -479,6 +482,26 @@ export class Database {
479
482
  UNIQUE(provider_id, model_id)
480
483
  );
481
484
 
485
+ CREATE TABLE IF NOT EXISTS ai_connectivity_test_states (
486
+ object_type TEXT NOT NULL CHECK(object_type IN ('provider', 'model')),
487
+ object_id TEXT NOT NULL,
488
+ config_fingerprint TEXT NOT NULL CHECK(length(config_fingerprint) = 64),
489
+ state TEXT NOT NULL CHECK(state IN ('in_progress', 'success', 'failure')),
490
+ attempt_id TEXT NOT NULL,
491
+ retry_at_ms INTEGER NOT NULL CHECK(retry_at_ms >= 0),
492
+ updated_at TEXT NOT NULL,
493
+ PRIMARY KEY(object_type, object_id)
494
+ );
495
+ CREATE INDEX IF NOT EXISTS idx_ai_connectivity_test_states_retry_at ON ai_connectivity_test_states(retry_at_ms);
496
+ CREATE TRIGGER IF NOT EXISTS ai_connectivity_test_states_provider_delete
497
+ AFTER DELETE ON providers BEGIN
498
+ DELETE FROM ai_connectivity_test_states WHERE object_type = 'provider' AND object_id = OLD.id;
499
+ END;
500
+ CREATE TRIGGER IF NOT EXISTS ai_connectivity_test_states_model_delete
501
+ AFTER DELETE ON models BEGIN
502
+ DELETE FROM ai_connectivity_test_states WHERE object_type = 'model' AND object_id = OLD.id;
503
+ END;
504
+
482
505
  CREATE TABLE IF NOT EXISTS task_defaults (
483
506
  work_id TEXT NOT NULL REFERENCES works(id) ON DELETE CASCADE,
484
507
  task_type TEXT NOT NULL,
@@ -592,6 +615,37 @@ export class Database {
592
615
  created_at TEXT NOT NULL
593
616
  );
594
617
 
618
+ CREATE TABLE IF NOT EXISTS ai_conversation_stream_requests (
619
+ id TEXT PRIMARY KEY,
620
+ work_id TEXT NOT NULL REFERENCES works(id) ON DELETE CASCADE,
621
+ conversation_id TEXT NOT NULL REFERENCES ai_conversations(id) ON DELETE CASCADE,
622
+ actor_scope TEXT NOT NULL CHECK(length(actor_scope) BETWEEN 1 AND 200),
623
+ idempotency_key TEXT NOT NULL CHECK(length(idempotency_key) BETWEEN 16 AND 128),
624
+ request_hash TEXT NOT NULL CHECK(length(request_hash) = 64),
625
+ status TEXT NOT NULL CHECK(status IN ('in_progress', 'completed', 'cancelled', 'failed', 'timed_out', 'abandoned')),
626
+ terminal_reason TEXT,
627
+ user_message_id TEXT REFERENCES ai_conversation_messages(id) ON DELETE SET NULL,
628
+ assistant_message_id TEXT REFERENCES ai_conversation_messages(id) ON DELETE SET NULL,
629
+ lease_expires_at TEXT,
630
+ created_at TEXT NOT NULL,
631
+ updated_at TEXT NOT NULL,
632
+ completed_at TEXT,
633
+ UNIQUE(actor_scope, work_id, idempotency_key),
634
+ CHECK(
635
+ (status = 'in_progress' AND lease_expires_at IS NOT NULL AND completed_at IS NULL)
636
+ OR (status <> 'in_progress' AND lease_expires_at IS NULL AND completed_at IS NOT NULL)
637
+ )
638
+ );
639
+
640
+ CREATE TABLE IF NOT EXISTS ai_conversation_forks (
641
+ source_conversation_id TEXT NOT NULL REFERENCES ai_conversations(id) ON DELETE CASCADE,
642
+ source_message_id TEXT NOT NULL REFERENCES ai_conversation_messages(id) ON DELETE CASCADE,
643
+ request_id TEXT NOT NULL CHECK(length(request_id) BETWEEN 1 AND 200),
644
+ conversation_id TEXT NOT NULL UNIQUE REFERENCES ai_conversations(id) ON DELETE CASCADE,
645
+ created_at TEXT NOT NULL,
646
+ PRIMARY KEY(source_conversation_id, request_id)
647
+ );
648
+
595
649
  CREATE TABLE IF NOT EXISTS analysis_tasks (
596
650
  id TEXT PRIMARY KEY,
597
651
  work_id TEXT NOT NULL REFERENCES works(id) ON DELETE CASCADE,
@@ -740,6 +794,11 @@ export class Database {
740
794
  CREATE INDEX IF NOT EXISTS idx_ai_suggestions_work ON ai_suggestions(work_id, status, created_at DESC);
741
795
  CREATE INDEX IF NOT EXISTS idx_ai_conversations_work ON ai_conversations(work_id, updated_at DESC);
742
796
  CREATE INDEX IF NOT EXISTS idx_ai_conversation_messages ON ai_conversation_messages(conversation_id, created_at);
797
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_ai_conversation_stream_requests_active
798
+ ON ai_conversation_stream_requests(conversation_id) WHERE status = 'in_progress';
799
+ CREATE INDEX IF NOT EXISTS idx_ai_conversation_stream_requests_lease
800
+ ON ai_conversation_stream_requests(status, lease_expires_at);
801
+ CREATE INDEX IF NOT EXISTS idx_ai_conversation_forks_message ON ai_conversation_forks(source_message_id);
743
802
  CREATE INDEX IF NOT EXISTS idx_audit_logs_work_created ON audit_logs(work_id, created_at DESC);
744
803
  CREATE UNIQUE INDEX IF NOT EXISTS idx_character_names_primary ON character_names(character_id) WHERE kind = 'primary';
745
804
  CREATE INDEX IF NOT EXISTS idx_character_names_character ON character_names(character_id, sort_order);
@@ -3334,6 +3393,120 @@ export class Database {
3334
3393
  this.run("INSERT INTO schema_migrations (version, applied_at) VALUES (86, ?)", new Date().toISOString());
3335
3394
  });
3336
3395
  }
3396
+ if (!applied.has(87)) {
3397
+ this.transaction(() => {
3398
+ const workColumns = new Set(this.all("PRAGMA table_info(works)").map((row) => String(row.name)));
3399
+ if (!workColumns.has("deleted_at"))
3400
+ this.run("ALTER TABLE works ADD COLUMN deleted_at TEXT");
3401
+ const volumeColumns = new Set(this.all("PRAGMA table_info(volumes)").map((row) => String(row.name)));
3402
+ if (!volumeColumns.has("deleted_at"))
3403
+ this.run("ALTER TABLE volumes ADD COLUMN deleted_at TEXT");
3404
+ const chapterColumns = new Set(this.all("PRAGMA table_info(chapters)").map((row) => String(row.name)));
3405
+ if (!chapterColumns.has("deleted_via_volume_id"))
3406
+ this.run("ALTER TABLE chapters ADD COLUMN deleted_via_volume_id TEXT");
3407
+ this.run("CREATE INDEX IF NOT EXISTS idx_works_recycle_bin ON works(deleted_at, owner_user_id)");
3408
+ this.run("CREATE INDEX IF NOT EXISTS idx_volumes_active_work ON volumes(work_id, deleted_at, sort_order)");
3409
+ this.run("CREATE INDEX IF NOT EXISTS idx_volumes_recycle_bin ON volumes(work_id, deleted_at DESC)");
3410
+ this.run("CREATE INDEX IF NOT EXISTS idx_chapters_deleted_via_volume ON chapters(deleted_via_volume_id, deleted_at)");
3411
+ this.run("INSERT INTO schema_migrations (version, applied_at) VALUES (87, ?)", new Date().toISOString());
3412
+ });
3413
+ const integrity = this.all("PRAGMA integrity_check");
3414
+ if (integrity.some((row) => row.integrity_check !== "ok")) {
3415
+ throw new Error(`数据库完整性检查失败:${integrity.map((row) => row.integrity_check).join(";")}`);
3416
+ }
3417
+ const foreignKeys = this.all("PRAGMA foreign_key_check");
3418
+ if (foreignKeys.length > 0)
3419
+ throw new Error(`数据库外键检查失败:发现 ${foreignKeys.length} 条异常记录`);
3420
+ }
3421
+ if (!applied.has(88)) {
3422
+ this.transaction(() => {
3423
+ this.run(`CREATE TABLE IF NOT EXISTS ai_conversation_forks (
3424
+ source_conversation_id TEXT NOT NULL REFERENCES ai_conversations(id) ON DELETE CASCADE,
3425
+ source_message_id TEXT NOT NULL REFERENCES ai_conversation_messages(id) ON DELETE CASCADE,
3426
+ request_id TEXT NOT NULL CHECK(length(request_id) BETWEEN 1 AND 200),
3427
+ conversation_id TEXT NOT NULL UNIQUE REFERENCES ai_conversations(id) ON DELETE CASCADE,
3428
+ created_at TEXT NOT NULL,
3429
+ PRIMARY KEY(source_conversation_id, request_id)
3430
+ )`);
3431
+ this.run("CREATE INDEX IF NOT EXISTS idx_ai_conversation_forks_message ON ai_conversation_forks(source_message_id)");
3432
+ const integrity = this.all("PRAGMA integrity_check");
3433
+ if (integrity.some((row) => row.integrity_check !== "ok")) {
3434
+ throw new Error(`数据库完整性检查失败:${integrity.map((row) => row.integrity_check).join(";")}`);
3435
+ }
3436
+ const foreignKeys = this.all("PRAGMA foreign_key_check");
3437
+ if (foreignKeys.length > 0)
3438
+ throw new Error(`数据库外键检查失败:发现 ${foreignKeys.length} 条异常记录`);
3439
+ this.run("INSERT INTO schema_migrations (version, applied_at) VALUES (88, ?)", new Date().toISOString());
3440
+ });
3441
+ }
3442
+ if (!applied.has(89)) {
3443
+ this.transaction(() => {
3444
+ this.run(`CREATE TABLE IF NOT EXISTS ai_conversation_stream_requests (
3445
+ id TEXT PRIMARY KEY,
3446
+ work_id TEXT NOT NULL REFERENCES works(id) ON DELETE CASCADE,
3447
+ conversation_id TEXT NOT NULL REFERENCES ai_conversations(id) ON DELETE CASCADE,
3448
+ actor_scope TEXT NOT NULL CHECK(length(actor_scope) BETWEEN 1 AND 200),
3449
+ idempotency_key TEXT NOT NULL CHECK(length(idempotency_key) BETWEEN 16 AND 128),
3450
+ request_hash TEXT NOT NULL CHECK(length(request_hash) = 64),
3451
+ status TEXT NOT NULL CHECK(status IN ('in_progress', 'completed', 'cancelled', 'failed', 'timed_out', 'abandoned')),
3452
+ terminal_reason TEXT,
3453
+ user_message_id TEXT REFERENCES ai_conversation_messages(id) ON DELETE SET NULL,
3454
+ assistant_message_id TEXT REFERENCES ai_conversation_messages(id) ON DELETE SET NULL,
3455
+ lease_expires_at TEXT,
3456
+ created_at TEXT NOT NULL,
3457
+ updated_at TEXT NOT NULL,
3458
+ completed_at TEXT,
3459
+ UNIQUE(actor_scope, work_id, idempotency_key),
3460
+ CHECK(
3461
+ (status = 'in_progress' AND lease_expires_at IS NOT NULL AND completed_at IS NULL)
3462
+ OR (status <> 'in_progress' AND lease_expires_at IS NULL AND completed_at IS NOT NULL)
3463
+ )
3464
+ )`);
3465
+ this.run(`CREATE UNIQUE INDEX IF NOT EXISTS idx_ai_conversation_stream_requests_active
3466
+ ON ai_conversation_stream_requests(conversation_id) WHERE status = 'in_progress'`);
3467
+ this.run(`CREATE INDEX IF NOT EXISTS idx_ai_conversation_stream_requests_lease
3468
+ ON ai_conversation_stream_requests(status, lease_expires_at)`);
3469
+ const integrity = this.all("PRAGMA integrity_check");
3470
+ if (integrity.some((row) => row.integrity_check !== "ok")) {
3471
+ throw new Error(`数据库完整性检查失败:${integrity.map((row) => row.integrity_check).join(";")}`);
3472
+ }
3473
+ const foreignKeys = this.all("PRAGMA foreign_key_check");
3474
+ if (foreignKeys.length > 0)
3475
+ throw new Error(`数据库外键检查失败:发现 ${foreignKeys.length} 条异常记录`);
3476
+ this.run("INSERT INTO schema_migrations (version, applied_at) VALUES (89, ?)", new Date().toISOString());
3477
+ });
3478
+ }
3479
+ if (!applied.has(90)) {
3480
+ this.transaction(() => {
3481
+ this.run(`CREATE TABLE IF NOT EXISTS ai_connectivity_test_states (
3482
+ object_type TEXT NOT NULL CHECK(object_type IN ('provider', 'model')),
3483
+ object_id TEXT NOT NULL,
3484
+ config_fingerprint TEXT NOT NULL CHECK(length(config_fingerprint) = 64),
3485
+ state TEXT NOT NULL CHECK(state IN ('in_progress', 'success', 'failure')),
3486
+ attempt_id TEXT NOT NULL,
3487
+ retry_at_ms INTEGER NOT NULL CHECK(retry_at_ms >= 0),
3488
+ updated_at TEXT NOT NULL,
3489
+ PRIMARY KEY(object_type, object_id)
3490
+ )`);
3491
+ this.run("CREATE INDEX IF NOT EXISTS idx_ai_connectivity_test_states_retry_at ON ai_connectivity_test_states(retry_at_ms)");
3492
+ this.run(`CREATE TRIGGER IF NOT EXISTS ai_connectivity_test_states_provider_delete
3493
+ AFTER DELETE ON providers BEGIN
3494
+ DELETE FROM ai_connectivity_test_states WHERE object_type = 'provider' AND object_id = OLD.id;
3495
+ END`);
3496
+ this.run(`CREATE TRIGGER IF NOT EXISTS ai_connectivity_test_states_model_delete
3497
+ AFTER DELETE ON models BEGIN
3498
+ DELETE FROM ai_connectivity_test_states WHERE object_type = 'model' AND object_id = OLD.id;
3499
+ END`);
3500
+ const integrity = this.all("PRAGMA integrity_check");
3501
+ if (integrity.some((row) => row.integrity_check !== "ok")) {
3502
+ throw new Error(`数据库完整性检查失败:${integrity.map((row) => row.integrity_check).join(";")}`);
3503
+ }
3504
+ const foreignKeys = this.all("PRAGMA foreign_key_check");
3505
+ if (foreignKeys.length > 0)
3506
+ throw new Error(`数据库外键检查失败:发现 ${foreignKeys.length} 条异常记录`);
3507
+ this.run("INSERT INTO schema_migrations (version, applied_at) VALUES (90, ?)", new Date().toISOString());
3508
+ });
3509
+ }
3337
3510
  }
3338
3511
  normalizeCharacterName(value) {
3339
3512
  return value.normalize("NFKC").trim().replace(/\s+/gu, " ").toLocaleLowerCase("zh-CN");