@roarpeng/graphflow 1.9.4 → 1.9.12

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 (245) hide show
  1. package/CHANGELOG.md +133 -0
  2. package/README.md +193 -107
  3. package/dist/agents/atp-example-producer.d.ts +33 -0
  4. package/dist/agents/atp-example-producer.d.ts.map +1 -0
  5. package/dist/agents/atp-example-producer.js +154 -0
  6. package/dist/agents/atp-example-producer.js.map +1 -0
  7. package/dist/agents/planner.d.ts.map +1 -1
  8. package/dist/agents/planner.js +14 -8
  9. package/dist/agents/planner.js.map +1 -1
  10. package/dist/config/defaults.d.ts.map +1 -1
  11. package/dist/config/defaults.js +5 -3
  12. package/dist/config/defaults.js.map +1 -1
  13. package/dist/config/include-extensions.d.ts +3 -1
  14. package/dist/config/include-extensions.d.ts.map +1 -1
  15. package/dist/config/include-extensions.js +6 -3
  16. package/dist/config/include-extensions.js.map +1 -1
  17. package/dist/config/loader.js +1 -1
  18. package/dist/config/loader.js.map +1 -1
  19. package/dist/core/agent-delegation.d.ts +16 -2
  20. package/dist/core/agent-delegation.d.ts.map +1 -1
  21. package/dist/core/agent-delegation.js +48 -5
  22. package/dist/core/agent-delegation.js.map +1 -1
  23. package/dist/core/merge-agent-insight.d.ts.map +1 -1
  24. package/dist/core/merge-agent-insight.js +10 -0
  25. package/dist/core/merge-agent-insight.js.map +1 -1
  26. package/dist/core/orchestrator-episode.d.ts.map +1 -1
  27. package/dist/core/orchestrator-episode.js +24 -0
  28. package/dist/core/orchestrator-episode.js.map +1 -1
  29. package/dist/core/orchestrator.js +52 -1
  30. package/dist/core/orchestrator.js.map +1 -1
  31. package/dist/core/submit-agent-insight.d.ts +17 -0
  32. package/dist/core/submit-agent-insight.d.ts.map +1 -1
  33. package/dist/core/submit-agent-insight.js +28 -0
  34. package/dist/core/submit-agent-insight.js.map +1 -1
  35. package/dist/core/types.d.ts +35 -2
  36. package/dist/core/types.d.ts.map +1 -1
  37. package/dist/graph/client-factory.d.ts +4 -0
  38. package/dist/graph/client-factory.d.ts.map +1 -1
  39. package/dist/graph/client-factory.js +83 -7
  40. package/dist/graph/client-factory.js.map +1 -1
  41. package/dist/graph/context-slicer-types.d.ts +4 -0
  42. package/dist/graph/context-slicer-types.d.ts.map +1 -1
  43. package/dist/graph/context-slicer-types.js +3 -0
  44. package/dist/graph/context-slicer-types.js.map +1 -1
  45. package/dist/graph/context-slicer.d.ts.map +1 -1
  46. package/dist/graph/context-slicer.js +154 -6
  47. package/dist/graph/context-slicer.js.map +1 -1
  48. package/dist/graph/document-convert.d.ts +33 -0
  49. package/dist/graph/document-convert.d.ts.map +1 -0
  50. package/dist/graph/document-convert.js +137 -0
  51. package/dist/graph/document-convert.js.map +1 -0
  52. package/dist/graph/document-semantic-bridge.d.ts +23 -0
  53. package/dist/graph/document-semantic-bridge.d.ts.map +1 -0
  54. package/dist/graph/document-semantic-bridge.js +61 -0
  55. package/dist/graph/document-semantic-bridge.js.map +1 -0
  56. package/dist/graph/document-semantic-ingest.d.ts +48 -0
  57. package/dist/graph/document-semantic-ingest.d.ts.map +1 -0
  58. package/dist/graph/document-semantic-ingest.js +229 -0
  59. package/dist/graph/document-semantic-ingest.js.map +1 -0
  60. package/dist/graph/episode-engineering-links.d.ts +29 -0
  61. package/dist/graph/episode-engineering-links.d.ts.map +1 -0
  62. package/dist/graph/episode-engineering-links.js +63 -0
  63. package/dist/graph/episode-engineering-links.js.map +1 -0
  64. package/dist/graph/file-indexer-edges.d.ts +26 -0
  65. package/dist/graph/file-indexer-edges.d.ts.map +1 -1
  66. package/dist/graph/file-indexer-edges.js +120 -20
  67. package/dist/graph/file-indexer-edges.js.map +1 -1
  68. package/dist/graph/file-indexer-nodes.d.ts +18 -0
  69. package/dist/graph/file-indexer-nodes.d.ts.map +1 -1
  70. package/dist/graph/file-indexer-nodes.js +0 -0
  71. package/dist/graph/file-indexer-nodes.js.map +1 -1
  72. package/dist/graph/file-indexer-walker.d.ts +4 -1
  73. package/dist/graph/file-indexer-walker.d.ts.map +1 -1
  74. package/dist/graph/file-indexer-walker.js +33 -16
  75. package/dist/graph/file-indexer-walker.js.map +1 -1
  76. package/dist/graph/file-indexer.d.ts +5 -0
  77. package/dist/graph/file-indexer.d.ts.map +1 -1
  78. package/dist/graph/file-indexer.js +162 -50
  79. package/dist/graph/file-indexer.js.map +1 -1
  80. package/dist/graph/graph-compression.d.ts +11 -2
  81. package/dist/graph/graph-compression.d.ts.map +1 -1
  82. package/dist/graph/graph-compression.js +153 -16
  83. package/dist/graph/graph-compression.js.map +1 -1
  84. package/dist/graph/graphify-client.d.ts +1 -0
  85. package/dist/graph/graphify-client.d.ts.map +1 -1
  86. package/dist/graph/graphify-client.js +24 -9
  87. package/dist/graph/graphify-client.js.map +1 -1
  88. package/dist/graph/graphify-file-client.d.ts +1 -0
  89. package/dist/graph/graphify-file-client.d.ts.map +1 -1
  90. package/dist/graph/graphify-file-client.js +8 -2
  91. package/dist/graph/graphify-file-client.js.map +1 -1
  92. package/dist/graph/language-indexers/c-cpp.d.ts.map +1 -1
  93. package/dist/graph/language-indexers/c-cpp.js +19 -13
  94. package/dist/graph/language-indexers/c-cpp.js.map +1 -1
  95. package/dist/graph/language-indexers/dart.d.ts.map +1 -1
  96. package/dist/graph/language-indexers/dart.js +2 -6
  97. package/dist/graph/language-indexers/dart.js.map +1 -1
  98. package/dist/graph/language-indexers/go.d.ts.map +1 -1
  99. package/dist/graph/language-indexers/go.js +3 -6
  100. package/dist/graph/language-indexers/go.js.map +1 -1
  101. package/dist/graph/language-indexers/java.d.ts.map +1 -1
  102. package/dist/graph/language-indexers/java.js +2 -6
  103. package/dist/graph/language-indexers/java.js.map +1 -1
  104. package/dist/graph/language-indexers/kotlin.d.ts.map +1 -1
  105. package/dist/graph/language-indexers/kotlin.js +2 -6
  106. package/dist/graph/language-indexers/kotlin.js.map +1 -1
  107. package/dist/graph/language-indexers/python.d.ts.map +1 -1
  108. package/dist/graph/language-indexers/python.js +4 -6
  109. package/dist/graph/language-indexers/python.js.map +1 -1
  110. package/dist/graph/language-indexers/ruby.d.ts.map +1 -1
  111. package/dist/graph/language-indexers/ruby.js +2 -6
  112. package/dist/graph/language-indexers/ruby.js.map +1 -1
  113. package/dist/graph/language-indexers/rust.d.ts.map +1 -1
  114. package/dist/graph/language-indexers/rust.js +3 -6
  115. package/dist/graph/language-indexers/rust.js.map +1 -1
  116. package/dist/graph/language-indexers/swift.d.ts.map +1 -1
  117. package/dist/graph/language-indexers/swift.js +2 -6
  118. package/dist/graph/language-indexers/swift.js.map +1 -1
  119. package/dist/graph/language-indexers/tree-sitter-loader.d.ts +20 -0
  120. package/dist/graph/language-indexers/tree-sitter-loader.d.ts.map +1 -1
  121. package/dist/graph/language-indexers/tree-sitter-loader.js +42 -0
  122. package/dist/graph/language-indexers/tree-sitter-loader.js.map +1 -1
  123. package/dist/graph/memory-pack.d.ts +46 -0
  124. package/dist/graph/memory-pack.d.ts.map +1 -0
  125. package/dist/graph/memory-pack.js +204 -0
  126. package/dist/graph/memory-pack.js.map +1 -0
  127. package/dist/graph/snapshot-view.d.ts.map +1 -1
  128. package/dist/graph/snapshot-view.js +26 -1
  129. package/dist/graph/snapshot-view.js.map +1 -1
  130. package/dist/graph/sqlite-client.d.ts +1 -0
  131. package/dist/graph/sqlite-client.d.ts.map +1 -1
  132. package/dist/graph/sqlite-client.js +15 -4
  133. package/dist/graph/sqlite-client.js.map +1 -1
  134. package/dist/graph/symbol-extract.d.ts +39 -0
  135. package/dist/graph/symbol-extract.d.ts.map +1 -0
  136. package/dist/graph/symbol-extract.js +187 -0
  137. package/dist/graph/symbol-extract.js.map +1 -0
  138. package/dist/hooks/auto-capture.d.ts +87 -0
  139. package/dist/hooks/auto-capture.d.ts.map +1 -0
  140. package/dist/hooks/auto-capture.js +182 -0
  141. package/dist/hooks/auto-capture.js.map +1 -0
  142. package/dist/index.d.ts +7 -2
  143. package/dist/index.d.ts.map +1 -1
  144. package/dist/index.js +21 -2
  145. package/dist/index.js.map +1 -1
  146. package/dist/integrations/agent-mcp-installer.d.ts +87 -5
  147. package/dist/integrations/agent-mcp-installer.d.ts.map +1 -1
  148. package/dist/integrations/agent-mcp-installer.js +418 -60
  149. package/dist/integrations/agent-mcp-installer.js.map +1 -1
  150. package/dist/integrations/agent-profiles/profiles/qoder.d.ts.map +1 -1
  151. package/dist/integrations/agent-profiles/profiles/qoder.js +14 -2
  152. package/dist/integrations/agent-profiles/profiles/qoder.js.map +1 -1
  153. package/dist/integrations/agent-profiles/skills/qoder.js +6 -0
  154. package/dist/integrations/agent-profiles/skills/qoder.js.map +1 -1
  155. package/dist/integrations/claude-code-hooks.d.ts +95 -0
  156. package/dist/integrations/claude-code-hooks.d.ts.map +1 -0
  157. package/dist/integrations/claude-code-hooks.js +321 -0
  158. package/dist/integrations/claude-code-hooks.js.map +1 -0
  159. package/dist/integrations/ensure-anydoc.d.ts +41 -0
  160. package/dist/integrations/ensure-anydoc.d.ts.map +1 -0
  161. package/dist/integrations/ensure-anydoc.js +221 -0
  162. package/dist/integrations/ensure-anydoc.js.map +1 -0
  163. package/dist/integrations/skill-installer.d.ts +26 -3
  164. package/dist/integrations/skill-installer.d.ts.map +1 -1
  165. package/dist/integrations/skill-installer.js +148 -4
  166. package/dist/integrations/skill-installer.js.map +1 -1
  167. package/dist/learning/canary-gate.d.ts +39 -0
  168. package/dist/learning/canary-gate.d.ts.map +1 -0
  169. package/dist/learning/canary-gate.js +57 -0
  170. package/dist/learning/canary-gate.js.map +1 -0
  171. package/dist/learning/skill-consolidate.d.ts +84 -0
  172. package/dist/learning/skill-consolidate.d.ts.map +1 -0
  173. package/dist/learning/skill-consolidate.js +353 -0
  174. package/dist/learning/skill-consolidate.js.map +1 -0
  175. package/dist/learning/skill-flywheel.d.ts +26 -0
  176. package/dist/learning/skill-flywheel.d.ts.map +1 -1
  177. package/dist/learning/skill-flywheel.js +192 -29
  178. package/dist/learning/skill-flywheel.js.map +1 -1
  179. package/dist/learning/skill-opt-lite.d.ts +46 -0
  180. package/dist/learning/skill-opt-lite.d.ts.map +1 -0
  181. package/dist/learning/skill-opt-lite.js +270 -0
  182. package/dist/learning/skill-opt-lite.js.map +1 -0
  183. package/dist/learning/skill-package.d.ts.map +1 -1
  184. package/dist/learning/skill-package.js +80 -6
  185. package/dist/learning/skill-package.js.map +1 -1
  186. package/dist/learning/skill-store.d.ts.map +1 -1
  187. package/dist/learning/skill-store.js +13 -0
  188. package/dist/learning/skill-store.js.map +1 -1
  189. package/dist/learning/skill-types.d.ts +32 -0
  190. package/dist/learning/skill-types.d.ts.map +1 -1
  191. package/dist/learning/skill-types.js +17 -0
  192. package/dist/learning/skill-types.js.map +1 -1
  193. package/dist/skills/index.js +1 -1
  194. package/dist/skills/index.js.map +1 -1
  195. package/dist/surfaces/cli/index.js +46 -5
  196. package/dist/surfaces/cli/index.js.map +1 -1
  197. package/dist/surfaces/cli/init.d.ts +17 -4
  198. package/dist/surfaces/cli/init.d.ts.map +1 -1
  199. package/dist/surfaces/cli/init.js +71 -8
  200. package/dist/surfaces/cli/init.js.map +1 -1
  201. package/dist/surfaces/cli/output.d.ts.map +1 -1
  202. package/dist/surfaces/cli/output.js +4 -2
  203. package/dist/surfaces/cli/output.js.map +1 -1
  204. package/dist/surfaces/cli/runtime/facade.d.ts +2 -1
  205. package/dist/surfaces/cli/runtime/facade.d.ts.map +1 -1
  206. package/dist/surfaces/cli/runtime/facade.js +1 -0
  207. package/dist/surfaces/cli/runtime/facade.js.map +1 -1
  208. package/dist/surfaces/cli/runtime/graph.d.ts +59 -2
  209. package/dist/surfaces/cli/runtime/graph.d.ts.map +1 -1
  210. package/dist/surfaces/cli/runtime/graph.js +120 -7
  211. package/dist/surfaces/cli/runtime/graph.js.map +1 -1
  212. package/dist/surfaces/cli/runtime/learning.d.ts +19 -0
  213. package/dist/surfaces/cli/runtime/learning.d.ts.map +1 -1
  214. package/dist/surfaces/cli/runtime/learning.js +46 -0
  215. package/dist/surfaces/cli/runtime/learning.js.map +1 -1
  216. package/dist/surfaces/cli/runtime/routing.d.ts +6 -3
  217. package/dist/surfaces/cli/runtime/routing.d.ts.map +1 -1
  218. package/dist/surfaces/cli/runtime/routing.js +70 -7
  219. package/dist/surfaces/cli/runtime/routing.js.map +1 -1
  220. package/dist/surfaces/cli/runtime/types.d.ts +54 -0
  221. package/dist/surfaces/cli/runtime/types.d.ts.map +1 -1
  222. package/dist/surfaces/cli/runtime.d.ts +3 -3
  223. package/dist/surfaces/cli/runtime.d.ts.map +1 -1
  224. package/dist/surfaces/cli/runtime.js +6 -2
  225. package/dist/surfaces/cli/runtime.js.map +1 -1
  226. package/dist/surfaces/mcp/server.d.ts +12 -4
  227. package/dist/surfaces/mcp/server.d.ts.map +1 -1
  228. package/dist/surfaces/mcp/server.js +270 -97
  229. package/dist/surfaces/mcp/server.js.map +1 -1
  230. package/dist/surfaces/mcp/tool-definitions.d.ts.map +1 -1
  231. package/dist/surfaces/mcp/tool-definitions.js +15 -0
  232. package/dist/surfaces/mcp/tool-definitions.js.map +1 -1
  233. package/dist/surfaces/mcp/tool-handlers.d.ts +5 -3
  234. package/dist/surfaces/mcp/tool-handlers.d.ts.map +1 -1
  235. package/dist/surfaces/mcp/tool-handlers.js +36 -6
  236. package/dist/surfaces/mcp/tool-handlers.js.map +1 -1
  237. package/dist/utils/logger.d.ts +8 -0
  238. package/dist/utils/logger.d.ts.map +1 -1
  239. package/dist/utils/logger.js +54 -5
  240. package/dist/utils/logger.js.map +1 -1
  241. package/mcp.json +14 -0
  242. package/package.json +19 -1
  243. package/plugin.json +21 -0
  244. package/scripts/safe-postinstall.cjs +36 -1
  245. package/skills/graphflow/SKILL.md +565 -0
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createGraphClient = createGraphClient;
4
4
  const paths_1 = require("../config/paths");
