pulseed 0.5.2 → 0.5.3

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 (395) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/interface/chat/chat-event-state.d.ts +10 -0
  6. package/dist/interface/chat/chat-event-state.d.ts.map +1 -1
  7. package/dist/interface/chat/chat-event-state.js +184 -9
  8. package/dist/interface/chat/chat-event-state.js.map +1 -1
  9. package/dist/interface/chat/chat-events.d.ts +3 -1
  10. package/dist/interface/chat/chat-events.d.ts.map +1 -1
  11. package/dist/interface/chat/chat-runner.d.ts +24 -1
  12. package/dist/interface/chat/chat-runner.d.ts.map +1 -1
  13. package/dist/interface/chat/chat-runner.js +678 -67
  14. package/dist/interface/chat/chat-runner.js.map +1 -1
  15. package/dist/interface/chat/chat-verifier.d.ts +3 -1
  16. package/dist/interface/chat/chat-verifier.d.ts.map +1 -1
  17. package/dist/interface/chat/chat-verifier.js +2 -2
  18. package/dist/interface/chat/chat-verifier.js.map +1 -1
  19. package/dist/interface/chat/cross-platform-session.d.ts +1 -0
  20. package/dist/interface/chat/cross-platform-session.d.ts.map +1 -1
  21. package/dist/interface/chat/cross-platform-session.js +24 -0
  22. package/dist/interface/chat/cross-platform-session.js.map +1 -1
  23. package/dist/interface/chat/failure-recovery.d.ts +11 -0
  24. package/dist/interface/chat/failure-recovery.d.ts.map +1 -0
  25. package/dist/interface/chat/failure-recovery.js +115 -0
  26. package/dist/interface/chat/failure-recovery.js.map +1 -0
  27. package/dist/interface/chat/ingress-router.d.ts +9 -0
  28. package/dist/interface/chat/ingress-router.d.ts.map +1 -1
  29. package/dist/interface/chat/ingress-router.js +35 -1
  30. package/dist/interface/chat/ingress-router.js.map +1 -1
  31. package/dist/interface/chat/tend-command.d.ts +8 -0
  32. package/dist/interface/chat/tend-command.d.ts.map +1 -1
  33. package/dist/interface/chat/tend-command.js +80 -4
  34. package/dist/interface/chat/tend-command.js.map +1 -1
  35. package/dist/interface/cli/cli-command-registry.d.ts.map +1 -1
  36. package/dist/interface/cli/cli-command-registry.js +4 -0
  37. package/dist/interface/cli/cli-command-registry.js.map +1 -1
  38. package/dist/interface/cli/commands/runtime.d.ts +3 -0
  39. package/dist/interface/cli/commands/runtime.d.ts.map +1 -0
  40. package/dist/interface/cli/commands/runtime.js +231 -0
  41. package/dist/interface/cli/commands/runtime.js.map +1 -0
  42. package/dist/interface/cli/utils.d.ts.map +1 -1
  43. package/dist/interface/cli/utils.js +4 -0
  44. package/dist/interface/cli/utils.js.map +1 -1
  45. package/dist/interface/tui/app.d.ts.map +1 -1
  46. package/dist/interface/tui/app.js +22 -1
  47. package/dist/interface/tui/app.js.map +1 -1
  48. package/dist/interface/tui/chat/scroll.d.ts +3 -0
  49. package/dist/interface/tui/chat/scroll.d.ts.map +1 -1
  50. package/dist/interface/tui/chat/scroll.js +15 -0
  51. package/dist/interface/tui/chat/scroll.js.map +1 -1
  52. package/dist/interface/tui/chat/types.d.ts +1 -1
  53. package/dist/interface/tui/chat/types.d.ts.map +1 -1
  54. package/dist/interface/tui/chat/viewport.d.ts.map +1 -1
  55. package/dist/interface/tui/chat/viewport.js +8 -2
  56. package/dist/interface/tui/chat/viewport.js.map +1 -1
  57. package/dist/interface/tui/chat-surface.d.ts +2 -0
  58. package/dist/interface/tui/chat-surface.d.ts.map +1 -1
  59. package/dist/interface/tui/chat-surface.js +11 -0
  60. package/dist/interface/tui/chat-surface.js.map +1 -1
  61. package/dist/interface/tui/chat.d.ts.map +1 -1
  62. package/dist/interface/tui/chat.js +15 -7
  63. package/dist/interface/tui/chat.js.map +1 -1
  64. package/dist/interface/tui/clipboard.d.ts +6 -1
  65. package/dist/interface/tui/clipboard.d.ts.map +1 -1
  66. package/dist/interface/tui/clipboard.js +24 -5
  67. package/dist/interface/tui/clipboard.js.map +1 -1
  68. package/dist/interface/tui/entry.d.ts.map +1 -1
  69. package/dist/interface/tui/entry.js +14 -2
  70. package/dist/interface/tui/entry.js.map +1 -1
  71. package/dist/interface/tui/flicker/MouseTracking.d.ts +1 -1
  72. package/dist/interface/tui/flicker/MouseTracking.d.ts.map +1 -1
  73. package/dist/interface/tui/flicker/MouseTracking.js +8 -4
  74. package/dist/interface/tui/flicker/MouseTracking.js.map +1 -1
  75. package/dist/interface/tui/fullscreen-chat.d.ts +86 -5
  76. package/dist/interface/tui/fullscreen-chat.d.ts.map +1 -1
  77. package/dist/interface/tui/fullscreen-chat.js +586 -32
  78. package/dist/interface/tui/fullscreen-chat.js.map +1 -1
  79. package/dist/interface/tui/help-overlay.d.ts.map +1 -1
  80. package/dist/interface/tui/help-overlay.js +1 -1
  81. package/dist/interface/tui/help-overlay.js.map +1 -1
  82. package/dist/interface/tui/markdown-renderer.d.ts.map +1 -1
  83. package/dist/interface/tui/markdown-renderer.js +40 -12
  84. package/dist/interface/tui/markdown-renderer.js.map +1 -1
  85. package/dist/interface/tui/test-entry.js +1 -1
  86. package/dist/interface/tui/test-entry.js.map +1 -1
  87. package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.d.ts.map +1 -1
  88. package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.js +1 -0
  89. package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.js.map +1 -1
  90. package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.d.ts.map +1 -1
  91. package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.js +27 -13
  92. package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.js.map +1 -1
  93. package/dist/orchestrator/execution/agent-loop/agent-loop-dogfood-benchmark.d.ts.map +1 -1
  94. package/dist/orchestrator/execution/agent-loop/agent-loop-dogfood-benchmark.js +7 -4
  95. package/dist/orchestrator/execution/agent-loop/agent-loop-dogfood-benchmark.js.map +1 -1
  96. package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.d.ts.map +1 -1
  97. package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.js +6 -0
  98. package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.js.map +1 -1
  99. package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.d.ts +1 -0
  100. package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.d.ts.map +1 -1
  101. package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.js +1 -0
  102. package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.js.map +1 -1
  103. package/dist/orchestrator/execution/agent-loop/index.d.ts +1 -0
  104. package/dist/orchestrator/execution/agent-loop/index.d.ts.map +1 -1
  105. package/dist/orchestrator/execution/agent-loop/index.js +1 -0
  106. package/dist/orchestrator/execution/agent-loop/index.js.map +1 -1
  107. package/dist/orchestrator/execution/agent-loop/kaggle-training-benchmark.d.ts +34 -0
  108. package/dist/orchestrator/execution/agent-loop/kaggle-training-benchmark.d.ts.map +1 -0
  109. package/dist/orchestrator/execution/agent-loop/kaggle-training-benchmark.js +54 -0
  110. package/dist/orchestrator/execution/agent-loop/kaggle-training-benchmark.js.map +1 -0
  111. package/dist/orchestrator/loop/core-loop/phase-policy.d.ts.map +1 -1
  112. package/dist/orchestrator/loop/core-loop/phase-policy.js +3 -0
  113. package/dist/orchestrator/loop/core-loop/phase-policy.js.map +1 -1
  114. package/dist/platform/code-search/candidate-normalizer.d.ts +3 -0
  115. package/dist/platform/code-search/candidate-normalizer.d.ts.map +1 -0
  116. package/dist/platform/code-search/candidate-normalizer.js +61 -0
  117. package/dist/platform/code-search/candidate-normalizer.js.map +1 -0
  118. package/dist/platform/code-search/candidate.d.ts +25 -0
  119. package/dist/platform/code-search/candidate.d.ts.map +1 -0
  120. package/dist/platform/code-search/candidate.js +61 -0
  121. package/dist/platform/code-search/candidate.js.map +1 -0
  122. package/dist/platform/code-search/contracts.d.ts +275 -0
  123. package/dist/platform/code-search/contracts.d.ts.map +1 -0
  124. package/dist/platform/code-search/contracts.js +22 -0
  125. package/dist/platform/code-search/contracts.js.map +1 -0
  126. package/dist/platform/code-search/eval/fixtures.d.ts +14 -0
  127. package/dist/platform/code-search/eval/fixtures.d.ts.map +1 -0
  128. package/dist/platform/code-search/eval/fixtures.js +24 -0
  129. package/dist/platform/code-search/eval/fixtures.js.map +1 -0
  130. package/dist/platform/code-search/eval/metrics.d.ts +10 -0
  131. package/dist/platform/code-search/eval/metrics.d.ts.map +1 -0
  132. package/dist/platform/code-search/eval/metrics.js +20 -0
  133. package/dist/platform/code-search/eval/metrics.js.map +1 -0
  134. package/dist/platform/code-search/eval/runner.d.ts +3 -0
  135. package/dist/platform/code-search/eval/runner.d.ts.map +1 -0
  136. package/dist/platform/code-search/eval/runner.js +13 -0
  137. package/dist/platform/code-search/eval/runner.js.map +1 -0
  138. package/dist/platform/code-search/fusion.d.ts +6 -0
  139. package/dist/platform/code-search/fusion.d.ts.map +1 -0
  140. package/dist/platform/code-search/fusion.js +12 -0
  141. package/dist/platform/code-search/fusion.js.map +1 -0
  142. package/dist/platform/code-search/generated-detector.d.ts +15 -0
  143. package/dist/platform/code-search/generated-detector.d.ts.map +1 -0
  144. package/dist/platform/code-search/generated-detector.js +42 -0
  145. package/dist/platform/code-search/generated-detector.js.map +1 -0
  146. package/dist/platform/code-search/indexes/call-graph.d.ts +3 -0
  147. package/dist/platform/code-search/indexes/call-graph.d.ts.map +1 -0
  148. package/dist/platform/code-search/indexes/call-graph.js +13 -0
  149. package/dist/platform/code-search/indexes/call-graph.js.map +1 -0
  150. package/dist/platform/code-search/indexes/config-index.d.ts +3 -0
  151. package/dist/platform/code-search/indexes/config-index.d.ts.map +1 -0
  152. package/dist/platform/code-search/indexes/config-index.js +7 -0
  153. package/dist/platform/code-search/indexes/config-index.js.map +1 -0
  154. package/dist/platform/code-search/indexes/file-index.d.ts +5 -0
  155. package/dist/platform/code-search/indexes/file-index.d.ts.map +1 -0
  156. package/dist/platform/code-search/indexes/file-index.js +106 -0
  157. package/dist/platform/code-search/indexes/file-index.js.map +1 -0
  158. package/dist/platform/code-search/indexes/index-store.d.ts +6 -0
  159. package/dist/platform/code-search/indexes/index-store.d.ts.map +1 -0
  160. package/dist/platform/code-search/indexes/index-store.js +14 -0
  161. package/dist/platform/code-search/indexes/index-store.js.map +1 -0
  162. package/dist/platform/code-search/indexes/indexer.d.ts +3 -0
  163. package/dist/platform/code-search/indexes/indexer.d.ts.map +1 -0
  164. package/dist/platform/code-search/indexes/indexer.js +27 -0
  165. package/dist/platform/code-search/indexes/indexer.js.map +1 -0
  166. package/dist/platform/code-search/indexes/package-graph.d.ts +3 -0
  167. package/dist/platform/code-search/indexes/package-graph.d.ts.map +1 -0
  168. package/dist/platform/code-search/indexes/package-graph.js +26 -0
  169. package/dist/platform/code-search/indexes/package-graph.js.map +1 -0
  170. package/dist/platform/code-search/indexes/repo-map-index.d.ts +3 -0
  171. package/dist/platform/code-search/indexes/repo-map-index.d.ts.map +1 -0
  172. package/dist/platform/code-search/indexes/repo-map-index.js +26 -0
  173. package/dist/platform/code-search/indexes/repo-map-index.js.map +1 -0
  174. package/dist/platform/code-search/indexes/semantic-index.d.ts +3 -0
  175. package/dist/platform/code-search/indexes/semantic-index.d.ts.map +1 -0
  176. package/dist/platform/code-search/indexes/semantic-index.js +4 -0
  177. package/dist/platform/code-search/indexes/semantic-index.js.map +1 -0
  178. package/dist/platform/code-search/indexes/symbol-index.d.ts +3 -0
  179. package/dist/platform/code-search/indexes/symbol-index.d.ts.map +1 -0
  180. package/dist/platform/code-search/indexes/symbol-index.js +84 -0
  181. package/dist/platform/code-search/indexes/symbol-index.js.map +1 -0
  182. package/dist/platform/code-search/indexes/test-index.d.ts +3 -0
  183. package/dist/platform/code-search/indexes/test-index.d.ts.map +1 -0
  184. package/dist/platform/code-search/indexes/test-index.js +22 -0
  185. package/dist/platform/code-search/indexes/test-index.js.map +1 -0
  186. package/dist/platform/code-search/orchestrator.d.ts +9 -0
  187. package/dist/platform/code-search/orchestrator.d.ts.map +1 -0
  188. package/dist/platform/code-search/orchestrator.js +81 -0
  189. package/dist/platform/code-search/orchestrator.js.map +1 -0
  190. package/dist/platform/code-search/path-policy.d.ts +6 -0
  191. package/dist/platform/code-search/path-policy.d.ts.map +1 -0
  192. package/dist/platform/code-search/path-policy.js +60 -0
  193. package/dist/platform/code-search/path-policy.js.map +1 -0
  194. package/dist/platform/code-search/progressive-reader.d.ts +8 -0
  195. package/dist/platform/code-search/progressive-reader.d.ts.map +1 -0
  196. package/dist/platform/code-search/progressive-reader.js +173 -0
  197. package/dist/platform/code-search/progressive-reader.js.map +1 -0
  198. package/dist/platform/code-search/query-planner.d.ts +4 -0
  199. package/dist/platform/code-search/query-planner.d.ts.map +1 -0
  200. package/dist/platform/code-search/query-planner.js +107 -0
  201. package/dist/platform/code-search/query-planner.js.map +1 -0
  202. package/dist/platform/code-search/reranker.d.ts +4 -0
  203. package/dist/platform/code-search/reranker.d.ts.map +1 -0
  204. package/dist/platform/code-search/reranker.js +57 -0
  205. package/dist/platform/code-search/reranker.js.map +1 -0
  206. package/dist/platform/code-search/retrievers/callgraph-retriever.d.ts +6 -0
  207. package/dist/platform/code-search/retrievers/callgraph-retriever.d.ts.map +1 -0
  208. package/dist/platform/code-search/retrievers/callgraph-retriever.js +31 -0
  209. package/dist/platform/code-search/retrievers/callgraph-retriever.js.map +1 -0
  210. package/dist/platform/code-search/retrievers/config-retriever.d.ts +6 -0
  211. package/dist/platform/code-search/retrievers/config-retriever.d.ts.map +1 -0
  212. package/dist/platform/code-search/retrievers/config-retriever.js +23 -0
  213. package/dist/platform/code-search/retrievers/config-retriever.js.map +1 -0
  214. package/dist/platform/code-search/retrievers/lexical-retriever.d.ts +6 -0
  215. package/dist/platform/code-search/retrievers/lexical-retriever.d.ts.map +1 -0
  216. package/dist/platform/code-search/retrievers/lexical-retriever.js +49 -0
  217. package/dist/platform/code-search/retrievers/lexical-retriever.js.map +1 -0
  218. package/dist/platform/code-search/retrievers/package-retriever.d.ts +6 -0
  219. package/dist/platform/code-search/retrievers/package-retriever.d.ts.map +1 -0
  220. package/dist/platform/code-search/retrievers/package-retriever.js +29 -0
  221. package/dist/platform/code-search/retrievers/package-retriever.js.map +1 -0
  222. package/dist/platform/code-search/retrievers/repo-map-retriever.d.ts +6 -0
  223. package/dist/platform/code-search/retrievers/repo-map-retriever.d.ts.map +1 -0
  224. package/dist/platform/code-search/retrievers/repo-map-retriever.js +30 -0
  225. package/dist/platform/code-search/retrievers/repo-map-retriever.js.map +1 -0
  226. package/dist/platform/code-search/retrievers/semantic-retriever.d.ts +6 -0
  227. package/dist/platform/code-search/retrievers/semantic-retriever.d.ts.map +1 -0
  228. package/dist/platform/code-search/retrievers/semantic-retriever.js +18 -0
  229. package/dist/platform/code-search/retrievers/semantic-retriever.js.map +1 -0
  230. package/dist/platform/code-search/retrievers/stacktrace-retriever.d.ts +6 -0
  231. package/dist/platform/code-search/retrievers/stacktrace-retriever.d.ts.map +1 -0
  232. package/dist/platform/code-search/retrievers/stacktrace-retriever.js +30 -0
  233. package/dist/platform/code-search/retrievers/stacktrace-retriever.js.map +1 -0
  234. package/dist/platform/code-search/retrievers/symbol-retriever.d.ts +6 -0
  235. package/dist/platform/code-search/retrievers/symbol-retriever.d.ts.map +1 -0
  236. package/dist/platform/code-search/retrievers/symbol-retriever.js +32 -0
  237. package/dist/platform/code-search/retrievers/symbol-retriever.js.map +1 -0
  238. package/dist/platform/code-search/retrievers/test-retriever.d.ts +6 -0
  239. package/dist/platform/code-search/retrievers/test-retriever.d.ts.map +1 -0
  240. package/dist/platform/code-search/retrievers/test-retriever.js +30 -0
  241. package/dist/platform/code-search/retrievers/test-retriever.js.map +1 -0
  242. package/dist/platform/code-search/session-store.d.ts +11 -0
  243. package/dist/platform/code-search/session-store.d.ts.map +1 -0
  244. package/dist/platform/code-search/session-store.js +41 -0
  245. package/dist/platform/code-search/session-store.js.map +1 -0
  246. package/dist/platform/code-search/trace.d.ts +9 -0
  247. package/dist/platform/code-search/trace.d.ts.map +1 -0
  248. package/dist/platform/code-search/trace.js +25 -0
  249. package/dist/platform/code-search/trace.js.map +1 -0
  250. package/dist/platform/code-search/verification-retrieval.d.ts +3 -0
  251. package/dist/platform/code-search/verification-retrieval.d.ts.map +1 -0
  252. package/dist/platform/code-search/verification-retrieval.js +33 -0
  253. package/dist/platform/code-search/verification-retrieval.js.map +1 -0
  254. package/dist/platform/observation/context-provider.d.ts.map +1 -1
  255. package/dist/platform/observation/context-provider.js +37 -0
  256. package/dist/platform/observation/context-provider.js.map +1 -1
  257. package/dist/platform/observation/workspace-context.d.ts.map +1 -1
  258. package/dist/platform/observation/workspace-context.js +27 -0
  259. package/dist/platform/observation/workspace-context.js.map +1 -1
  260. package/dist/runtime/daemon/client.d.ts +13 -1
  261. package/dist/runtime/daemon/client.d.ts.map +1 -1
  262. package/dist/runtime/daemon/client.js +2 -2
  263. package/dist/runtime/daemon/client.js.map +1 -1
  264. package/dist/runtime/daemon/runner-commands.d.ts +9 -1
  265. package/dist/runtime/daemon/runner-commands.d.ts.map +1 -1
  266. package/dist/runtime/daemon/runner-commands.js +33 -2
  267. package/dist/runtime/daemon/runner-commands.js.map +1 -1
  268. package/dist/runtime/daemon/runner-startup.d.ts.map +1 -1
  269. package/dist/runtime/daemon/runner-startup.js +22 -1
  270. package/dist/runtime/daemon/runner-startup.js.map +1 -1
  271. package/dist/runtime/daemon/runner.d.ts.map +1 -1
  272. package/dist/runtime/daemon/runner.js +3 -2
  273. package/dist/runtime/daemon/runner.js.map +1 -1
  274. package/dist/runtime/daemon/runtime-root.d.ts +5 -0
  275. package/dist/runtime/daemon/runtime-root.d.ts.map +1 -0
  276. package/dist/runtime/daemon/runtime-root.js +60 -0
  277. package/dist/runtime/daemon/runtime-root.js.map +1 -0
  278. package/dist/runtime/event/server-command-handler.d.ts.map +1 -1
  279. package/dist/runtime/event/server-command-handler.js +47 -3
  280. package/dist/runtime/event/server-command-handler.js.map +1 -1
  281. package/dist/runtime/executor/goal-worker.d.ts +1 -0
  282. package/dist/runtime/executor/goal-worker.d.ts.map +1 -1
  283. package/dist/runtime/executor/goal-worker.js +1 -0
  284. package/dist/runtime/executor/goal-worker.js.map +1 -1
  285. package/dist/runtime/executor/loop-supervisor.d.ts +24 -1
  286. package/dist/runtime/executor/loop-supervisor.d.ts.map +1 -1
  287. package/dist/runtime/executor/loop-supervisor.js +191 -12
  288. package/dist/runtime/executor/loop-supervisor.js.map +1 -1
  289. package/dist/runtime/gateway/telegram-gateway-adapter.d.ts.map +1 -1
  290. package/dist/runtime/gateway/telegram-gateway-adapter.js +2 -1
  291. package/dist/runtime/gateway/telegram-gateway-adapter.js.map +1 -1
  292. package/dist/runtime/session-registry/index.d.ts +3 -0
  293. package/dist/runtime/session-registry/index.d.ts.map +1 -0
  294. package/dist/runtime/session-registry/index.js +3 -0
  295. package/dist/runtime/session-registry/index.js.map +1 -0
  296. package/dist/runtime/session-registry/registry.d.ts +39 -0
  297. package/dist/runtime/session-registry/registry.d.ts.map +1 -0
  298. package/dist/runtime/session-registry/registry.js +761 -0
  299. package/dist/runtime/session-registry/registry.js.map +1 -0
  300. package/dist/runtime/session-registry/types.d.ts +985 -0
  301. package/dist/runtime/session-registry/types.d.ts.map +1 -0
  302. package/dist/runtime/session-registry/types.js +108 -0
  303. package/dist/runtime/session-registry/types.js.map +1 -0
  304. package/dist/runtime/store/background-run-store.d.ts +75 -0
  305. package/dist/runtime/store/background-run-store.d.ts.map +1 -0
  306. package/dist/runtime/store/background-run-store.js +157 -0
  307. package/dist/runtime/store/background-run-store.js.map +1 -0
  308. package/dist/runtime/store/index.d.ts +2 -0
  309. package/dist/runtime/store/index.d.ts.map +1 -1
  310. package/dist/runtime/store/index.js +1 -0
  311. package/dist/runtime/store/index.js.map +1 -1
  312. package/dist/runtime/store/runtime-operation-schemas.d.ts +24 -24
  313. package/dist/runtime/store/runtime-paths.d.ts +2 -0
  314. package/dist/runtime/store/runtime-paths.d.ts.map +1 -1
  315. package/dist/runtime/store/runtime-paths.js +6 -0
  316. package/dist/runtime/store/runtime-paths.js.map +1 -1
  317. package/dist/runtime/types/daemon.d.ts +3 -0
  318. package/dist/runtime/types/daemon.d.ts.map +1 -1
  319. package/dist/runtime/types/daemon.js +1 -0
  320. package/dist/runtime/types/daemon.js.map +1 -1
  321. package/dist/tools/builtin/exports.d.ts +4 -0
  322. package/dist/tools/builtin/exports.d.ts.map +1 -1
  323. package/dist/tools/builtin/exports.js +4 -0
  324. package/dist/tools/builtin/exports.js.map +1 -1
  325. package/dist/tools/builtin/factory.d.ts.map +1 -1
  326. package/dist/tools/builtin/factory.js +18 -0
  327. package/dist/tools/builtin/factory.js.map +1 -1
  328. package/dist/tools/fs/GlobTool/GlobTool.js +2 -2
  329. package/dist/tools/fs/GlobTool/GlobTool.js.map +1 -1
  330. package/dist/tools/fs/GrepTool/GrepTool.js +2 -2
  331. package/dist/tools/fs/GrepTool/GrepTool.js.map +1 -1
  332. package/dist/tools/fs/ReadTool/ReadTool.js +2 -2
  333. package/dist/tools/fs/ReadTool/ReadTool.js.map +1 -1
  334. package/dist/tools/kaggle/KaggleExperimentTools.d.ts +395 -0
  335. package/dist/tools/kaggle/KaggleExperimentTools.d.ts.map +1 -0
  336. package/dist/tools/kaggle/KaggleExperimentTools.js +923 -0
  337. package/dist/tools/kaggle/KaggleExperimentTools.js.map +1 -0
  338. package/dist/tools/kaggle/KaggleSubmissionTools.d.ts +241 -0
  339. package/dist/tools/kaggle/KaggleSubmissionTools.d.ts.map +1 -0
  340. package/dist/tools/kaggle/KaggleSubmissionTools.js +558 -0
  341. package/dist/tools/kaggle/KaggleSubmissionTools.js.map +1 -0
  342. package/dist/tools/kaggle/KaggleWorkspacePrepareTool.d.ts +105 -0
  343. package/dist/tools/kaggle/KaggleWorkspacePrepareTool.d.ts.map +1 -0
  344. package/dist/tools/kaggle/KaggleWorkspacePrepareTool.js +135 -0
  345. package/dist/tools/kaggle/KaggleWorkspacePrepareTool.js.map +1 -0
  346. package/dist/tools/kaggle/index.d.ts +6 -0
  347. package/dist/tools/kaggle/index.d.ts.map +1 -0
  348. package/dist/tools/kaggle/index.js +6 -0
  349. package/dist/tools/kaggle/index.js.map +1 -0
  350. package/dist/tools/kaggle/metrics.d.ts +89 -0
  351. package/dist/tools/kaggle/metrics.d.ts.map +1 -0
  352. package/dist/tools/kaggle/metrics.js +51 -0
  353. package/dist/tools/kaggle/metrics.js.map +1 -0
  354. package/dist/tools/kaggle/paths.d.ts +15 -0
  355. package/dist/tools/kaggle/paths.d.ts.map +1 -0
  356. package/dist/tools/kaggle/paths.js +136 -0
  357. package/dist/tools/kaggle/paths.js.map +1 -0
  358. package/dist/tools/network/GitHubCliTool/GitHubCliTool.d.ts +2 -2
  359. package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.d.ts +801 -0
  360. package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.d.ts.map +1 -0
  361. package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.js +147 -0
  362. package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.js.map +1 -0
  363. package/dist/tools/query/CodeReadContextTool/constants.d.ts +5 -0
  364. package/dist/tools/query/CodeReadContextTool/constants.d.ts.map +1 -0
  365. package/dist/tools/query/CodeReadContextTool/constants.js +5 -0
  366. package/dist/tools/query/CodeReadContextTool/constants.js.map +1 -0
  367. package/dist/tools/query/CodeReadContextTool/prompt.d.ts +2 -0
  368. package/dist/tools/query/CodeReadContextTool/prompt.d.ts.map +1 -0
  369. package/dist/tools/query/CodeReadContextTool/prompt.js +6 -0
  370. package/dist/tools/query/CodeReadContextTool/prompt.js.map +1 -0
  371. package/dist/tools/query/CodeSearchRepairTool/CodeSearchRepairTool.d.ts +125 -0
  372. package/dist/tools/query/CodeSearchRepairTool/CodeSearchRepairTool.d.ts.map +1 -0
  373. package/dist/tools/query/CodeSearchRepairTool/CodeSearchRepairTool.js +97 -0
  374. package/dist/tools/query/CodeSearchRepairTool/CodeSearchRepairTool.js.map +1 -0
  375. package/dist/tools/query/CodeSearchRepairTool/constants.d.ts +5 -0
  376. package/dist/tools/query/CodeSearchRepairTool/constants.d.ts.map +1 -0
  377. package/dist/tools/query/CodeSearchRepairTool/constants.js +5 -0
  378. package/dist/tools/query/CodeSearchRepairTool/constants.js.map +1 -0
  379. package/dist/tools/query/CodeSearchRepairTool/prompt.d.ts +2 -0
  380. package/dist/tools/query/CodeSearchRepairTool/prompt.d.ts.map +1 -0
  381. package/dist/tools/query/CodeSearchRepairTool/prompt.js +5 -0
  382. package/dist/tools/query/CodeSearchRepairTool/prompt.js.map +1 -0
  383. package/dist/tools/query/CodeSearchTool/CodeSearchTool.d.ts +123 -0
  384. package/dist/tools/query/CodeSearchTool/CodeSearchTool.d.ts.map +1 -0
  385. package/dist/tools/query/CodeSearchTool/CodeSearchTool.js +95 -0
  386. package/dist/tools/query/CodeSearchTool/CodeSearchTool.js.map +1 -0
  387. package/dist/tools/query/CodeSearchTool/constants.d.ts +5 -0
  388. package/dist/tools/query/CodeSearchTool/constants.d.ts.map +1 -0
  389. package/dist/tools/query/CodeSearchTool/constants.js +5 -0
  390. package/dist/tools/query/CodeSearchTool/constants.js.map +1 -0
  391. package/dist/tools/query/CodeSearchTool/prompt.d.ts +2 -0
  392. package/dist/tools/query/CodeSearchTool/prompt.d.ts.map +1 -0
  393. package/dist/tools/query/CodeSearchTool/prompt.js +6 -0
  394. package/dist/tools/query/CodeSearchTool/prompt.js.map +1 -0
  395. package/package.json +2 -1
