@roarpeng/graphflow 1.7.0 → 1.7.5

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 (332) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/README.md +13 -10
  3. package/dist/agents/insight.d.ts +13 -2
  4. package/dist/agents/insight.d.ts.map +1 -1
  5. package/dist/agents/insight.js +56 -26
  6. package/dist/agents/insight.js.map +1 -1
  7. package/dist/agents/task-profile.d.ts +19 -0
  8. package/dist/agents/task-profile.d.ts.map +1 -0
  9. package/dist/agents/task-profile.js +64 -0
  10. package/dist/agents/task-profile.js.map +1 -0
  11. package/dist/agents/validator.js +1 -1
  12. package/dist/agents/validator.js.map +1 -1
  13. package/dist/config/defaults.d.ts.map +1 -1
  14. package/dist/config/defaults.js +3 -1
  15. package/dist/config/defaults.js.map +1 -1
  16. package/dist/config/discover-workspace.d.ts.map +1 -1
  17. package/dist/config/discover-workspace.js +10 -2
  18. package/dist/config/discover-workspace.js.map +1 -1
  19. package/dist/config/embedding-factory.d.ts.map +1 -1
  20. package/dist/config/embedding-factory.js +88 -9
  21. package/dist/config/embedding-factory.js.map +1 -1
  22. package/dist/config/loader.d.ts.map +1 -1
  23. package/dist/config/loader.js +9 -2
  24. package/dist/config/loader.js.map +1 -1
  25. package/dist/config/provider-env.d.ts +32 -0
  26. package/dist/config/provider-env.d.ts.map +1 -0
  27. package/dist/config/provider-env.js +51 -0
  28. package/dist/config/provider-env.js.map +1 -0
  29. package/dist/config/resolve.d.ts.map +1 -1
  30. package/dist/config/resolve.js +7 -2
  31. package/dist/config/resolve.js.map +1 -1
  32. package/dist/config/schema.d.ts +17 -2
  33. package/dist/config/schema.d.ts.map +1 -1
  34. package/dist/config/workspace-root.d.ts +0 -12
  35. package/dist/config/workspace-root.d.ts.map +1 -1
  36. package/dist/config/workspace-root.js +21 -5
  37. package/dist/config/workspace-root.js.map +1 -1
  38. package/dist/core/agent-delegation.d.ts +5 -0
  39. package/dist/core/agent-delegation.d.ts.map +1 -1
  40. package/dist/core/agent-delegation.js +131 -57
  41. package/dist/core/agent-delegation.js.map +1 -1
  42. package/dist/core/cancellation.d.ts +57 -0
  43. package/dist/core/cancellation.d.ts.map +1 -0
  44. package/dist/core/cancellation.js +195 -0
  45. package/dist/core/cancellation.js.map +1 -0
  46. package/dist/core/dag-engine.d.ts +6 -1
  47. package/dist/core/dag-engine.d.ts.map +1 -1
  48. package/dist/core/dag-engine.js +67 -9
  49. package/dist/core/dag-engine.js.map +1 -1
  50. package/dist/core/orchestrator-context.d.ts.map +1 -1
  51. package/dist/core/orchestrator-context.js +3 -0
  52. package/dist/core/orchestrator-context.js.map +1 -1
  53. package/dist/core/orchestrator-route.d.ts +1 -1
  54. package/dist/core/orchestrator-route.d.ts.map +1 -1
  55. package/dist/core/orchestrator-route.js.map +1 -1
  56. package/dist/core/orchestrator.d.ts.map +1 -1
  57. package/dist/core/orchestrator.js +61 -42
  58. package/dist/core/orchestrator.js.map +1 -1
  59. package/dist/core/runtime-controller.d.ts +19 -0
  60. package/dist/core/runtime-controller.d.ts.map +1 -0
  61. package/dist/core/runtime-controller.js +89 -0
  62. package/dist/core/runtime-controller.js.map +1 -0
  63. package/dist/core/types.d.ts +5 -0
  64. package/dist/core/types.d.ts.map +1 -1
  65. package/dist/graph/context-cache.d.ts +23 -0
  66. package/dist/graph/context-cache.d.ts.map +1 -0
  67. package/dist/graph/context-cache.js +92 -0
  68. package/dist/graph/context-cache.js.map +1 -0
  69. package/dist/graph/context-slicer-types.d.ts +2 -0
  70. package/dist/graph/context-slicer-types.d.ts.map +1 -1
  71. package/dist/graph/context-slicer-types.js.map +1 -1
  72. package/dist/graph/context-slicer.d.ts +1 -0
  73. package/dist/graph/context-slicer.d.ts.map +1 -1
  74. package/dist/graph/context-slicer.js +54 -8
  75. package/dist/graph/context-slicer.js.map +1 -1
  76. package/dist/graph/file-indexer.d.ts +4 -1
  77. package/dist/graph/file-indexer.d.ts.map +1 -1
  78. package/dist/graph/file-indexer.js +16 -5
  79. package/dist/graph/file-indexer.js.map +1 -1
  80. package/dist/graph/file-watcher.d.ts.map +1 -1
  81. package/dist/graph/file-watcher.js +9 -2
  82. package/dist/graph/file-watcher.js.map +1 -1
  83. package/dist/graph/graph-utils.d.ts +6 -1
  84. package/dist/graph/graph-utils.d.ts.map +1 -1
  85. package/dist/graph/graph-utils.js +116 -2
  86. package/dist/graph/graph-utils.js.map +1 -1
  87. package/dist/graph/graphify-file-client.d.ts.map +1 -1
  88. package/dist/graph/graphify-file-client.js +2 -1
  89. package/dist/graph/graphify-file-client.js.map +1 -1
  90. package/dist/graph/hit-diversify.d.ts +31 -0
  91. package/dist/graph/hit-diversify.d.ts.map +1 -0
  92. package/dist/graph/hit-diversify.js +270 -0
  93. package/dist/graph/hit-diversify.js.map +1 -0
  94. package/dist/graph/language-indexers/go.d.ts.map +1 -1
  95. package/dist/graph/language-indexers/go.js +2 -3
  96. package/dist/graph/language-indexers/go.js.map +1 -1
  97. package/dist/graph/language-indexers/incremental-parse.d.ts +9 -0
  98. package/dist/graph/language-indexers/incremental-parse.d.ts.map +1 -0
  99. package/dist/graph/language-indexers/incremental-parse.js +114 -0
  100. package/dist/graph/language-indexers/incremental-parse.js.map +1 -0
  101. package/dist/graph/language-indexers/python.d.ts.map +1 -1
  102. package/dist/graph/language-indexers/python.js +2 -3
  103. package/dist/graph/language-indexers/python.js.map +1 -1
  104. package/dist/graph/language-indexers/rust.d.ts.map +1 -1
  105. package/dist/graph/language-indexers/rust.js +2 -3
  106. package/dist/graph/language-indexers/rust.js.map +1 -1
  107. package/dist/graph/language-indexers/tree-sitter-loader.d.ts +19 -3
  108. package/dist/graph/language-indexers/tree-sitter-loader.d.ts.map +1 -1
  109. package/dist/graph/language-indexers/tree-sitter-loader.js +24 -4
  110. package/dist/graph/language-indexers/tree-sitter-loader.js.map +1 -1
  111. package/dist/graph/query-expand.d.ts.map +1 -1
  112. package/dist/graph/query-expand.js +2 -0
  113. package/dist/graph/query-expand.js.map +1 -1
  114. package/dist/index.d.ts +1 -1
  115. package/dist/index.d.ts.map +1 -1
  116. package/dist/index.js +2 -1
  117. package/dist/index.js.map +1 -1
  118. package/dist/integrations/agent-mcp-installer.d.ts +39 -0
  119. package/dist/integrations/agent-mcp-installer.d.ts.map +1 -1
  120. package/dist/integrations/agent-mcp-installer.js +242 -31
  121. package/dist/integrations/agent-mcp-installer.js.map +1 -1
  122. package/dist/integrations/agent-profiles/index.d.ts +26 -0
  123. package/dist/integrations/agent-profiles/index.d.ts.map +1 -0
  124. package/dist/integrations/agent-profiles/index.js +31 -0
  125. package/dist/integrations/agent-profiles/index.js.map +1 -0
  126. package/dist/integrations/agent-profiles/profiles/amazon-q.d.ts +2 -0
  127. package/dist/integrations/agent-profiles/profiles/amazon-q.d.ts.map +1 -0
  128. package/dist/integrations/agent-profiles/profiles/amazon-q.js +18 -0
  129. package/dist/integrations/agent-profiles/profiles/amazon-q.js.map +1 -0
  130. package/dist/integrations/agent-profiles/profiles/antigravity.d.ts +2 -0
  131. package/dist/integrations/agent-profiles/profiles/antigravity.d.ts.map +1 -0
  132. package/dist/integrations/agent-profiles/profiles/antigravity.js +33 -0
  133. package/dist/integrations/agent-profiles/profiles/antigravity.js.map +1 -0
  134. package/dist/integrations/agent-profiles/profiles/claude-code.d.ts +2 -0
  135. package/dist/integrations/agent-profiles/profiles/claude-code.d.ts.map +1 -0
  136. package/dist/integrations/agent-profiles/profiles/claude-code.js +22 -0
  137. package/dist/integrations/agent-profiles/profiles/claude-code.js.map +1 -0
  138. package/dist/integrations/agent-profiles/profiles/cline.d.ts +2 -0
  139. package/dist/integrations/agent-profiles/profiles/cline.d.ts.map +1 -0
  140. package/dist/integrations/agent-profiles/profiles/cline.js +33 -0
  141. package/dist/integrations/agent-profiles/profiles/cline.js.map +1 -0
  142. package/dist/integrations/agent-profiles/profiles/codex.d.ts +2 -0
  143. package/dist/integrations/agent-profiles/profiles/codex.d.ts.map +1 -0
  144. package/dist/integrations/agent-profiles/profiles/codex.js +22 -0
  145. package/dist/integrations/agent-profiles/profiles/codex.js.map +1 -0
  146. package/dist/integrations/agent-profiles/profiles/continue.d.ts +2 -0
  147. package/dist/integrations/agent-profiles/profiles/continue.d.ts.map +1 -0
  148. package/dist/integrations/agent-profiles/profiles/continue.js +23 -0
  149. package/dist/integrations/agent-profiles/profiles/continue.js.map +1 -0
  150. package/dist/integrations/agent-profiles/profiles/cursor.d.ts +2 -0
  151. package/dist/integrations/agent-profiles/profiles/cursor.d.ts.map +1 -0
  152. package/dist/integrations/agent-profiles/profiles/cursor.js +28 -0
  153. package/dist/integrations/agent-profiles/profiles/cursor.js.map +1 -0
  154. package/dist/integrations/agent-profiles/profiles/gemini.d.ts +2 -0
  155. package/dist/integrations/agent-profiles/profiles/gemini.d.ts.map +1 -0
  156. package/dist/integrations/agent-profiles/profiles/gemini.js +30 -0
  157. package/dist/integrations/agent-profiles/profiles/gemini.js.map +1 -0
  158. package/dist/integrations/agent-profiles/profiles/kilocode.d.ts +2 -0
  159. package/dist/integrations/agent-profiles/profiles/kilocode.d.ts.map +1 -0
  160. package/dist/integrations/agent-profiles/profiles/kilocode.js +33 -0
  161. package/dist/integrations/agent-profiles/profiles/kilocode.js.map +1 -0
  162. package/dist/integrations/agent-profiles/profiles/pearai.d.ts +2 -0
  163. package/dist/integrations/agent-profiles/profiles/pearai.d.ts.map +1 -0
  164. package/dist/integrations/agent-profiles/profiles/pearai.js +23 -0
  165. package/dist/integrations/agent-profiles/profiles/pearai.js.map +1 -0
  166. package/dist/integrations/agent-profiles/profiles/qoder.d.ts +2 -0
  167. package/dist/integrations/agent-profiles/profiles/qoder.d.ts.map +1 -0
  168. package/dist/integrations/agent-profiles/profiles/qoder.js +32 -0
  169. package/dist/integrations/agent-profiles/profiles/qoder.js.map +1 -0
  170. package/dist/integrations/agent-profiles/profiles/roo-code.d.ts +2 -0
  171. package/dist/integrations/agent-profiles/profiles/roo-code.d.ts.map +1 -0
  172. package/dist/integrations/agent-profiles/profiles/roo-code.js +33 -0
  173. package/dist/integrations/agent-profiles/profiles/roo-code.js.map +1 -0
  174. package/dist/integrations/agent-profiles/profiles/trae.d.ts +2 -0
  175. package/dist/integrations/agent-profiles/profiles/trae.d.ts.map +1 -0
  176. package/dist/integrations/agent-profiles/profiles/trae.js +42 -0
  177. package/dist/integrations/agent-profiles/profiles/trae.js.map +1 -0
  178. package/dist/integrations/agent-profiles/profiles/vscode.d.ts +2 -0
  179. package/dist/integrations/agent-profiles/profiles/vscode.d.ts.map +1 -0
  180. package/dist/integrations/agent-profiles/profiles/vscode.js +28 -0
  181. package/dist/integrations/agent-profiles/profiles/vscode.js.map +1 -0
  182. package/dist/integrations/agent-profiles/profiles/windsurf.d.ts +2 -0
  183. package/dist/integrations/agent-profiles/profiles/windsurf.d.ts.map +1 -0
  184. package/dist/integrations/agent-profiles/profiles/windsurf.js +21 -0
  185. package/dist/integrations/agent-profiles/profiles/windsurf.js.map +1 -0
  186. package/dist/integrations/agent-profiles/profiles/zed.d.ts +2 -0
  187. package/dist/integrations/agent-profiles/profiles/zed.d.ts.map +1 -0
  188. package/dist/integrations/agent-profiles/profiles/zed.js +26 -0
  189. package/dist/integrations/agent-profiles/profiles/zed.js.map +1 -0
  190. package/dist/integrations/agent-profiles/registry.d.ts +5 -0
  191. package/dist/integrations/agent-profiles/registry.d.ts.map +1 -0
  192. package/dist/integrations/agent-profiles/registry.js +45 -0
  193. package/dist/integrations/agent-profiles/registry.js.map +1 -0
  194. package/dist/integrations/agent-profiles/skills/antigravity.d.ts +2 -0
  195. package/dist/integrations/agent-profiles/skills/antigravity.d.ts.map +1 -0
  196. package/dist/integrations/agent-profiles/skills/antigravity.js +13 -0
  197. package/dist/integrations/agent-profiles/skills/antigravity.js.map +1 -0
  198. package/dist/integrations/agent-profiles/skills/claude-code.d.ts +2 -0
  199. package/dist/integrations/agent-profiles/skills/claude-code.d.ts.map +1 -0
  200. package/dist/integrations/agent-profiles/skills/claude-code.js +13 -0
  201. package/dist/integrations/agent-profiles/skills/claude-code.js.map +1 -0
  202. package/dist/integrations/agent-profiles/skills/codex.d.ts +2 -0
  203. package/dist/integrations/agent-profiles/skills/codex.d.ts.map +1 -0
  204. package/dist/integrations/agent-profiles/skills/codex.js +18 -0
  205. package/dist/integrations/agent-profiles/skills/codex.js.map +1 -0
  206. package/dist/integrations/agent-profiles/skills/cursor.d.ts +2 -0
  207. package/dist/integrations/agent-profiles/skills/cursor.d.ts.map +1 -0
  208. package/dist/integrations/agent-profiles/skills/cursor.js +13 -0
  209. package/dist/integrations/agent-profiles/skills/cursor.js.map +1 -0
  210. package/dist/integrations/agent-profiles/skills/kilocode.d.ts +2 -0
  211. package/dist/integrations/agent-profiles/skills/kilocode.d.ts.map +1 -0
  212. package/dist/integrations/agent-profiles/skills/kilocode.js +13 -0
  213. package/dist/integrations/agent-profiles/skills/kilocode.js.map +1 -0
  214. package/dist/integrations/agent-profiles/skills/qoder.d.ts +2 -0
  215. package/dist/integrations/agent-profiles/skills/qoder.d.ts.map +1 -0
  216. package/dist/integrations/agent-profiles/skills/qoder.js +13 -0
  217. package/dist/integrations/agent-profiles/skills/qoder.js.map +1 -0
  218. package/dist/integrations/agent-profiles/skills/roo-code.d.ts +2 -0
  219. package/dist/integrations/agent-profiles/skills/roo-code.d.ts.map +1 -0
  220. package/dist/integrations/agent-profiles/skills/roo-code.js +13 -0
  221. package/dist/integrations/agent-profiles/skills/roo-code.js.map +1 -0
  222. package/dist/integrations/agent-profiles/types.d.ts +31 -0
  223. package/dist/integrations/agent-profiles/types.d.ts.map +1 -0
  224. package/dist/integrations/agent-profiles/types.js +3 -0
  225. package/dist/integrations/agent-profiles/types.js.map +1 -0
  226. package/dist/integrations/agent-profiles/utils.d.ts +12 -0
  227. package/dist/integrations/agent-profiles/utils.d.ts.map +1 -0
  228. package/dist/integrations/agent-profiles/utils.js +75 -0
  229. package/dist/integrations/agent-profiles/utils.js.map +1 -0
  230. package/dist/integrations/errors.d.ts +28 -0
  231. package/dist/integrations/errors.d.ts.map +1 -0
  232. package/dist/integrations/errors.js +97 -0
  233. package/dist/integrations/errors.js.map +1 -0
  234. package/dist/integrations/skill-health.d.ts +24 -0
  235. package/dist/integrations/skill-health.d.ts.map +1 -0
  236. package/dist/integrations/skill-health.js +111 -0
  237. package/dist/integrations/skill-health.js.map +1 -0
  238. package/dist/integrations/skill-installer.d.ts.map +1 -1
  239. package/dist/integrations/skill-installer.js +5 -8
  240. package/dist/integrations/skill-installer.js.map +1 -1
  241. package/dist/learning/embedding-quality.d.ts +46 -0
  242. package/dist/learning/embedding-quality.d.ts.map +1 -0
  243. package/dist/learning/embedding-quality.js +131 -0
  244. package/dist/learning/embedding-quality.js.map +1 -0
  245. package/dist/learning/embeddings.d.ts +45 -1
  246. package/dist/learning/embeddings.d.ts.map +1 -1
  247. package/dist/learning/embeddings.js +180 -5
  248. package/dist/learning/embeddings.js.map +1 -1
  249. package/dist/learning/skill-flywheel.d.ts +1 -1
  250. package/dist/learning/skill-flywheel.d.ts.map +1 -1
  251. package/dist/learning/skill-flywheel.js +10 -3
  252. package/dist/learning/skill-flywheel.js.map +1 -1
  253. package/dist/routing/deepseek-tools.d.ts +7 -0
  254. package/dist/routing/deepseek-tools.d.ts.map +1 -0
  255. package/dist/routing/deepseek-tools.js +154 -0
  256. package/dist/routing/deepseek-tools.js.map +1 -0
  257. package/dist/routing/model-router.d.ts +1 -1
  258. package/dist/routing/model-router.d.ts.map +1 -1
  259. package/dist/routing/model-router.js +5 -1
  260. package/dist/routing/model-router.js.map +1 -1
  261. package/dist/routing/provider-adapters/anthropic.d.ts.map +1 -1
  262. package/dist/routing/provider-adapters/anthropic.js +7 -4
  263. package/dist/routing/provider-adapters/anthropic.js.map +1 -1
  264. package/dist/routing/provider-adapters/bailian.d.ts.map +1 -1
  265. package/dist/routing/provider-adapters/bailian.js +7 -4
  266. package/dist/routing/provider-adapters/bailian.js.map +1 -1
  267. package/dist/routing/provider-adapters/deepseek.d.ts +5 -0
  268. package/dist/routing/provider-adapters/deepseek.d.ts.map +1 -0
  269. package/dist/routing/provider-adapters/deepseek.js +109 -0
  270. package/dist/routing/provider-adapters/deepseek.js.map +1 -0
  271. package/dist/routing/provider-adapters/doubao.d.ts.map +1 -1
  272. package/dist/routing/provider-adapters/doubao.js +7 -4
  273. package/dist/routing/provider-adapters/doubao.js.map +1 -1
  274. package/dist/routing/provider-adapters/openai.d.ts +2 -4
  275. package/dist/routing/provider-adapters/openai.d.ts.map +1 -1
  276. package/dist/routing/provider-adapters/openai.js +23 -32
  277. package/dist/routing/provider-adapters/openai.js.map +1 -1
  278. package/dist/routing/provider-adapters/types.d.ts +61 -0
  279. package/dist/routing/provider-adapters/types.d.ts.map +1 -0
  280. package/dist/routing/provider-adapters/types.js +56 -0
  281. package/dist/routing/provider-adapters/types.js.map +1 -0
  282. package/dist/routing/provider-executor.d.ts +6 -1
  283. package/dist/routing/provider-executor.d.ts.map +1 -1
  284. package/dist/routing/provider-executor.js +70 -39
  285. package/dist/routing/provider-executor.js.map +1 -1
  286. package/dist/routing/provider-health.d.ts.map +1 -1
  287. package/dist/routing/provider-health.js +7 -1
  288. package/dist/routing/provider-health.js.map +1 -1
  289. package/dist/routing/role-capabilities.d.ts +11 -0
  290. package/dist/routing/role-capabilities.d.ts.map +1 -0
  291. package/dist/routing/role-capabilities.js +94 -0
  292. package/dist/routing/role-capabilities.js.map +1 -0
  293. package/dist/surfaces/antigravity-rules/graphflow.md +3 -2
  294. package/dist/surfaces/cli/runtime/env.d.ts.map +1 -1
  295. package/dist/surfaces/cli/runtime/env.js +3 -0
  296. package/dist/surfaces/cli/runtime/env.js.map +1 -1
  297. package/dist/surfaces/cli/runtime/facade.d.ts +2 -1
  298. package/dist/surfaces/cli/runtime/facade.d.ts.map +1 -1
  299. package/dist/surfaces/cli/runtime/facade.js +1 -0
  300. package/dist/surfaces/cli/runtime/facade.js.map +1 -1
  301. package/dist/surfaces/cli/runtime/graph.d.ts.map +1 -1
  302. package/dist/surfaces/cli/runtime/graph.js +18 -2
  303. package/dist/surfaces/cli/runtime/graph.js.map +1 -1
  304. package/dist/surfaces/cli/runtime/routing.d.ts +3 -0
  305. package/dist/surfaces/cli/runtime/routing.d.ts.map +1 -1
  306. package/dist/surfaces/cli/runtime/routing.js +34 -6
  307. package/dist/surfaces/cli/runtime/routing.js.map +1 -1
  308. package/dist/surfaces/cli/runtime/types.d.ts +24 -1
  309. package/dist/surfaces/cli/runtime/types.d.ts.map +1 -1
  310. package/dist/surfaces/cli/runtime.d.ts +1 -1
  311. package/dist/surfaces/cli/runtime.d.ts.map +1 -1
  312. package/dist/surfaces/cli/runtime.js +2 -1
  313. package/dist/surfaces/cli/runtime.js.map +1 -1
  314. package/dist/surfaces/copilot-instructions/graphflow.md +3 -2
  315. package/dist/surfaces/cursor-rules/graphflow.mdc +3 -2
  316. package/dist/surfaces/mcp/server.js +17 -6
  317. package/dist/surfaces/mcp/server.js.map +1 -1
  318. package/dist/surfaces/mcp/tool-definitions.d.ts.map +1 -1
  319. package/dist/surfaces/mcp/tool-definitions.js +1 -1
  320. package/dist/surfaces/mcp/tool-definitions.js.map +1 -1
  321. package/dist/surfaces/mcp/tool-handlers.d.ts.map +1 -1
  322. package/dist/surfaces/mcp/tool-handlers.js +2 -0
  323. package/dist/surfaces/mcp/tool-handlers.js.map +1 -1
  324. package/dist/surfaces/trae-rules/graphflow.md +3 -2
  325. package/dist/surfaces/trae-skill/graphflow/SKILL.md +2 -0
  326. package/package.json +1 -1
  327. package/scripts/safe-postinstall.cjs +1 -0
  328. package/src/surfaces/antigravity-rules/graphflow.md +3 -2
  329. package/src/surfaces/copilot-instructions/graphflow.md +3 -2
  330. package/src/surfaces/cursor-rules/graphflow.mdc +3 -2
  331. package/src/surfaces/trae-rules/graphflow.md +3 -2
  332. package/src/surfaces/trae-skill/graphflow/SKILL.md +2 -0
