@whispering233/ai-editor-db 0.0.21 → 0.0.29

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 (73) hide show
  1. package/dist/connection.js +2 -2
  2. package/dist/connection.js.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/migrations/002_event_timeline.js +1 -1
  6. package/dist/migrations/002_event_timeline.js.map +1 -1
  7. package/dist/migrations/003_timepoint.js +8 -8
  8. package/dist/migrations/003_timepoint.js.map +1 -1
  9. package/dist/migrations/004_setting_tags.js +2 -2
  10. package/dist/migrations/004_setting_tags.js.map +1 -1
  11. package/dist/migrations/005_reference.js +2 -2
  12. package/dist/migrations/005_reference.js.map +1 -1
  13. package/dist/migrations/index.d.ts +2 -2
  14. package/dist/migrations/index.d.ts.map +1 -1
  15. package/dist/migrations/index.js +7 -7
  16. package/dist/migrations/index.js.map +1 -1
  17. package/dist/queries/chat.d.ts +20 -20
  18. package/dist/queries/chat.d.ts.map +1 -1
  19. package/dist/queries/chat.js +105 -59
  20. package/dist/queries/chat.js.map +1 -1
  21. package/dist/queries/compute-state.d.ts +9 -9
  22. package/dist/queries/compute-state.d.ts.map +1 -1
  23. package/dist/queries/compute-state.js +22 -28
  24. package/dist/queries/compute-state.js.map +1 -1
  25. package/dist/queries/delta.d.ts +21 -21
  26. package/dist/queries/delta.d.ts.map +1 -1
  27. package/dist/queries/delta.js +110 -63
  28. package/dist/queries/delta.js.map +1 -1
  29. package/dist/queries/entity.d.ts +50 -46
  30. package/dist/queries/entity.d.ts.map +1 -1
  31. package/dist/queries/entity.js +226 -137
  32. package/dist/queries/entity.js.map +1 -1
  33. package/dist/queries/migration.d.ts +31 -31
  34. package/dist/queries/migration.d.ts.map +1 -1
  35. package/dist/queries/migration.js +43 -44
  36. package/dist/queries/migration.js.map +1 -1
  37. package/dist/queries/outline-ops.d.ts +22 -22
  38. package/dist/queries/outline-ops.d.ts.map +1 -1
  39. package/dist/queries/outline-ops.js +35 -42
  40. package/dist/queries/outline-ops.js.map +1 -1
  41. package/dist/queries/relation.d.ts +18 -18
  42. package/dist/queries/relation.d.ts.map +1 -1
  43. package/dist/queries/relation.js +115 -84
  44. package/dist/queries/relation.js.map +1 -1
  45. package/dist/queries/trash.d.ts +10 -10
  46. package/dist/queries/trash.d.ts.map +1 -1
  47. package/dist/queries/trash.js +75 -48
  48. package/dist/queries/trash.js.map +1 -1
  49. package/dist/query-db.d.ts +5 -0
  50. package/dist/query-db.d.ts.map +1 -0
  51. package/dist/query-db.js +22 -0
  52. package/dist/query-db.js.map +1 -0
  53. package/dist/schema.d.ts +8 -20
  54. package/dist/schema.d.ts.map +1 -1
  55. package/dist/schema.js +13 -85
  56. package/dist/schema.js.map +1 -1
  57. package/dist/storage/atomic.d.ts +8 -8
  58. package/dist/storage/atomic.d.ts.map +1 -1
  59. package/dist/storage/atomic.js +10 -11
  60. package/dist/storage/atomic.js.map +1 -1
  61. package/dist/storage/outline.d.ts +14 -14
  62. package/dist/storage/outline.d.ts.map +1 -1
  63. package/dist/storage/outline.js +17 -18
  64. package/dist/storage/outline.js.map +1 -1
  65. package/dist/storage/project.d.ts +11 -11
  66. package/dist/storage/project.d.ts.map +1 -1
  67. package/dist/storage/project.js +17 -18
  68. package/dist/storage/project.js.map +1 -1
  69. package/dist/tables.d.ts +718 -0
  70. package/dist/tables.d.ts.map +1 -0
  71. package/dist/tables.js +141 -0
  72. package/dist/tables.js.map +1 -0
  73. package/package.json +3 -2
@@ -7,17 +7,17 @@ export declare class OutlineError extends Error {
7
7
  constructor(code: OutlineErrorCode, message: string);
8
8
  }
9
9
  /**
10
- * 严格三层约束校验(决策 19):childType 能否挂 parentType 下。
10
+ * 严格三层约束校验:childType 能否挂 parentType 下。
11
11
  * volume → root;chapter → volume 或 root;scene → 必须 chapter。
12
12
  */
13
13
  export declare function assertCanHold(parentType: "root" | OutlineNodeType, childType: OutlineNodeType): void;
