groundswell 0.0.1 → 0.0.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 (451) hide show
  1. package/CHANGELOG.md +188 -0
  2. package/README.md +99 -5
  3. package/dist/__tests__/adversarial/attachChild-performance.test.d.ts +16 -0
  4. package/dist/__tests__/adversarial/attachChild-performance.test.d.ts.map +1 -0
  5. package/dist/__tests__/adversarial/attachChild-performance.test.js +187 -0
  6. package/dist/__tests__/adversarial/attachChild-performance.test.js.map +1 -0
  7. package/dist/__tests__/adversarial/circular-reference.test.d.ts +13 -0
  8. package/dist/__tests__/adversarial/circular-reference.test.d.ts.map +1 -0
  9. package/dist/__tests__/adversarial/circular-reference.test.js +92 -0
  10. package/dist/__tests__/adversarial/circular-reference.test.js.map +1 -0
  11. package/dist/__tests__/adversarial/complex-circular-reference.test.d.ts +16 -0
  12. package/dist/__tests__/adversarial/complex-circular-reference.test.d.ts.map +1 -0
  13. package/dist/__tests__/adversarial/complex-circular-reference.test.js +127 -0
  14. package/dist/__tests__/adversarial/complex-circular-reference.test.js.map +1 -0
  15. package/dist/__tests__/adversarial/concurrent-task-failures.test.d.ts +21 -0
  16. package/dist/__tests__/adversarial/concurrent-task-failures.test.d.ts.map +1 -0
  17. package/dist/__tests__/adversarial/concurrent-task-failures.test.js +667 -0
  18. package/dist/__tests__/adversarial/concurrent-task-failures.test.js.map +1 -0
  19. package/dist/__tests__/adversarial/deep-analysis.test.d.ts +6 -0
  20. package/dist/__tests__/adversarial/deep-analysis.test.d.ts.map +1 -0
  21. package/dist/__tests__/adversarial/deep-analysis.test.js +877 -0
  22. package/dist/__tests__/adversarial/deep-analysis.test.js.map +1 -0
  23. package/dist/__tests__/adversarial/deep-hierarchy-stress.test.d.ts +13 -0
  24. package/dist/__tests__/adversarial/deep-hierarchy-stress.test.d.ts.map +1 -0
  25. package/dist/__tests__/adversarial/deep-hierarchy-stress.test.js +186 -0
  26. package/dist/__tests__/adversarial/deep-hierarchy-stress.test.js.map +1 -0
  27. package/dist/__tests__/adversarial/e2e-prd-validation.test.d.ts +6 -0
  28. package/dist/__tests__/adversarial/e2e-prd-validation.test.d.ts.map +1 -0
  29. package/dist/__tests__/adversarial/e2e-prd-validation.test.js +626 -0
  30. package/dist/__tests__/adversarial/e2e-prd-validation.test.js.map +1 -0
  31. package/dist/__tests__/adversarial/edge-case.test.d.ts +6 -0
  32. package/dist/__tests__/adversarial/edge-case.test.d.ts.map +1 -0
  33. package/dist/__tests__/adversarial/edge-case.test.js +857 -0
  34. package/dist/__tests__/adversarial/edge-case.test.js.map +1 -0
  35. package/dist/__tests__/adversarial/error-merge-strategy.test.d.ts +20 -0
  36. package/dist/__tests__/adversarial/error-merge-strategy.test.d.ts.map +1 -0
  37. package/dist/__tests__/adversarial/error-merge-strategy.test.js +907 -0
  38. package/dist/__tests__/adversarial/error-merge-strategy.test.js.map +1 -0
  39. package/dist/__tests__/adversarial/incremental-performance.test.d.ts +2 -0
  40. package/dist/__tests__/adversarial/incremental-performance.test.d.ts.map +1 -0
  41. package/dist/__tests__/adversarial/incremental-performance.test.js +113 -0
  42. package/dist/__tests__/adversarial/incremental-performance.test.js.map +1 -0
  43. package/dist/__tests__/adversarial/node-map-update-benchmarks.test.d.ts +22 -0
  44. package/dist/__tests__/adversarial/node-map-update-benchmarks.test.d.ts.map +1 -0
  45. package/dist/__tests__/adversarial/node-map-update-benchmarks.test.js +383 -0
  46. package/dist/__tests__/adversarial/node-map-update-benchmarks.test.js.map +1 -0
  47. package/dist/__tests__/adversarial/observer-propagation.test.d.ts +21 -0
  48. package/dist/__tests__/adversarial/observer-propagation.test.d.ts.map +1 -0
  49. package/dist/__tests__/adversarial/observer-propagation.test.js +404 -0
  50. package/dist/__tests__/adversarial/observer-propagation.test.js.map +1 -0
  51. package/dist/__tests__/adversarial/parent-validation.test.d.ts +13 -0
  52. package/dist/__tests__/adversarial/parent-validation.test.d.ts.map +1 -0
  53. package/dist/__tests__/adversarial/parent-validation.test.js +128 -0
  54. package/dist/__tests__/adversarial/parent-validation.test.js.map +1 -0
  55. package/dist/__tests__/adversarial/prd-12-2-compliance.test.d.ts +20 -0
  56. package/dist/__tests__/adversarial/prd-12-2-compliance.test.d.ts.map +1 -0
  57. package/dist/__tests__/adversarial/prd-12-2-compliance.test.js +482 -0
  58. package/dist/__tests__/adversarial/prd-12-2-compliance.test.js.map +1 -0
  59. package/dist/__tests__/adversarial/prd-compliance.test.d.ts +6 -0
  60. package/dist/__tests__/adversarial/prd-compliance.test.d.ts.map +1 -0
  61. package/dist/__tests__/adversarial/prd-compliance.test.js +886 -0
  62. package/dist/__tests__/adversarial/prd-compliance.test.js.map +1 -0
  63. package/dist/__tests__/compatibility/backward-compatibility.test.d.ts +22 -0
  64. package/dist/__tests__/compatibility/backward-compatibility.test.d.ts.map +1 -0
  65. package/dist/__tests__/compatibility/backward-compatibility.test.js +1843 -0
  66. package/dist/__tests__/compatibility/backward-compatibility.test.js.map +1 -0
  67. package/dist/__tests__/helpers/index.d.ts +10 -0
  68. package/dist/__tests__/helpers/index.d.ts.map +1 -0
  69. package/dist/__tests__/helpers/index.js +10 -0
  70. package/dist/__tests__/helpers/index.js.map +1 -0
  71. package/dist/__tests__/helpers/tree-verification.d.ts +90 -0
  72. package/dist/__tests__/helpers/tree-verification.d.ts.map +1 -0
  73. package/dist/__tests__/helpers/tree-verification.js +202 -0
  74. package/dist/__tests__/helpers/tree-verification.js.map +1 -0
  75. package/dist/__tests__/integration/agent-workflow.test.d.ts +2 -0
  76. package/dist/__tests__/integration/agent-workflow.test.d.ts.map +1 -0
  77. package/dist/__tests__/integration/agent-workflow.test.js +256 -0
  78. package/dist/__tests__/integration/agent-workflow.test.js.map +1 -0
  79. package/dist/__tests__/integration/bidirectional-consistency.test.d.ts +14 -0
  80. package/dist/__tests__/integration/bidirectional-consistency.test.d.ts.map +1 -0
  81. package/dist/__tests__/integration/bidirectional-consistency.test.js +668 -0
  82. package/dist/__tests__/integration/bidirectional-consistency.test.js.map +1 -0
  83. package/dist/__tests__/integration/observer-logging.test.d.ts +2 -0
  84. package/dist/__tests__/integration/observer-logging.test.d.ts.map +1 -0
  85. package/dist/__tests__/integration/observer-logging.test.js +517 -0
  86. package/dist/__tests__/integration/observer-logging.test.js.map +1 -0
  87. package/dist/__tests__/integration/tree-mirroring.test.d.ts +2 -0
  88. package/dist/__tests__/integration/tree-mirroring.test.d.ts.map +1 -0
  89. package/dist/__tests__/integration/tree-mirroring.test.js +117 -0
  90. package/dist/__tests__/integration/tree-mirroring.test.js.map +1 -0
  91. package/dist/__tests__/integration/workflow-reparenting.test.d.ts +12 -0
  92. package/dist/__tests__/integration/workflow-reparenting.test.d.ts.map +1 -0
  93. package/dist/__tests__/integration/workflow-reparenting.test.js +239 -0
  94. package/dist/__tests__/integration/workflow-reparenting.test.js.map +1 -0
  95. package/dist/__tests__/unit/agent.test.d.ts +2 -0
  96. package/dist/__tests__/unit/agent.test.d.ts.map +1 -0
  97. package/dist/__tests__/unit/agent.test.js +143 -0
  98. package/dist/__tests__/unit/agent.test.js.map +1 -0
  99. package/dist/__tests__/unit/cache-key.test.d.ts +5 -0
  100. package/dist/__tests__/unit/cache-key.test.d.ts.map +1 -0
  101. package/dist/__tests__/unit/cache-key.test.js +145 -0
  102. package/dist/__tests__/unit/cache-key.test.js.map +1 -0
  103. package/dist/__tests__/unit/cache.test.d.ts +5 -0
  104. package/dist/__tests__/unit/cache.test.d.ts.map +1 -0
  105. package/dist/__tests__/unit/cache.test.js +132 -0
  106. package/dist/__tests__/unit/cache.test.js.map +1 -0
  107. package/dist/__tests__/unit/context.test.d.ts +2 -0
  108. package/dist/__tests__/unit/context.test.d.ts.map +1 -0
  109. package/dist/__tests__/unit/context.test.js +220 -0
  110. package/dist/__tests__/unit/context.test.js.map +1 -0
  111. package/dist/__tests__/unit/decorators.test.d.ts +2 -0
  112. package/dist/__tests__/unit/decorators.test.d.ts.map +1 -0
  113. package/dist/__tests__/unit/decorators.test.js +162 -0
  114. package/dist/__tests__/unit/decorators.test.js.map +1 -0
  115. package/dist/__tests__/unit/introspection-tools.test.d.ts +5 -0
  116. package/dist/__tests__/unit/introspection-tools.test.d.ts.map +1 -0
  117. package/dist/__tests__/unit/introspection-tools.test.js +191 -0
  118. package/dist/__tests__/unit/introspection-tools.test.js.map +1 -0
  119. package/dist/__tests__/unit/logger.test.d.ts +2 -0
  120. package/dist/__tests__/unit/logger.test.d.ts.map +1 -0
  121. package/dist/__tests__/unit/logger.test.js +241 -0
  122. package/dist/__tests__/unit/logger.test.js.map +1 -0
  123. package/dist/__tests__/unit/observable.test.d.ts +2 -0
  124. package/dist/__tests__/unit/observable.test.d.ts.map +1 -0
  125. package/dist/__tests__/unit/observable.test.js +251 -0
  126. package/dist/__tests__/unit/observable.test.js.map +1 -0
  127. package/dist/__tests__/unit/prompt.test.d.ts +2 -0
  128. package/dist/__tests__/unit/prompt.test.d.ts.map +1 -0
  129. package/dist/__tests__/unit/prompt.test.js +113 -0
  130. package/dist/__tests__/unit/prompt.test.js.map +1 -0
  131. package/dist/__tests__/unit/reflection.test.d.ts +5 -0
  132. package/dist/__tests__/unit/reflection.test.d.ts.map +1 -0
  133. package/dist/__tests__/unit/reflection.test.js +160 -0
  134. package/dist/__tests__/unit/reflection.test.js.map +1 -0
  135. package/dist/__tests__/unit/tree-debugger-incremental.test.d.ts +2 -0
  136. package/dist/__tests__/unit/tree-debugger-incremental.test.d.ts.map +1 -0
  137. package/dist/__tests__/unit/tree-debugger-incremental.test.js +136 -0
  138. package/dist/__tests__/unit/tree-debugger-incremental.test.js.map +1 -0
  139. package/dist/__tests__/unit/tree-debugger.test.d.ts +2 -0
  140. package/dist/__tests__/unit/tree-debugger.test.d.ts.map +1 -0
  141. package/dist/__tests__/unit/tree-debugger.test.js +69 -0
  142. package/dist/__tests__/unit/tree-debugger.test.js.map +1 -0
  143. package/dist/__tests__/unit/utils/workflow-error-utils.test.d.ts +2 -0
  144. package/dist/__tests__/unit/utils/workflow-error-utils.test.d.ts.map +1 -0
  145. package/dist/__tests__/unit/utils/workflow-error-utils.test.js +154 -0
  146. package/dist/__tests__/unit/utils/workflow-error-utils.test.js.map +1 -0
  147. package/dist/__tests__/unit/workflow-detachChild.test.d.ts +2 -0
  148. package/dist/__tests__/unit/workflow-detachChild.test.d.ts.map +1 -0
  149. package/dist/__tests__/unit/workflow-detachChild.test.js +76 -0
  150. package/dist/__tests__/unit/workflow-detachChild.test.js.map +1 -0
  151. package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.d.ts +2 -0
  152. package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.d.ts.map +1 -0
  153. package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.js +122 -0
  154. package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.js.map +1 -0
  155. package/dist/__tests__/unit/workflow-isDescendantOf.test.d.ts +2 -0
  156. package/dist/__tests__/unit/workflow-isDescendantOf.test.d.ts.map +1 -0
  157. package/dist/__tests__/unit/workflow-isDescendantOf.test.js +140 -0
  158. package/dist/__tests__/unit/workflow-isDescendantOf.test.js.map +1 -0
  159. package/dist/__tests__/unit/workflow.test.d.ts +2 -0
  160. package/dist/__tests__/unit/workflow.test.d.ts.map +1 -0
  161. package/dist/__tests__/unit/workflow.test.js +330 -0
  162. package/dist/__tests__/unit/workflow.test.js.map +1 -0
  163. package/dist/cache/cache-key.d.ts +66 -0
  164. package/dist/cache/cache-key.d.ts.map +1 -0
  165. package/dist/cache/cache-key.js +195 -0
  166. package/dist/cache/cache-key.js.map +1 -0
  167. package/dist/cache/cache.d.ts +104 -0
  168. package/dist/cache/cache.d.ts.map +1 -0
  169. package/dist/cache/cache.js +179 -0
  170. package/dist/cache/cache.js.map +1 -0
  171. package/{src/cache/index.ts → dist/cache/index.d.ts} +1 -1
  172. package/dist/cache/index.d.ts.map +1 -0
  173. package/dist/cache/index.js +6 -0
  174. package/dist/cache/index.js.map +1 -0
  175. package/dist/core/agent.d.ts +112 -0
  176. package/dist/core/agent.d.ts.map +1 -0
  177. package/dist/core/agent.js +426 -0
  178. package/dist/core/agent.js.map +1 -0
  179. package/{src/core/context.ts → dist/core/context.d.ts} +16 -67
  180. package/dist/core/context.d.ts.map +1 -0
  181. package/dist/core/context.js +80 -0
  182. package/dist/core/context.js.map +1 -0
  183. package/dist/core/event-tree.d.ts +72 -0
  184. package/dist/core/event-tree.d.ts.map +1 -0
  185. package/dist/core/event-tree.js +211 -0
  186. package/dist/core/event-tree.js.map +1 -0
  187. package/{src/core/factory.ts → dist/core/factory.d.ts} +6 -27
  188. package/dist/core/factory.d.ts.map +1 -0
  189. package/dist/core/factory.js +110 -0
  190. package/dist/core/factory.js.map +1 -0
  191. package/{src/core/index.ts → dist/core/index.d.ts} +2 -10
  192. package/dist/core/index.d.ts.map +1 -0
  193. package/dist/core/index.js +9 -0
  194. package/dist/core/index.js.map +1 -0
  195. package/dist/core/logger.d.ts +50 -0
  196. package/dist/core/logger.d.ts.map +1 -0
  197. package/dist/core/logger.js +91 -0
  198. package/dist/core/logger.js.map +1 -0
  199. package/dist/core/mcp-handler.d.ts +69 -0
  200. package/dist/core/mcp-handler.d.ts.map +1 -0
  201. package/dist/core/mcp-handler.js +143 -0
  202. package/dist/core/mcp-handler.js.map +1 -0
  203. package/dist/core/prompt.d.ts +80 -0
  204. package/dist/core/prompt.d.ts.map +1 -0
  205. package/dist/core/prompt.js +120 -0
  206. package/dist/core/prompt.js.map +1 -0
  207. package/dist/core/workflow-context.d.ts +57 -0
  208. package/dist/core/workflow-context.d.ts.map +1 -0
  209. package/dist/core/workflow-context.js +263 -0
  210. package/dist/core/workflow-context.js.map +1 -0
  211. package/dist/core/workflow.d.ts +241 -0
  212. package/dist/core/workflow.d.ts.map +1 -0
  213. package/dist/core/workflow.js +464 -0
  214. package/dist/core/workflow.js.map +1 -0
  215. package/dist/debugger/index.d.ts +2 -0
  216. package/dist/debugger/index.d.ts.map +1 -0
  217. package/{src/debugger/index.ts → dist/debugger/index.js} +1 -0
  218. package/dist/debugger/index.js.map +1 -0
  219. package/dist/debugger/tree-debugger.d.ts +71 -0
  220. package/dist/debugger/tree-debugger.d.ts.map +1 -0
  221. package/dist/debugger/tree-debugger.js +198 -0
  222. package/dist/debugger/tree-debugger.js.map +1 -0
  223. package/dist/decorators/index.d.ts +4 -0
  224. package/dist/decorators/index.d.ts.map +1 -0
  225. package/{src/decorators/index.ts → dist/decorators/index.js} +1 -0
  226. package/dist/decorators/index.js.map +1 -0
  227. package/dist/decorators/observed-state.d.ts +32 -0
  228. package/dist/decorators/observed-state.d.ts.map +1 -0
  229. package/dist/decorators/observed-state.js +79 -0
  230. package/dist/decorators/observed-state.js.map +1 -0
  231. package/dist/decorators/step.d.ts +15 -0
  232. package/dist/decorators/step.d.ts.map +1 -0
  233. package/dist/decorators/step.js +110 -0
  234. package/dist/decorators/step.js.map +1 -0
  235. package/dist/decorators/task.d.ts +50 -0
  236. package/dist/decorators/task.d.ts.map +1 -0
  237. package/dist/decorators/task.js +118 -0
  238. package/dist/decorators/task.js.map +1 -0
  239. package/dist/examples/index.d.ts +3 -0
  240. package/dist/examples/index.d.ts.map +1 -0
  241. package/{src/examples/index.ts → dist/examples/index.js} +1 -0
  242. package/dist/examples/index.js.map +1 -0
  243. package/dist/examples/tdd-orchestrator.d.ts +15 -0
  244. package/dist/examples/tdd-orchestrator.d.ts.map +1 -0
  245. package/dist/examples/tdd-orchestrator.js +121 -0
  246. package/dist/examples/tdd-orchestrator.js.map +1 -0
  247. package/dist/examples/test-cycle-workflow.d.ts +14 -0
  248. package/dist/examples/test-cycle-workflow.d.ts.map +1 -0
  249. package/dist/examples/test-cycle-workflow.js +116 -0
  250. package/dist/examples/test-cycle-workflow.js.map +1 -0
  251. package/dist/index.d.ts +27 -0
  252. package/dist/index.d.ts.map +1 -0
  253. package/dist/index.js +40 -0
  254. package/dist/index.js.map +1 -0
  255. package/dist/reflection/index.d.ts +5 -0
  256. package/dist/reflection/index.d.ts.map +1 -0
  257. package/{src/reflection/index.ts → dist/reflection/index.js} +1 -1
  258. package/dist/reflection/index.js.map +1 -0
  259. package/dist/reflection/reflection.d.ts +84 -0
  260. package/dist/reflection/reflection.d.ts.map +1 -0
  261. package/dist/reflection/reflection.js +329 -0
  262. package/dist/reflection/reflection.js.map +1 -0
  263. package/dist/tools/index.d.ts +6 -0
  264. package/dist/tools/index.d.ts.map +1 -0
  265. package/dist/tools/index.js +11 -0
  266. package/dist/tools/index.js.map +1 -0
  267. package/dist/tools/introspection.d.ts +165 -0
  268. package/dist/tools/introspection.d.ts.map +1 -0
  269. package/dist/tools/introspection.js +324 -0
  270. package/dist/tools/introspection.js.map +1 -0
  271. package/dist/types/agent.d.ts +66 -0
  272. package/dist/types/agent.d.ts.map +1 -0
  273. package/dist/types/agent.js +6 -0
  274. package/dist/types/agent.js.map +1 -0
  275. package/dist/types/decorators.d.ts +31 -0
  276. package/dist/types/decorators.d.ts.map +1 -0
  277. package/dist/types/decorators.js +2 -0
  278. package/dist/types/decorators.js.map +1 -0
  279. package/dist/types/error-strategy.d.ts +13 -0
  280. package/dist/types/error-strategy.d.ts.map +1 -0
  281. package/dist/types/error-strategy.js +2 -0
  282. package/dist/types/error-strategy.js.map +1 -0
  283. package/dist/types/error.d.ts +20 -0
  284. package/dist/types/error.d.ts.map +1 -0
  285. package/dist/types/error.js +2 -0
  286. package/dist/types/error.js.map +1 -0
  287. package/dist/types/events.d.ts +87 -0
  288. package/dist/types/events.d.ts.map +1 -0
  289. package/dist/types/events.js +2 -0
  290. package/dist/types/events.js.map +1 -0
  291. package/dist/types/index.d.ts +15 -0
  292. package/dist/types/index.d.ts.map +1 -0
  293. package/dist/types/index.js +2 -0
  294. package/dist/types/index.js.map +1 -0
  295. package/dist/types/logging.d.ts +24 -0
  296. package/dist/types/logging.d.ts.map +1 -0
  297. package/dist/types/logging.js +2 -0
  298. package/dist/types/logging.js.map +1 -0
  299. package/dist/types/observer.d.ts +18 -0
  300. package/dist/types/observer.d.ts.map +1 -0
  301. package/dist/types/observer.js +2 -0
  302. package/dist/types/observer.js.map +1 -0
  303. package/dist/types/prompt.d.ts +31 -0
  304. package/dist/types/prompt.d.ts.map +1 -0
  305. package/dist/types/prompt.js +6 -0
  306. package/dist/types/prompt.js.map +1 -0
  307. package/dist/types/reflection.d.ts +96 -0
  308. package/dist/types/reflection.d.ts.map +1 -0
  309. package/dist/types/reflection.js +24 -0
  310. package/dist/types/reflection.js.map +1 -0
  311. package/dist/types/sdk-primitives.d.ts +118 -0
  312. package/dist/types/sdk-primitives.d.ts.map +1 -0
  313. package/dist/types/sdk-primitives.js +6 -0
  314. package/dist/types/sdk-primitives.js.map +1 -0
  315. package/{src/types/snapshot.ts → dist/types/snapshot.d.ts} +5 -5
  316. package/dist/types/snapshot.d.ts.map +1 -0
  317. package/dist/types/snapshot.js +2 -0
  318. package/dist/types/snapshot.js.map +1 -0
  319. package/dist/types/workflow-context.d.ts +139 -0
  320. package/dist/types/workflow-context.d.ts.map +1 -0
  321. package/dist/types/workflow-context.js +8 -0
  322. package/dist/types/workflow-context.js.map +1 -0
  323. package/dist/types/workflow.d.ts +30 -0
  324. package/dist/types/workflow.d.ts.map +1 -0
  325. package/dist/types/workflow.js +2 -0
  326. package/dist/types/workflow.js.map +1 -0
  327. package/dist/utils/id.d.ts +6 -0
  328. package/dist/utils/id.d.ts.map +1 -0
  329. package/dist/utils/id.js +12 -0
  330. package/dist/utils/id.js.map +1 -0
  331. package/{src/utils/index.ts → dist/utils/index.d.ts} +2 -0
  332. package/dist/utils/index.d.ts.map +1 -0
  333. package/dist/utils/index.js +4 -0
  334. package/dist/utils/index.js.map +1 -0
  335. package/dist/utils/observable.d.ts +54 -0
  336. package/dist/utils/observable.d.ts.map +1 -0
  337. package/dist/utils/observable.js +82 -0
  338. package/dist/utils/observable.js.map +1 -0
  339. package/dist/utils/workflow-error-utils.d.ts +22 -0
  340. package/dist/utils/workflow-error-utils.d.ts.map +1 -0
  341. package/dist/utils/workflow-error-utils.js +45 -0
  342. package/dist/utils/workflow-error-utils.js.map +1 -0
  343. package/package.json +7 -2
  344. package/.claude/settings.local.json +0 -9
  345. package/.claude/system_prompts/task-breakdown.md +0 -100
  346. package/PRPs/001-hierarchical-workflow-engine.md +0 -2438
  347. package/PRPs/PRDs/001-hierarchical-workflow-engine.md +0 -543
  348. package/PRPs/PRDs/002-agent-prompt.md +0 -390
  349. package/PRPs/PRDs/003-agent-prompt.md +0 -943
  350. package/PRPs/PRDs/004-agent-prompt.md +0 -1136
  351. package/PRPs/PRDs/tasks-001.json +0 -492
  352. package/PRPs/README.md +0 -83
  353. package/PRPs/templates/prp_base.md +0 -222
  354. package/docs/agent.md +0 -422
  355. package/docs/prompt.md +0 -419
  356. package/docs/workflow.md +0 -600
  357. package/examples/README.md +0 -244
  358. package/examples/examples/01-basic-workflow.ts +0 -100
  359. package/examples/examples/02-decorator-options.ts +0 -217
  360. package/examples/examples/03-parent-child.ts +0 -241
  361. package/examples/examples/04-observers-debugger.ts +0 -340
  362. package/examples/examples/05-error-handling.ts +0 -387
  363. package/examples/examples/06-concurrent-tasks.ts +0 -352
  364. package/examples/examples/07-agent-loops.ts +0 -432
  365. package/examples/examples/08-sdk-features.ts +0 -667
  366. package/examples/examples/09-reflection.ts +0 -573
  367. package/examples/examples/10-introspection.ts +0 -550
  368. package/examples/index.ts +0 -143
  369. package/examples/utils/helpers.ts +0 -57
  370. package/llms_full.txt +0 -5890
  371. package/plan/P1P2/PRP.md +0 -527
  372. package/plan/P1P2/research/LRU_CACHE_BEST_PRACTICES.md +0 -1929
  373. package/plan/P1P2/research/LRU_CACHE_CODE_PATTERNS.md +0 -857
  374. package/plan/P1P2/research/LRU_CACHE_INTEGRATION_GUIDE.md +0 -738
  375. package/plan/P1P2/research/LRU_CACHE_RESEARCH_INDEX.md +0 -424
  376. package/plan/P1P2/research/REFLECTION_INDEX.md +0 -291
  377. package/plan/P1P2/research/REFLECTION_RESEARCH_REPORT.md +0 -1342
  378. package/plan/P1P2/research/RESEARCH_SUMMARY.md +0 -342
  379. package/plan/P1P2/research/anthropic-sdk.md +0 -174
  380. package/plan/P1P2/research/async-local-storage.md +0 -200
  381. package/plan/P1P2/research/reflection-code-patterns.md +0 -1205
  382. package/plan/P1P2/research/reflection-decision-matrix.md +0 -421
  383. package/plan/P1P2/research/reflection-implementation-guide.md +0 -1341
  384. package/plan/P1P2/research/reflection-integration-guide.md +0 -834
  385. package/plan/P1P2/research/reflection-patterns.md +0 -1468
  386. package/plan/P1P2/research/reflection-quick-reference.md +0 -558
  387. package/plan/P1P2/research/zod-schema.md +0 -152
  388. package/plan/P3P4/PRP.md +0 -1388
  389. package/plan/P3P4/research/caching-lru.md +0 -116
  390. package/plan/P3P4/research/introspection-tools.md +0 -177
  391. package/plan/P3P4/research/reflection-patterns.md +0 -117
  392. package/plan/P4P5/PRP.md +0 -1136
  393. package/plan/P4P5/research/RESEARCH_SUMMARY.md +0 -151
  394. package/plan/architecture/external_deps.md +0 -358
  395. package/plan/architecture/system_context.md +0 -242
  396. package/plan/backlog.json +0 -867
  397. package/plan/research/INTROSPECTION_RESEARCH_SUMMARY.md +0 -378
  398. package/plan/research/README-INTROSPECTION.md +0 -352
  399. package/plan/research/agent-introspection-patterns.md +0 -1085
  400. package/plan/research/introspection-security-guide.md +0 -928
  401. package/plan/research/introspection-tool-examples.md +0 -875
  402. package/scripts/generate-llms-full.ts +0 -206
  403. package/src/__tests__/integration/agent-workflow.test.ts +0 -256
  404. package/src/__tests__/integration/tree-mirroring.test.ts +0 -114
  405. package/src/__tests__/unit/agent.test.ts +0 -169
  406. package/src/__tests__/unit/cache-key.test.ts +0 -182
  407. package/src/__tests__/unit/cache.test.ts +0 -172
  408. package/src/__tests__/unit/context.test.ts +0 -138
  409. package/src/__tests__/unit/decorators.test.ts +0 -100
  410. package/src/__tests__/unit/introspection-tools.test.ts +0 -277
  411. package/src/__tests__/unit/prompt.test.ts +0 -135
  412. package/src/__tests__/unit/reflection.test.ts +0 -210
  413. package/src/__tests__/unit/tree-debugger.test.ts +0 -85
  414. package/src/__tests__/unit/workflow.test.ts +0 -81
  415. package/src/cache/cache-key.ts +0 -244
  416. package/src/cache/cache.ts +0 -236
  417. package/src/core/agent.ts +0 -573
  418. package/src/core/event-tree.ts +0 -260
  419. package/src/core/logger.ts +0 -87
  420. package/src/core/mcp-handler.ts +0 -184
  421. package/src/core/prompt.ts +0 -150
  422. package/src/core/workflow-context.ts +0 -349
  423. package/src/core/workflow.ts +0 -302
  424. package/src/debugger/tree-debugger.ts +0 -210
  425. package/src/decorators/observed-state.ts +0 -95
  426. package/src/decorators/step.ts +0 -139
  427. package/src/decorators/task.ts +0 -96
  428. package/src/examples/tdd-orchestrator.ts +0 -65
  429. package/src/examples/test-cycle-workflow.ts +0 -64
  430. package/src/index.ts +0 -140
  431. package/src/reflection/reflection.ts +0 -407
  432. package/src/tools/index.ts +0 -36
  433. package/src/tools/introspection.ts +0 -464
  434. package/src/types/agent.ts +0 -90
  435. package/src/types/decorators.ts +0 -25
  436. package/src/types/error-strategy.ts +0 -13
  437. package/src/types/error.ts +0 -20
  438. package/src/types/events.ts +0 -74
  439. package/src/types/index.ts +0 -55
  440. package/src/types/logging.ts +0 -24
  441. package/src/types/observer.ts +0 -18
  442. package/src/types/prompt.ts +0 -40
  443. package/src/types/reflection.ts +0 -117
  444. package/src/types/sdk-primitives.ts +0 -128
  445. package/src/types/workflow-context.ts +0 -163
  446. package/src/types/workflow.ts +0 -37
  447. package/src/utils/id.ts +0 -11
  448. package/src/utils/observable.ts +0 -77
  449. package/tasks.json +0 -0
  450. package/tsconfig.json +0 -22
  451. package/vitest.config.ts +0 -16