@@ -0,0 +1,105 @@
1
+ import { z } from "zod";
2
+ import type { ITool, PermissionCheckResult, ToolCallContext, ToolDescriptionContext, ToolMetadata, ToolResult } from "../types.js";
3
+ import { metricThresholdHintForDirection } from "./metrics.js";
4
+ export declare const KaggleWorkspacePrepareInputSchema: z.ZodObject<{
5
+ workspace: z.ZodString;
6
+ competition: z.ZodString;
7
+ metric_name: z.ZodString;
8
+ metric_direction: z.ZodEnum<["maximize", "minimize"]>;
9
+ target_column: z.ZodOptional<z.ZodString>;
10
+ submission_format_hint: z.ZodOptional<z.ZodString>;
11
+ notes: z.ZodOptional<z.ZodString>;
12
+ }, "strict", z.ZodTypeAny, {
13
+ workspace: string;
14
+ competition: string;
15
+ metric_name: string;
16
+ metric_direction: "maximize" | "minimize";
17
+ notes?: string | undefined;
18
+ target_column?: string | undefined;
19
+ submission_format_hint?: string | undefined;
20
+ }, {
21
+ workspace: string;
22
+ competition: string;
23
+ metric_name: string;
24
+ metric_direction: "maximize" | "minimize";
25
+ notes?: string | undefined;
26
+ target_column?: string | undefined;
27
+ submission_format_hint?: string | undefined;
28
+ }>;
29
+ export type KaggleWorkspacePrepareInput = z.infer<typeof KaggleWorkspacePrepareInputSchema>;
30
+ export interface KaggleWorkspacePrepareOutput {
31
+ workspace: {
32
+ path: string;
33
+ state_relative_path: string;
34
+ };
35
+ metadata: {
36
+ path: string;
37
+ state_relative_path: string;
38
+ };
39
+ directories: Array<{
40
+ name: string;
41
+ path: string;
42
+ state_relative_path: string;
43
+ }>;
44
+ artifacts: {
45
+ metrics_template: {
46
+ path: string;
47
+ workspace_relative_path: string;
48
+ state_relative_path: string;
49
+ };
50
+ train_log: {
51
+ path: string;
52
+ workspace_relative_path: string;
53
+ state_relative_path: string;
54
+ };
55
+ submissions_dir: {
56
+ path: string;
57
+ state_relative_path: string;
58
+ };
59
+ };
60
+ wait_condition_hints: {
61
+ file_exists: {
62
+ type: "file_exists";
63
+ path: string;
64
+ absolute_path: string;
65
+ hint: string;
66
+ };
67
+ };
68
+ metric_threshold_guidance: ReturnType<typeof metricThresholdHintForDirection> & {
69
+ metrics_artifact_path: string;
70
+ metrics_artifact_state_relative_path: string;
71
+ };
72
+ }
73
+ export declare class KaggleWorkspacePrepareTool implements ITool<KaggleWorkspacePrepareInput, KaggleWorkspacePrepareOutput> {
74
+ readonly metadata: ToolMetadata;
75
+ readonly inputSchema: z.ZodObject<{
76
+ workspace: z.ZodString;
77
+ competition: z.ZodString;
78
+ metric_name: z.ZodString;
79
+ metric_direction: z.ZodEnum<["maximize", "minimize"]>;
80
+ target_column: z.ZodOptional<z.ZodString>;
81
+ submission_format_hint: z.ZodOptional<z.ZodString>;
82
+ notes: z.ZodOptional<z.ZodString>;
83
+ }, "strict", z.ZodTypeAny, {
84
+ workspace: string;
85
+ competition: string;
86
+ metric_name: string;
87
+ metric_direction: "maximize" | "minimize";
88
+ notes?: string | undefined;
89
+ target_column?: string | undefined;
90
+ submission_format_hint?: string | undefined;
91
+ }, {
92
+ workspace: string;
93
+ competition: string;
94
+ metric_name: string;
95
+ metric_direction: "maximize" | "minimize";
96
+ notes?: string | undefined;
97
+ target_column?: string | undefined;
98
+ submission_format_hint?: string | undefined;
99
+ }>;
100
+ description(_context?: ToolDescriptionContext): string;
101
+ call(input: KaggleWorkspacePrepareInput, _context: ToolCallContext): Promise<ToolResult>;
102
+ checkPermissions(input: KaggleWorkspacePrepareInput, _context: ToolCallContext): Promise<PermissionCheckResult>;
103
+ isConcurrencySafe(_input: KaggleWorkspacePrepareInput): boolean;
104
+ }
105
+ //# sourceMappingURL=KaggleWorkspacePrepareTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KaggleWorkspacePrepareTool.d.ts","sourceRoot":"","sources":["../../../src/tools/kaggle/KaggleWorkspacePrepareTool.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,KAAK,EACL,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,UAAU,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAA+B,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAO5F,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;EAQnC,CAAC;AAEZ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAE5F,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,WAAW,EAAE,KAAK,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;IACH,SAAS,EAAE;QACT,gBAAgB,EAAE;YAChB,IAAI,EAAE,MAAM,CAAC;YACb,uBAAuB,EAAE,MAAM,CAAC;YAChC,mBAAmB,EAAE,MAAM,CAAC;SAC7B,CAAC;QACF,SAAS,EAAE;YACT,IAAI,EAAE,MAAM,CAAC;YACb,uBAAuB,EAAE,MAAM,CAAC;YAChC,mBAAmB,EAAE,MAAM,CAAC;SAC7B,CAAC;QACF,eAAe,EAAE;YACf,IAAI,EAAE,MAAM,CAAC;YACb,mBAAmB,EAAE,MAAM,CAAC;SAC7B,CAAC;KACH,CAAC;IACF,oBAAoB,EAAE;QACpB,WAAW,EAAE;YACX,IAAI,EAAE,aAAa,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,aAAa,EAAE,MAAM,CAAC;YACtB,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;IACF,yBAAyB,EAAE,UAAU,CAAC,OAAO,+BAA+B,CAAC,GAAG;QAC9E,qBAAqB,EAAE,MAAM,CAAC;QAC9B,oCAAoC,EAAE,MAAM,CAAC;KAC9C,CAAC;CACH;AAED,qBAAa,0BAA2B,YAAW,KAAK,CAAC,2BAA2B,EAAE,4BAA4B,CAAC;IACjH,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAW7B;IAEF,QAAQ,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;OAAqC;IAEzD,WAAW,CAAC,QAAQ,CAAC,EAAE,sBAAsB,GAAG,MAAM;IAQhD,IAAI,CAAC,KAAK,EAAE,2BAA2B,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IA+FxF,gBAAgB,CAAC,KAAK,EAAE,2BAA2B,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAOrH,iBAAiB,CAAC,MAAM,EAAE,2BAA2B,GAAG,OAAO;CAGhE"}
@@ -0,0 +1,135 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { z } from "zod";
4
+ import { KaggleMetricDirectionSchema, metricThresholdHintForDirection } from "./metrics.js";
5
+ import { ensureKaggleWorkspaceDirectories, resolveKaggleWorkspaceInput, stateRelativePath, } from "./paths.js";
6
+ export const KaggleWorkspacePrepareInputSchema = z.object({
7
+ workspace: z.string().min(1, "workspace is required"),
8
+ competition: z.string().min(1, "competition is required"),
9
+ metric_name: z.string().min(1, "metric_name is required"),
10
+ metric_direction: KaggleMetricDirectionSchema,
11
+ target_column: z.string().min(1).optional(),
12
+ submission_format_hint: z.string().min(1).optional(),
13
+ notes: z.string().min(1).optional(),
14
+ }).strict();
15
+ export class KaggleWorkspacePrepareTool {
16
+ metadata = {
17
+ name: "kaggle_workspace_prepare",
18
+ aliases: ["kaggle_prepare_workspace"],
19
+ permissionLevel: "write_local",
20
+ isReadOnly: false,
21
+ isDestructive: false,
22
+ shouldDefer: false,
23
+ alwaysLoad: false,
24
+ maxConcurrency: 1,
25
+ maxOutputChars: 8000,
26
+ tags: ["kaggle", "workspace", "ml", "filesystem"],
27
+ };
28
+ inputSchema = KaggleWorkspacePrepareInputSchema;
29
+ description(_context) {
30
+ return [
31
+ "Prepare a local Kaggle training workspace under PulSeed state.",
32
+ "Creates data, notebooks, src, experiments, and submissions directories, writes workspace metadata, and returns artifact and wait-condition path hints.",
33
+ "This tool does not call Kaggle APIs or read credentials.",
34
+ ].join(" ");
35
+ }
36
+ async call(input, _context) {
37
+ const startTime = Date.now();
38
+ try {
39
+ const workspaceRoot = resolveKaggleWorkspaceInput(input.workspace, input.competition);
40
+ const directories = await ensureKaggleWorkspaceDirectories(workspaceRoot);
41
+ const metadataPath = path.join(workspaceRoot, "workspace.json");
42
+ const metricsPath = path.join(workspaceRoot, "experiments", "metrics.json");
43
+ const logPath = path.join(workspaceRoot, "experiments", "train.log");
44
+ const now = new Date().toISOString();
45
+ const metadata = {
46
+ schema_version: "kaggle-workspace-v1",
47
+ created_at: now,
48
+ competition: input.competition,
49
+ workspace_root: workspaceRoot,
50
+ workspace_state_relative_path: stateRelativePath(workspaceRoot),
51
+ metric: {
52
+ name: input.metric_name,
53
+ direction: input.metric_direction,
54
+ },
55
+ target_column: input.target_column ?? null,
56
+ submission_format_hint: input.submission_format_hint ?? null,
57
+ notes: input.notes ?? null,
58
+ directories: Object.fromEntries(Object.entries(directories).map(([name, fullPath]) => [name, stateRelativePath(fullPath)])),
59
+ metrics_schema_version: "kaggle-metrics-v1",
60
+ };
61
+ await fs.writeFile(metadataPath, `${JSON.stringify(metadata, null, 2)}\n`, "utf-8");
62
+ const thresholdHint = metricThresholdHintForDirection(input.metric_name, input.metric_direction);
63
+ const output = {
64
+ workspace: {
65
+ path: workspaceRoot,
66
+ state_relative_path: stateRelativePath(workspaceRoot),
67
+ },
68
+ metadata: {
69
+ path: metadataPath,
70
+ state_relative_path: stateRelativePath(metadataPath),
71
+ },
72
+ directories: Object.entries(directories).map(([name, fullPath]) => ({
73
+ name,
74
+ path: fullPath,
75
+ state_relative_path: stateRelativePath(fullPath),
76
+ })),
77
+ artifacts: {
78
+ metrics_template: {
79
+ path: metricsPath,
80
+ workspace_relative_path: "experiments/metrics.json",
81
+ state_relative_path: stateRelativePath(metricsPath),
82
+ },
83
+ train_log: {
84
+ path: logPath,
85
+ workspace_relative_path: "experiments/train.log",
86
+ state_relative_path: stateRelativePath(logPath),
87
+ },
88
+ submissions_dir: {
89
+ path: directories.submissions,
90
+ state_relative_path: stateRelativePath(directories.submissions),
91
+ },
92
+ },
93
+ wait_condition_hints: {
94
+ file_exists: {
95
+ type: "file_exists",
96
+ path: stateRelativePath(metricsPath),
97
+ absolute_path: metricsPath,
98
+ hint: "Wait for the training command to write metrics.json.",
99
+ },
100
+ },
101
+ metric_threshold_guidance: {
102
+ ...thresholdHint,
103
+ metrics_artifact_path: metricsPath,
104
+ metrics_artifact_state_relative_path: stateRelativePath(metricsPath),
105
+ },
106
+ };
107
+ return {
108
+ success: true,
109
+ data: output,
110
+ summary: `Prepared Kaggle workspace for ${input.competition} at ${output.workspace.state_relative_path}`,
111
+ durationMs: Date.now() - startTime,
112
+ artifacts: [metadataPath, ...Object.values(directories)],
113
+ };
114
+ }
115
+ catch (err) {
116
+ return {
117
+ success: false,
118
+ data: null,
119
+ summary: `Failed to prepare Kaggle workspace for ${input.competition}`,
120
+ error: err.message,
121
+ durationMs: Date.now() - startTime,
122
+ };
123
+ }
124
+ }
125
+ async checkPermissions(input, _context) {
126
+ return {
127
+ status: "needs_approval",
128
+ reason: `Create Kaggle workspace directories and metadata for ${input.competition}`,
129
+ };
130
+ }
131
+ isConcurrencySafe(_input) {
132
+ return false;
133
+ }
134
+ }
135
+ //# sourceMappingURL=KaggleWorkspacePrepareTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KaggleWorkspacePrepareTool.js","sourceRoot":"","sources":["../../../src/tools/kaggle/KaggleWorkspacePrepareTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export { KaggleCompareExperimentsInputSchema, KaggleCompareExperimentsTool, KaggleExperimentListInputSchema, KaggleExperimentListTool, KaggleExperimentReadInputSchema, KaggleExperimentReadTool, KaggleExperimentStartInputSchema, KaggleExperimentStartTool, KaggleExperimentStopInputSchema, KaggleExperimentStopTool, KaggleMetricReportInputSchema, KaggleMetricReportTool, type KaggleCompareExperimentsInput, type KaggleExperimentListInput, type KaggleExperimentReadInput, type KaggleExperimentStartInput, type KaggleExperimentStopInput, type KaggleMetricReportInput, } from "./KaggleExperimentTools.js";
2
+ export { KaggleLeaderboardSnapshotInputSchema, KaggleLeaderboardSnapshotTool, KaggleListSubmissionsInputSchema, KaggleListSubmissionsTool, KaggleSubmissionPrepareInputSchema, KaggleSubmissionPrepareTool, KaggleSubmitInputSchema, KaggleSubmitTool, defaultKaggleCommandRunner, type KaggleCommandResult, type KaggleCommandRunner, type KaggleLeaderboardSnapshotInput, type KaggleListSubmissionsInput, type KaggleSubmissionPrepareInput, type KaggleSubmitInput, } from "./KaggleSubmissionTools.js";
3
+ export { KaggleWorkspacePrepareInputSchema, KaggleWorkspacePrepareTool, type KaggleWorkspacePrepareInput, type KaggleWorkspacePrepareOutput, } from "./KaggleWorkspacePrepareTool.js";
4
+ export { KaggleMetricDirectionSchema, KaggleMetricsSchema, compareMetricScores, metricThresholdHintForDirection, normalizedMetricScore, parseKaggleMetrics, type KaggleMetricDirection, type KaggleMetricParseResult, type KaggleMetrics, type MetricThresholdHint, } from "./metrics.js";
5
+ export { KAGGLE_RUNS_DIR, KAGGLE_WORKSPACE_DIRS, ensureDirectoryWithinStateRoot, ensureKaggleWorkspaceDirectories, getKaggleRunsRoot, getKaggleExperimentDir, getKaggleWorkspaceRoot, resolveKaggleWorkspaceInput, resolveWorkspaceRelativePath, stateRelativePath, validateKaggleCompetitionId, validateKaggleExperimentId, workspaceRelativePath, type KaggleWorkspaceDir, } from "./paths.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/kaggle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mCAAmC,EACnC,4BAA4B,EAC5B,+BAA+B,EAC/B,wBAAwB,EACxB,+BAA+B,EAC/B,wBAAwB,EACxB,gCAAgC,EAChC,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,6BAA6B,EAC7B,sBAAsB,EACtB,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,GAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,oCAAoC,EACpC,6BAA6B,EAC7B,gCAAgC,EAChC,yBAAyB,EACzB,kCAAkC,EAClC,2BAA2B,EAC3B,uBAAuB,EACvB,gBAAgB,EAChB,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,GACvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,iCAAiC,EACjC,0BAA0B,EAC1B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,GAClC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,aAAa,EAClB,KAAK,mBAAmB,GACzB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,8BAA8B,EAC9B,gCAAgC,EAChC,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,iBAAiB,EACjB,2BAA2B,EAC3B,0BAA0B,EAC1B,qBAAqB,EACrB,KAAK,kBAAkB,GACxB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { KaggleCompareExperimentsInputSchema, KaggleCompareExperimentsTool, KaggleExperimentListInputSchema, KaggleExperimentListTool, KaggleExperimentReadInputSchema, KaggleExperimentReadTool, KaggleExperimentStartInputSchema, KaggleExperimentStartTool, KaggleExperimentStopInputSchema, KaggleExperimentStopTool, KaggleMetricReportInputSchema, KaggleMetricReportTool, } from "./KaggleExperimentTools.js";
2
+ export { KaggleLeaderboardSnapshotInputSchema, KaggleLeaderboardSnapshotTool, KaggleListSubmissionsInputSchema, KaggleListSubmissionsTool, KaggleSubmissionPrepareInputSchema, KaggleSubmissionPrepareTool, KaggleSubmitInputSchema, KaggleSubmitTool, defaultKaggleCommandRunner, } from "./KaggleSubmissionTools.js";
3
+ export { KaggleWorkspacePrepareInputSchema, KaggleWorkspacePrepareTool, } from "./KaggleWorkspacePrepareTool.js";
4
+ export { KaggleMetricDirectionSchema, KaggleMetricsSchema, compareMetricScores, metricThresholdHintForDirection, normalizedMetricScore, parseKaggleMetrics, } from "./metrics.js";
5
+ export { KAGGLE_RUNS_DIR, KAGGLE_WORKSPACE_DIRS, ensureDirectoryWithinStateRoot, ensureKaggleWorkspaceDirectories, getKaggleRunsRoot, getKaggleExperimentDir, getKaggleWorkspaceRoot, resolveKaggleWorkspaceInput, resolveWorkspaceRelativePath, stateRelativePath, validateKaggleCompetitionId, validateKaggleExperimentId, workspaceRelativePath, } from "./paths.js";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/kaggle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mCAAmC,EACnC,4BAA4B,EAC5B,+BAA+B,EAC/B,wBAAwB,EACxB,+BAA+B,EAC/B,wBAAwB,EACxB,gCAAgC,EAChC,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,6BAA6B,EAC7B,sBAAsB,GAOvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,oCAAoC,EACpC,6BAA6B,EAC7B,gCAAgC,EAChC,yBAAyB,EACzB,kCAAkC,EAClC,2BAA2B,EAC3B,uBAAuB,EACvB,gBAAgB,EAChB,0BAA0B,GAO3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,iCAAiC,EACjC,0BAA0B,GAG3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,GAKnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,8BAA8B,EAC9B,gCAAgC,EAChC,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,iBAAiB,EACjB,2BAA2B,EAC3B,0BAA0B,EAC1B,qBAAqB,GAEtB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,89 @@
1
+ import { z } from "zod";
2
+ export declare const KaggleMetricDirectionSchema: z.ZodEnum<["maximize", "minimize"]>;
3
+ export type KaggleMetricDirection = z.infer<typeof KaggleMetricDirectionSchema>;
4
+ export declare const KaggleMetricsSchema: z.ZodObject<{
5
+ experiment_id: z.ZodString;
6
+ competition: z.ZodString;
7
+ metric_name: z.ZodString;
8
+ direction: z.ZodEnum<["maximize", "minimize"]>;
9
+ cv_score: z.ZodNumber;
10
+ cv_std: z.ZodNullable<z.ZodNumber>;
11
+ holdout_score: z.ZodNullable<z.ZodNumber>;
12
+ train_rows: z.ZodNumber;
13
+ valid_rows: z.ZodNumber;
14
+ seed: z.ZodNumber;
15
+ created_at: z.ZodString;
16
+ status: z.ZodEnum<["running", "completed", "failed"]>;
17
+ artifacts: z.ZodObject<{
18
+ model: z.ZodOptional<z.ZodString>;
19
+ submission: z.ZodOptional<z.ZodString>;
20
+ log: z.ZodString;
21
+ }, "strict", z.ZodTypeAny, {
22
+ log: string;
23
+ model?: string | undefined;
24
+ submission?: string | undefined;
25
+ }, {
26
+ log: string;
27
+ model?: string | undefined;
28
+ submission?: string | undefined;
29
+ }>;
30
+ }, "strict", z.ZodTypeAny, {
31
+ status: "running" | "completed" | "failed";
32
+ created_at: string;
33
+ direction: "maximize" | "minimize";
34
+ artifacts: {
35
+ log: string;
36
+ model?: string | undefined;
37
+ submission?: string | undefined;
38
+ };
39
+ seed: number;
40
+ experiment_id: string;
41
+ competition: string;
42
+ metric_name: string;
43
+ cv_score: number;
44
+ cv_std: number | null;
45
+ holdout_score: number | null;
46
+ train_rows: number;
47
+ valid_rows: number;
48
+ }, {
49
+ status: "running" | "completed" | "failed";
50
+ created_at: string;
51
+ direction: "maximize" | "minimize";
52
+ artifacts: {
53
+ log: string;
54
+ model?: string | undefined;
55
+ submission?: string | undefined;
56
+ };
57
+ seed: number;
58
+ experiment_id: string;
59
+ competition: string;
60
+ metric_name: string;
61
+ cv_score: number;
62
+ cv_std: number | null;
63
+ holdout_score: number | null;
64
+ train_rows: number;
65
+ valid_rows: number;
66
+ }>;
67
+ export type KaggleMetrics = z.infer<typeof KaggleMetricsSchema>;
68
+ export type KaggleMetricParseResult = {
69
+ ok: true;
70
+ metrics: KaggleMetrics;
71
+ } | {
72
+ ok: false;
73
+ reason: "missing" | "malformed";
74
+ message: string;
75
+ issues?: string[];
76
+ };
77
+ export interface MetricThresholdHint {
78
+ wait_condition_type: "metric_threshold";
79
+ metric: string;
80
+ operator: "gte" | "lte";
81
+ value_required: true;
82
+ metric_source: "wait_metadata.metrics";
83
+ hint: string;
84
+ }
85
+ export declare function metricThresholdHintForDirection(metricName: string, direction: KaggleMetricDirection): MetricThresholdHint;
86
+ export declare function parseKaggleMetrics(value: unknown): KaggleMetricParseResult;
87
+ export declare function normalizedMetricScore(metrics: KaggleMetrics): number;
88
+ export declare function compareMetricScores(a: KaggleMetrics, b: KaggleMetrics): number;
89
+ //# sourceMappingURL=metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/tools/kaggle/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,2BAA2B,qCAAmC,CAAC;AAC5E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBrB,CAAC;AAEZ,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,MAAM,MAAM,uBAAuB,GAAG;IACpC,EAAE,EAAE,IAAI,CAAC;IACT,OAAO,EAAE,aAAa,CAAC;CACxB,GAAG;IACF,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,mBAAmB,EAAE,kBAAkB,CAAC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,GAAG,KAAK,CAAC;IACxB,cAAc,EAAE,IAAI,CAAC;IACrB,aAAa,EAAE,uBAAuB,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,qBAAqB,GAC/B,mBAAmB,CAUrB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,uBAAuB,CAW1E;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAEpE;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAE9E"}
@@ -0,0 +1,51 @@
1
+ import { z } from "zod";
2
+ export const KaggleMetricDirectionSchema = z.enum(["maximize", "minimize"]);
3
+ export const KaggleMetricsSchema = z.object({
4
+ experiment_id: z.string().min(1),
5
+ competition: z.string().min(1),
6
+ metric_name: z.string().min(1),
7
+ direction: KaggleMetricDirectionSchema,
8
+ cv_score: z.number().finite(),
9
+ cv_std: z.number().finite().nullable(),
10
+ holdout_score: z.number().finite().nullable(),
11
+ train_rows: z.number().int().nonnegative(),
12
+ valid_rows: z.number().int().nonnegative(),
13
+ seed: z.number().int(),
14
+ created_at: z.string().datetime(),
15
+ status: z.enum(["running", "completed", "failed"]),
16
+ artifacts: z.object({
17
+ model: z.string().min(1).optional(),
18
+ submission: z.string().min(1).optional(),
19
+ log: z.string().min(1),
20
+ }).strict(),
21
+ }).strict();
22
+ export function metricThresholdHintForDirection(metricName, direction) {
23
+ const operator = direction === "maximize" ? "gte" : "lte";
24
+ return {
25
+ wait_condition_type: "metric_threshold",
26
+ metric: metricName,
27
+ operator,
28
+ value_required: true,
29
+ metric_source: "wait_metadata.metrics",
30
+ hint: `${direction} ${metricName}: use metric_threshold operator ${operator} with a caller-supplied numeric threshold.`,
31
+ };
32
+ }
33
+ export function parseKaggleMetrics(value) {
34
+ const parsed = KaggleMetricsSchema.safeParse(value);
35
+ if (parsed.success) {
36
+ return { ok: true, metrics: parsed.data };
37
+ }
38
+ return {
39
+ ok: false,
40
+ reason: "malformed",
41
+ message: "metrics.json does not match the strict Kaggle metrics schema",
42
+ issues: parsed.error.issues.map((issue) => `${issue.path.join(".") || "(root)"}: ${issue.message}`),
43
+ };
44
+ }
45
+ export function normalizedMetricScore(metrics) {
46
+ return metrics.direction === "maximize" ? metrics.cv_score : -metrics.cv_score;
47
+ }
48
+ export function compareMetricScores(a, b) {
49
+ return normalizedMetricScore(b) - normalizedMetricScore(a);
50
+ }
51
+ //# sourceMappingURL=metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/tools/kaggle/metrics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ export declare const KAGGLE_RUNS_DIR = "kaggle-runs";
2
+ export declare const KAGGLE_WORKSPACE_DIRS: readonly ["data", "notebooks", "src", "experiments", "submissions"];
3
+ export type KaggleWorkspaceDir = typeof KAGGLE_WORKSPACE_DIRS[number];
4
+ export declare function validateKaggleCompetitionId(competition: string): string;
5
+ export declare function validateKaggleExperimentId(experimentId: string): string;
6
+ export declare function getKaggleRunsRoot(): string;
7
+ export declare function getKaggleWorkspaceRoot(competition: string): string;
8
+ export declare function stateRelativePath(absolutePath: string): string;
9
+ export declare function workspaceRelativePath(workspaceRoot: string, absolutePath: string): string;
10
+ export declare function resolveKaggleWorkspaceInput(workspace: string, competition: string): string;
11
+ export declare function resolveWorkspaceRelativePath(workspaceRoot: string, candidate: string, label: string): string;
12
+ export declare function getKaggleExperimentDir(workspaceRoot: string, experimentId: string): string;
13
+ export declare function ensureDirectoryWithinStateRoot(dirPath: string): Promise<void>;
14
+ export declare function ensureKaggleWorkspaceDirectories(workspaceRoot: string): Promise<Record<KaggleWorkspaceDir, string>>;
15
+ //# sourceMappingURL=paths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../../src/tools/kaggle/paths.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAC7C,eAAO,MAAM,qBAAqB,qEAAsE,CAAC;AAEzG,MAAM,MAAM,kBAAkB,GAAG,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAKtE,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAKvE;AAED,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAKvE;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAO9D;AAED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAMzF;AAUD,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAwB1F;AAED,wBAAgB,4BAA4B,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAU5G;AAED,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAE1F;AAaD,wBAAsB,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BnF;AAED,wBAAsB,gCAAgC,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CASzH"}
@@ -0,0 +1,136 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { getPulseedDirPath } from "../../base/utils/paths.js";
4
+ export const KAGGLE_RUNS_DIR = "kaggle-runs";
5
+ export const KAGGLE_WORKSPACE_DIRS = ["data", "notebooks", "src", "experiments", "submissions"];
6
+ const COMPETITION_ID_PATTERN = /^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/;
7
+ const EXPERIMENT_ID_PATTERN = /^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/;
8
+ export function validateKaggleCompetitionId(competition) {
9
+ if (!COMPETITION_ID_PATTERN.test(competition) || competition === "." || competition === "..") {
10
+ throw new Error("competition must be a safe Kaggle competition id");
11
+ }
12
+ return competition;
13
+ }
14
+ export function validateKaggleExperimentId(experimentId) {
15
+ if (!EXPERIMENT_ID_PATTERN.test(experimentId) || experimentId === "." || experimentId === "..") {
16
+ throw new Error("experiment_id must be a safe Kaggle experiment id");
17
+ }
18
+ return experimentId;
19
+ }
20
+ export function getKaggleRunsRoot() {
21
+ return path.resolve(getPulseedDirPath(), KAGGLE_RUNS_DIR);
22
+ }
23
+ export function getKaggleWorkspaceRoot(competition) {
24
+ const safeCompetition = validateKaggleCompetitionId(competition);
25
+ return path.resolve(getKaggleRunsRoot(), safeCompetition);
26
+ }
27
+ export function stateRelativePath(absolutePath) {
28
+ const stateRoot = path.resolve(getPulseedDirPath());
29
+ const relativePath = path.relative(stateRoot, path.resolve(absolutePath));
30
+ if (relativePath === "" || relativePath.startsWith("..") || path.isAbsolute(relativePath)) {
31
+ throw new Error("path must stay within the PulSeed state root");
32
+ }
33
+ return relativePath.split(path.sep).join("/");
34
+ }
35
+ export function workspaceRelativePath(workspaceRoot, absolutePath) {
36
+ const relativePath = path.relative(path.resolve(workspaceRoot), path.resolve(absolutePath));
37
+ if (relativePath === "" || relativePath.startsWith("..") || path.isAbsolute(relativePath)) {
38
+ throw new Error("path must stay within the Kaggle workspace");
39
+ }
40
+ return relativePath.split(path.sep).join("/");
41
+ }
42
+ function assertWithin(parent, candidate, label) {
43
+ const relativePath = path.relative(path.resolve(parent), path.resolve(candidate));
44
+ if (relativePath === "" || (!relativePath.startsWith("..") && !path.isAbsolute(relativePath))) {
45
+ return;
46
+ }
47
+ throw new Error(`${label} must stay within ${parent}`);
48
+ }
49
+ export function resolveKaggleWorkspaceInput(workspace, competition) {
50
+ const expected = getKaggleWorkspaceRoot(competition);
51
+ const runsRoot = getKaggleRunsRoot();
52
+ const requested = workspace.trim();
53
+ if (!requested) {
54
+ throw new Error("workspace is required");
55
+ }
56
+ let resolved;
57
+ if (path.isAbsolute(requested)) {
58
+ resolved = path.resolve(requested);
59
+ }
60
+ else if (requested === competition) {
61
+ resolved = expected;
62
+ }
63
+ else if (requested === path.join(KAGGLE_RUNS_DIR, competition)) {
64
+ resolved = path.resolve(getPulseedDirPath(), requested);
65
+ }
66
+ else {
67
+ resolved = path.resolve(runsRoot, requested);
68
+ }
69
+ if (resolved !== expected) {
70
+ throw new Error(`workspace must resolve to ${stateRelativePath(expected)}`);
71
+ }
72
+ assertWithin(path.resolve(getPulseedDirPath()), resolved, "workspace");
73
+ return resolved;
74
+ }
75
+ export function resolveWorkspaceRelativePath(workspaceRoot, candidate, label) {
76
+ const requested = candidate.trim();
77
+ if (!requested) {
78
+ throw new Error(`${label} is required`);
79
+ }
80
+ const resolved = path.isAbsolute(requested)
81
+ ? path.resolve(requested)
82
+ : path.resolve(workspaceRoot, requested);
83
+ assertWithin(workspaceRoot, resolved, label);
84
+ return resolved;
85
+ }
86
+ export function getKaggleExperimentDir(workspaceRoot, experimentId) {
87
+ return path.join(workspaceRoot, "experiments", validateKaggleExperimentId(experimentId));
88
+ }
89
+ async function realpathIfExists(candidate) {
90
+ try {
91
+ return await fs.realpath(candidate);
92
+ }
93
+ catch (err) {
94
+ if (err.code === "ENOENT") {
95
+ return null;
96
+ }
97
+ throw err;
98
+ }
99
+ }
100
+ export async function ensureDirectoryWithinStateRoot(dirPath) {
101
+ const stateRoot = path.resolve(getPulseedDirPath());
102
+ await fs.mkdir(stateRoot, { recursive: true });
103
+ const realStateRoot = await fs.realpath(stateRoot);
104
+ assertWithin(stateRoot, dirPath, "directory");
105
+ const relativeParts = path.relative(stateRoot, path.resolve(dirPath)).split(path.sep).filter(Boolean);
106
+ let current = stateRoot;
107
+ for (const part of relativeParts) {
108
+ current = path.join(current, part);
109
+ const existingRealPath = await realpathIfExists(current);
110
+ if (existingRealPath) {
111
+ const stat = await fs.lstat(current);
112
+ if (stat.isSymbolicLink()) {
113
+ throw new Error(`workspace path component must not be a symlink: ${stateRelativePath(current)}`);
114
+ }
115
+ assertWithin(realStateRoot, existingRealPath, "directory realpath");
116
+ if (!stat.isDirectory()) {
117
+ throw new Error(`workspace path component is not a directory: ${stateRelativePath(current)}`);
118
+ }
119
+ continue;
120
+ }
121
+ await fs.mkdir(current);
122
+ const createdRealPath = await fs.realpath(current);
123
+ assertWithin(realStateRoot, createdRealPath, "created directory");
124
+ }
125
+ }
126
+ export async function ensureKaggleWorkspaceDirectories(workspaceRoot) {
127
+ await ensureDirectoryWithinStateRoot(workspaceRoot);
128
+ const directories = {};
129
+ for (const dirname of KAGGLE_WORKSPACE_DIRS) {
130
+ const fullPath = path.join(workspaceRoot, dirname);
131
+ await ensureDirectoryWithinStateRoot(fullPath);
132
+ directories[dirname] = fullPath;
133
+ }
134
+ return directories;
135
+ }
136
+ //# sourceMappingURL=paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/tools/kaggle/paths.ts"],"names":[],"mappings":"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"}
@@ -28,8 +28,8 @@ export declare const GitHubReadInputSchema: z.ZodObject<{
28
28
  run_id?: string | number | undefined;
29
29
  limit?: number | undefined;
30
30
  issue?: number | undefined;
31
- pr?: number | undefined;
32
31
  maxChars?: number | undefined;
32
+ pr?: number | undefined;
33
33
  }>;
34
34
  export type GitHubReadInput = z.infer<typeof GitHubReadInputSchema>;
35
35
  export declare const GitHubPrCreateInputSchema: z.ZodObject<{
@@ -98,8 +98,8 @@ export declare class GitHubReadTool implements ITool<GitHubReadInput, GitHubCliO
98
98
  run_id?: string | number | undefined;
99
99
  limit?: number | undefined;
100
100
  issue?: number | undefined;
101
- pr?: number | undefined;
102
101
  maxChars?: number | undefined;
102
+ pr?: number | undefined;
103
103
  }>;
104
104
  description(): string;
105
105
  call(input: GitHubReadInput, context: ToolCallContext): Promise<ToolResult>;