5
5
  const logger_1 = require("../utils/logger");
6
+ const graph_compression_1 = require("./graph-compression");
6
7
  const graphify_client_1 = require("./graphify-client");
7
8
  const graphify_file_client_1 = require("./graphify-file-client");
8
9
  const graphify_mcp_client_1 = require("./graphify-mcp-client");
@@ -33,10 +34,83 @@ class InMemoryGraphClientAdapter {
33
34
  async deleteNode(id) {
34
35
  return this.client.deleteNode(id);
35
36
  }
37
+ async deleteNodes(ids) {
38
+ return this.client.deleteNodes(ids);
39
+ }
36
40
  async deleteEdge(from, to, relation) {
37
41
  return this.client.deleteEdge(from, to, relation);
38
42
  }
39
43
  }
44
+ /**
45
+ * 变更感知装饰器:把图写入/删除转发给底层 client,同时调用 markGraphMutated()
46
+ * 维护 PageRank 缓存的影响面失效标记(见 graph-compression.ts)。
47
+ * 纯增量装饰:读路径(queryByKeyword / readSnapshot / getNodesByIds /
48
+ * getNeighbors / vacuum)原样透传,写路径在成功后按触及节点打标记。
49
+ */
50
+ class MutationAwareGraphClient {
51
+ inner;
52
+ constructor(inner) {
53
+ this.inner = inner;
54
+ }
55
+ async upsertNodes(nodes) {
56
+ await this.inner.upsertNodes(nodes);
57
+ (0, graph_compression_1.markGraphMutated)(nodes.map((n) => n.id));
58
+ }
59
+ async upsertEdges(edges) {
60
+ await this.inner.upsertEdges(edges);
61
+ const touched = new Set();
62
+ for (const edge of edges) {
63
+ touched.add(edge.from);
64
+ touched.add(edge.to);
65
+ }
66
+ (0, graph_compression_1.markGraphMutated)(touched);
67
+ }
68
+ async queryByKeyword(query) {
69
+ return this.inner.queryByKeyword(query);
70
+ }
71
+ readSnapshot() {
72
+ // 所有被包装的后端(file/sqlite/memory/mcp)均实现 readSnapshot,
73
+ // `?.` 仅作防御;接口此处为可选方法,调用方先做存在性检查。
74
+ return this.inner.readSnapshot?.();
75
+ }
76
+ async getNodesByIds(ids) {
77
+ return this.inner.getNodesByIds?.(ids) ?? [];
78
+ }
79
+ async getNeighbors(nodeIds, relations, direction) {
80
+ return this.inner.getNeighbors?.(nodeIds, relations, direction) ?? [];
81
+ }
82
+ async deleteNode(id) {
83
+ if (this.inner.deleteNode) {
84
+ await this.inner.deleteNode(id);
85
+ (0, graph_compression_1.markGraphMutated)([id]);
86
+ }
87
+ }
88
+ async deleteNodes(ids) {
89
+ if (this.inner.deleteNodes) {
90
+ await this.inner.deleteNodes(ids);
91
+ (0, graph_compression_1.markGraphMutated)(ids);
92
+ }
93
+ else if (this.inner.deleteNode) {
94
+ for (const id of ids) {
95
+ await this.inner.deleteNode(id);
96
+ }
97
+ (0, graph_compression_1.markGraphMutated)(ids);
98
+ }
99
+ }
100
+ async deleteEdge(from, to, relation) {
101
+ if (this.inner.deleteEdge) {
102
+ await this.inner.deleteEdge(from, to, relation);
103
+ (0, graph_compression_1.markGraphMutated)([from, to]);
104
+ }
105
+ }
106
+ vacuum() {
107
+ return this.inner.vacuum?.();
108
+ }
109
+ close() {
110
+ // sqlite 后端必须显式 close 释放文件句柄,否则 Windows 上删除/解锁会 EBUSY
111
+ return this.inner.close?.();
112
+ }
113
+ }
40
114
  function createGraphClient(config) {
41
115
  if (config.graphPolicy.transport === "mcp-http") {
42
116
  // Team backend pilot: remote Graphify server, transparently falling back
@@ -49,26 +123,28 @@ function createGraphClient(config) {
49
123
  }
50
124
  const fallbackPath = (0, paths_1.resolveGraphStorePath)(config);
51
125
  try {
126
+ // mcp-http 是远程试点后端:PageRank 影响面标记只作用于本地图,
127
+ // 且远程 client 有 isDegraded 等特有契约,这里不做装饰器包装。
52
128
  return new graphify_mcp_client_1.GraphifyMcpClient(endpoint, config.graphPolicy.mcpApiKey, { fallbackPath });
53
129
  }
54
130
  catch (err) {
55
131
  const msg = err instanceof Error ? err.message : String(err);
56
132
  logger_1.logger.warn({ err, fallbackPath }, `[graphflow] mcp-http transport unavailable, falling back to file. Reason: ${msg}`);
57
- return new graphify_file_client_1.GraphifyFileClient(fallbackPath);
133
+ return new MutationAwareGraphClient(new graphify_file_client_1.GraphifyFileClient(fallbackPath));
58
134
  }
59
135
  }
60
136
  if (config.graphPolicy.transport === "file") {
61
- return new graphify_file_client_1.GraphifyFileClient((0, paths_1.resolveGraphStorePath)(config));
137
+ return new MutationAwareGraphClient(new graphify_file_client_1.GraphifyFileClient((0, paths_1.resolveGraphStorePath)(config)));
62
138
  }
63
139
  if (config.graphPolicy.transport === "sqlite") {
64
140
  try {
65
- return new sqlite_client_1.GraphifySqliteClient((0, paths_1.resolveGraphStorePath)(config));
141
+ return new MutationAwareGraphClient(new sqlite_client_1.GraphifySqliteClient((0, paths_1.resolveGraphStorePath)(config)));
66
142
  }
67
143
  catch (err) {
68
144
  const msg = err instanceof Error ? err.message : String(err);
69
145
  const fallbackPath = (0, paths_1.resolveGraphStorePath)(config).replace(/\.sqlite$/i, ".json");
70
146
  logger_1.logger.warn({ err, fallbackPath }, `[graphflow] sqlite transport unavailable, falling back to file. Reason: ${msg}`);
71
- return new graphify_file_client_1.GraphifyFileClient(fallbackPath);
147
+ return new MutationAwareGraphClient(new graphify_file_client_1.GraphifyFileClient(fallbackPath));
72
148
  }
73
149
  }
74
150
  if (config.graphPolicy.transport === "auto") {
@@ -77,14 +153,14 @@ function createGraphClient(config) {
77
153
  // better-sqlite3 is unavailable (e.g. missing optional dependency).
78
154
  const sqlitePath = (0, paths_1.resolveGraphStorePath)(config).replace(/\.json$/i, ".sqlite");
79
155
  try {
80
- return new sqlite_client_1.GraphifySqliteClient(sqlitePath);
156
+ return new MutationAwareGraphClient(new sqlite_client_1.GraphifySqliteClient(sqlitePath));
81
157
  }
82
158
  catch {
83
159
  const fallbackPath = sqlitePath.replace(/\.sqlite$/i, ".json");
84
160
  logger_1.logger.info({ fallbackPath }, "[graphflow] auto transport: sqlite unavailable, using file store");
85
- return new graphify_file_client_1.GraphifyFileClient(fallbackPath);
161
+ return new MutationAwareGraphClient(new graphify_file_client_1.GraphifyFileClient(fallbackPath));
86
162
  }
87
163
  }
88
- return new InMemoryGraphClientAdapter(new graphify_client_1.GraphifyClient());
164
+ return new MutationAwareGraphClient(new InMemoryGraphClientAdapter(new graphify_client_1.GraphifyClient()));
89
165
  }
90
166
  //# sourceMappingURL=client-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-factory.js","sourceRoot":"","sources":["../../src/graph/client-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-factory.js","sourceRoot":"","sources":["../../src/graph/client-factory.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,10 @@ export interface LayeredPackageOptions {
48
48
  englishQuery?: string;
49
49
  /** Optional path to persist the vector index across process restarts. */
50
50
  hnswIndexPath?: string;
51
+ /** Hard cap on anchor count. Default 15. Set to Infinity to disable. */
52
+ maxAnchors?: number;
53
+ /** Always inject L2 module nodes and L3 skill/decision nodes regardless of query pattern. Default false. */
54
+ enableAlwaysOnLayers?: boolean;
51
55
  }