@@ -1,15 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EMBEDDING_DIM = void 0;
3
+ exports.GRAPHFLOW_EMBEDDING_CACHE_DIR_ENV = exports.HASH_EMBEDDING_MODEL = exports.EMBEDDING_DIM = void 0;
4
4
  exports.warmupEmbeddingProvider = warmupEmbeddingProvider;
5
5
  exports.cosineSimilarity = cosineSimilarity;
6
+ exports.createHashEmbeddingProvider = createHashEmbeddingProvider;
7
+ exports.resolveTransformersCacheDir = resolveTransformersCacheDir;
8
+ exports.applyTransformersCacheDir = applyTransformersCacheDir;
9
+ exports.loadTransformersModule = loadTransformersModule;
6
10
  exports.createTransformersEmbeddingProvider = createTransformersEmbeddingProvider;
11
+ exports.createResilientLocalEmbeddingProvider = createResilientLocalEmbeddingProvider;
7
12
  exports.createOpenAiEmbeddingProvider = createOpenAiEmbeddingProvider;
8
13
  exports.extractEmbedding = extractEmbedding;
9
14
  exports.attachEmbedding = attachEmbedding;
10
15
  exports.embedAndAttachNodes = embedAndAttachNodes;
11
16
  exports.reciprocalRankFusion = reciprocalRankFusion;
