@whispering233/ai-editor-tools 0.0.29 → 0.0.32

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 (153) hide show
  1. package/dist/analysis/conflict.d.ts +3 -3
  2. package/dist/analysis/conflict.d.ts.map +1 -1
  3. package/dist/analysis/conflict.js +1 -1
  4. package/dist/analysis/consistency.d.ts +3 -3
  5. package/dist/analysis/consistency.d.ts.map +1 -1
  6. package/dist/analysis/consistency.js +4 -4
  7. package/dist/analysis/consistency.js.map +1 -1
  8. package/dist/analysis/hook.d.ts +13 -13
  9. package/dist/analysis/hook.d.ts.map +1 -1
  10. package/dist/analysis/hook.js +9 -9
  11. package/dist/analysis/hook.js.map +1 -1
  12. package/dist/analysis/orphan.d.ts +3 -3
  13. package/dist/analysis/orphan.d.ts.map +1 -1
  14. package/dist/analysis/orphan.js +3 -3
  15. package/dist/analysis/orphan.js.map +1 -1
  16. package/dist/analysis/path.d.ts +4 -4
  17. package/dist/analysis/path.d.ts.map +1 -1
  18. package/dist/analysis/path.js +4 -4
  19. package/dist/analysis/path.js.map +1 -1
  20. package/dist/analysis/suggest.d.ts +3 -3
  21. package/dist/analysis/suggest.d.ts.map +1 -1
  22. package/dist/analysis/suggest.js +1 -1
  23. package/dist/context.d.ts +1 -1
  24. package/dist/context.d.ts.map +1 -1
  25. package/dist/context.js +1 -1
  26. package/dist/context.js.map +1 -1
  27. package/dist/executor/delta.d.ts +1 -1
  28. package/dist/executor/delta.d.ts.map +1 -1
  29. package/dist/executor/delta.js +1 -1
  30. package/dist/executor/delta.js.map +1 -1
  31. package/dist/executor/entity.d.ts +3 -3
  32. package/dist/executor/entity.d.ts.map +1 -1
  33. package/dist/executor/entity.js +5 -5
  34. package/dist/executor/entity.js.map +1 -1
  35. package/dist/executor/hook.d.ts +3 -3
  36. package/dist/executor/hook.d.ts.map +1 -1
  37. package/dist/executor/hook.js +12 -12
  38. package/dist/executor/hook.js.map +1 -1
  39. package/dist/executor/index.d.ts +0 -2
  40. package/dist/executor/index.d.ts.map +1 -1
  41. package/dist/executor/index.js +2 -2
  42. package/dist/executor/index.js.map +1 -1
  43. package/dist/executor/outline.d.ts +3 -3
  44. package/dist/executor/outline.d.ts.map +1 -1
  45. package/dist/executor/outline.js +4 -4
  46. package/dist/executor/outline.js.map +1 -1
  47. package/dist/executor/reference.js +2 -2
  48. package/dist/executor/reference.js.map +1 -1
  49. package/dist/executor/relation.d.ts +2 -2
  50. package/dist/executor/relation.d.ts.map +1 -1
  51. package/dist/executor/relation.js +3 -3
  52. package/dist/executor/relation.js.map +1 -1
  53. package/dist/executor/reorder-timepoints.d.ts +1 -1
  54. package/dist/executor/reorder-timepoints.d.ts.map +1 -1
  55. package/dist/executor/reorder-timepoints.js +2 -2
  56. package/dist/executor/reorder-timepoints.js.map +1 -1
  57. package/dist/executor/types.d.ts +1 -3
  58. package/dist/executor/types.d.ts.map +1 -1
  59. package/dist/executor/types.js +0 -7
  60. package/dist/executor/types.js.map +1 -1
  61. package/dist/index.d.ts +1 -0
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +50 -49
  64. package/dist/index.js.map +1 -1
  65. package/dist/proposal/delta.d.ts +1 -1
  66. package/dist/proposal/delta.d.ts.map +1 -1
  67. package/dist/proposal/delta.js +1 -1
  68. package/dist/proposal/delta.js.map +1 -1
  69. package/dist/proposal/entity.d.ts +1 -1
  70. package/dist/proposal/entity.d.ts.map +1 -1
  71. package/dist/proposal/entity.js +1 -1
  72. package/dist/proposal/entity.js.map +1 -1
  73. package/dist/proposal/hook.d.ts +1 -1
  74. package/dist/proposal/hook.d.ts.map +1 -1
  75. package/dist/proposal/hook.js +1 -1
  76. package/dist/proposal/hook.js.map +1 -1
  77. package/dist/proposal/outline.d.ts +1 -1
  78. package/dist/proposal/outline.d.ts.map +1 -1
  79. package/dist/proposal/outline.js +2 -2
  80. package/dist/proposal/outline.js.map +1 -1
  81. package/dist/proposal/reference.d.ts +1 -1
  82. package/dist/proposal/reference.d.ts.map +1 -1
  83. package/dist/proposal/reference.js +1 -1
  84. package/dist/proposal/reference.js.map +1 -1
  85. package/dist/proposal/relation.d.ts +1 -1
  86. package/dist/proposal/relation.d.ts.map +1 -1
  87. package/dist/proposal/reorder-timepoints.d.ts +2 -2
  88. package/dist/proposal/reorder-timepoints.d.ts.map +1 -1
  89. package/dist/proposal/reorder-timepoints.js +5 -5
  90. package/dist/proposal/reorder-timepoints.js.map +1 -1
  91. package/dist/proposal/types.d.ts +5 -5
  92. package/dist/proposal/types.d.ts.map +1 -1
  93. package/dist/proposal/types.js +4 -4
  94. package/dist/proposal/types.js.map +1 -1
  95. package/dist/query/delta.d.ts +3 -3
  96. package/dist/query/delta.d.ts.map +1 -1
  97. package/dist/query/delta.js +3 -3
  98. package/dist/query/delta.js.map +1 -1
  99. package/dist/query/entity.d.ts +4 -4
  100. package/dist/query/entity.d.ts.map +1 -1
  101. package/dist/query/entity.js +3 -3
  102. package/dist/query/outline.d.ts +3 -3
  103. package/dist/query/outline.d.ts.map +1 -1
  104. package/dist/query/outline.js +3 -3
  105. package/dist/query/outline.js.map +1 -1
  106. package/dist/query/reference.d.ts +2 -2
  107. package/dist/query/reference.d.ts.map +1 -1
  108. package/dist/query/reference.js +2 -2
  109. package/dist/query/reference.js.map +1 -1
  110. package/dist/query/relation.d.ts +2 -2
  111. package/dist/query/relation.d.ts.map +1 -1
  112. package/dist/query/relation.js +1 -1
  113. package/dist/registry.d.ts +21 -14
  114. package/dist/registry.d.ts.map +1 -1
  115. package/dist/registry.js +23 -9
  116. package/dist/registry.js.map +1 -1
  117. package/dist/schemas/analysis.d.ts +51 -0
  118. package/dist/schemas/analysis.d.ts.map +1 -0
  119. package/dist/schemas/analysis.js +46 -0
  120. package/dist/schemas/analysis.js.map +1 -0
  121. package/dist/schemas/delta.d.ts +31 -0
  122. package/dist/schemas/delta.d.ts.map +1 -0
  123. package/dist/schemas/delta.js +35 -0
  124. package/dist/schemas/delta.js.map +1 -0
  125. package/dist/schemas/entity.d.ts +28 -0
  126. package/dist/schemas/entity.d.ts.map +1 -0
  127. package/dist/schemas/entity.js +31 -0
  128. package/dist/schemas/entity.js.map +1 -0
  129. package/dist/schemas/helpers.d.ts +8 -0
  130. package/dist/schemas/helpers.d.ts.map +1 -0
  131. package/dist/schemas/helpers.js +27 -0
  132. package/dist/schemas/helpers.js.map +1 -0
  133. package/dist/schemas/index.d.ts +8 -0
  134. package/dist/schemas/index.d.ts.map +1 -0
  135. package/dist/schemas/index.js +12 -0
  136. package/dist/schemas/index.js.map +1 -0
  137. package/dist/schemas/outline.d.ts +11 -0
  138. package/dist/schemas/outline.d.ts.map +1 -0
  139. package/dist/schemas/outline.js +12 -0
  140. package/dist/schemas/outline.js.map +1 -0
  141. package/dist/schemas/proposal.d.ts +125 -0
  142. package/dist/schemas/proposal.d.ts.map +1 -0
  143. package/dist/schemas/proposal.js +123 -0
  144. package/dist/schemas/proposal.js.map +1 -0
  145. package/dist/schemas/reference.d.ts +13 -0
  146. package/dist/schemas/reference.d.ts.map +1 -0
  147. package/dist/schemas/reference.js +13 -0
  148. package/dist/schemas/reference.js.map +1 -0
  149. package/dist/schemas/relation.d.ts +17 -0
  150. package/dist/schemas/relation.d.ts.map +1 -0
  151. package/dist/schemas/relation.js +19 -0
  152. package/dist/schemas/relation.js.map +1 -0
  153. package/package.json +5 -5