14
14
  /**
15
- * 创建大纲节点(POST /api/v1/outline,endpoints.md 第 550-577 行):
15
+ * 创建大纲节点(POST /api/v1/outline,):
16
16
  * 读树 → 校验父存在 + 三层约束 → 生成 id(shared generateOutlineNodeId:vol-/ch-/sc- 前缀)
17
- * → 插入父 children 尾部 → **父节点 updated_at 统一更新**(决策 19)→ 原子写回。
17
+ * → 插入父 children 尾部 → **父节点 updated_at 统一更新**→ 原子写回。
18
18
  *
19
19
  * @param updatedAt ISO 8601 由调用方(应用层)传入,模块不生成时间
20
- * @param data 节点结构化信息(决策 23,可选;校验由路由层按层级 schema 执行,本模块仅透传存储)
20
+ * @param data 节点结构化信息(可选;校验由路由层按层级 schema 执行,本模块仅透传存储)
21
21
  * @returns 新建节点(含 id/type/title/updated_at/data)
22
22
  * @throws OutlineError PARENT_NOT_FOUND(父不存在)/ INVALID_HIERARCHY(三层违反)
23
23
  */
@@ -30,9 +30,9 @@ export declare function createOutlineNode(dir: string, input: {
30
30
  updatedAt: string;
31
31
  }): OutlineFileNode;
32
32
  /**
33
- * 更新大纲节点信息(PUT /api/v1/outline/:nodeId,endpoints.md 第 579-597 行):
34
- * title/summary 更新 + 节点 updated_at 统一更新(决策 19),原子写回;
35
- * data **浅合并**(决策 23:未传字段保留,与实体 updateEntity 的 data 浅合并同语义)。
33
+ * 更新大纲节点信息(PUT /api/v1/outline/:nodeId,):
34
+ * title/summary 更新 + 节点 updated_at 统一更新,原子写回;
35
+ * data **浅合并**(未传字段保留,与实体 updateEntity 的 data 浅合并同语义)。
36
36
  * @throws OutlineError NODE_NOT_FOUND
37
37
  */