17
+ const node_fs_1 = require("node:fs");
18
+ const node_module_1 = require("node:module");
19
+ const node_path_1 = require("node:path");
20
+ const node_url_1 = require("node:url");
21
+ const logger_1 = require("../utils/logger");
12
22
  exports.EMBEDDING_DIM = 384;
23
+ exports.HASH_EMBEDDING_MODEL = "fnv1a-384";
24
+ exports.GRAPHFLOW_EMBEDDING_CACHE_DIR_ENV = "GRAPHFLOW_EMBEDDING_CACHE_DIR";
13
25
  /**
14
26
  * 安全地预热 embedding provider。不会抛出异常,适合用 `void warmupEmbeddingProvider(p)` 非阻塞调用。
15
27
  * 预热失败不影响主流程,首个真实请求会再次尝试加载/推理。
@@ -43,14 +55,133 @@ function cosineSimilarity(a, b) {
43
55
  return 0;
44
56
  return dot / (Math.sqrt(na) * Math.sqrt(nb));
45
57
  }
46
- function createTransformersEmbeddingProvider() {
58
+ function fnv1a32(input) {
59
+ let hash = 0x811c9dc5;
60
+ for (let i = 0; i < input.length; i += 1) {
61
+ hash ^= input.charCodeAt(i);
62
+ hash = Math.imul(hash, 0x01000193);
63
+ }
64
+ return hash >>> 0;
65
+ }
66
+ function l2Normalize(vec) {
67
+ let norm = 0;
68
+ for (const v of vec) {
69
+ norm += v * v;
70
+ }
71
+ if (norm === 0) {
72
+ return vec;
73
+ }
74
+ const inv = 1 / Math.sqrt(norm);
75
+ return vec.map((v) => v * inv);
76
+ }
77
+ /**
78
+ * Zero-cost deterministic embedding (FNV-1a bag-of-tokens).
79
+ * Used when `@xenova/transformers` is unavailable (e.g. VS Code extension vendor bundle).
80
+ */
81
+ function createHashEmbeddingProvider(dimensions = exports.EMBEDDING_DIM) {
82
+ const dim = dimensions > 0 ? dimensions : exports.EMBEDDING_DIM;
83
+ return {
84
+ async embed(text) {
85
+ const vec = new Array(dim).fill(0);
86
+ const normalized = text.toLowerCase();
87
+ const tokens = normalized.split(/[^a-z0-9_\u4e00-\u9fff]+/).filter(Boolean);
88
+ const parts = tokens.length > 0 ? tokens : [normalized || "empty"];
89
+ for (const token of parts) {
90
+ const h1 = fnv1a32(token);
91
+ const h2 = fnv1a32(`${token}::2`);
92
+ vec[h1 % dim] = (vec[h1 % dim] ?? 0) + 1;
93
+ vec[h2 % dim] = (vec[h2 % dim] ?? 0) + 0.5;
94
+ }
95
+ return l2Normalize(vec);
96
+ },
97
+ async warmup() {
98
+ /* no-op: pure CPU hash */
99
+ },
100
+ };
101
+ }
102
+ function isModuleNotFoundError(error) {
103
+ if (!error || typeof error !== "object") {
104
+ return false;
105
+ }
106
+ const err = error;
107
+ if (err.code === "ERR_MODULE_NOT_FOUND" || err.code === "MODULE_NOT_FOUND") {
108
+ return true;
109
+ }
110
+ const message = err.message ?? "";
111
+ return (message.includes("Cannot find package '@xenova/transformers'") ||
112
+ message.includes("Cannot find module '@xenova/transformers'"));
113
+ }
114
+ function normalizeOptionalPath(value) {
115
+ const trimmed = value?.trim();
116
+ return trimmed ? trimmed : undefined;
117
+ }
118
+ function resolveTransformersCacheDir(modelCacheDir) {
119
+ return normalizeOptionalPath(modelCacheDir) ?? normalizeOptionalPath(process.env[exports.GRAPHFLOW_EMBEDDING_CACHE_DIR_ENV]);
120
+ }
121
+ function applyTransformersCacheDir(transformers, modelCacheDir) {
122
+ const cacheDir = resolveTransformersCacheDir(modelCacheDir);
123
+ if (!cacheDir) {
124
+ return undefined;
125
+ }
126
+ transformers.env ??= {};
127
+ transformers.env.cacheDir = cacheDir;
128
+ return cacheDir;
129
+ }
130
+ async function importTransformersFromRoot(root) {
131
+ const pkgJson = (0, node_path_1.join)(root, "package.json");
132
+ if (!(0, node_fs_1.existsSync)(pkgJson)) {
133
+ return null;
134
+ }
135
+ try {
136
+ const requireFromRoot = (0, node_module_1.createRequire)(pkgJson);
137
+ const resolved = requireFromRoot.resolve("@xenova/transformers");
138
+ return (await import((0, node_url_1.pathToFileURL)(resolved).href));
139
+ }
140
+ catch {
141
+ return null;
142
+ }
143
+ }
144
+ /**
145
+ * Load `@xenova/transformers`, optionally resolving from workspace node_modules
146
+ * when the bundled runtime (extension vendor) does not include the package.
147
+ */
148
+ async function loadTransformersModule(resolveRoots = []) {
149
+ try {
150
+ return (await import("@xenova/transformers"));
151
+ }
152
+ catch (primaryError) {
153
+ const roots = [...new Set(resolveRoots.filter((r) => typeof r === "string" && r.length > 0))];
154
+ for (const root of roots) {
155
+ const loaded = await importTransformersFromRoot(root);
156
+ if (loaded) {
157
+ logger_1.logger.info({ root }, "Loaded @xenova/transformers from workspace resolve root");
158
+ return loaded;
159
+ }
160
+ }
161
+ throw primaryError;
162
+ }
163
+ }
164
+ function createTransformersEmbeddingProvider(options) {
47
165
  let extractor = null;
166
+ let loadError = null;
167
+ const resolveRoots = options?.resolveRoots ?? [];
168
+ const loadModule = options?.loadModule ?? loadTransformersModule;
48
169
  async function getExtractor() {
49
170
  if (extractor)
50
171
  return extractor;
51
- const { pipeline } = await import("@xenova/transformers");
52
- extractor = await pipeline("feature-extraction", "Xenova/all-MiniLM-L6-v2");
53
- return extractor;
172
+ if (loadError)
173
+ throw loadError;
174
+ try {
175
+ const transformers = await loadModule(resolveRoots);
176
+ applyTransformersCacheDir(transformers, options?.modelCacheDir);
177
+ const { pipeline } = transformers;
178
+ extractor = await pipeline("feature-extraction", "Xenova/all-MiniLM-L6-v2");
179
+ return extractor;
180
+ }
181
+ catch (error) {
182
+ loadError = error;
183
+ throw error;
184
+ }
54
185
  }
55
186
  return {
56
187
  async embed(text) {
@@ -67,6 +198,50 @@ function createTransformersEmbeddingProvider() {
67
198
  },
68
199
  };
69
200
  }
201
+ /**
202
+ * Prefer transformers; on missing package / first load failure, permanently fall back to hash.
203
+ * Prevents ERR_MODULE_NOT_FOUND spam from vector recall in extension vendor runtimes.
204
+ */
205
+ function createResilientLocalEmbeddingProvider(options) {
206
+ const primary = createTransformersEmbeddingProvider({
207
+ resolveRoots: options?.resolveRoots ?? [],
208
+ ...(options?.modelCacheDir ? { modelCacheDir: options.modelCacheDir } : {}),
209
+ ...(options?.loadModule ? { loadModule: options.loadModule } : {}),
210
+ });
211
+ const fallback = createHashEmbeddingProvider();
212
+ let backend = "pending";
213
+ return {
214
+ getBackend() {
215
+ return backend;
216
+ },
217
+ async embed(text) {
218
+ if (backend === "hash") {
219
+ return fallback.embed(text);
220
+ }
221
+ if (backend === "transformers") {
222
+ return primary.embed(text);
223
+ }
224
+ try {
225
+ const vector = await primary.embed(text);
226
+ backend = "transformers";
227
+ return vector;
228
+ }
229
+ catch (error) {
230
+ backend = "hash";
231
+ logger_1.logger.warn({
232
+ error,
233
+ fallback: exports.HASH_EMBEDDING_MODEL,
234
+ reason: isModuleNotFoundError(error) ? "module-not-found" : "load-or-inference-failed",
235
+ }, "Transformers embedding unavailable; falling back to hash embedding");
236
+ options?.onFallback?.(error);
237
+ return fallback.embed(text);
238
+ }
239
+ },
240
+ async warmup() {
241
+ await this.embed("warmup");
242
+ },
243
+ };
244
+ }
70
245
  function createOpenAiEmbeddingProvider(options) {
71
246
  const base = options.baseUrl ?? "https://api.openai.com/v1";
72
247
  const model = options.model ?? "text-embedding-3-small";
@@ -1 +1 @@
1
- {"version":3,"file":"embeddings.js","sourceRoot":"","sources":["../../src/learning/embeddings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"embeddings.js","sourceRoot":"","sources":["../../src/learning/embeddings.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,6 @@ import type { GraphClient } from "../graph/client-factory";
3
3
  export type { SkillState, CompositeSkillState } from "./skill-types";
4
4
  export { composeSkillId, loadCompositeSkill } from "./skill-store";
5
5
  export declare function extractSkillAtoms(task: string): string[];
6
- export declare function applySkillLearning(client: GraphClient, task: string, run: TaskRunResult): Promise<void>;
6
+ export declare function applySkillLearning(client: GraphClient, task: string, run: TaskRunResult, lessons?: string[]): Promise<number>;
7
7
  export declare function suggestSkillHints(client: GraphClient, task: string, maxHints: number): Promise<string[]>;
8
8
  //# sourceMappingURL=skill-flywheel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skill-flywheel.d.ts","sourceRoot":"","sources":["../../src/learning/skill-flywheel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AA2B3D,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AA6CnE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAuCxD;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,aAAa,GACjB,OAAO,CAAC,IAAI,CAAC,CA8Ef;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,EAAE,CAAC,CA2FnB"}
1
+ {"version":3,"file":"skill-flywheel.d.ts","sourceRoot":"","sources":["../../src/learning/skill-flywheel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AA2B3D,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AA6CnE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAuCxD;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,aAAa,EAClB,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,CAqFjB;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,EAAE,CAAC,CA2FnB"}
@@ -73,10 +73,16 @@ function extractSkillAtoms(task) {
73
73
  .filter((skill) => !isBareStopword(skill))
74
74
  .slice(0, 8);
75
75
  }
76
- async function applySkillLearning(client, task, run) {
77
- const skills = extractSkillAtoms(task);
76
+ async function applySkillLearning(client, task, run, lessons) {
77
+ const lessonText = (lessons ?? [])
78
+ .map((lesson) => lesson.trim())
79
+ .filter((lesson) => lesson.length > 0);
80
+ // Prefer task atoms; fold reported lessons so bridge report_outcome can seed skills
81
+ // even when the original task string is too short/generic to extract atoms.
82
+ const learningCorpus = [task, ...lessonText].filter(Boolean).join(" and ");
83
+ const skills = extractSkillAtoms(learningCorpus);
78
84
  if (skills.length === 0) {
79
- return;
85
+ return 0;
80
86
  }
81
87
  const passed = run.status === "COMPLETED";
82
88
  const now = Date.now();
@@ -142,6 +148,7 @@ async function applySkillLearning(client, task, run) {
142
148
  }
143
149
  await client.upsertNodes(nodes);
144
150
  await client.upsertEdges((0, skill_store_1.dedupEdges)(edges));
151
+ return skills.length;
145
152
  }
146
153
  async function suggestSkillHints(client, task, maxHints) {
147
154
  const atoms = extractSkillAtoms(task);
@@ -1 +1 @@
1
- {"version":3,"file":"skill-flywheel.js","sourceRoot":"","sources":["../../src/learning/skill-flywheel.ts"],"names":[],"mappings":";;;AA2EA,8CAuCC;AAED,gDAkFC;AAED,8CA+FC;AAvSD,wCAAwD;AAWxD,mBAAmB;AACnB,+CAcuB;AAIvB,6CAAmE;AAA1D,6GAAA,cAAc,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AAE3C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO;IACjD,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI;IAClE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAClE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM;CACnE,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,4DAA4D,CAAC;AAEjF,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAc;IACtC,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI;SACR,KAAK,CAAC,KAAK,CAAC;SACZ,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;SACnD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;SACpC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACxC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,uFAAuF;AACvF,SAAS,kCAAkC,CAAC,MAAc;IACxD,OAAO,MAAM;SACV,KAAK,CAAC,KAAK,CAAC;SACZ,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;SACnD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;SACpC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACxC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,SAAgB,iBAAiB,CAAC,IAAY;IAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE7C,MAAM,OAAO,GAAG,UAAU;SACvB,KAAK,CAAC,cAAc,CAAC;SACrB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAEtC,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAChC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CACtD,CAAC;IACF,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CACzE,CAAC;IAEF,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACnE,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,SAAS;QACX,CAAC;QACD,WAAW,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAChD,MAAM,CACL,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,UAAU;QACd,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC;QACvB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CACtC;SACA,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAE3C,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;IAEjF,OAAO,IAAA,mBAAK,EAAC,CAAC,GAAG,WAAW,EAAE,GAAG,YAAY,EAAE,GAAG,gBAAgB,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC,CAAC;SAC7F,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;SACzC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACjB,CAAC;AAEM,KAAK,UAAU,kBAAkB,CACtC,MAAmB,EACnB,IAAY,EACZ,GAAkB;IAElB,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,MAAM,KAAK,GAAgB,EAAE,CAAC;IAE9B,6DAA6D;IAC7D,MAAM,UAAU,GAAG,iBAAiB,IAAA,kBAAQ,EAAC,IAAI,CAAC,EAAE,CAAC;IACrD,KAAK,CAAC,IAAI,CAAC;QACT,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;QAC3B,QAAQ,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE;KAChE,CAAC,CAAC;IAEH,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,IAAA,yBAAW,EAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAA,4BAAc,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,IAAI,GAAe;YACvB,EAAE;YACF,IAAI,EAAE,KAAK;YACX,KAAK,EAAE,IAAA,0BAAY,EAAC,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAC/B,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YACrC,SAAS,EAAE,GAAG;SACf,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAA,6BAAe,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,EAAE;YACR,EAAE,EAAE,UAAU;YACd,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;YACrB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,IAAA,yBAAW,EAAC,CAAC,CAAC;gBACpB,EAAE,EAAE,IAAA,yBAAW,EAAC,CAAC,CAAC;gBAClB,QAAQ,EAAE,WAAW;aACtB,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,IAAA,4BAAc,EAAC,EAAG,EAAE,EAAG,CAAC,CAAC;YAC7C,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAkB,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC/D,MAAM,SAAS,GAAwB;gBACrC,EAAE,EAAE,WAAW;gBACf,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;gBACnB,OAAO,EAAE,CAAC,IAAA,yBAAW,EAAC,EAAG,CAAC,EAAE,IAAA,yBAAW,EAAC,EAAG,CAAC,CAAC;gBAC7C,YAAY,EAAE,CAAC,QAAQ,EAAE,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC;gBAC/C,YAAY,EAAE,CAAC,QAAQ,EAAE,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9D,YAAY,EAAE,CAAC,QAAQ,EAAE,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9D,KAAK,EAAE,CAAC;gBACR,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC;gBACzB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;gBACrC,SAAS,EAAE,GAAG;aACf,CAAC;YACF,SAAS,CAAC,KAAK,GAAG,IAAA,0BAAY,EAAC,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;YAEhF,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAA,gCAAkB,EAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAEvF,IAAI,IAAA,8BAAgB,EAAC,SAAS,CAAC,EAAE,CAAC;gBAChC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAA,yBAAW,EAAC,EAAG,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;gBAClF,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAA,yBAAW,EAAC,EAAG,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,MAAM,CAAC,WAAW,CAAC,IAAA,wBAAU,EAAC,KAAK,CAAC,CAAC,CAAC;AAC9C,CAAC;AAEM,KAAK,UAAU,iBAAiB,CACrC,MAAmB,EACnB,IAAY,EACZ,QAAgB;IAEhB,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,IAAA,mBAAK,EAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE3F,MAAM,UAAU,GAAG,IAAA,wBAAU,EAAC,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;IAEzF,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,MAAM,eAAe,GAA0B,EAAE,CAAC;IAClD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAA,iCAAmB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,SAAS,EAAE,CAAC;YACd,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChC,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,6BAAe,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,kBAAkB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;QAC9D,IAAI,CAAC,IAAA,8BAAgB,EAAC,SAAS,CAAC,IAAI,SAAS,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;YACzD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IASH,MAAM,MAAM,GAAa;QACvB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,IAAI;YACjB,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE;SACnC,CAAC,CAAC;QACH,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,KAAK;SACnB,CAAC,CAAC;KACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACnB,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YACpC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;YACxB,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;YACtB,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;QACzB,CAAC;QACD,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAEzC,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACnC,MAAM,OAAO,GAAwB;gBACnC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;gBACjB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;gBACrB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;gBACrC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;gBACrC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;gBACrC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;gBACvB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC;gBACzB,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;gBACnC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAA,gCAAkB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"skill-flywheel.js","sourceRoot":"","sources":["../../src/learning/skill-flywheel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { ProviderTextRequest, ProviderTextResult } from "./provider-adapters/types";
2
+ /**
3
+ * DeepSeek thinking + tool_calls loop (max 3 rounds).
4
+ * Must echo reasoning_content when tool_calls occur (API requirement).
5
+ */
6
+ export declare function runDeepseekToolLoop(request: ProviderTextRequest): Promise<ProviderTextResult>;
7
+ //# sourceMappingURL=deepseek-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepseek-tools.d.ts","sourceRoot":"","sources":["../../src/routing/deepseek-tools.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,mBAAmB,EACnB,kBAAkB,EAGnB,MAAM,2BAA2B,CAAC;AA6GnC;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CA8C7B"}
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runDeepseekToolLoop = runDeepseekToolLoop;
4
+ const logger_1 = require("../utils/logger");
5
+ const deepseek_1 = require("./provider-adapters/deepseek");
6
+ const MAX_TOOL_ROUNDS = 3;
7
+ const READONLY_GRAPH_TOOLS = [
8
+ {
9
+ type: "function",
10
+ function: {
11
+ name: "graphflow_context",
12
+ description: "Preview compressed GraphFlow context for a code question. Use before guessing about the codebase.",
13
+ parameters: {
14
+ type: "object",
15
+ properties: {
16
+ query: { type: "string", description: "What you need to understand in the codebase." },
17
+ },
18
+ required: ["query"],
19
+ },
20
+ },
21
+ },
22
+ {
23
+ type: "function",
24
+ function: {
25
+ name: "graphflow_skill_insights",
26
+ description: "Return top learned GraphFlow skill insights.",
27
+ parameters: {
28
+ type: "object",
29
+ properties: {
30
+ limit: { type: "number", description: "Max skills to return (default 5)." },
31
+ },
32
+ },
33
+ },
34
+ },
35
+ {
36
+ type: "function",
37
+ function: {
38
+ name: "graphflow_inspect",
39
+ description: "Return lightweight graph stats (node/edge counts).",
40
+ parameters: {
41
+ type: "object",
42
+ properties: {},
43
+ },
44
+ },
45
+ },
46
+ ];
47
+ async function invokeReadonlyTool(name, argsJson) {
48
+ let args = {};
49
+ try {
50
+ args = JSON.parse(argsJson || "{}");
51
+ }
52
+ catch {
53
+ args = {};
54
+ }
55
+ try {
56
+ if (name === "graphflow_context") {
57
+ const { previewContext } = await import("../surfaces/cli/runtime.js");
58
+ const query = typeof args.query === "string" ? args.query : "";
59
+ const result = await previewContext(query);
60
+ return JSON.stringify({
61
+ summary: result.summary?.slice(0, 12) ?? [],
62
+ anchorCount: result.anchors?.length ?? 0,
63
+ tokenEstimate: result.tokenEstimate,
64
+ });
65
+ }
66
+ if (name === "graphflow_skill_insights") {
67
+ const { getSkillInsights } = await import("../surfaces/cli/runtime.js");
68
+ const limit = typeof args.limit === "number" ? args.limit : 5;
69
+ const result = await getSkillInsights(undefined, limit);
70
+ return JSON.stringify(result);
71
+ }
72
+ if (name === "graphflow_inspect") {
73
+ const { inspectGraph } = await import("../surfaces/cli/runtime.js");
74
+ const result = await inspectGraph(undefined, { nodeLimit: 5, edgeLimit: 5 });
75
+ return JSON.stringify({
76
+ nodeCount: result.nodeCount,
77
+ edgeCount: result.edgeCount,
78
+ });
79
+ }
80
+ return JSON.stringify({ error: `Unknown tool: ${name}` });
81
+ }
82
+ catch (error) {
83
+ const message = error instanceof Error ? error.message : String(error);
84
+ logger_1.logger.warn({ tool: name, message }, "DeepSeek readonly tool failed");
85
+ return JSON.stringify({ error: message });
86
+ }
87
+ }
88
+ function mergeUsage(a, b) {
89
+ if (!a && !b) {
90
+ return undefined;
91
+ }
92
+ const stats = {};
93
+ const promptTokens = (a?.promptTokens ?? 0) + (b?.promptTokens ?? 0);
94
+ const completionTokens = (a?.completionTokens ?? 0) + (b?.completionTokens ?? 0);
95
+ const promptCacheHitTokens = (a?.promptCacheHitTokens ?? 0) + (b?.promptCacheHitTokens ?? 0);
96
+ const promptCacheMissTokens = (a?.promptCacheMissTokens ?? 0) + (b?.promptCacheMissTokens ?? 0);
97
+ if (promptTokens > 0)
98
+ stats.promptTokens = promptTokens;
99
+ if (completionTokens > 0)
100
+ stats.completionTokens = completionTokens;
101
+ if (promptCacheHitTokens > 0)
102
+ stats.promptCacheHitTokens = promptCacheHitTokens;
103
+ if (promptCacheMissTokens > 0)
104
+ stats.promptCacheMissTokens = promptCacheMissTokens;
105
+ return Object.keys(stats).length > 0 ? stats : undefined;
106
+ }
107
+ /**
108
+ * DeepSeek thinking + tool_calls loop (max 3 rounds).
109
+ * Must echo reasoning_content when tool_calls occur (API requirement).
110
+ */
111
+ async function runDeepseekToolLoop(request) {
112
+ const messages = [...(request.messages ?? [{ role: "user", content: request.prompt }])];
113
+ let usage;
114
+ for (let round = 0; round < MAX_TOOL_ROUNDS; round += 1) {
115
+ const result = await (0, deepseek_1.deepseekGenerateTextDetailed)({
116
+ ...request,
117
+ messages,
118
+ tools: READONLY_GRAPH_TOOLS,
119
+ });
120
+ usage = mergeUsage(usage, result.usage);
121
+ if (!result.toolCalls || result.toolCalls.length === 0) {
122
+ return { ...result, ...(usage ? { usage } : {}) };
123
+ }
124
+ if (result.rawAssistantMessage) {
125
+ messages.push(result.rawAssistantMessage);
126
+ }
127
+ else {
128
+ messages.push({
129
+ role: "assistant",
130
+ content: result.content,
131
+ ...(result.reasoningContent ? { reasoning_content: result.reasoningContent } : {}),
132
+ tool_calls: result.toolCalls,
133
+ });
134
+ }
135
+ for (const call of result.toolCalls) {
136
+ const toolResult = await invokeReadonlyTool(call.function.name, call.function.arguments);
137
+ messages.push({
138
+ role: "tool",
139
+ tool_call_id: call.id,
140
+ content: toolResult,
141
+ });
142
+ }
143
+ }
144
+ // Final pass without tools to force an answer.
145
+ const { tools: _ignored, ...withoutTools } = request;
146
+ void _ignored;
147
+ const finalResult = await (0, deepseek_1.deepseekGenerateTextDetailed)({
148
+ ...withoutTools,
149
+ messages,
150
+ });
151
+ usage = mergeUsage(usage, finalResult.usage);
152
+ return { ...finalResult, ...(usage ? { usage } : {}) };
153
+ }
154
+ //# sourceMappingURL=deepseek-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepseek-tools.js","sourceRoot":"","sources":["../../src/routing/deepseek-tools.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { AgentRole } from "../core/types";
2
2
  import type { GraphFlowConfig } from "../config/schema";
3
3
  export type ModelTier = "smart" | "economy";
4
- export type ProviderName = "openai" | "anthropic" | "bailian" | "doubao";
4
+ export type ProviderName = "openai" | "anthropic" | "bailian" | "doubao" | "deepseek";
5
5
  export type ProviderHealthMap = Record<ProviderName, boolean>;
6
6
  export interface ModelSelection {
7
7
  provider: ProviderName;
@@ -1 +1 @@
1
- {"version":3,"file":"model-router.d.ts","sourceRoot":"","sources":["../../src/routing/model-router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGxD,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAC5C,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEzE,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;CAC1B;AA4BD;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,eAAe,GAAG,cAAc,CAoBlF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CA0BxF;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,iBAAiB,EACjC,aAAa,CAAC,EAAE,YAAY,EAAE,EAC9B,UAAU,CAAC,EAAE,MAAM,GAClB,cAAc,CAuBhB"}
1
+ {"version":3,"file":"model-router.d.ts","sourceRoot":"","sources":["../../src/routing/model-router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGxD,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAC5C,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEtF,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAgCD;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,eAAe,GAAG,cAAc,CAoBlF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CA0BxF;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,iBAAiB,EACjC,aAAa,CAAC,EAAE,YAAY,EAAE,EAC9B,UAAU,CAAC,EAAE,MAAM,GAClB,cAAc,CAuBhB"}
@@ -27,6 +27,10 @@ const DEFAULT_MODELS = {
27
27
  smart: "doubao-pro-32k",
28
28
  economy: "doubao-lite-32k",
29
29
  },
30
+ deepseek: {
31
+ smart: "deepseek-v4-pro",
32
+ economy: "deepseek-v4-flash",
33
+ },
30
34
  };
31
35
  /**
32
36
  * Resolves the compression model selection from an in-memory config object
@@ -80,7 +84,7 @@ function resolveModelWithFallback(role, providerHealth, fallbackChain, configPat
80
84
  if (providerHealth[base.provider]) {
81
85
  return base;
82
86
  }
83
- const chain = fallbackChain ?? ["anthropic", "bailian", "doubao"];
87
+ const chain = fallbackChain ?? ["anthropic", "bailian", "doubao", "deepseek"];
84
88
  const available = chain.find((provider) => provider !== base.provider && providerHealth[provider]);
85
89
  if (!available) {
86
90
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"model-router.js","sourceRoot":"","sources":["../../src/routing/model-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-router.js","sourceRoot":"","sources":["../../src/routing/model-router.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/routing/provider-adapters/anthropic.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CA0DzF"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/routing/provider-adapters/anthropic.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CA6DzF"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.anthropicGenerateText = anthropicGenerateText;
4
+ const cancellation_1 = require("../../core/cancellation");
4
5
  const logger_1 = require("../../utils/logger");
5
6
  async function anthropicGenerateText(request) {
6
7
  const strict = process.env.GRAPHFLOW_ANTHROPIC_STRICT === "1";
@@ -14,8 +15,7 @@ async function anthropicGenerateText(request) {
14
15
  }
15
16
  return `[anthropic:${request.model}] ${request.prompt}`;
16
17
  }
17
- const controller = new AbortController();
18
- const timer = setTimeout(() => controller.abort(), timeoutMs);
18
+ const { signal, dispose } = (0, cancellation_1.createTimeoutSignal)(timeoutMs, request.signal);
19
19
  try {
20
20
  const response = await fetch(`${baseUrl}/v1/messages`, {
21
21
  method: "POST",
@@ -30,7 +30,7 @@ async function anthropicGenerateText(request) {
30
30
  temperature: 0.1,
31
31
  messages: [{ role: "user", content: request.prompt }],
32
32
  }),
33
- signal: controller.signal,
33
+ signal,
34
34
  });
35
35
  if (!response.ok) {
36
36
  const text = await response.text();
@@ -44,6 +44,9 @@ async function anthropicGenerateText(request) {
44
44
  return text;
45
45
  }
46
46
  catch (error) {
47
+ if ((0, cancellation_1.isAbortError)(error) || signal.aborted) {
48
+ throw error instanceof Error ? error : new Error("anthropic request aborted");
49
+ }
47
50
  logger_1.logger.error({ error: error instanceof Error ? error.message : String(error) }, "Provider adapter caught error");
48
51
  if (strict) {
49
52
  throw error;
@@ -51,7 +54,7 @@ async function anthropicGenerateText(request) {
51
54
  return `[anthropic:${request.model}] ${request.prompt}`;
52
55
  }
53
56
  finally {
54
- clearTimeout(timer);
57
+ dispose();
55
58
  }
56
59
  }
57
60
  //# sourceMappingURL=anthropic.js.map