@@ -0,0 +1,329 @@
1
+ /**
2
+ * ReflectionManager - Implements reflection and self-correction for agents
3
+ *
4
+ * Provides multi-level reflection (workflow, agent, prompt) with configurable
5
+ * retry limits and history tracking.
6
+ */
7
+ import { z } from 'zod';
8
+ /**
9
+ * Schema for parsing reflection responses from the agent
10
+ */
11
+ const ReflectionResponseSchema = z.object({
12
+ shouldRetry: z.boolean(),
13
+ reason: z.string(),
14
+ revisedPromptData: z.record(z.unknown()).optional(),
15
+ revisedSystemPrompt: z.string().optional(),
16
+ });
17
+ /**
18
+ * Default reflection prompt template
19
+ */
20
+ const REFLECTION_PROMPT_TEMPLATE = `A previous operation failed with the following error:
21
+
22
+ Error: {{errorMessage}}
23
+ Stack: {{errorStack}}
24
+
25
+ Level: {{level}}
26
+ Node: {{nodeName}} ({{nodeId}})
27
+ Attempt: {{attemptNumber}} of {{maxAttempts}}
28
+
29
+ Previous attempts:
30
+ {{previousAttempts}}
31
+
32
+ Analyze the error and determine:
33
+ 1. Can this operation be retried with modifications?
34
+ 2. What changes would help it succeed?
35
+ 3. Is this a transient error (worth retrying) or a fundamental issue (should abort)?
36
+
37
+ Consider:
38
+ - Rate limits and quota errors should NOT be retried via reflection
39
+ - Authentication errors should NOT be retried via reflection
40
+ - Schema validation errors may be retried with revised data
41
+ - Logic errors may be retried with revised prompts
42
+
43
+ Respond with JSON:
44
+ {
45
+ "shouldRetry": boolean,
46
+ "reason": string,
47
+ "revisedPromptData": { /* optional revised data */ },
48
+ "revisedSystemPrompt": "optional revised system prompt"
49
+ }`;
50
+ /**
51
+ * ReflectionManager - Manages reflection and self-correction
52
+ */
53
+ export class ReflectionManager {
54
+ config;
55
+ history = [];
56
+ agent;
57
+ eventEmitter;
58
+ /**
59
+ * Create a new ReflectionManager
60
+ * @param config Reflection configuration
61
+ * @param agent Optional agent to use for reflection analysis
62
+ */
63
+ constructor(config, agent) {
64
+ this.config = config;
65
+ this.agent = agent;
66
+ }
67
+ /**
68
+ * Set the event emitter for workflow events
69
+ */
70
+ setEventEmitter(emitter) {
71
+ this.eventEmitter = emitter;
72
+ }
73
+ /**
74
+ * Check if reflection is enabled
75
+ */
76
+ isEnabled() {
77
+ return this.config.enabled;
78
+ }
79
+ /**
80
+ * Get the maximum number of attempts
81
+ */
82
+ getMaxAttempts() {
83
+ return this.config.maxAttempts;
84
+ }
85
+ /**
86
+ * Get the retry delay in milliseconds
87
+ */
88
+ getRetryDelayMs() {
89
+ return this.config.retryDelayMs ?? 0;
90
+ }
91
+ /**
92
+ * Trigger a reflection on the current context
93
+ */
94
+ async triggerReflection(reason) {
95
+ if (!this.config.enabled) {
96
+ throw new Error('Reflection is not enabled');
97
+ }
98
+ // Record that reflection was triggered
99
+ const entry = {
100
+ timestamp: Date.now(),
101
+ level: 'workflow',
102
+ reason: reason ?? 'Manual reflection trigger',
103
+ error: new Error(reason ?? 'Manual trigger'),
104
+ resolution: 'skip',
105
+ success: false,
106
+ };
107
+ this.history.push(entry);
108
+ }
109
+ /**
110
+ * Get the history of reflection attempts
111
+ */
112
+ getReflectionHistory() {
113
+ return [...this.history];
114
+ }
115
+ /**
116
+ * Perform reflection analysis on an error
117
+ */
118
+ async reflect(context) {
119
+ // Emit reflection start event
120
+ if (this.eventEmitter) {
121
+ this.eventEmitter({
122
+ type: 'reflectionStart',
123
+ level: context.level,
124
+ node: context.failedNode,
125
+ });
126
+ }
127
+ let result;
128
+ try {
129
+ // Check for non-retryable errors
130
+ if (this.isNonRetryableError(context.error)) {
131
+ result = {
132
+ shouldRetry: false,
133
+ reason: `Non-retryable error: ${context.error.message}`,
134
+ };
135
+ }
136
+ else if (this.agent) {
137
+ // Use agent for reflection analysis
138
+ result = await this.reflectWithAgent(context);
139
+ }
140
+ else {
141
+ // Use simple heuristic-based reflection
142
+ result = this.reflectWithHeuristics(context);
143
+ }
144
+ // Record the reflection entry
145
+ const entry = {
146
+ timestamp: Date.now(),
147
+ level: context.level,
148
+ reason: result.reason,
149
+ error: context.error,
150
+ resolution: result.shouldRetry ? 'retry' : 'abort',
151
+ success: false, // Will be updated by caller if retry succeeds
152
+ };
153
+ this.history.push(entry);
154
+ // Apply retry delay if configured
155
+ if (result.shouldRetry && this.config.retryDelayMs) {
156
+ await this.delay(this.config.retryDelayMs);
157
+ }
158
+ return result;
159
+ }
160
+ finally {
161
+ // Emit reflection end event
162
+ if (this.eventEmitter) {
163
+ this.eventEmitter({
164
+ type: 'reflectionEnd',
165
+ level: context.level,
166
+ success: result?.shouldRetry ?? false,
167
+ node: context.failedNode,
168
+ });
169
+ }
170
+ }
171
+ }
172
+ /**
173
+ * Mark the last reflection entry as successful
174
+ */
175
+ markLastReflectionSuccessful() {
176
+ if (this.history.length > 0) {
177
+ this.history[this.history.length - 1].success = true;
178
+ }
179
+ }
180
+ /**
181
+ * Check if an error is non-retryable
182
+ */
183
+ isNonRetryableError(error) {
184
+ const message = error.message.toLowerCase();
185
+ // Rate limit and quota errors
186
+ if (message.includes('rate limit') ||
187
+ message.includes('quota exceeded') ||
188
+ message.includes('429')) {
189
+ return true;
190
+ }
191
+ // Authentication errors
192
+ if (message.includes('authentication') ||
193
+ message.includes('unauthorized') ||
194
+ message.includes('401') ||
195
+ message.includes('403') ||
196
+ message.includes('invalid api key')) {
197
+ return true;
198
+ }
199
+ // Network errors that should use exponential backoff instead
200
+ if (message.includes('econnrefused') ||
201
+ message.includes('etimedout') ||
202
+ message.includes('network')) {
203
+ return true;
204
+ }
205
+ return false;
206
+ }
207
+ /**
208
+ * Perform reflection using an agent
209
+ */
210
+ async reflectWithAgent(context) {
211
+ if (!this.agent) {
212
+ throw new Error('No agent configured for reflection');
213
+ }
214
+ // Build the reflection prompt
215
+ const promptText = this.buildReflectionPrompt(context);
216
+ // Create a prompt for reflection analysis
217
+ const reflectionPrompt = new (await import('../core/prompt.js')).Prompt({
218
+ user: promptText,
219
+ responseFormat: ReflectionResponseSchema,
220
+ });
221
+ try {
222
+ const response = await this.agent.prompt(reflectionPrompt);
223
+ return {
224
+ shouldRetry: response.shouldRetry,
225
+ reason: response.reason,
226
+ revisedPromptData: response.revisedPromptData,
227
+ revisedSystemPrompt: response.revisedSystemPrompt,
228
+ };
229
+ }
230
+ catch (reflectionError) {
231
+ // If reflection itself fails, don't retry the original
232
+ return {
233
+ shouldRetry: false,
234
+ reason: `Reflection analysis failed: ${reflectionError instanceof Error ? reflectionError.message : 'Unknown error'}`,
235
+ };
236
+ }
237
+ }
238
+ /**
239
+ * Perform reflection using simple heuristics
240
+ */
241
+ reflectWithHeuristics(context) {
242
+ const errorMessage = context.error.message.toLowerCase();
243
+ // Check for validation errors (often retryable)
244
+ if (errorMessage.includes('validation') ||
245
+ errorMessage.includes('parse') ||
246
+ errorMessage.includes('schema') ||
247
+ errorMessage.includes('json')) {
248
+ return {
249
+ shouldRetry: true,
250
+ reason: 'Validation/parsing error detected - retry may succeed with adjusted approach',
251
+ };
252
+ }
253
+ // Check for timeout errors
254
+ if (errorMessage.includes('timeout')) {
255
+ return {
256
+ shouldRetry: context.attemptNumber < 2,
257
+ reason: context.attemptNumber < 2
258
+ ? 'Timeout error - retry once'
259
+ : 'Timeout error - too many attempts',
260
+ };
261
+ }
262
+ // Default: retry if under max attempts
263
+ const shouldRetry = context.attemptNumber < this.config.maxAttempts;
264
+ return {
265
+ shouldRetry,
266
+ reason: shouldRetry
267
+ ? `Attempt ${context.attemptNumber} failed - retrying`
268
+ : `Max attempts (${this.config.maxAttempts}) reached`,
269
+ };
270
+ }
271
+ /**
272
+ * Build the reflection prompt from context
273
+ */
274
+ buildReflectionPrompt(context) {
275
+ const previousAttemptsText = context.previousAttempts.length > 0
276
+ ? context.previousAttempts
277
+ .map((a, i) => ` ${i + 1}. [${a.level}] ${a.reason} -> ${a.resolution} (${a.success ? 'success' : 'failed'})`)
278
+ .join('\n')
279
+ : ' None';
280
+ return REFLECTION_PROMPT_TEMPLATE.replace('{{errorMessage}}', context.error.message)
281
+ .replace('{{errorStack}}', context.error.stack ?? 'No stack trace')
282
+ .replace('{{level}}', context.level)
283
+ .replace('{{nodeName}}', context.failedNode.name)
284
+ .replace('{{nodeId}}', context.failedNode.id)
285
+ .replace('{{attemptNumber}}', String(context.attemptNumber))
286
+ .replace('{{maxAttempts}}', String(this.config.maxAttempts))
287
+ .replace('{{previousAttempts}}', previousAttemptsText);
288
+ }
289
+ /**
290
+ * Helper to create a delay
291
+ */
292
+ delay(ms) {
293
+ return new Promise((resolve) => setTimeout(resolve, ms));
294
+ }
295
+ }
296
+ /**
297
+ * Execute a function with reflection support
298
+ * @param fn Function to execute
299
+ * @param reflection ReflectionManager instance
300
+ * @param createContext Function to create reflection context from error
301
+ * @returns Result of the function
302
+ */
303
+ export async function executeWithReflection(fn, reflection, createContext) {
304
+ let lastError = null;
305
+ const maxAttempts = reflection.getMaxAttempts();
306
+ for (let attempt = 1; attempt <= maxAttempts; attempt++) {
307
+ try {
308
+ const result = await fn();
309
+ // If we succeeded after a reflection, mark it as successful
310
+ if (attempt > 1) {
311
+ reflection.markLastReflectionSuccessful();
312
+ }
313
+ return result;
314
+ }
315
+ catch (error) {
316
+ lastError = error;
317
+ if (!reflection.isEnabled() || attempt === maxAttempts) {
318
+ throw error;
319
+ }
320
+ const context = createContext(lastError, attempt, reflection.getReflectionHistory());
321
+ const result = await reflection.reflect(context);
322
+ if (!result.shouldRetry) {
323
+ throw lastError;
324
+ }
325
+ }
326
+ }
327
+ throw lastError ?? new Error('Max reflection attempts exceeded');
328
+ }
329
+ //# sourceMappingURL=reflection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../src/reflection/reflection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Tools module exports
3
+ */
4
+ export { INTROSPECTION_TOOLS, inspectCurrentNodeTool, readAncestorChainTool, listSiblingsChildrenTool, inspectPriorOutputsTool, inspectCacheStatusTool, requestSpawnWorkflowTool, INTROSPECTION_HANDLERS, handleInspectCurrentNode, handleReadAncestorChain, handleListSiblingsChildren, handleInspectPriorOutputs, handleInspectCacheStatus, handleRequestSpawnWorkflow, registerIntrospectionTools, executeIntrospectionTool, } from './introspection.js';
5
+ export type { CurrentNodeInfo, AncestorInfo, AncestorChainResult, NodeInfo, SiblingsChildrenResult, PriorOutputInfo, CacheStatusResult, SpawnWorkflowRequest, } from './introspection.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAEL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EAExB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B,EAE1B,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,QAAQ,EACR,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Tools module exports
3
+ */
4
+ export {
5
+ // Tool definitions
6
+ INTROSPECTION_TOOLS, inspectCurrentNodeTool, readAncestorChainTool, listSiblingsChildrenTool, inspectPriorOutputsTool, inspectCacheStatusTool, requestSpawnWorkflowTool,
7
+ // Handlers
8
+ INTROSPECTION_HANDLERS, handleInspectCurrentNode, handleReadAncestorChain, handleListSiblingsChildren, handleInspectPriorOutputs, handleInspectCacheStatus, handleRequestSpawnWorkflow,
9
+ // Utilities
10
+ registerIntrospectionTools, executeIntrospectionTool, } from './introspection.js';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO;AACL,mBAAmB;AACnB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB;AACxB,WAAW;AACX,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B;AAC1B,YAAY;AACZ,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Introspection Tools - Standard tools for agents to inspect their workflow hierarchy
3
+ *
4
+ * These tools allow agents to understand their position in the workflow tree,
5
+ * access prior outputs, check cache status, and request dynamic workflow spawning.
6
+ */
7
+ import type { Tool, WorkflowStatus } from '../types/index.js';
8
+ /**
9
+ * Information about the current workflow node
10
+ */
11
+ export interface CurrentNodeInfo {
12
+ id: string;
13
+ name: string;
14
+ status: WorkflowStatus;
15
+ parentId?: string;
16
+ parentName?: string;
17
+ childCount: number;
18
+ depth: number;
19
+ }
20
+ /**
21
+ * Information about an ancestor node
22
+ */
23
+ export interface AncestorInfo {
24
+ id: string;
25
+ name: string;
26
+ status: WorkflowStatus;
27
+ depth: number;
28
+ }
29
+ /**
30
+ * Result from reading ancestor chain
31
+ */
32
+ export interface AncestorChainResult {
33
+ ancestors: AncestorInfo[];
34
+ totalDepth: number;
35
+ }
36
+ /**
37
+ * Information about a sibling or child node
38
+ */
39
+ export interface NodeInfo {
40
+ id: string;
41
+ name: string;
42
+ status: WorkflowStatus;
43
+ }
44
+ /**
45
+ * Result from listing siblings or children
46
+ */
47
+ export interface SiblingsChildrenResult {
48
+ nodes: NodeInfo[];
49
+ type: 'siblings' | 'children';
50
+ }
51
+ /**
52
+ * Information about a prior output
53
+ */
54
+ export interface PriorOutputInfo {
55
+ nodeId: string;
56
+ nodeName: string;
57
+ status: WorkflowStatus;
58
+ events: unknown[];
59
+ }
60
+ /**
61
+ * Result from cache status check
62
+ */
63
+ export interface CacheStatusResult {
64
+ exists: boolean;
65
+ key: string;
66
+ }
67
+ /**
68
+ * Request to spawn a workflow
69
+ */
70
+ export interface SpawnWorkflowRequest {
71
+ name: string;
72
+ description: string;
73
+ requestId: string;
74
+ status: 'pending';
75
+ }
76
+ /**
77
+ * Tool: inspect_current_node
78
+ * Returns information about the current workflow node
79
+ */
80
+ export declare const inspectCurrentNodeTool: Tool;
81
+ /**
82
+ * Tool: read_ancestor_chain
83
+ * Returns all ancestor nodes from current position up to root
84
+ */
85
+ export declare const readAncestorChainTool: Tool;
86
+ /**
87
+ * Tool: list_siblings_children
88
+ * Returns sibling or child nodes relative to current position
89
+ */
90
+ export declare const listSiblingsChildrenTool: Tool;
91
+ /**
92
+ * Tool: inspect_prior_outputs
93
+ * Returns outputs from prior steps or prompt executions
94
+ */
95
+ export declare const inspectPriorOutputsTool: Tool;
96
+ /**
97
+ * Tool: inspect_cache_status
98
+ * Checks if a prompt response is cached
99
+ */
100
+ export declare const inspectCacheStatusTool: Tool;
101
+ /**
102
+ * Tool: request_spawn_workflow
103
+ * Requests to spawn a new child workflow dynamically
104
+ */
105
+ export declare const requestSpawnWorkflowTool: Tool;
106
+ /**
107
+ * Handler for inspect_current_node
108
+ */
109
+ export declare function handleInspectCurrentNode(): Promise<CurrentNodeInfo>;
110
+ /**
111
+ * Handler for read_ancestor_chain
112
+ */
113
+ export declare function handleReadAncestorChain(input: {
114
+ maxDepth?: number;
115
+ }): Promise<AncestorChainResult>;
116
+ /**
117
+ * Handler for list_siblings_children
118
+ */
119
+ export declare function handleListSiblingsChildren(input: {
120
+ type: 'siblings' | 'children';
121
+ }): Promise<SiblingsChildrenResult>;
122
+ /**
123
+ * Handler for inspect_prior_outputs
124
+ */
125
+ export declare function handleInspectPriorOutputs(input: {
126
+ nodeId?: string;
127
+ count?: number;
128
+ }): Promise<PriorOutputInfo[]>;
129
+ /**
130
+ * Handler for inspect_cache_status
131
+ */
132
+ export declare function handleInspectCacheStatus(input: {
133
+ promptHash: string;
134
+ }): Promise<CacheStatusResult>;
135
+ /**
136
+ * Handler for request_spawn_workflow
137
+ * Note: This creates a spawn request that must be handled by the workflow orchestrator
138
+ */
139
+ export declare function handleRequestSpawnWorkflow(input: {
140
+ name: string;
141
+ description: string;
142
+ }): Promise<SpawnWorkflowRequest>;
143
+ /**
144
+ * All introspection tools bundled together
145
+ */
146
+ export declare const INTROSPECTION_TOOLS: Tool[];
147
+ /**
148
+ * Map of tool names to handlers
149
+ */
150
+ export declare const INTROSPECTION_HANDLERS: Record<string, (input: unknown) => Promise<unknown>>;
151
+ /**
152
+ * Register all introspection tools with an MCP handler
153
+ * @param handler MCP handler to register tools with
154
+ */
155
+ export declare function registerIntrospectionTools(handler: {
156
+ registerTool(name: string, executor: (input: unknown) => Promise<unknown>): void;
157
+ }): void;
158
+ /**
159
+ * Execute an introspection tool by name
160
+ * @param toolName Name of the tool to execute
161
+ * @param input Tool input
162
+ * @returns Tool result
163
+ */
164
+ export declare function executeIntrospectionTool(toolName: string, input: unknown): Promise<unknown>;
165
+ //# sourceMappingURL=introspection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"introspection.d.ts","sourceRoot":"","sources":["../../src/tools/introspection.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAgB,MAAM,mBAAmB,CAAC;AAI5E;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,CAAC;CACnB;AAMD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,IASpC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,IAanC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,IActC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,IAiBrC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,IAapC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,IAiBtC,CAAC;AAmBF;;GAEG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,eAAe,CAAC,CAkBzE;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA0B/B;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;CAC/B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAwBlC;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,KAAK,EAAE;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAoC7B;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,KAAK,EAAE;IACpD,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAO7B;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAgBhC;AAMD;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,IAAI,EAOrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CACzC,MAAM,EACN,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAgBrC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE;IAClD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;CAClF,GAAG,IAAI,CAIP;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAMlB"}