38
38
  export declare function updateOutlineNodeInfo(dir: string, nodeId: string, patch: {
@@ -41,12 +41,12 @@ export declare function updateOutlineNodeInfo(dir: string, nodeId: string, patch
41
41
  data?: Record<string, unknown>;
42
42
  }, updatedAt: string): void;
43
43
  /**
44
- * 移动大纲节点(PUT /api/v1/outline/:nodeId/move,endpoints.md 第 599-621 行):
44
+ * 移动大纲节点(PUT /api/v1/outline/:nodeId/move,):
45
45
  * 从原父移除 → 插入新父指定 order(0-based;同父重排 = 移除后插入)→
46
- * 三层约束校验(同 create)→ 新旧父 updated_at 统一更新(决策 19)→ 原子写回。
46
+ * 三层约束校验(同 create)→ 新旧父 updated_at 统一更新→ 原子写回。
47
47
  * order 越界时 clamp 到有效范围(拖拽场景边界值,宽松处理)。
48
48
  *
49
- * @returns { previousParentId, newParentId }(endpoints.md 语义;root 用 "root")
49
+ * @returns { previousParentId, newParentId }( 语义;root 用 "root")
50
50
  * @throws OutlineError NODE_NOT_FOUND / PARENT_NOT_FOUND / INVALID_HIERARCHY
51
51
  */
52
52
  export declare function moveOutlineNode(dir: string, nodeId: string, input: {
@@ -57,21 +57,21 @@ export declare function moveOutlineNode(dir: string, nodeId: string, input: {
57
57
  newParentId: string;
58
58
  };
59
59
  /**
60
- * 软删大纲节点(DELETE /api/v1/outline/:nodeId,endpoints.md 第 623-640 行,决策 12):
60
+ * 软删大纲节点(DELETE /api/v1/outline/:nodeId,):
61
61
  * 标记 deleted + deleted_at,**递归软删整棵子树**(本体保留可还原)。
62
62
  * 已软删节点再次软删:幂等重标(不报错)。
63
63
  *
64
64
  * @returns { children } 级联软删的子节点数(不含自身)
65
- * —— relations/deltas 的级联软删由上层(S2.2)组合 relation/delta 模块处理(本模块边界)
65
+ * —— relations/deltas 的级联软删由上层(S2.2)组合 relation/delta 模块处理(本模块边界)
66
66
  * @throws OutlineError NODE_NOT_FOUND
67
67
  */
68
68
  export declare function deleteOutlineNode(dir: string, nodeId: string, updatedAt: string): {
69
69
  children: number;
70
70
  };
71
71
  /**
72
- * 还原软删大纲节点(POST /api/v1/trash/outline/:nodeId/restore,endpoints.md 第 694-711 行):
73
- * 清除 deleted/deleted_at → **递归还原子树**(仍软删的子孙一并还原,决策 12 修订)→
74
- * **祖先链校验**:存在软删祖先 → 抛 OUTLINE_ANCESTOR_DELETED(409 语义,决策 12 修订,
72
+ * 还原软删大纲节点(POST /api/v1/trash/outline/:nodeId/restore,):
73
+ * 清除 deleted/deleted_at → **递归还原子树**(仍软删的子孙一并还原)→
74
+ * **祖先链校验**:存在软删祖先 → 抛 OUTLINE_ANCESTOR_DELETED(409 语义,,
75
75
  * 杜绝「可见节点挂在不可见父」的畸形树——校验在还原前执行,祖先必须已还原)。
76
76
  *
77
77
  * @returns { children } 级联还原的子节点数
@@ -81,7 +81,7 @@ export declare function restoreOutlineNode(dir: string, nodeId: string, updatedA
81
81
  children: number;
82
82
  };
83
83
  /**
84
- * 物理删除大纲节点(DELETE /api/v1/trash/outline/:nodeId,endpoints.md 第 726-736 行):
84
+ * 物理删除大纲节点(DELETE /api/v1/trash/outline/:nodeId,):
85
85
  * 从树中移除整棵子树(递归,文件内物理清除,不可恢复)。
86
86
  * 边界:不涉及 data.db(relations/deltas 的物理清除由上层组合);
87
87
  * 不更新父节点 updated_at——purge 属回收站清理,节点已消失,
@@ -89,7 +89,7 @@ export declare function restoreOutlineNode(dir: string, nodeId: string, updatedA
89
89
  * @throws OutlineError NODE_NOT_FOUND
90
90
  */
91
91
  export declare function purgeOutlineNode(dir: string, nodeId: string): void;
92
- /** 回收站节点条目(GET /api/v1/trash nodes 项,endpoints.md 第 668-674 行) */
92
+ /** 回收站节点条目(GET /api/v1/trash nodes 项,) */
93
93
  export interface DeletedOutlineNodeInfo {
94
94
  id: string;
95
95
  type: Exclude<OutlineNodeType, "root">;
@@ -98,23 +98,23 @@ export interface DeletedOutlineNodeInfo {
98
98
  }
99
99
  /**
100
100
  * 回收站列表(大纲侧):收集整棵树中 deleted 标记的节点(含子树中的软删节点),
101
- * 按 deleted_at 倒序(回收站排序约定,schema.md:跨 SQLite 与 outline.json 统一 ISO 格式)。
101
+ * 按 deleted_at 倒序(回收站排序约定,:跨 SQLite 与 outline.json 统一 ISO 格式)。
102
102
  */
103
103
  export declare function listDeletedNodes(dir: string): DeletedOutlineNodeInfo[];
104
- /** 章节序条目(决策 21):全局章序号(跨卷连续) */
104
+ /** 章节序条目:全局章序号(跨卷连续) */
105
105
  export interface ChapterOrderInfo {
106
106
  chapterId: string;
107
107
  /** 全局章序号,从 1 起(root → 卷 → 章先序遍历,跨卷连续累计) */
108
108
  chapterNumber: number;
109
109
  }
110
110
  /**
111
- * 章节序推导(决策 21):按大纲树先序遍历编号——root → 卷 → 章;
112
- * 全局章序号**跨卷连续**;直接挂 root 的 chapter 按兄弟顺序编号(决策 19 允许);
111
+ * 章节序推导:按大纲树先序遍历编号——root → 卷 → 章;
112
+ * 全局章序号**跨卷连续**;直接挂 root 的 chapter 按兄弟顺序编号( 允许);
113
113
  * scene 归入所属章,不单独编号(见 getChapterNumber)。
114
114
  */
115
115
  export declare function deriveChapterOrder(dir: string): ChapterOrderInfo[];
116
116
  /**
117
- * 节点所属章序号(决策 21):
117
+ * 节点所属章序号:
118
118
  * - scene → 所属 chapter 的全局序号(严格三层下 scene 的父必为 chapter)
119
119
  * - chapter → 自身序号
120
120
  * - volume / root / 节点不存在 → null(卷无章节号;不存在防御性返回 null 供上层展示)
@@ -1 +1 @@
1
- {"version":3,"file":"outline-ops.d.ts","sourceRoot":"","sources":["../../src/queries/outline-ops.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outline-ops.d.ts","sourceRoot":"","sources":["../../src/queries/outline-ops.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,5 @@
1
1
  // @whispering233/ai-editor-db 大纲树操作(S2.1):创建/更新/移动/软删/还原/物理删除/回收站列表/章节序
2
2
  //
3
- // 单一事实来源:
4
- // - doc/design/decisions.md 决策 19(严格三层:volume 挂 root、chapter 挂 volume 或 root、
5
- // scene 必须挂 chapter;创建必须显式 parent_id;无游离节点;节点 updated_at 版本戳)、
6
- // 决策 12(软删 deleted/deleted_at、级联软删子树、restore 祖先链校验 409)、
7
- // 决策 21(章节序:root → 卷 → 章先序遍历,全局章序号跨卷连续,scene 归入所属章)
8
- // - doc/api/endpoints.md 第 550-736 行(大纲操作与回收站端点语义)
9
- // - doc/database/schema.md 第 123-155 行(outline.json 契约)
10
3
  //
11
4
  // 风格:本模块为「读树 → 操作 → 原子写回」一体化(dir 语义),内部复用 storage/outline.ts
12
5
  // 的内存操作(readOutlineFile/writeOutlineFile/findOutlineNode/touch/update/getOutlinePathIds);
@@ -14,11 +7,11 @@
14
7
  // 只处理 outline.json 侧(任务卡边界)。
15
8
  //
16
9
  // 错误约定:抛 OutlineError(带 code),server 层 catch 映射 HttpError:
17
- // NODE_NOT_FOUND → 404 OUTLINE_NODE_NOT_FOUND
18
- // PARENT_NOT_FOUND → 400 OUTLINE_NODE_NOT_FOUND(父不存在是请求参数错误——
19
- // S2.2 实际映射为 400,2026-08 审核同步注释)
20
- // INVALID_HIERARCHY → 400 VALIDATION_ERROR(严格三层违反,决策 19)
21
- // OUTLINE_ANCESTOR_DELETED → 409 OUTLINE_ANCESTOR_DELETED(决策 12 修订)
10
+ // NODE_NOT_FOUND → 404 OUTLINE_NODE_NOT_FOUND
11
+ // PARENT_NOT_FOUND → 400 OUTLINE_NODE_NOT_FOUND(父不存在是请求参数错误——
12
+ // S2.2 实际映射为 400,2026-08 审核同步注释)
13
+ // INVALID_HIERARCHY → 400 VALIDATION_ERROR(严格三层违反)
14
+ // OUTLINE_ANCESTOR_DELETED → 409 OUTLINE_ANCESTOR_DELETED
22
15
  import { generateOutlineNodeId } from "@whispering233/ai-editor-shared";
23
16
  import { findOutlineNode, getOutlinePathIds, readOutlineFile, writeOutlineFile, } from "../storage/outline.js";
24
17
  /** 大纲操作错误:带 code,供上层精确映射 HTTP 语义(替代 message 字符串匹配) */
@@ -35,7 +28,7 @@ function childrenOf(node) {
35
28
  return node.children;
36
29
  }
37
30
  /**
38
- * 严格三层约束校验(决策 19):childType 能否挂 parentType 下。
31
+ * 严格三层约束校验:childType 能否挂 parentType 下。
39
32
  * volume → root;chapter → volume 或 root;scene → 必须 chapter。
40
33
  */
41
34
  export function assertCanHold(parentType, childType) {
@@ -43,16 +36,16 @@ export function assertCanHold(parentType, childType) {
43
36
  (parentType === "volume" && childType === "chapter") ||
44
37
  (parentType === "chapter" && childType === "scene");
45
38
  if (!ok) {
46
- throw new OutlineError("INVALID_HIERARCHY", `层级非法(决策 19 严格三层): ${childType} 不能挂在 ${parentType} 下`);
39
+ throw new OutlineError("INVALID_HIERARCHY", `层级非法( 严格三层): ${childType} 不能挂在 ${parentType} 下`);
47
40
  }
48
41
  }
49
42
  /**
50
- * 创建大纲节点(POST /api/v1/outline,endpoints.md 第 550-577 行):
43
+ * 创建大纲节点(POST /api/v1/outline,):
51
44
  * 读树 → 校验父存在 + 三层约束 → 生成 id(shared generateOutlineNodeId:vol-/ch-/sc- 前缀)
52
- * → 插入父 children 尾部 → **父节点 updated_at 统一更新**(决策 19)→ 原子写回。
45
+ * → 插入父 children 尾部 → **父节点 updated_at 统一更新**→ 原子写回。
53
46
  *
54
47
  * @param updatedAt ISO 8601 由调用方(应用层)传入,模块不生成时间
55
- * @param data 节点结构化信息(决策 23,可选;校验由路由层按层级 schema 执行,本模块仅透传存储)
48
+ * @param data 节点结构化信息(可选;校验由路由层按层级 schema 执行,本模块仅透传存储)
56
49
  * @returns 新建节点(含 id/type/title/updated_at/data)
57
50
  * @throws OutlineError PARENT_NOT_FOUND(父不存在)/ INVALID_HIERARCHY(三层违反)
58
51
  */
@@ -79,8 +72,8 @@ export function createOutlineNode(dir, input) {
79
72
  throw new OutlineError("INVALID_HIERARCHY", `父节点是叶子(scene),无法挂子节点: ${input.parentId}`);
80
73
  }
81
74
  kids.push(node);
82
- // 父节点版本戳(决策 19:children 变更由服务端原子写时统一更新)。
83
- // root 是树根非节点(schema.md 顶层契约仅 id/type/schema_version/children),
75
+ // 父节点版本戳(children 变更由服务端原子写时统一更新)。
76
+ // root 是树根非节点( 顶层仅 id/type/schema_version/children),
84
77
  // 不写 updated_at——版本戳只适用于节点(oracle 审核修复)
85
78
  if (parent !== tree) {
86
79
  parent.updated_at = input.updatedAt;
@@ -89,9 +82,9 @@ export function createOutlineNode(dir, input) {
89
82
  return node;
90
83
  }
91
84
  /**
92
- * 更新大纲节点信息(PUT /api/v1/outline/:nodeId,endpoints.md 第 579-597 行):
93
- * title/summary 更新 + 节点 updated_at 统一更新(决策 19),原子写回;
94
- * data **浅合并**(决策 23:未传字段保留,与实体 updateEntity 的 data 浅合并同语义)。
85
+ * 更新大纲节点信息(PUT /api/v1/outline/:nodeId,):
86
+ * title/summary 更新 + 节点 updated_at 统一更新,原子写回;
87
+ * data **浅合并**(未传字段保留,与实体 updateEntity 的 data 浅合并同语义)。
95
88
  * @throws OutlineError NODE_NOT_FOUND
96
89
  */
97
90
  export function updateOutlineNodeInfo(dir, nodeId, patch, updatedAt) {
@@ -104,7 +97,7 @@ export function updateOutlineNodeInfo(dir, nodeId, patch, updatedAt) {
104
97
  node.title = patch.title;
105
98
  if (patch.summary !== undefined)
106
99
  node.summary = patch.summary;
107
- // data 浅合并:仅合并传入字段,现有字段保留(决策 23;与 updateEntity 同语义)
100
+ // data 浅合并:仅合并传入字段,现有字段保留(与 updateEntity 同语义)
108
101
  if (patch.data !== undefined) {
109
102
  node.data = { ...(node.data ?? {}), ...patch.data };
110
103
  }
@@ -133,12 +126,12 @@ function findParentRecursive(node, nodeId) {
133
126
  return undefined;
134
127
  }
135
128
  /**
136
- * 移动大纲节点(PUT /api/v1/outline/:nodeId/move,endpoints.md 第 599-621 行):
129
+ * 移动大纲节点(PUT /api/v1/outline/:nodeId/move,):
137
130
  * 从原父移除 → 插入新父指定 order(0-based;同父重排 = 移除后插入)→
138
- * 三层约束校验(同 create)→ 新旧父 updated_at 统一更新(决策 19)→ 原子写回。
131
+ * 三层约束校验(同 create)→ 新旧父 updated_at 统一更新→ 原子写回。
139
132
  * order 越界时 clamp 到有效范围(拖拽场景边界值,宽松处理)。
140
133
  *
141
- * @returns { previousParentId, newParentId }(endpoints.md 语义;root 用 "root")
134
+ * @returns { previousParentId, newParentId }( 语义;root 用 "root")
142
135
  * @throws OutlineError NODE_NOT_FOUND / PARENT_NOT_FOUND / INVALID_HIERARCHY
143
136
  */
144
137
  export function moveOutlineNode(dir, nodeId, input, updatedAt) {
@@ -170,8 +163,8 @@ export function moveOutlineNode(dir, nodeId, input, updatedAt) {
170
163
  }
171
164
  const order = Math.max(0, Math.min(Math.trunc(input.order), newKids.length));
172
165
  newKids.splice(order, 0, node);
173
- // 新旧父版本戳(决策 19);同父时只更新一次。
174
- // root 是树根非节点,不写 updated_at(schema.md 顶层契约,oracle 审核修复)
166
+ // 新旧父版本戳;同父时只更新一次。
167
+ // root 是树根非节点,不写 updated_at( 顶层,oracle 审核修复)
175
168
  if (prevParent !== tree) {
176
169
  prevParent.updated_at = updatedAt;
177
170
  }
@@ -184,7 +177,7 @@ export function moveOutlineNode(dir, nodeId, input, updatedAt) {
184
177
  newParentId: newParent.type === "root" ? "root" : newParent.id,
185
178
  };
186
179
  }
187
- /** 递归软删子树(决策 12 级联):标记 deleted + deleted_at + updated_at,返回子节点数 */
180
+ /** 递归软删子树( 级联):标记 deleted + deleted_at + updated_at,返回子节点数 */
188
181
  function softDeleteSubtree(node, deletedAt) {
189
182
  let count = 0;
190
183
  for (const child of childrenOf(node) ?? []) {
@@ -196,12 +189,12 @@ function softDeleteSubtree(node, deletedAt) {
196
189
  return count;
197
190
  }
198
191
  /**
199
- * 软删大纲节点(DELETE /api/v1/outline/:nodeId,endpoints.md 第 623-640 行,决策 12):
192
+ * 软删大纲节点(DELETE /api/v1/outline/:nodeId,):
200
193
  * 标记 deleted + deleted_at,**递归软删整棵子树**(本体保留可还原)。
201
194
  * 已软删节点再次软删:幂等重标(不报错)。
202
195
  *
203
196
  * @returns { children } 级联软删的子节点数(不含自身)
204
- * —— relations/deltas 的级联软删由上层(S2.2)组合 relation/delta 模块处理(本模块边界)
197
+ * —— relations/deltas 的级联软删由上层(S2.2)组合 relation/delta 模块处理(本模块边界)
205
198
  * @throws OutlineError NODE_NOT_FOUND
206
199
  */
207
200
  export function deleteOutlineNode(dir, nodeId, updatedAt) {
@@ -217,7 +210,7 @@ export function deleteOutlineNode(dir, nodeId, updatedAt) {
217
210
  writeOutlineFile(dir, tree);
218
211
  return { children };
219
212
  }
220
- /** 递归还原子树(决策 12 修订:子节点若仍在回收站则一并还原),返回还原的子节点数 */
213
+ /** 递归还原子树(子节点若仍在回收站则一并还原),返回还原的子节点数 */
221
214
  function restoreSubtree(node, updatedAt) {
222
215
  let count = 0;
223
216
  for (const child of childrenOf(node) ?? []) {
@@ -229,9 +222,9 @@ function restoreSubtree(node, updatedAt) {
229
222
  return count;
230
223
  }
231
224
  /**
232
- * 还原软删大纲节点(POST /api/v1/trash/outline/:nodeId/restore,endpoints.md 第 694-711 行):
233
- * 清除 deleted/deleted_at → **递归还原子树**(仍软删的子孙一并还原,决策 12 修订)→
234
- * **祖先链校验**:存在软删祖先 → 抛 OUTLINE_ANCESTOR_DELETED(409 语义,决策 12 修订,
225
+ * 还原软删大纲节点(POST /api/v1/trash/outline/:nodeId/restore,):
226
+ * 清除 deleted/deleted_at → **递归还原子树**(仍软删的子孙一并还原)→
227
+ * **祖先链校验**:存在软删祖先 → 抛 OUTLINE_ANCESTOR_DELETED(409 语义,,
235
228
  * 杜绝「可见节点挂在不可见父」的畸形树——校验在还原前执行,祖先必须已还原)。
236
229
  *
237
230
  * @returns { children } 级联还原的子节点数
@@ -243,7 +236,7 @@ export function restoreOutlineNode(dir, nodeId, updatedAt) {
243
236
  if (node === undefined) {
244
237
  throw new OutlineError("NODE_NOT_FOUND", `大纲节点不存在: ${nodeId}`);
245
238
  }
246
- // 祖先链校验(决策 12 修订):路径 [root, ..., nodeId] 中排除 root 与自身的中间祖先
239
+ // 祖先链校验:路径 [root, ..., nodeId] 中排除 root 与自身的中间祖先
247
240
  const path = getOutlinePathIds(tree, nodeId);
248
241
  for (const ancestorId of path.slice(1, -1)) {
249
242
  const ancestor = findOutlineNode(tree, ancestorId);
@@ -259,7 +252,7 @@ export function restoreOutlineNode(dir, nodeId, updatedAt) {
259
252
  return { children };
260
253
  }
261
254
  /**
262
- * 物理删除大纲节点(DELETE /api/v1/trash/outline/:nodeId,endpoints.md 第 726-736 行):
255
+ * 物理删除大纲节点(DELETE /api/v1/trash/outline/:nodeId,):
263
256
  * 从树中移除整棵子树(递归,文件内物理清除,不可恢复)。
264
257
  * 边界:不涉及 data.db(relations/deltas 的物理清除由上层组合);
265
258
  * 不更新父节点 updated_at——purge 属回收站清理,节点已消失,
@@ -282,7 +275,7 @@ export function purgeOutlineNode(dir, nodeId) {
282
275
  }
283
276
  /**
284
277
  * 回收站列表(大纲侧):收集整棵树中 deleted 标记的节点(含子树中的软删节点),
285
- * 按 deleted_at 倒序(回收站排序约定,schema.md:跨 SQLite 与 outline.json 统一 ISO 格式)。
278
+ * 按 deleted_at 倒序(回收站排序约定,:跨 SQLite 与 outline.json 统一 ISO 格式)。
286
279
  */
287
280
  export function listDeletedNodes(dir) {
288
281
  const tree = readOutlineFile(dir);
@@ -299,15 +292,15 @@ export function listDeletedNodes(dir) {
299
292
  return out.sort((a, b) => b.deleted_at.localeCompare(a.deleted_at));
300
293
  }
301
294
  /**
302
- * 章节序推导(决策 21):按大纲树先序遍历编号——root → 卷 → 章;
303
- * 全局章序号**跨卷连续**;直接挂 root 的 chapter 按兄弟顺序编号(决策 19 允许);
295
+ * 章节序推导:按大纲树先序遍历编号——root → 卷 → 章;
296
+ * 全局章序号**跨卷连续**;直接挂 root 的 chapter 按兄弟顺序编号( 允许);
304
297
  * scene 归入所属章,不单独编号(见 getChapterNumber)。
305
298
  */
306
299
  export function deriveChapterOrder(dir) {
307
300
  const tree = readOutlineFile(dir);
308
301
  const result = [];
309
302
  let number = 0;
310
- // root.children 类型已放宽为 (volume|chapter) 联合(决策 19 允许 chapter 直挂 root,
303
+ // root.children 类型已放宽为 (volume|chapter) 联合( 允许 chapter 直挂 root,
311
304
  // oracle 回修 shared 类型后此处无需断言),按 type 分支:volume → 卷内章;chapter → 直挂章
312
305
  for (const child of tree.children) {
313
306
  if (child.type === "chapter") {
@@ -322,7 +315,7 @@ export function deriveChapterOrder(dir) {
322
315
  return result;
323
316
  }
324
317
  /**
325
- * 节点所属章序号(决策 21):
318
+ * 节点所属章序号:
326
319
  * - scene → 所属 chapter 的全局序号(严格三层下 scene 的父必为 chapter)
327
320
  * - chapter → 自身序号
328
321
  * - volume / root / 节点不存在 → null(卷无章节号;不存在防御性返回 null 供上层展示)
@@ -1 +1 @@
1
- {"version":3,"file":"outline-ops.js","sourceRoot":"","sources":["../../src/queries/outline-ops.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outline-ops.js","sourceRoot":"","sources":["../../src/queries/outline-ops.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export declare class RelationError extends Error {
11
11
  readonly code: RelationErrorCode;
12
12
  constructor(code: RelationErrorCode, message: string);
13
13
  }
14
- /** 关系查询过滤条件(endpoints.md 第 311-318 行;全部可选,组合过滤) */
14
+ /** 关系查询过滤条件(;全部可选,组合过滤) */
15
15
  export interface RelationQuery {
16
16
  sourceType?: string;
17
17
  sourceId?: string;
@@ -19,9 +19,9 @@ export interface RelationQuery {
19
19
  targetId?: string;
20
20
  relationType?: string;
21
21
  }
22
- /** 大纲端点 id(relation_records 端点类型约定,schema.md) */
22
+ /** 大纲端点 id(relation_records 端点类型约定,) */
23
23
  export declare const OUTLINE_ENDPOINT_TYPE = "outline_node";
24
- /** 设定层级边(决策 30):childId → parentId(belongs_to 且两端均为 setting,两端点未软删) */
24
+ /** 设定层级边:childId → parentId(belongs_to 且两端均为 setting,两端点未软删) */
25
25
  export interface SettingHierarchyEdge {
26
26
  childId: string;
27
27
  parentId: string;
@@ -29,25 +29,25 @@ export interface SettingHierarchyEdge {
29
29
  /** 行 → RelationRow(metadata JSON 解析;坏行防御同 entity.ts parseDataColumn 风格) */
30
30
  export declare function rowToRelationRow(row: Record<string, unknown>): RelationRow;
31
31
  /**
32
- * 关系列表 + k 跳路径(GET /api/v1/relation,endpoints.md 第 306-343 行):
33
- * 过滤条件组合(全部可选)+ 可见性过滤(关系自身未软删 + 两端点均未软删,决策 12 修订)。
32
+ * 关系列表 + k 跳路径(GET /api/v1/relation,):
33
+ * 过滤条件组合(全部可选)+ 可见性过滤(关系自身未软删 + 两端点均未软删)。
34
34
  * depth=1:直接关系(relations,联表填充 sourceName/targetName)。
35
35
  * depth=2/3:追加 k 跳路径(paths:nodes/edges 结构)——**BFS 图不受 source_id/target_id
36
36
  * 过滤限制**(起点定位用 source_id,图遍历需要全量可见边,否则中间节点的出边被过滤截断);
37
- * relations 数组仍按全部过滤条件返回(endpoints.md「追加路径信息」语义)。
37
+ * relations 数组仍按全部过滤条件返回(「追加路径信息」语义)。
38
38
  *
39
39
  * @param outlineDir 项目根(大纲端点软删/标题校验读 outline.json)
40
40
  */
41
41
  export declare function listRelations(db: Db, query: RelationQuery, depth: 1 | 2 | 3, outlineDir: string): RelationQueryResult;
42
42
  /**
43
- * 单条关系(含可见性过滤,决策 12 修订);不存在/不可见返回 null。
43
+ * 单条关系(含可见性过滤);不存在/不可见返回 null。
44
44
  * @param outlineDir 大纲端点软删校验读 outline.json
45
45
  */
46
46
  export declare function getRelation(db: Db, id: string, outlineDir: string): RelationRow | null;
47
47
  /**
48
- * 创建关系(POST /api/v1/relation,endpoints.md 第 345-374 行):
48
+ * 创建关系(POST /api/v1/relation,):
49
49
  * - **判重**:同 (source_id, target_id, relation_type) 且未软删已存在 → RELATION_EXISTS(409 语义)
50
- * - relation_type 白名单(schema.md 16 个预定义类型,含 plot_edge 剧情连线——同规则,决策 10)
50
+ * - relation_type 白名单( 16 个预定义类型,含 plot_edge 剧情连线——同规则)
51
51
  * - **端点存在性**:实体端点查 entities(非软删)、大纲端点读 outline.json(存在且非软删)
52
52
  * - 时间戳应用层 ISO
53
53
  *
@@ -63,29 +63,29 @@ export declare function createRelation(db: Db, input: {
63
63
  metadata?: Record<string, unknown>;
64
64
  }, outlineDir: string): RelationRow;
65
65
  /**
66
- * 全量设定层级边(决策 30,2026-08):读取所有 setting→setting 的 belongs_to 边
67
- * (两端点均未软删——决策 12 修订可见性联动,软删端点不参与层级)。供防环校验与设定树
66
+ * 全量设定层级边(2026-08):读取所有 setting→setting 的 belongs_to 边
67
+ * (两端点均未软删——可见性联动,软删端点不参与层级)。供防环校验与设定树
68
68
  * 构建使用:O(N) 一次读取构建内存邻接表,避免逐条查询(用户反馈 #1 性能方案:JSON 内
69
69
  * parent_id 需全表扫 + parse,关系表走索引)。方向:childId → parentId(child belongs_to parent)。
70
70
  */
71
71
  export declare function listSettingHierarchyEdges(db: Db): SettingHierarchyEdge[];
72
72
  /**
73
- * 设定层级防环校验(决策 30):判断建边 child → newParent 是否成环。
73
+ * 设定层级防环校验:判断建边 child → newParent 是否成环。
74
74
  * 规则:newParent 沿父链(child→parent 边)向上走,经过 child 即成环(child 将成为自身祖先);
75
75
  * 祖先链查询 O(深度);child 不在树中(新建场景)时必为 false;child 与 newParent 相同 = 自指环。
76
76
  */
77
77
  export declare function wouldCreateSettingCycle(db: Db, childId: string, newParentId: string): boolean;
78
78
  /**
79
- * 物理删除关系(DELETE /api/v1/relation/:id,endpoints.md 第 376-391 行,决策 12 修订:
79
+ * 物理删除关系(DELETE /api/v1/relation/:id,,
80
80
  * 手动删关系 = 物理删,不进回收站)。
81
81
  * @returns 影响行数(0 = 不存在,路由层映射 404 RELATION_NOT_FOUND)
82
82
  */
83
83
  export declare function deleteRelation(db: Db, id: string): number;
84
84
  /**
85
- * 更新关系元数据(PUT /api/v1/relation/:id,endpoints.md「PUT /relation/:id」):
85
+ * 更新关系元数据(PUT /api/v1/relation/:id,「PUT /relation/:id」):
86
86
  * metadata **整体替换**(非浅合并)——画布连线标签编辑传 `{ label }`,清空传 `{}`;
87
87
  * 同时刷新 updated_at(应用层 ISO,与全仓时间约定一致)。
88
- * 不存在或已软删(deleted_at IS NOT NULL)→ null(404 语义,软删关系不可编辑,决策 12)。
88
+ * 不存在或已软删(deleted_at IS NOT NULL)→ null(404 语义,软删关系不可编辑)。
89
89
  * 端点可见性不在此校验——编辑不改变三元组,与可见性无关。
90
90
  * @returns 更新后的 { id };不存在/已软删 → null
91
91
  */
@@ -105,11 +105,11 @@ export interface DanglingRelationInfo {
105
105
  reason: DanglingRelationReason;
106
106
  }
107
107
  /**
108
- * 全量悬空关系诊断(S6.4 工具 find_orphan_elements 下沉,tools.md「孤立元素」):
108
+ * 全量悬空关系诊断(S6.4 工具 find_orphan_elements 下沉,「孤立元素」):
109
109
  * 关系自身未软删,但端点异常——**每端点一条**记录(同一关系两端点异常时出两条):
110
110
  * - *_missing:端点已物理删除(实体 purge / 大纲节点 purge)——dangling_relations 侧
111
- * - *_deleted:端点已软删但关系未级联软删(跨存储不一致的 relation 侧,决策 12 修订
112
- * 级联软删/启动一致性校验(决策 16 修订)兜底的对象同源)——inconsistent_soft_deletes 侧
111
+ * - *_deleted:端点已软删但关系未级联软删(跨存储不一致的 relation 侧,
112
+ * 级联软删/启动一致性校验兜底的对象同源)——inconsistent_soft_deletes 侧
113
113
  * 软删自身的关系(回收站对象)**不在此列**——由回收站管理,非悬空。
114
114
  * 实体端点状态一次 IN 批量收集(避免逐行查询——buildEndpointContext 同款先例)。
115
115
  * @param outlineDir 项目根(大纲端点存在性/软删校验读 outline.json)
@@ -1 +1 @@
1
- {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../../src/queries/relation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../../src/queries/relation.ts"],"names":[],"mappings":"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"}