@@ -1,6 +1,6 @@
1
1
  import type { ToolContext } from "../context.js";
2
- import type { DetectConflictsArgs } from "@whispering233/ai-editor-shared";
3
- /** 单条跨实体矛盾( detect_conflicts 返回项;entity_a/entity_b 为实体 id) */
2
+ import type { DetectConflictsArgs } from "../schemas/index.js";
3
+ /** 单条跨实体矛盾(detect_conflicts 返回项;entity_a/entity_b 为实体 id) */
4
4
  export interface ConflictIssue {
5
5
  entity_a: string;
6
6
  entity_b: string;
@@ -8,7 +8,7 @@ export interface ConflictIssue {
8
8
  description: string;
9
9
  }
10
10
  /**
11
- * 关系矛盾检测( detect_conflicts)。
11
+ * 关系矛盾检测(detect_conflicts)。
12
12
  * types 限定参与检测的实体类型(缺省全部);relation_filter 限定参与检测的关系类型
13
13
  * (缺省全部——规则按交集生效:R1 只查集合内的对称类型、R2 只查互斥对均在集合内、R3 只查集合含 kills)。
14
14
  * 软删对象不可见(listEntities/listRelations 默认过滤)。
@@ -1 +1 @@
1
- {"version":3,"file":"conflict.d.ts","sourceRoot":"","sources":["../../src/analysis/conflict.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,8DAA8D;AAC9D,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAwBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,SAAS,EAAE,aAAa,EAAE,CAAA;CAAE,CA0FpI"}
1
+ {"version":3,"file":"conflict.d.ts","sourceRoot":"","sources":["../../src/analysis/conflict.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,6DAA6D;AAC7D,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAwBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,SAAS,EAAE,aAAa,EAAE,CAAA;CAAE,CA0FpI"}
@@ -18,7 +18,7 @@ function nameOf(entities, id) {
18
18
  return entities.find((e) => e.id === id)?.name ?? id;
19
19
  }
20
20
  /**
21
- * 关系矛盾检测( detect_conflicts)。
21
+ * 关系矛盾检测(detect_conflicts)。
22
22
  * types 限定参与检测的实体类型(缺省全部);relation_filter 限定参与检测的关系类型
23
23
  * (缺省全部——规则按交集生效:R1 只查集合内的对称类型、R2 只查互斥对均在集合内、R3 只查集合含 kills)。
24
24
  * 软删对象不可见(listEntities/listRelations 默认过滤)。
@@ -2,10 +2,10 @@ import type { EntityRow } from "@whispering233/ai-editor-shared";
2
2
  import type { Db } from "@whispering233/ai-editor-db";
3
3
  import type { OutlineFileTree } from "@whispering233/ai-editor-shared";
4
4
  import type { ToolContext } from "../context.js";
5
- import type { AnalyzeConsistencyArgs } from "@whispering233/ai-editor-shared";
5
+ import type { AnalyzeConsistencyArgs } from "../schemas/index.js";
6
6
  /** 一致性问题的严重级别(error = 确定矛盾;warning = 可疑/待确认) */
7
7
  export type IssueSeverity = "error" | "warning";
8
- /** 单条一致性问题( analyze_consistency 返回项) */
8
+ /** 单条一致性问题(analyze_consistency 返回项) */
9
9
  export interface ConsistencyIssue {
10
10
  severity: IssueSeverity;
11
11
  /** 矛盾的 data 字段名(如 "personality" / "expected_resolve_node_id") */
@@ -13,7 +13,7 @@ export interface ConsistencyIssue {
13
13
  description: string;
14
14
  }
15
15
  /**
16
- * 实体档案一致性检查( analyze_consistency(entity_id))。
16
+ * 实体档案一致性检查(analyze_consistency(entity_id))。
17
17
  * 规则表(按类型分发,均纯函数判定):
18
18
  * - character:R1 负年龄(error)、R2 性格反义词对(warning)
19
19
  * - hook:R3 已兑现未标注节点(warning)、R4 兑现节点悬空引用(error)
@@ -1 +1 @@
1
- {"version":3,"file":"consistency.d.ts","sourceRoot":"","sources":["../../src/analysis/consistency.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAE9E,gDAAgD;AAChD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;AAEhD,wCAAwC;AACxC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,aAAa,CAAC;IACzB,iEAAiE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AA+ED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,GAAG,gBAAgB,EAAE,CAuB1G;AAED,iDAAiD;AACjD,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,sBAAsB,EAC5B,MAAM,CAAC,EAAE,WAAW,GACnB;IAAE,MAAM,EAAE,gBAAgB,EAAE,CAAA;CAAE,GAAG,IAAI,CAMvC"}
1
+ {"version":3,"file":"consistency.d.ts","sourceRoot":"","sources":["../../src/analysis/consistency.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,gDAAgD;AAChD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;AAEhD,uCAAuC;AACvC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,aAAa,CAAC;IACzB,iEAAiE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AA+ED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,GAAG,gBAAgB,EAAE,CAuB1G;AAED,iDAAiD;AACjD,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,sBAAsB,EAC5B,MAAM,CAAC,EAAE,WAAW,GACnB;IAAE,MAAM,EAAE,gBAAgB,EAAE,CAAA;CAAE,GAAG,IAAI,CAMvC"}
@@ -78,7 +78,7 @@ function checkParentReference(data, db) {
78
78
  return [];
79
79
  }
80
80
  /**
81
- * 实体档案一致性检查( analyze_consistency(entity_id))。
81
+ * 实体档案一致性检查(analyze_consistency(entity_id))。
82
82
  * 规则表(按类型分发,均纯函数判定):
83
83
  * - character:R1 负年龄(error)、R2 性格反义词对(warning)
84
84
  * - hook:R3 已兑现未标注节点(warning)、R4 兑现节点悬空引用(error)
@@ -98,14 +98,14 @@ export function analyzeEntityConsistency(row, tree, db) {
98
98
  return [];
99
99
  case "location":
100
100
  return checkParentReference(data, db);
101
- // C1 类型补全( event 时间轴事件:暂无一致性规则,返回空集;后续卡按需增补)
101
+ // C1 类型补全(event 时间轴事件:暂无一致性规则,返回空集;后续卡按需增补)
102
102
  case "event":
103
103
  return [];
104
- // G2 类型补全( G2 修订 timepoint 时间标签点:data 恒空({})、name 即时间标签文本,
104
+ // G2 类型补全(G2 修订 timepoint 时间标签点:data 恒空({})、name 即时间标签文本,
105
105
  // 无可分析字段——返回空集;后续卡按需增补)
106
106
  case "timepoint":
107
107
  return [];
108
- // (批次九)参考资料 reference:素材库无一致性规则(与 event 同哲学),返回空集
108
+ // 参考资料 reference:素材库无一致性规则(与 event 同哲学),返回空集
109
109
  case "reference":
110
110
  return [];
111
111
  }
@@ -1 +1 @@
1
- {"version":3,"file":"consistency.js","sourceRoot":"","sources":["../../src/analysis/consistency.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consistency.js","sourceRoot":"","sources":["../../src/analysis/consistency.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { EntityRow, RelationRecord } from "@whispering233/ai-editor-shared";
2
2
  import type { ToolContext } from "../context.js";
3
3
  import { type ChapterIndex } from "./utils.js";
4
- import type { AnalyzeHookHealthArgs, DetectHookConflictsArgs, FindHookOpportunitiesArgs, SuggestHookPayoffArgs, TraceHookLifecycleArgs } from "@whispering233/ai-editor-shared";
4
+ import type { AnalyzeHookHealthArgs, DetectHookConflictsArgs, FindHookOpportunitiesArgs, SuggestHookPayoffArgs, TraceHookLifecycleArgs } from "../schemas/index.js";
5
5
  /** 单个伏笔的完整上下文(实体 + 生命周期关系分组,源数据均来自 db 查询层) */
6
6
  export interface HookRecord {
7
7
  entity: EntityRow;
@@ -50,9 +50,9 @@ export declare function resolveHalfLife(data: Record<string, unknown>): number;
50
50
  * - stale/overdue/ready_to_resolve/blocked 见 HookHealth 注释
51
51
  */
52
52
  export declare function computeHookHealth(chapterIndex: ChapterIndex, rec: HookRecord, hookStatuses: ReadonlyMap<string, string>): HookHealth;
53
- /** 伏笔健康总览结果( analyze_hook_health 返回结构,字段名逐字对齐 snake_case) */
53
+ /** 伏笔健康总览结果(analyze_hook_health 返回结构,字段名逐字对齐 snake_case) */
54
54
  export interface HookHealthOverview {
55
- /** 当前章节(current_position 口径,;未设置时退化树末章) */
55
+ /** 当前章节(current_position 口径;未设置时退化树末章) */
56
56
  current_chapter: number | null;
57
57
  /** 活跃伏笔数(status ∈ planted/progressing) */
58
58
  active_count: number;
@@ -69,19 +69,19 @@ export interface HookHealthOverview {
69
69
  warnings: string[];
70
70
  }
71
71
  /**
72
- * 伏笔健康总览( analyze_hook_health,无参全项目扫描)。
72
+ * 伏笔健康总览(analyze_hook_health,无参全项目扫描)。
73
73
  * 仅统计活跃伏笔(planted/progressing);_health 为运行时计算,不写回 data。
74
74
  * 输出按 hook id 升序(稳定排序);signal:循环中检查。
75
75
  */
76
76
  export declare function runAnalyzeHookHealth(ctx: ToolContext, _args: AnalyzeHookHealthArgs, signal?: AbortSignal): HookHealthOverview;
77
- /** 生命周期节点事件( trace_hook_lifecycle) */
77
+ /** 生命周期节点事件(trace_hook_lifecycle) */
78
78
  export interface HookNodeEvent {
79
79
  nodeId: string;
80
80
  nodeName: string;
81
81
  /** 所属章序号(节点无章号 → null) */
82
82
  chapter: number | null;
83
83
  }
84
- /** 生命周期追踪结果( trace_hook_lifecycle(hook_id) 返回结构,字段名逐字对齐 snake_case) */
84
+ /** 生命周期追踪结果(trace_hook_lifecycle(hook_id) 返回结构,字段名逐字对齐 snake_case) */
85
85
  export interface HookLifecycle {
86
86
  hook: EntityRow;
87
87
  plant: HookNodeEvent | null;
@@ -98,18 +98,18 @@ export interface HookLifecycle {
98
98
  };
99
99
  }
100
100
  /**
101
- * 生命周期追踪( trace_hook_lifecycle(hook_id))。
101
+ * 生命周期追踪(trace_hook_lifecycle(hook_id))。
102
102
  * hook 不存在/已软删 → null(查询无结果);plant 取最早埋设节点、resolve 取最新回收节点;
103
103
  * dormancy 口径与 _health 一致(advances 最新,无 advances → 埋设章)。
104
104
  */
105
105
  export declare function runTraceHookLifecycle(ctx: ToolContext, args: TraceHookLifecycleArgs, signal?: AbortSignal): HookLifecycle | null;
106
- /** 回收建议结果( suggest_hook_payoff(hook_id) 返回结构) */
106
+ /** 回收建议结果(suggest_hook_payoff(hook_id) 返回结构) */
107
107
  export interface HookPayoffSuggestion {
108
108
  at_node: string;
109
109
  reason: string;
110
110
  }
111
111
  /**
112
- * 回收建议( suggest_hook_payoff(hook_id)):
112
+ * 回收建议(suggest_hook_payoff(hook_id)):
113
113
  * 候选 = 大纲中**当前章节之后**(含当前章)的场景节点(非软删),排除已回收节点;
114
114
  * 理想回收点 = 埋设章 + 半衰期(节奏匹配);按与理想点距离升序取 top 3。
115
115
  * hook 不存在/已软删 → null;无埋设记录或大纲无候选场景 → 空建议。
@@ -117,13 +117,13 @@ export interface HookPayoffSuggestion {
117
117
  export declare function runSuggestHookPayoff(ctx: ToolContext, args: SuggestHookPayoffArgs, signal?: AbortSignal): {
118
118
  suggestions: HookPayoffSuggestion[];
119
119
  } | null;
120
- /** 埋设机会结果( find_hook_opportunities(outline_node_id) 返回结构) */
120
+ /** 埋设机会结果(find_hook_opportunities(outline_node_id) 返回结构) */
121
121
  export interface HookOpportunity {
122
122
  category: string;
123
123
  reason: string;
124
124
  }
125
125
  /**
126
- * 埋设机会发现( find_hook_opportunities(outline_node_id)):
126
+ * 埋设机会发现(find_hook_opportunities(outline_node_id)):
127
127
  * 基于节点叙事特征建议适合的伏笔类别(每类别至多一条,规则表驱动):
128
128
  * - R1 无伏笔埋设(无 plants 关系)→ mystery(悬念/谜团)
129
129
  * - R2 角色在场 ≥ 2(appears_in 目标)→ relationship(人物关系)
@@ -134,7 +134,7 @@ export interface HookOpportunity {
134
134
  export declare function runFindHookOpportunities(ctx: ToolContext, args: FindHookOpportunitiesArgs, signal?: AbortSignal): {
135
135
  opportunities: HookOpportunity[];
136
136
  } | null;
137
- /** 伏笔矛盾结果( detect_hook_conflicts() 返回结构) */
137
+ /** 伏笔矛盾结果(detect_hook_conflicts() 返回结构) */
138
138
  export interface HookConflict {
139
139
  hook_a: string;
140
140
  hook_b: string;
@@ -142,7 +142,7 @@ export interface HookConflict {
142
142
  description: string;
143
143
  }
144
144
  /**
145
- * 伏笔矛盾检测( detect_hook_conflicts,无参全项目扫描):
145
+ * 伏笔矛盾检测(detect_hook_conflicts,无参全项目扫描):
146
146
  * - R1 循环依赖(error):A depends_on B 且 B depends_on A——永远无法同时回收
147
147
  * **限制(MVP)**:仅检测二元互依赖(A↔B);三节点及以上长环零检出——依赖图按
148
148
  * depends_on 稀疏构建,长环罕见,需 DFS 找环(后续切片评估),此处明示不静默承诺
@@ -1 +1 @@
1
- {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../src/analysis/hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../src/analysis/hook.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- // 分析类工具:伏笔分析(S6.5,「工具扩展」+ )
1
+ // 分析类工具:伏笔分析(S6.5,「工具扩展」+)
2
2
  // 5 个工具:analyze_hook_health / trace_hook_lifecycle / suggest_hook_payoff /
3
3
  // find_hook_opportunities / detect_hook_conflicts
4
4
  //
@@ -22,7 +22,7 @@ import { DEFAULT_HALF_LIFE, PAYOFF_TIMING } from "@whispering233/ai-editor-share
22
22
  import { buildChapterIndex, outlineNodeName, throwIfAborted, } from "./utils.js";
23
23
  /**
24
24
  * 收集全部非软删伏笔及其生命周期关系(一次 listEntities + 两次 listRelations 查询层调用)。
25
- * status 缺失的 hook 视为 planted( 生命周期:创建即埋设)——hookStatuses 供 blocked 判定。
25
+ * status 缺失的 hook 视为 planted(生命周期:创建即埋设)——hookStatuses 供 blocked 判定。
26
26
  */
27
27
  function collectHooks(ctx, signal) {
28
28
  const hooks = new Map();
@@ -106,7 +106,7 @@ export function computeHookHealth(chapterIndex, rec, hookStatuses) {
106
106
  const stale = dormancy !== null ? dormancy > halfLife : null;
107
107
  const overdue = age !== null ? age > halfLife * 2 : null;
108
108
  // ready_to_resolve:expected_resolve_node_id 已设置 → current >= 节点章节序;否则未计算(不猜测)。
109
- // 指向软删/不存在的节点 → null( 可见性:软删节点不可作为兑现依据——
109
+ // 指向软删/不存在的节点 → null(可见性:软删节点不可作为兑现依据——
110
110
  // 与 consistency R4「兑现节点软删报 error」同口径,指标不基于不可见节点计算)
111
111
  let readyToResolve = null;
112
112
  const expectedNodeId = rec.entity.data.expected_resolve_node_id;
@@ -142,7 +142,7 @@ function isActive(hookStatuses, hookId) {
142
142
  return status === "planted" || status === "progressing";
143
143
  }
144
144
  /**
145
- * 伏笔健康总览( analyze_hook_health,无参全项目扫描)。
145
+ * 伏笔健康总览(analyze_hook_health,无参全项目扫描)。
146
146
  * 仅统计活跃伏笔(planted/progressing);_health 为运行时计算,不写回 data。
147
147
  * 输出按 hook id 升序(稳定排序);signal:循环中检查。
148
148
  */
@@ -189,7 +189,7 @@ function toNodeEvent(tree, chapterIndex, r) {
189
189
  return { nodeId: r.sourceId, nodeName: outlineNodeName(tree, r.sourceId), chapter: chapterIndex.chapterOf(r.sourceId) };
190
190
  }
191
191
  /**
192
- * 生命周期追踪( trace_hook_lifecycle(hook_id))。
192
+ * 生命周期追踪(trace_hook_lifecycle(hook_id))。
193
193
  * hook 不存在/已软删 → null(查询无结果);plant 取最早埋设节点、resolve 取最新回收节点;
194
194
  * dormancy 口径与 _health 一致(advances 最新,无 advances → 埋设章)。
195
195
  */
@@ -209,7 +209,7 @@ export function runTraceHookLifecycle(ctx, args, signal) {
209
209
  const plant = plants.length > 0 ? [...plants].sort(byChapter)[0] : null;
210
210
  const resolve = resolves.length > 0 ? [...resolves].sort(byChapter).reverse()[0] : null;
211
211
  advances.sort(byChapter);
212
- // dormancy:current - 最后活跃章(advances 最新或埋设章; 公式仅计 advances——
212
+ // dormancy:current - 最后活跃章(advances 最新或埋设章;公式仅计 advances——
213
213
  // resolve 不参与,回收后休眠语义由 status=resolved 表达)
214
214
  const lastActive = advances.length > 0 ? advances[advances.length - 1].chapter : plant?.chapter ?? null;
215
215
  const dormancy = chapterIndex.currentChapter !== null && lastActive !== null ? chapterIndex.currentChapter - lastActive : null;
@@ -222,7 +222,7 @@ export function runTraceHookLifecycle(ctx, args, signal) {
222
222
  return { hook: entity, plant, advances, resolve, dormancy, timeline_graph: { events } };
223
223
  }
224
224
  /**
225
- * 回收建议( suggest_hook_payoff(hook_id)):
225
+ * 回收建议(suggest_hook_payoff(hook_id)):
226
226
  * 候选 = 大纲中**当前章节之后**(含当前章)的场景节点(非软删),排除已回收节点;
227
227
  * 理想回收点 = 埋设章 + 半衰期(节奏匹配);按与理想点距离升序取 top 3。
228
228
  * hook 不存在/已软删 → null;无埋设记录或大纲无候选场景 → 空建议。
@@ -266,7 +266,7 @@ export function runSuggestHookPayoff(ctx, args, signal) {
266
266
  return { suggestions };
267
267
  }
268
268
  /**
269
- * 埋设机会发现( find_hook_opportunities(outline_node_id)):
269
+ * 埋设机会发现(find_hook_opportunities(outline_node_id)):
270
270
  * 基于节点叙事特征建议适合的伏笔类别(每类别至多一条,规则表驱动):
271
271
  * - R1 无伏笔埋设(无 plants 关系)→ mystery(悬念/谜团)
272
272
  * - R2 角色在场 ≥ 2(appears_in 目标)→ relationship(人物关系)
@@ -306,7 +306,7 @@ export function runFindHookOpportunities(ctx, args, signal) {
306
306
  return { opportunities };
307
307
  }
308
308
  /**
309
- * 伏笔矛盾检测( detect_hook_conflicts,无参全项目扫描):
309
+ * 伏笔矛盾检测(detect_hook_conflicts,无参全项目扫描):
310
310
  * - R1 循环依赖(error):A depends_on B 且 B depends_on A——永远无法同时回收
311
311
  * **限制(MVP)**:仅检测二元互依赖(A↔B);三节点及以上长环零检出——依赖图按
312
312
  * depends_on 稀疏构建,长环罕见,需 DFS 找环(后续切片评估),此处明示不静默承诺
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/analysis/hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/analysis/hook.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { ToolContext } from "../context.js";
2
- import type { FindOrphanElementsArgs } from "@whispering233/ai-editor-shared";
2
+ import type { FindOrphanElementsArgs } from "../schemas/index.js";
3
3
  /** 闲置角色条目 */
4
4
  export interface UnusedCharacter {
5
5
  id: string;
@@ -36,7 +36,7 @@ export interface InconsistentSoftDelete {
36
36
  endpointId: string | null;
37
37
  description: string;
38
38
  }
39
- /** 孤立元素诊断结果( find_orphan_elements 返回结构) */
39
+ /** 孤立元素诊断结果(find_orphan_elements 返回结构) */
40
40
  export interface OrphanElementsResult {
41
41
  unused_characters: UnusedCharacter[];
42
42
  unresolved_deltas: UnresolvedDelta[];
@@ -44,7 +44,7 @@ export interface OrphanElementsResult {
44
44
  inconsistent_soft_deletes: InconsistentSoftDelete[];
45
45
  }
46
46
  /**
47
- * 孤立元素诊断( find_orphan_elements,无参全项目扫描)。
47
+ * 孤立元素诊断(find_orphan_elements,无参全项目扫描)。
48
48
  * 软删对象(回收站)不计入任何维度(listEntities/listRelations 过滤 + listDangling* 自身
49
49
  * 未软删的前提)。signal:各维度循环中检查。
50
50
  *
@@ -1 +1 @@
1
- {"version":3,"file":"orphan.d.ts","sourceRoot":"","sources":["../../src/analysis/orphan.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAE9E,aAAa;AACb,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACd,0BAA0B;IACzB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,+BAA+B;AAC/B,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC7C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,sBAAsB;AACtB,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,mCAAmC;AACnC,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACrC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,wCAAwC;IACvC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,2CAA2C;AAC3C,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,EAAE,eAAe,EAAE,CAAC;IACrC,iBAAiB,EAAE,eAAe,EAAE,CAAC;IACrC,kBAAkB,EAAE,gBAAgB,EAAE,CAAC;IACvC,yBAAyB,EAAE,sBAAsB,EAAE,CAAC;CACrD;AAsED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,oBAAoB,CA8DjI"}
1
+ {"version":3,"file":"orphan.d.ts","sourceRoot":"","sources":["../../src/analysis/orphan.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,aAAa;AACb,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACd,0BAA0B;IACzB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,+BAA+B;AAC/B,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC7C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,sBAAsB;AACtB,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,mCAAmC;AACnC,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACrC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,wCAAwC;IACvC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,0CAA0C;AAC1C,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,EAAE,eAAe,EAAE,CAAC;IACrC,iBAAiB,EAAE,eAAe,EAAE,CAAC;IACrC,kBAAkB,EAAE,gBAAgB,EAAE,CAAC;IACvC,yBAAyB,EAAE,sBAAsB,EAAE,CAAC;CACrD;AAsED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,oBAAoB,CA8DjI"}
@@ -1,7 +1,7 @@
1
1
  // 分析类工具:find_orphan_elements(孤立元素诊断,S6.4)
2
2
  // 语义(四维诊断,全项目扫描):
3
3
  // 1. unused_characters:闲置角色——从未出场(无 appears_in 且无属性变更记录),或
4
- // 最后活跃章序号 < 当前最新章序号(「写到第30章但角色C第10章后就没出现」, 章序号现推)
4
+ // 最后活跃章序号 < 当前最新章序号(「写到第30章但角色C第10章后就没出现」,章序号现推)
5
5
  // 2. unresolved_deltas:未解决变更——delta 自身未软删但已不可见(触发节点缺失 /
6
6
  // 目标端点软删或缺失),永不生效的「幽灵变更」
7
7
  // 3. dangling_relations:悬空关系——关系自身未软删但端点已物理删除(purge 残留)
@@ -40,7 +40,7 @@ function activityOf(ctx, chapterIndex, characterId, appearsIn) {
40
40
  * 闲置角色诊断(「写到第30章但角色C第10章后就没出现」):
41
41
  * - 从未出场:无 appears_in 关系且无 Delta 记录
42
42
  * - 掉线角色:最后活跃章 < 当前最新章(「当前最新章」= current_position 所属章,
43
- * ,经共享 ChapterIndex 推导——规划 40 章只写到 30 章时,活跃于第 35 章
43
+ *,经共享 ChapterIndex 推导——规划 40 章只写到 30 章时,活跃于第 35 章
44
44
  * (未写章节)的角色不算闲置;大纲无章或角色活跃点无章号时不下结论——不做宽松猜测)
45
45
  * 输出按 id 升序(稳定排序,跨维度可预测)。
46
46
  */
@@ -76,7 +76,7 @@ function collectUnusedCharacters(ctx, signal) {
76
76
  return out;
77
77
  }
78
78
  /**
79
- * 孤立元素诊断( find_orphan_elements,无参全项目扫描)。
79
+ * 孤立元素诊断(find_orphan_elements,无参全项目扫描)。
80
80
  * 软删对象(回收站)不计入任何维度(listEntities/listRelations 过滤 + listDangling* 自身
81
81
  * 未软删的前提)。signal:各维度循环中检查。
82
82
  *
@@ -1 +1 @@
1
- {"version":3,"file":"orphan.js","sourceRoot":"","sources":["../../src/analysis/orphan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orphan.js","sourceRoot":"","sources":["../../src/analysis/orphan.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,19 @@
1
1
  import type { ToolContext } from "../context.js";
2
- import type { TracePlotPathsArgs } from "@whispering233/ai-editor-shared";
3
- /** 路径节点( trace_plot_paths paths[].nodes 项;type/id/name 与 relation 路径同构) */
2
+ import type { TracePlotPathsArgs } from "../schemas/index.js";
3
+ /** 路径节点(trace_plot_paths paths[].nodes 项;type/id/name 与 relation 路径同构) */
4
4
  export interface PlotPathNode {
5
5
  type: string;
6
6
  id: string;
7
7
  name: string;
8
8
  }
9
- /** 一条剧情路径( trace_plot_paths paths[] 项) */
9
+ /** 一条剧情路径(trace_plot_paths paths[] 项) */
10
10
  export interface PlotPath {
11
11
  nodes: PlotPathNode[];
12
12
  description: string;
13
13
  risk_factors: string[];
14
14
  }
15
15
  /**
16
- * 剧情路径推演( trace_plot_paths(from_node_id, to_node_id))。
16
+ * 剧情路径推演(trace_plot_paths(from_node_id, to_node_id))。
17
17
  * 输出 paths(树路径优先,随后连线路径);两节点不存在/已软删 → null(查询无结果)。
18
18
  * signal:连线路径遍历为长任务候选,循环中检查。
19
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/analysis/path.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,2EAA2E;AAC3E,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,0CAA0C;AAC1C,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAsED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;CAAE,GAAG,IAAI,CAwChI"}
1
+ {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/analysis/path.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,yCAAyC;AACzC,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAsED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;CAAE,GAAG,IAAI,CAwChI"}
@@ -1,7 +1,7 @@
1
1
  // 分析类工具:trace_plot_paths(剧情路径推演,S6.4)
2
2
  // 语义:从 from_node_id 到 to_node_id 推演可能的剧情路径——两类来源:
3
- // 1. **树路径**:两节点在大纲树同一分支(祖先后裔关系)→ 沿树的直接推进链( 严格三层下唯一)
4
- // 2. **连线路径**:沿 plot_edge 剧情连线( 画布连线)从 from 出发的 k 跳路径(depth=3)
3
+ // 1. **树路径**:两节点在大纲树同一分支(祖先后裔关系)→ 沿树的直接推进链(严格三层下唯一)
4
+ // 2. **连线路径**:沿 plot_edge 剧情连线(画布连线)从 from 出发的 k 跳路径(depth=3)
5
5
  // 风险因素(risk_factors,从节点属性推导):路径过长(≥5 节点)、途经 scene 缺 goal、
6
6
  // 途经 chapter 缺 reversal、路径经过软删节点(手改树的不一致形态)。
7
7
  // 数据访问:db 查询层(listRelations plot_edge)+ outline.json 读取(树路径),无原生 SQL。
@@ -72,7 +72,7 @@ function collectRiskFactors(tree, nodes) {
72
72
  return risks;
73
73
  }
74
74
  /**
75
- * 剧情路径推演( trace_plot_paths(from_node_id, to_node_id))。
75
+ * 剧情路径推演(trace_plot_paths(from_node_id, to_node_id))。
76
76
  * 输出 paths(树路径优先,随后连线路径);两节点不存在/已软删 → null(查询无结果)。
77
77
  * signal:连线路径遍历为长任务候选,循环中检查。
78
78
  */
@@ -95,7 +95,7 @@ export function runTracePlotPaths(ctx, args, signal) {
95
95
  risk_factors: collectRiskFactors(tree, treePath.nodes),
96
96
  });
97
97
  }
98
- // 2. plot_edge 连线路径( 画布连线;有向 BFS 沿 source→target,depth=3 上限)
98
+ // 2. plot_edge 连线路径(画布连线;有向 BFS 沿 source→target,depth=3 上限)
99
99
  const edgeResult = listRelations(ctx.db, { relationType: "plot_edge", sourceId: args.from_node_id }, 3, ctx.outlineDir);
100
100
  for (const p of edgeResult.paths ?? []) {
101
101
  throwIfAborted(signal);
@@ -1 +1 @@
1
- {"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/analysis/path.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,kDAAkD;AAClD,qDAAqD;AACrD,+DAA+D;AAC/D,0DAA0D;AAC1D,6CAA6C;AAC7C,sEAAsE;AAEtE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGjH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAiB5C,wDAAwD;AACxD,SAAS,QAAQ,CAAC,IAAiC,EAAE,EAAU;IAC7D,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,eAAe;IACtF,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAClB,IAAqB,EACrB,MAAc,EACd,IAAY;IAEZ,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,QAAkB,CAAC;IACvB,IAAI,MAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3C,MAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,gCAAgC;IAC/C,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,+BAA+B;IACvE,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAChH,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,+BAA+B;IACrE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACzH,CAAC;IACD,OAAO,IAAI,CAAC,CAAC,OAAO;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,IAAqB,EAAE,KAA8B;IAC/E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,MAAM,uBAAuB,CAAC,CAAC;IAC1D,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YACxC,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;YAC3D,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,qBAAqB,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,uBAAuB,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK,gBAAgB,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAgB,EAAE,IAAwB,EAAE,MAAoB;IAChG,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAClD,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACxG,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,MAAM,KAAK,GAAe,EAAE,CAAC;IAE9B,2BAA2B;IAC1B,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACvE,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,WAAW,EAAE,QAAQ,CAAC,QAAQ;gBAC5B,CAAC,CAAC,UAAU,IAAI,CAAC,YAAY,MAAM,IAAI,CAAC,UAAU,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,MAAM;gBACpF,CAAC,CAAC,YAAY,IAAI,CAAC,YAAY,MAAM,IAAI,CAAC,UAAU,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,MAAM;YACxF,YAAY,EAAE,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC;SACvD,CAAC,CAAC;IACL,CAAC;IAEF,6DAA6D;IAC5D,MAAM,UAAU,GAAG,aAAa,CAC9B,GAAG,CAAC,EAAE,EACN,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,EAC1D,CAAC,EACD,GAAG,CAAC,UAAU,CACf,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QACvC,cAAc,CAAC,MAAM,CAAC,CAAC;QACvB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,UAAU;YAAE,SAAS,CAAC,gBAAgB;QACjF,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,WAAW,EAAE,wBAAwB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI;YAC3D,YAAY,EAAE,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;SAChD,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/analysis/path.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { ToolContext } from "../context.js";
2
- import type { SuggestConnectionsArgs } from "@whispering233/ai-editor-shared";
3
- /** 潜在关联建议( suggest_connections 返回项) */
2
+ import type { SuggestConnectionsArgs } from "../schemas/index.js";
3
+ /** 潜在关联建议(suggest_connections 返回项) */
4
4
  export interface ConnectionSuggestion {
5
5
  target_id: string;
6
6
  /** 建议的关系类型(预定义枚举;用户确认后可建立) */
@@ -8,7 +8,7 @@ export interface ConnectionSuggestion {
8
8
  reason: string;
9
9
  }
10
10
  /**
11
- * 潜在关系发现( suggest_connections(entity_id))。
11
+ * 潜在关系发现(suggest_connections(entity_id))。
12
12
  * 实体不存在/已软删 → null(查询无结果);同类型无其他实体 → 空建议。
13
13
  * 信号优先级:共享场景(S1)> 共同邻居(S2),每候选最多一条建议(取最强信号);
14
14
  * 软删对象不可见(查询层默认过滤);已有直接关系的候选跳过。
@@ -1 +1 @@
1
- {"version":3,"file":"suggest.d.ts","sourceRoot":"","sources":["../../src/analysis/suggest.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAE9E,uCAAuC;AACvC,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAUD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,WAAW,EAAE,oBAAoB,EAAE,CAAA;CAAE,GAAG,IAAI,CAyE1J"}
1
+ {"version":3,"file":"suggest.d.ts","sourceRoot":"","sources":["../../src/analysis/suggest.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,sCAAsC;AACtC,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAUD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,WAAW,EAAE,oBAAoB,EAAE,CAAA;CAAE,GAAG,IAAI,CAyE1J"}
@@ -15,7 +15,7 @@ function sceneTitleOf(relations, sceneId) {
15
15
  return relations.find((r) => r.targetId === sceneId)?.targetName ?? sceneId;
16
16
  }
17
17
  /**
18
- * 潜在关系发现( suggest_connections(entity_id))。
18
+ * 潜在关系发现(suggest_connections(entity_id))。
19
19
  * 实体不存在/已软删 → null(查询无结果);同类型无其他实体 → 空建议。
20
20
  * 信号优先级:共享场景(S1)> 共同邻居(S2),每候选最多一条建议(取最强信号);
21
21
  * 软删对象不可见(查询层默认过滤);已有直接关系的候选跳过。
package/dist/context.d.ts CHANGED
@@ -2,7 +2,7 @@ import type { Db } from "@whispering233/ai-editor-db";
2
2
  export interface ToolContext {
3
3
  /** 当前项目的 data.db 连接(@whispering233/ai-editor-db openDatabase 返回值) */
4
4
  db: Db;
5
- /** 项目根目录(outline.json 所在目录,;关系/Delta 端点软删校验读树用) */
5
+ /** 项目根目录(outline.json 所在目录;关系/Delta 端点软删校验读树用) */
6
6
  outlineDir: string;
7
7
  /** 当前项目 id(proj- 前缀;提案归属绑定,S6.6 使用) */
8
8
  projectId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAEtD,MAAM,WAAW,WAAW;IAC3B,qEAAqE;IACpE,EAAE,EAAE,EAAE,CAAC;IACR,mDAAmD;IAClD,UAAU,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACtC,SAAS,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAEtD,MAAM,WAAW,WAAW;IAC3B,qEAAqE;IACpE,EAAE,EAAE,EAAE,CAAC;IACR,kDAAkD;IACjD,UAAU,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACtC,SAAS,EAAE,MAAM,CAAC;CACnB"}