52
56
  export interface SubgraphExpansionOptions {
53
57
  hops?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"context-slicer-types.d.ts","sourceRoot":"","sources":["../../src/graph/context-slicer-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE;QACX,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,uFAAuF;IACvF,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;IACnD,sDAAsD;IACtD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,wHAAwH;IACxH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC9D,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACpD;AAED,eAAO,MAAM,2BAA2B,EAAE,SAAS,CAAC,UAAU,CAAC,EAO9D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,QAC4G,CAAC"}
1
+ {"version":3,"file":"context-slicer-types.d.ts","sourceRoot":"","sources":["../../src/graph/context-slicer-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE;QACX,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,uFAAuF;IACvF,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;IACnD,sDAAsD;IACtD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,wHAAwH;IACxH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4GAA4G;IAC5G,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC9D,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACpD;AAED,eAAO,MAAM,2BAA2B,EAAE,SAAS,CAAC,UAAU,CAAC,EAU9D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,QAC4G,CAAC"}
@@ -8,6 +8,9 @@ exports.DEFAULT_EXPANSION_RELATIONS = [
8
8
  "prerequisite",
9
9
  "calls",
10
10
  "defines",
11
+ "documents",
12
+ "implements",
13
+ "derived_from",
11
14
  ];
12
15
  /**
13
16
  * Overview / architecture retrieval intent (EN + CJK).
@@ -1 +1 @@
1
- {"version":3,"file":"context-slicer-types.js","sourceRoot":"","sources":["../../src/graph/context-slicer-types.ts"],"names":[],"mappings":";;;AAoEa,QAAA,2BAA2B,GAA4B;IAClE,YAAY;IACZ,SAAS;IACT,YAAY;IACZ,cAAc;IACd,OAAO;IACP,SAAS;CACV,CAAC;AAEF;;;GAGG;AACU,QAAA,kBAAkB,GAC7B,yIAAyI,CAAC"}
1
+ {"version":3,"file":"context-slicer-types.js","sourceRoot":"","sources":["../../src/graph/context-slicer-types.ts"],"names":[],"mappings":";;;AAwEa,QAAA,2BAA2B,GAA4B;IAClE,YAAY;IACZ,SAAS;IACT,YAAY;IACZ,cAAc;IACd,OAAO;IACP,SAAS;IACT,WAAW;IACX,YAAY;IACZ,cAAc;CACf,CAAC;AAEF;;;GAGG;AACU,QAAA,kBAAkB,GAC7B,yIAAyI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"context-slicer.d.ts","sourceRoot":"","sources":["../../src/graph/context-slicer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAMlD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAavD,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,UAAU,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAY5B,OAAO,KAAK,EACV,YAAY,EAEZ,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAGnC,wBAAsB,cAAc,CAClC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,SAAS,EAAE,CAAC,CAyBtB;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,CAAC,CAGvB;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAAE,EAClB,cAAc,EAAE,MAAM,EAAE,EACxB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB,SAAS,EAAE,CAWb;AA+CD,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CA4KhC;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,oBAAoB,CAsCtB;AAED;;;;;;;;;GASG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CAiJhC"}
1
+ {"version":3,"file":"context-slicer.d.ts","sourceRoot":"","sources":["../../src/graph/context-slicer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAMlD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAcvD,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,UAAU,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAa5B,OAAO,KAAK,EACV,YAAY,EAEZ,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAGnC,wBAAsB,cAAc,CAClC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,SAAS,EAAE,CAAC,CAyBtB;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,CAAC,CAGvB;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAAE,EAClB,cAAc,EAAE,MAAM,EAAE,EACxB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB,SAAS,EAAE,CAWb;AA+CD,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CA4KhC;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,oBAAoB,CAsCtB;AAED;;;;;;;;;GASG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CA2QhC"}
@@ -15,6 +15,7 @@ const hit_diversify_js_1 = require("./hit-diversify.js");
15
15
  const graph_compression_js_1 = require("./graph-compression.js");
16
16
  const repo_map_js_1 = require("./repo-map.js");
17
17
  const adaptive_budget_js_1 = require("./adaptive-budget.js");
18
+ const symbol_extract_js_1 = require("./symbol-extract.js");
18
19
  var context_slicer_types_js_1 = require("./context-slicer-types.js");
19
20
  Object.defineProperty(exports, "DEFAULT_EXPANSION_RELATIONS", { enumerable: true, get: function () { return context_slicer_types_js_1.DEFAULT_EXPANSION_RELATIONS; } });
20
21
  Object.defineProperty(exports, "ARCHITECTURE_QUERY", { enumerable: true, get: function () { return context_slicer_types_js_1.ARCHITECTURE_QUERY; } });
@@ -333,6 +334,15 @@ async function buildEnhancedContextPackage(client, query, task, maxTokens, optio
333
334
  // Step 2: Keyword retrieval (CJK-aware multi-query RRF when workspaceRoot is set).
334
335
  const keywordHits = await (0, query_expand_js_1.collectExpandedKeywordHits)(client, query, options?.workspaceRoot, options?.englishQuery);
335
336
  let hits = keywordHits;
337
+ // Step 2b: Symbol-aware boosting — extract camelCase/PascalCase tokens from
338
+ // the task description and fetch matching symbol nodes to improve recall.
339
+ const symbolCandidates = (0, symbol_extract_js_1.extractSymbolCandidates)(task);
340
+ if (symbolCandidates.length > 0) {
341
+ const symbolHits = await (0, symbol_extract_js_1.fetchSymbolCandidates)(client, symbolCandidates, 8);
342
+ if (symbolHits.length > 0) {
343
+ hits = (0, embeddings_js_1.reciprocalRankFusion)([hits, symbolHits]);
344
+ }
345
+ }
336
346
  if (options?.enableVectorRecall === true && options.embeddingProvider) {
337
347
  try {
338
348
  const queryEmbedding = await options.embeddingProvider.embed(query);
@@ -369,7 +379,8 @@ async function buildEnhancedContextPackage(client, query, task, maxTokens, optio
369
379
  ...(options?.englishQuery !== undefined ? { englishQuery: options.englishQuery } : {}),
370
380
  ...(snapshotNodes !== undefined ? { allNodes: snapshotNodes } : {}),
371
381
  });
372
- // Step 4: Build layered package (existing logic).
382
+ // Step 4: Build layered package with anchor cap.
383
+ const maxAnchors = options?.maxAnchors ?? 15;
373
384
  const summaryChannel = [];
374
385
  const anchorChannel = [];
375
386
  let tokens = 0;
@@ -381,11 +392,17 @@ async function buildEnhancedContextPackage(client, query, task, maxTokens, optio
381
392
  };
382
393
  const used = { l1: 0, l2: 0, l3: 0 };
383
394
  const added = new Set();
395
+ const hitById = new Map();
396
+ for (const hit of hits)
397
+ hitById.set(hit.id, hit);
384
398
  for (const hit of hits) {
399
+ if (anchorChannel.length >= maxAnchors) {
400
+ truncated = true;
401
+ break;
402
+ }
385
403
  const layer = (0, context_slicer_utils_js_2.classifyLayer)(hit);
386
- if (!(0, context_slicer_utils_js_2.canUseLayer)(layer, quota, used)) {
404
+ if (!(0, context_slicer_utils_js_2.canUseLayer)(layer, quota, used))
387
405
  continue;
388
- }
389
406
  const summary = `${hit.type}: ${hit.content}`;
390
407
  const estimate = (0, context_slicer_utils_js_2.estimateTokens)(summary);
391
408
  if (tokens + estimate > maxTokens) {
@@ -398,14 +415,145 @@ async function buildEnhancedContextPackage(client, query, task, maxTokens, optio
398
415
  tokens += estimate;
399
416
  (0, context_slicer_utils_js_2.markLayerUsed)(layer, used);
400
417
  }
401
- // Step 5: Edge expansion (existing logic).
418
+ // Step 4b: L2 module injection — aggregate file/symbol hits into module overviews.
419
+ if (!truncated && anchorChannel.length < maxAnchors) {
420
+ const moduleIds = new Set();
421
+ for (const anchor of anchorChannel) {
422
+ if (anchor.layer !== "L1" || (anchor.type !== "File" && anchor.type !== "Symbol"))
423
+ continue;
424
+ const moduleId = (0, context_slicer_utils_js_2.deriveModuleId)(anchor, hitById.get(anchor.id));
425
+ if (moduleId)
426
+ moduleIds.add(moduleId);
427
+ }
428
+ let moduleNodes = [];
429
+ if (moduleIds.size > 0 && typeof client.getNodesByIds === "function") {
430
+ moduleNodes = await client.getNodesByIds(Array.from(moduleIds));
431
+ }
432
+ for (const moduleId of moduleIds) {
433
+ if (added.has(moduleId) || anchorChannel.length >= maxAnchors)
434
+ break;
435
+ if (!(0, context_slicer_utils_js_2.canUseLayer)("L2", quota, used))
436
+ break;
437
+ const node = moduleNodes.find((n) => n.id === moduleId) ??
438
+ ({ id: moduleId, type: "Module", content: moduleId.slice("module:".length) });
439
+ const summary = `${node.type}: ${node.content}`;
440
+ const estimate = (0, context_slicer_utils_js_2.estimateTokens)(summary);
441
+ if (tokens + estimate > maxTokens) {
442
+ truncated = true;
443
+ break;
444
+ }
445
+ summaryChannel.push(summary);
446
+ anchorChannel.push({ id: node.id, type: node.type, layer: "L2" });
447
+ added.add(node.id);
448
+ tokens += estimate;
449
+ (0, context_slicer_utils_js_2.markLayerUsed)("L2", used);
450
+ }
451
+ }
452
+ // Step 4c: L3 skill/decision injection — always-on when enableAlwaysOnLayers,
453
+ // otherwise only for architecture queries.
454
+ const archIntent = context_slicer_types_js_2.ARCHITECTURE_QUERY.test((0, graph_utils_js_1.composeContextQuery)(query, options?.englishQuery));
455
+ if (!truncated && anchorChannel.length < maxAnchors && (options?.enableAlwaysOnLayers || archIntent)) {
456
+ const l3Candidates = (0, graph_utils_js_1.rankNodesForContextQuery)((await client.queryByKeyword(query)).filter((n) => n.type === "Skill" || n.type === "Decision"), query, {
457
+ scoreTokens: (0, graph_utils_js_1.buildSearchScoreTokens)(query, options?.englishQuery),
458
+ matchQueries: options?.englishQuery?.trim()
459
+ ? [query, options.englishQuery.trim()]
460
+ : [query],
461
+ ...(options?.englishQuery !== undefined ? { englishQuery: options.englishQuery } : {}),
462
+ });
463
+ let l3Added = 0;
464
+ for (const node of l3Candidates) {
465
+ if (l3Added >= 2 || anchorChannel.length >= maxAnchors)
466
+ break;
467
+ if (added.has(node.id))
468
+ continue;
469
+ if (!(0, context_slicer_utils_js_2.canUseLayer)("L3", quota, used))
470
+ break;
471
+ const summary = `${node.type}: ${node.content}`;
472
+ const estimate = (0, context_slicer_utils_js_2.estimateTokens)(summary);
473
+ if (tokens + estimate > maxTokens) {
474
+ truncated = true;
475
+ break;
476
+ }
477
+ summaryChannel.push(summary);
478
+ anchorChannel.push({ id: node.id, type: node.type, layer: "L3" });
479
+ added.add(node.id);
480
+ tokens += estimate;
481
+ (0, context_slicer_utils_js_2.markLayerUsed)("L3", used);
482
+ l3Added += 1;
483
+ }
484
+ }
485
+ // Step 5: Import-based multi-hop expansion + same-file symbol boosting.
486
+ // Find files that import the anchored files, AND add symbols from anchored
487
+ // files to improve symbol-level recall.
488
+ if (!truncated && anchorChannel.length < maxAnchors) {
489
+ const seedFilePaths = [];
490
+ for (const anchor of anchorChannel) {
491
+ if (anchor.type === "File" && anchor.id.startsWith("file:")) {
492
+ seedFilePaths.push(anchor.id.slice("file:".length));
493
+ }
494
+ else if (anchor.type === "Symbol") {
495
+ const fp = (0, context_slicer_utils_js_2.extractFileFromSymbolId)(anchor.id);
496
+ if (fp)
497
+ seedFilePaths.push(fp);
498
+ }
499
+ }
500
+ // 5a: Same-file symbol boosting — add symbols from anchored files
501
+ if (seedFilePaths.length > 0 && snapshotNodes) {
502
+ for (const node of snapshotNodes) {
503
+ if (added.has(node.id) || anchorChannel.length >= maxAnchors)
504
+ continue;
505
+ if (node.type !== "Symbol")
506
+ continue;
507
+ const nodeFile = (0, context_slicer_utils_js_2.extractFileFromSymbolId)(node.id);
508
+ if (!nodeFile)
509
+ continue;
510
+ const inSeedFile = seedFilePaths.some(sp => nodeFile.includes(sp.replace(/\.(ts|tsx|js|jsx|py|go|rs)$/, "")) ||
511
+ sp.replace(/\.(ts|tsx|js|jsx|py|go|rs)$/, "").includes(nodeFile.replace(/\.(ts|tsx|js|jsx|py|go|rs)$/, "")));
512
+ if (!inSeedFile)
513
+ continue;
514
+ const layer = (0, context_slicer_utils_js_2.classifyLayer)(node);
515
+ const summary = `${node.type}: ${node.content}`;
516
+ const estimate = (0, context_slicer_utils_js_2.estimateTokens)(summary);
517
+ if (tokens + estimate > maxTokens) {
518
+ truncated = true;
519
+ break;
520
+ }
521
+ summaryChannel.push(summary);
522
+ anchorChannel.push({ id: node.id, type: node.type, layer });
523
+ added.add(node.id);
524
+ tokens += estimate;
525
+ (0, context_slicer_utils_js_2.markLayerUsed)(layer, used);
526
+ }
527
+ }
528
+ // 5b: Import-based expansion
529
+ if (seedFilePaths.length > 0 && anchorChannel.length < maxAnchors) {
530
+ const importHits = await (0, symbol_extract_js_1.collectImportRelatedFiles)(client, seedFilePaths, 5);
531
+ for (const node of importHits) {
532
+ if (added.has(node.id) || anchorChannel.length >= maxAnchors)
533
+ continue;
534
+ const layer = (0, context_slicer_utils_js_2.classifyLayer)(node);
535
+ const summary = `${node.type}: ${node.content}`;
536
+ const estimate = (0, context_slicer_utils_js_2.estimateTokens)(summary);
537
+ if (tokens + estimate > maxTokens) {
538
+ truncated = true;
539
+ break;
540
+ }
541
+ summaryChannel.push(summary);
542
+ anchorChannel.push({ id: node.id, type: node.type, layer });
543
+ added.add(node.id);
544
+ tokens += estimate;
545
+ (0, context_slicer_utils_js_2.markLayerUsed)(layer, used);
546
+ }
547
+ }
548
+ }
549
+ // Step 6: Edge expansion (respects anchor cap).
402
550
  const enableExpansion = options?.enableEdgeExpansion !== false;
403
- if (enableExpansion && !truncated && typeof client.getNeighbors === "function") {
551
+ if (enableExpansion && !truncated && anchorChannel.length < maxAnchors && typeof client.getNeighbors === "function") {
404
552
  const seedIds = anchorChannel.slice(0, 5).map((a) => a.id);
405
553
  if (seedIds.length > 0) {
406
554
  const expanded = await expandSubgraph(client, seedIds, { hops: 1 });
407
555
  for (const node of expanded) {
408
- if (added.has(node.id))
556
+ if (added.has(node.id) || anchorChannel.length >= maxAnchors)
409
557
  continue;
410
558
  const layer = (0, context_slicer_utils_js_2.classifyLayer)(node);
411
559
  if (!(0, context_slicer_utils_js_2.canUseLayer)(layer, quota, used))
@@ -1 +1 @@
1
- {"version":3,"file":"context-slicer.js","sourceRoot":"","sources":["../../src/graph/context-slicer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-slicer.js","sourceRoot":"","sources":["../../src/graph/context-slicer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * document-convert.ts — Office/PDF → Markdown via @firecrawl/anydoc (optional).
3
+ *
4
+ * Survey (2026): Firecrawl anydoc leads format coverage/speed for Node;
5
+ * Microsoft MarkItDown is Python/LLM-oriented; Pandoc needs system install.
6
+ * GraphFlow prefers local-first Node: optionalDependency on @firecrawl/anydoc.
7
+ */
8
+ /** Extensions converted to Markdown before graph indexing. */
9
+ export declare const OFFICE_DOCUMENT_EXTENSIONS: readonly [".pdf", ".doc", ".docx", ".docm", ".ppt", ".pptx", ".pptm", ".xls", ".xlsx", ".xlsm", ".odt", ".ods", ".odp", ".rtf", ".epub", ".csv"];
10
+ export type OfficeDocumentExtension = (typeof OFFICE_DOCUMENT_EXTENSIONS)[number];
11
+ /** Larger than source files — PDFs/DOCX often exceed 200KB. */
12
+ export declare const DEFAULT_DOCUMENT_MAX_FILE_SIZE = 5000000;
13
+ export declare function isOfficeDocumentPath(filePath: string): boolean;
14
+ export interface DocumentConvertResult {
15
+ markdown: string;
16
+ converter: "anydoc" | "unavailable";
17
+ skippedReason?: string;
18
+ }
19
+ type AnydocModule = {
20
+ toMarkdown?: (path: string) => Promise<string>;
21
+ toMarkdownBytes?: (bytes: Uint8Array, format?: string) => Promise<string>;
22
+ };
23
+ /** Test hook: reset optional-dep load cache. */
24
+ export declare function resetDocumentConverterCache(): void;
25
+ /** Test hook: inject a fake converter module. */
26
+ export declare function setDocumentConverterForTests(mod: AnydocModule | null): void;
27
+ /**
28
+ * Convert an office/PDF file to Markdown.
29
+ * Returns skippedReason when the optional converter is missing or conversion fails softly.
30
+ */
31
+ export declare function convertDocumentToMarkdown(absPath: string, bytes?: Buffer): Promise<DocumentConvertResult>;
32
+ export {};
33
+ //# sourceMappingURL=document-convert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-convert.d.ts","sourceRoot":"","sources":["../../src/graph/document-convert.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,8DAA8D;AAC9D,eAAO,MAAM,0BAA0B,kJAiB7B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAElF,+DAA+D;AAC/D,eAAO,MAAM,8BAA8B,UAAY,CAAC;AAExD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAG9D;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,QAAQ,GAAG,aAAa,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,KAAK,YAAY,GAAG;IAClB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3E,CAAC;AAsCF,gDAAgD;AAChD,wBAAgB,2BAA2B,IAAI,IAAI,CAGlD;AAED,iDAAiD;AACjD,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,IAAI,CAG3E;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,qBAAqB,CAAC,CA0ChC"}