groundswell 0.0.2 → 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 (633) hide show
  1. package/dist/__tests__/adversarial/attachChild-performance.test.d.ts +16 -0
  2. package/dist/__tests__/adversarial/attachChild-performance.test.d.ts.map +1 -0
  3. package/dist/__tests__/adversarial/attachChild-performance.test.js +187 -0
  4. package/dist/__tests__/adversarial/attachChild-performance.test.js.map +1 -0
  5. package/dist/__tests__/adversarial/circular-reference.test.d.ts +13 -0
  6. package/dist/__tests__/adversarial/circular-reference.test.d.ts.map +1 -0
  7. package/dist/__tests__/adversarial/circular-reference.test.js +92 -0
  8. package/dist/__tests__/adversarial/circular-reference.test.js.map +1 -0
  9. package/dist/__tests__/adversarial/complex-circular-reference.test.d.ts +16 -0
  10. package/dist/__tests__/adversarial/complex-circular-reference.test.d.ts.map +1 -0
  11. package/dist/__tests__/adversarial/complex-circular-reference.test.js +127 -0
  12. package/dist/__tests__/adversarial/complex-circular-reference.test.js.map +1 -0
  13. package/dist/__tests__/adversarial/concurrent-task-failures.test.d.ts +21 -0
  14. package/dist/__tests__/adversarial/concurrent-task-failures.test.d.ts.map +1 -0
  15. package/dist/__tests__/adversarial/concurrent-task-failures.test.js +667 -0
  16. package/dist/__tests__/adversarial/concurrent-task-failures.test.js.map +1 -0
  17. package/dist/__tests__/adversarial/deep-analysis.test.d.ts +6 -0
  18. package/dist/__tests__/adversarial/deep-analysis.test.d.ts.map +1 -0
  19. package/dist/__tests__/adversarial/deep-analysis.test.js +877 -0
  20. package/dist/__tests__/adversarial/deep-analysis.test.js.map +1 -0
  21. package/dist/__tests__/adversarial/deep-hierarchy-stress.test.d.ts +13 -0
  22. package/dist/__tests__/adversarial/deep-hierarchy-stress.test.d.ts.map +1 -0
  23. package/dist/__tests__/adversarial/deep-hierarchy-stress.test.js +186 -0
  24. package/dist/__tests__/adversarial/deep-hierarchy-stress.test.js.map +1 -0
  25. package/dist/__tests__/adversarial/e2e-prd-validation.test.d.ts +6 -0
  26. package/dist/__tests__/adversarial/e2e-prd-validation.test.d.ts.map +1 -0
  27. package/dist/__tests__/adversarial/e2e-prd-validation.test.js +626 -0
  28. package/dist/__tests__/adversarial/e2e-prd-validation.test.js.map +1 -0
  29. package/dist/__tests__/adversarial/edge-case.test.d.ts +6 -0
  30. package/dist/__tests__/adversarial/edge-case.test.d.ts.map +1 -0
  31. package/dist/__tests__/adversarial/edge-case.test.js +857 -0
  32. package/dist/__tests__/adversarial/edge-case.test.js.map +1 -0
  33. package/dist/__tests__/adversarial/error-merge-strategy.test.d.ts +20 -0
  34. package/dist/__tests__/adversarial/error-merge-strategy.test.d.ts.map +1 -0
  35. package/dist/__tests__/adversarial/error-merge-strategy.test.js +907 -0
  36. package/dist/__tests__/adversarial/error-merge-strategy.test.js.map +1 -0
  37. package/dist/__tests__/adversarial/incremental-performance.test.d.ts +2 -0
  38. package/dist/__tests__/adversarial/incremental-performance.test.d.ts.map +1 -0
  39. package/dist/__tests__/adversarial/incremental-performance.test.js +113 -0
  40. package/dist/__tests__/adversarial/incremental-performance.test.js.map +1 -0
  41. package/dist/__tests__/adversarial/node-map-update-benchmarks.test.d.ts +22 -0
  42. package/dist/__tests__/adversarial/node-map-update-benchmarks.test.d.ts.map +1 -0
  43. package/dist/__tests__/adversarial/node-map-update-benchmarks.test.js +383 -0
  44. package/dist/__tests__/adversarial/node-map-update-benchmarks.test.js.map +1 -0
  45. package/dist/__tests__/adversarial/observer-propagation.test.d.ts +21 -0
  46. package/dist/__tests__/adversarial/observer-propagation.test.d.ts.map +1 -0
  47. package/dist/__tests__/adversarial/observer-propagation.test.js +404 -0
  48. package/dist/__tests__/adversarial/observer-propagation.test.js.map +1 -0
  49. package/dist/__tests__/adversarial/parent-validation.test.d.ts +13 -0
  50. package/dist/__tests__/adversarial/parent-validation.test.d.ts.map +1 -0
  51. package/dist/__tests__/adversarial/parent-validation.test.js +128 -0
  52. package/dist/__tests__/adversarial/parent-validation.test.js.map +1 -0
  53. package/dist/__tests__/adversarial/prd-12-2-compliance.test.d.ts +20 -0
  54. package/dist/__tests__/adversarial/prd-12-2-compliance.test.d.ts.map +1 -0
  55. package/dist/__tests__/adversarial/prd-12-2-compliance.test.js +482 -0
  56. package/dist/__tests__/adversarial/prd-12-2-compliance.test.js.map +1 -0
  57. package/dist/__tests__/adversarial/prd-compliance.test.d.ts +6 -0
  58. package/dist/__tests__/adversarial/prd-compliance.test.d.ts.map +1 -0
  59. package/dist/__tests__/adversarial/prd-compliance.test.js +886 -0
  60. package/dist/__tests__/adversarial/prd-compliance.test.js.map +1 -0
  61. package/dist/__tests__/compatibility/backward-compatibility.test.d.ts +22 -0
  62. package/dist/__tests__/compatibility/backward-compatibility.test.d.ts.map +1 -0
  63. package/dist/__tests__/compatibility/backward-compatibility.test.js +1843 -0
  64. package/dist/__tests__/compatibility/backward-compatibility.test.js.map +1 -0
  65. package/dist/__tests__/helpers/index.d.ts +10 -0
  66. package/dist/__tests__/helpers/index.d.ts.map +1 -0
  67. package/{src/__tests__/helpers/index.ts → dist/__tests__/helpers/index.js} +2 -10
  68. package/dist/__tests__/helpers/index.js.map +1 -0
  69. package/dist/__tests__/helpers/tree-verification.d.ts +90 -0
  70. package/dist/__tests__/helpers/tree-verification.d.ts.map +1 -0
  71. package/dist/__tests__/helpers/tree-verification.js +202 -0
  72. package/dist/__tests__/helpers/tree-verification.js.map +1 -0
  73. package/dist/__tests__/integration/agent-workflow.test.d.ts +2 -0
  74. package/dist/__tests__/integration/agent-workflow.test.d.ts.map +1 -0
  75. package/dist/__tests__/integration/agent-workflow.test.js +256 -0
  76. package/dist/__tests__/integration/agent-workflow.test.js.map +1 -0
  77. package/dist/__tests__/integration/bidirectional-consistency.test.d.ts +14 -0
  78. package/dist/__tests__/integration/bidirectional-consistency.test.d.ts.map +1 -0
  79. package/dist/__tests__/integration/bidirectional-consistency.test.js +668 -0
  80. package/dist/__tests__/integration/bidirectional-consistency.test.js.map +1 -0
  81. package/dist/__tests__/integration/observer-logging.test.d.ts +2 -0
  82. package/dist/__tests__/integration/observer-logging.test.d.ts.map +1 -0
  83. package/dist/__tests__/integration/observer-logging.test.js +517 -0
  84. package/dist/__tests__/integration/observer-logging.test.js.map +1 -0
  85. package/dist/__tests__/integration/tree-mirroring.test.d.ts +2 -0
  86. package/dist/__tests__/integration/tree-mirroring.test.d.ts.map +1 -0
  87. package/dist/__tests__/integration/tree-mirroring.test.js +117 -0
  88. package/dist/__tests__/integration/tree-mirroring.test.js.map +1 -0
  89. package/dist/__tests__/integration/workflow-reparenting.test.d.ts +12 -0
  90. package/dist/__tests__/integration/workflow-reparenting.test.d.ts.map +1 -0
  91. package/dist/__tests__/integration/workflow-reparenting.test.js +239 -0
  92. package/dist/__tests__/integration/workflow-reparenting.test.js.map +1 -0
  93. package/dist/__tests__/unit/agent.test.d.ts +2 -0
  94. package/dist/__tests__/unit/agent.test.d.ts.map +1 -0
  95. package/dist/__tests__/unit/agent.test.js +143 -0
  96. package/dist/__tests__/unit/agent.test.js.map +1 -0
  97. package/dist/__tests__/unit/cache-key.test.d.ts +5 -0
  98. package/dist/__tests__/unit/cache-key.test.d.ts.map +1 -0
  99. package/dist/__tests__/unit/cache-key.test.js +145 -0
  100. package/dist/__tests__/unit/cache-key.test.js.map +1 -0
  101. package/dist/__tests__/unit/cache.test.d.ts +5 -0
  102. package/dist/__tests__/unit/cache.test.d.ts.map +1 -0
  103. package/dist/__tests__/unit/cache.test.js +132 -0
  104. package/dist/__tests__/unit/cache.test.js.map +1 -0
  105. package/dist/__tests__/unit/context.test.d.ts +2 -0
  106. package/dist/__tests__/unit/context.test.d.ts.map +1 -0
  107. package/dist/__tests__/unit/context.test.js +220 -0
  108. package/dist/__tests__/unit/context.test.js.map +1 -0
  109. package/dist/__tests__/unit/decorators.test.d.ts +2 -0
  110. package/dist/__tests__/unit/decorators.test.d.ts.map +1 -0
  111. package/dist/__tests__/unit/decorators.test.js +162 -0
  112. package/dist/__tests__/unit/decorators.test.js.map +1 -0
  113. package/dist/__tests__/unit/introspection-tools.test.d.ts +5 -0
  114. package/dist/__tests__/unit/introspection-tools.test.d.ts.map +1 -0
  115. package/dist/__tests__/unit/introspection-tools.test.js +191 -0
  116. package/dist/__tests__/unit/introspection-tools.test.js.map +1 -0
  117. package/dist/__tests__/unit/logger.test.d.ts +2 -0
  118. package/dist/__tests__/unit/logger.test.d.ts.map +1 -0
  119. package/dist/__tests__/unit/logger.test.js +241 -0
  120. package/dist/__tests__/unit/logger.test.js.map +1 -0
  121. package/dist/__tests__/unit/observable.test.d.ts +2 -0
  122. package/dist/__tests__/unit/observable.test.d.ts.map +1 -0
  123. package/dist/__tests__/unit/observable.test.js +251 -0
  124. package/dist/__tests__/unit/observable.test.js.map +1 -0
  125. package/dist/__tests__/unit/prompt.test.d.ts +2 -0
  126. package/dist/__tests__/unit/prompt.test.d.ts.map +1 -0
  127. package/dist/__tests__/unit/prompt.test.js +113 -0
  128. package/dist/__tests__/unit/prompt.test.js.map +1 -0
  129. package/dist/__tests__/unit/reflection.test.d.ts +5 -0
  130. package/dist/__tests__/unit/reflection.test.d.ts.map +1 -0
  131. package/dist/__tests__/unit/reflection.test.js +160 -0
  132. package/dist/__tests__/unit/reflection.test.js.map +1 -0
  133. package/dist/__tests__/unit/tree-debugger-incremental.test.d.ts +2 -0
  134. package/dist/__tests__/unit/tree-debugger-incremental.test.d.ts.map +1 -0
  135. package/dist/__tests__/unit/tree-debugger-incremental.test.js +136 -0
  136. package/dist/__tests__/unit/tree-debugger-incremental.test.js.map +1 -0
  137. package/dist/__tests__/unit/tree-debugger.test.d.ts +2 -0
  138. package/dist/__tests__/unit/tree-debugger.test.d.ts.map +1 -0
  139. package/dist/__tests__/unit/tree-debugger.test.js +69 -0
  140. package/dist/__tests__/unit/tree-debugger.test.js.map +1 -0
  141. package/dist/__tests__/unit/utils/workflow-error-utils.test.d.ts +2 -0
  142. package/dist/__tests__/unit/utils/workflow-error-utils.test.d.ts.map +1 -0
  143. package/dist/__tests__/unit/utils/workflow-error-utils.test.js +154 -0
  144. package/dist/__tests__/unit/utils/workflow-error-utils.test.js.map +1 -0
  145. package/dist/__tests__/unit/workflow-detachChild.test.d.ts +2 -0
  146. package/dist/__tests__/unit/workflow-detachChild.test.d.ts.map +1 -0
  147. package/dist/__tests__/unit/workflow-detachChild.test.js +76 -0
  148. package/dist/__tests__/unit/workflow-detachChild.test.js.map +1 -0
  149. package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.d.ts +2 -0
  150. package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.d.ts.map +1 -0
  151. package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.js +122 -0
  152. package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.js.map +1 -0
  153. package/dist/__tests__/unit/workflow-isDescendantOf.test.d.ts +2 -0
  154. package/dist/__tests__/unit/workflow-isDescendantOf.test.d.ts.map +1 -0
  155. package/dist/__tests__/unit/workflow-isDescendantOf.test.js +140 -0
  156. package/dist/__tests__/unit/workflow-isDescendantOf.test.js.map +1 -0
  157. package/dist/__tests__/unit/workflow.test.d.ts +2 -0
  158. package/dist/__tests__/unit/workflow.test.d.ts.map +1 -0
  159. package/dist/__tests__/unit/workflow.test.js +330 -0
  160. package/dist/__tests__/unit/workflow.test.js.map +1 -0
  161. package/dist/cache/cache-key.d.ts +66 -0
  162. package/dist/cache/cache-key.d.ts.map +1 -0
  163. package/dist/cache/cache-key.js +195 -0
  164. package/dist/cache/cache-key.js.map +1 -0
  165. package/dist/cache/cache.d.ts +104 -0
  166. package/dist/cache/cache.d.ts.map +1 -0
  167. package/dist/cache/cache.js +179 -0
  168. package/dist/cache/cache.js.map +1 -0
  169. package/{src/cache/index.ts → dist/cache/index.d.ts} +1 -1
  170. package/dist/cache/index.d.ts.map +1 -0
  171. package/dist/cache/index.js +6 -0
  172. package/dist/cache/index.js.map +1 -0
  173. package/dist/core/agent.d.ts +112 -0
  174. package/dist/core/agent.d.ts.map +1 -0
  175. package/dist/core/agent.js +426 -0
  176. package/dist/core/agent.js.map +1 -0
  177. package/{src/core/context.ts → dist/core/context.d.ts} +16 -67
  178. package/dist/core/context.d.ts.map +1 -0
  179. package/dist/core/context.js +80 -0
  180. package/dist/core/context.js.map +1 -0
  181. package/dist/core/event-tree.d.ts +72 -0
  182. package/dist/core/event-tree.d.ts.map +1 -0
  183. package/dist/core/event-tree.js +211 -0
  184. package/dist/core/event-tree.js.map +1 -0
  185. package/{src/core/factory.ts → dist/core/factory.d.ts} +6 -27
  186. package/dist/core/factory.d.ts.map +1 -0
  187. package/dist/core/factory.js +110 -0
  188. package/dist/core/factory.js.map +1 -0
  189. package/{src/core/index.ts → dist/core/index.d.ts} +2 -10
  190. package/dist/core/index.d.ts.map +1 -0
  191. package/dist/core/index.js +9 -0
  192. package/dist/core/index.js.map +1 -0
  193. package/dist/core/logger.d.ts +50 -0
  194. package/dist/core/logger.d.ts.map +1 -0
  195. package/dist/core/logger.js +91 -0
  196. package/dist/core/logger.js.map +1 -0
  197. package/dist/core/mcp-handler.d.ts +69 -0
  198. package/dist/core/mcp-handler.d.ts.map +1 -0
  199. package/dist/core/mcp-handler.js +143 -0
  200. package/dist/core/mcp-handler.js.map +1 -0
  201. package/dist/core/prompt.d.ts +80 -0
  202. package/dist/core/prompt.d.ts.map +1 -0
  203. package/dist/core/prompt.js +120 -0
  204. package/dist/core/prompt.js.map +1 -0
  205. package/dist/core/workflow-context.d.ts +57 -0
  206. package/dist/core/workflow-context.d.ts.map +1 -0
  207. package/dist/core/workflow-context.js +263 -0
  208. package/dist/core/workflow-context.js.map +1 -0
  209. package/dist/core/workflow.d.ts +241 -0
  210. package/dist/core/workflow.d.ts.map +1 -0
  211. package/dist/core/workflow.js +464 -0
  212. package/dist/core/workflow.js.map +1 -0
  213. package/dist/debugger/index.d.ts +2 -0
  214. package/dist/debugger/index.d.ts.map +1 -0
  215. package/{src/debugger/index.ts → dist/debugger/index.js} +1 -0
  216. package/dist/debugger/index.js.map +1 -0
  217. package/dist/debugger/tree-debugger.d.ts +71 -0
  218. package/dist/debugger/tree-debugger.d.ts.map +1 -0
  219. package/dist/debugger/tree-debugger.js +198 -0
  220. package/dist/debugger/tree-debugger.js.map +1 -0
  221. package/dist/decorators/index.d.ts +4 -0
  222. package/dist/decorators/index.d.ts.map +1 -0
  223. package/{src/decorators/index.ts → dist/decorators/index.js} +1 -0
  224. package/dist/decorators/index.js.map +1 -0
  225. package/dist/decorators/observed-state.d.ts +32 -0
  226. package/dist/decorators/observed-state.d.ts.map +1 -0
  227. package/dist/decorators/observed-state.js +79 -0
  228. package/dist/decorators/observed-state.js.map +1 -0
  229. package/dist/decorators/step.d.ts +15 -0
  230. package/dist/decorators/step.d.ts.map +1 -0
  231. package/dist/decorators/step.js +110 -0
  232. package/dist/decorators/step.js.map +1 -0
  233. package/dist/decorators/task.d.ts +50 -0
  234. package/dist/decorators/task.d.ts.map +1 -0
  235. package/dist/decorators/task.js +118 -0
  236. package/dist/decorators/task.js.map +1 -0
  237. package/dist/examples/index.d.ts +3 -0
  238. package/dist/examples/index.d.ts.map +1 -0
  239. package/{src/examples/index.ts → dist/examples/index.js} +1 -0
  240. package/dist/examples/index.js.map +1 -0
  241. package/dist/examples/tdd-orchestrator.d.ts +15 -0
  242. package/dist/examples/tdd-orchestrator.d.ts.map +1 -0
  243. package/dist/examples/tdd-orchestrator.js +121 -0
  244. package/dist/examples/tdd-orchestrator.js.map +1 -0
  245. package/dist/examples/test-cycle-workflow.d.ts +14 -0
  246. package/dist/examples/test-cycle-workflow.d.ts.map +1 -0
  247. package/dist/examples/test-cycle-workflow.js +116 -0
  248. package/dist/examples/test-cycle-workflow.js.map +1 -0
  249. package/dist/index.d.ts +27 -0
  250. package/dist/index.d.ts.map +1 -0
  251. package/dist/index.js +40 -0
  252. package/dist/index.js.map +1 -0
  253. package/dist/reflection/index.d.ts +5 -0
  254. package/dist/reflection/index.d.ts.map +1 -0
  255. package/{src/reflection/index.ts → dist/reflection/index.js} +1 -1
  256. package/dist/reflection/index.js.map +1 -0
  257. package/dist/reflection/reflection.d.ts +84 -0
  258. package/dist/reflection/reflection.d.ts.map +1 -0
  259. package/dist/reflection/reflection.js +329 -0
  260. package/dist/reflection/reflection.js.map +1 -0
  261. package/dist/tools/index.d.ts +6 -0
  262. package/dist/tools/index.d.ts.map +1 -0
  263. package/dist/tools/index.js +11 -0
  264. package/dist/tools/index.js.map +1 -0
  265. package/dist/tools/introspection.d.ts +165 -0
  266. package/dist/tools/introspection.d.ts.map +1 -0
  267. package/dist/tools/introspection.js +324 -0
  268. package/dist/tools/introspection.js.map +1 -0
  269. package/dist/types/agent.d.ts +66 -0
  270. package/dist/types/agent.d.ts.map +1 -0
  271. package/dist/types/agent.js +6 -0
  272. package/dist/types/agent.js.map +1 -0
  273. package/dist/types/decorators.d.ts +31 -0
  274. package/dist/types/decorators.d.ts.map +1 -0
  275. package/dist/types/decorators.js +2 -0
  276. package/dist/types/decorators.js.map +1 -0
  277. package/dist/types/error-strategy.d.ts +13 -0
  278. package/dist/types/error-strategy.d.ts.map +1 -0
  279. package/dist/types/error-strategy.js +2 -0
  280. package/dist/types/error-strategy.js.map +1 -0
  281. package/dist/types/error.d.ts +20 -0
  282. package/dist/types/error.d.ts.map +1 -0
  283. package/dist/types/error.js +2 -0
  284. package/dist/types/error.js.map +1 -0
  285. package/dist/types/events.d.ts +87 -0
  286. package/dist/types/events.d.ts.map +1 -0
  287. package/dist/types/events.js +2 -0
  288. package/dist/types/events.js.map +1 -0
  289. package/dist/types/index.d.ts +15 -0
  290. package/dist/types/index.d.ts.map +1 -0
  291. package/dist/types/index.js +2 -0
  292. package/dist/types/index.js.map +1 -0
  293. package/dist/types/logging.d.ts +24 -0
  294. package/dist/types/logging.d.ts.map +1 -0
  295. package/dist/types/logging.js +2 -0
  296. package/dist/types/logging.js.map +1 -0
  297. package/dist/types/observer.d.ts +18 -0
  298. package/dist/types/observer.d.ts.map +1 -0
  299. package/dist/types/observer.js +2 -0
  300. package/dist/types/observer.js.map +1 -0
  301. package/dist/types/prompt.d.ts +31 -0
  302. package/dist/types/prompt.d.ts.map +1 -0
  303. package/dist/types/prompt.js +6 -0
  304. package/dist/types/prompt.js.map +1 -0
  305. package/dist/types/reflection.d.ts +96 -0
  306. package/dist/types/reflection.d.ts.map +1 -0
  307. package/dist/types/reflection.js +24 -0
  308. package/dist/types/reflection.js.map +1 -0
  309. package/dist/types/sdk-primitives.d.ts +118 -0
  310. package/dist/types/sdk-primitives.d.ts.map +1 -0
  311. package/dist/types/sdk-primitives.js +6 -0
  312. package/dist/types/sdk-primitives.js.map +1 -0
  313. package/{src/types/snapshot.ts → dist/types/snapshot.d.ts} +5 -5
  314. package/dist/types/snapshot.d.ts.map +1 -0
  315. package/dist/types/snapshot.js +2 -0
  316. package/dist/types/snapshot.js.map +1 -0
  317. package/dist/types/workflow-context.d.ts +139 -0
  318. package/dist/types/workflow-context.d.ts.map +1 -0
  319. package/dist/types/workflow-context.js +8 -0
  320. package/dist/types/workflow-context.js.map +1 -0
  321. package/dist/types/workflow.d.ts +30 -0
  322. package/dist/types/workflow.d.ts.map +1 -0
  323. package/dist/types/workflow.js +2 -0
  324. package/dist/types/workflow.js.map +1 -0
  325. package/dist/utils/id.d.ts +6 -0
  326. package/dist/utils/id.d.ts.map +1 -0
  327. package/dist/utils/id.js +12 -0
  328. package/dist/utils/id.js.map +1 -0
  329. package/{src/utils/index.ts → dist/utils/index.d.ts} +1 -0
  330. package/dist/utils/index.d.ts.map +1 -0
  331. package/dist/utils/index.js +4 -0
  332. package/dist/utils/index.js.map +1 -0
  333. package/dist/utils/observable.d.ts +54 -0
  334. package/dist/utils/observable.d.ts.map +1 -0
  335. package/dist/utils/observable.js +82 -0
  336. package/dist/utils/observable.js.map +1 -0
  337. package/dist/utils/workflow-error-utils.d.ts +22 -0
  338. package/dist/utils/workflow-error-utils.d.ts.map +1 -0
  339. package/dist/utils/workflow-error-utils.js +45 -0
  340. package/dist/utils/workflow-error-utils.js.map +1 -0
  341. package/package.json +5 -2
  342. package/.claude/commands/subtask-planning/prp-base-create.md +0 -120
  343. package/.claude/commands/subtask-planning/prp-base-execute.md +0 -65
  344. package/.claude/commands/task-breakdown.md +0 -94
  345. package/.claude/settings.local.json +0 -9
  346. package/.claude/system_prompts/task-breakdown.md +0 -101
  347. package/PRD.md +0 -543
  348. package/PRPs/001-hierarchical-workflow-engine.md +0 -2438
  349. package/PRPs/PRDs/002-agent-prompt.md +0 -390
  350. package/PRPs/PRDs/003-agent-prompt.md +0 -943
  351. package/PRPs/PRDs/004-agent-prompt.md +0 -1136
  352. package/PRPs/PRDs/tasks-001.json +0 -492
  353. package/PRPs/README.md +0 -83
  354. package/PRPs/templates/prp_base.md +0 -222
  355. package/docs/agent.md +0 -422
  356. package/docs/prompt.md +0 -419
  357. package/docs/workflow.md +0 -600
  358. package/examples/README.md +0 -258
  359. package/examples/examples/01-basic-workflow.ts +0 -100
  360. package/examples/examples/02-decorator-options.ts +0 -217
  361. package/examples/examples/03-parent-child.ts +0 -241
  362. package/examples/examples/04-observers-debugger.ts +0 -340
  363. package/examples/examples/05-error-handling.ts +0 -387
  364. package/examples/examples/06-concurrent-tasks.ts +0 -352
  365. package/examples/examples/07-agent-loops.ts +0 -432
  366. package/examples/examples/08-sdk-features.ts +0 -667
  367. package/examples/examples/09-reflection.ts +0 -573
  368. package/examples/examples/10-introspection.ts +0 -550
  369. package/examples/examples/11-reparenting-workflows.ts +0 -269
  370. package/examples/index.ts +0 -147
  371. package/examples/utils/helpers.ts +0 -57
  372. package/package-lock.json +0 -2398
  373. package/plan/001_d3bb02af4886/TEST_RESULTS.md +0 -259
  374. package/plan/001_d3bb02af4886/backlog.json +0 -867
  375. package/plan/001_d3bb02af4886/bug_fix_tasks.json +0 -484
  376. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M1T1S1/PRP.md +0 -488
  377. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M1T1S2/PRP.md +0 -581
  378. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M1T1S3/PRP.md +0 -687
  379. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S1/PRP.md +0 -492
  380. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/PRP.md +0 -932
  381. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/research/concurrent_error_testing_patterns.md +0 -1109
  382. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/research/vitest_concurrent_testing.md +0 -802
  383. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/research/workflow_engine_test_references.md +0 -603
  384. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T2S1/PRP.md +0 -564
  385. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T2S3/PRP.md +0 -518
  386. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T2S4/PRP.md +0 -1252
  387. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/PRP.md +0 -364
  388. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/research/CODEBASE_INVENTORY.md +0 -114
  389. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/research/DECORATOR_DOCUMENTATION_PATTERNS.md +0 -205
  390. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/research/PRD_LOCATION_ANALYSIS.md +0 -199
  391. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/research/ULTRATHINK_PRP_PLAN.md +0 -134
  392. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T1S1/PRP.md +0 -495
  393. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T1S1/research/console_error_inventory.md +0 -435
  394. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T1S2/PRP.md +0 -506
  395. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T1S3/PRP.md +0 -612
  396. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T2S2/PRP.md +0 -558
  397. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T2S2/research/external_research.md +0 -788
  398. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T3S2/PRP.md +0 -460
  399. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T3S3/PRP.md +0 -454
  400. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S1/PRP.md +0 -520
  401. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S1/RECOMMENDATION.md +0 -417
  402. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S1/research/external_workflow_engines_research.md +0 -760
  403. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S1/research/security_implications_analysis.md +0 -245
  404. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S2/PRP.md +0 -792
  405. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S1/PRP.md +0 -535
  406. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S1/TEST_EXECUTION_REPORT.md +0 -190
  407. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/PRP.md +0 -654
  408. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/TEST_FIX_REPORT.md +0 -227
  409. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/research/KEY_FINDINGS.md +0 -345
  410. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/research/QUICK_REFERENCE.md +0 -193
  411. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/research/test_maintenance_research.md +0 -1323
  412. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T3S1/BREAKING_CHANGES_AUDIT.md +0 -1011
  413. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T3S1/PRP.md +0 -927
  414. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T3S2/PRP.md +0 -505
  415. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/architecture/logger_child_signature_analysis.md +0 -401
  416. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S3/child_implementation_research.md +0 -142
  417. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S3/test_patterns_research.md +0 -112
  418. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S3/vitest_patterns_research.md +0 -159
  419. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S4/PRP.md +0 -549
  420. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S4/VERIFICATION_REPORT.md +0 -368
  421. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S4/edge_case_analysis.md +0 -172
  422. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S4/usage_inventory.md +0 -175
  423. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T1S2/PRP.md +0 -696
  424. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T1S4/PRP.md +0 -860
  425. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/PRP.md +0 -1066
  426. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/01-testing-aggregated-errors.md +0 -1103
  427. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/01_typescript_error_aggregation_patterns.md +0 -789
  428. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/02-error-merge-strategy-testing-guide.md +0 -1098
  429. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/02_aggregate_error_patterns.md +0 -1037
  430. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/03-promise-allsettled-testing-patterns.md +0 -916
  431. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/03_error_merging_strategies.md +0 -1045
  432. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/04_github_stackoverflow_examples.md +0 -890
  433. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/05_comprehensive_summary.md +0 -822
  434. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/INDEX.md +0 -668
  435. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/QUICK_REFERENCE.md +0 -706
  436. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/README.md +0 -265
  437. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/RESEARCH_REPORT.md +0 -655
  438. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S4/research/vitest_testing_patterns.md +0 -1103
  439. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T3S2/PRP.md +0 -426
  440. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S2/PRP.md +0 -506
  441. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S2/research/QUICK_REFERENCE.md +0 -114
  442. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S2/research/RESEARCH_SUMMARY.md +0 -316
  443. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S2/research/vitest_observer_error_logging_best_practices.md +0 -754
  444. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S3/PRP.md +0 -612
  445. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T2S1/PRP.md +0 -719
  446. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T2S1/README.md +0 -215
  447. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T2S1/analysis.md +0 -765
  448. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T2S3/PRP.md +0 -718
  449. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/DECISION.md +0 -149
  450. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/PRP.md +0 -470
  451. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/research/ULTRATHINK_PLAN.md +0 -332
  452. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/research/codebase_workflow_name_analysis.md +0 -167
  453. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/research/external_best_practices.md +0 -265
  454. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/research/validation_patterns.md +0 -273
  455. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T4S1/workflow_engine_ancestry_api_research.md +0 -760
  456. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T4S3-PRP.md +0 -434
  457. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M4T2S1/PRP.md +0 -717
  458. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M4T2S2/PRP.md +0 -472
  459. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M4T2S2/VALIDATION_REPORT.md +0 -125
  460. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M4T2S2/research/ULTRATHINK_PRP_PLAN.md +0 -301
  461. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/error-logging-best-practices.md +0 -1170
  462. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/research_typescript_partial_and_overloads.md +0 -940
  463. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/vitest-quick-reference.md +0 -151
  464. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/vitest-research.md +0 -650
  465. package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/prd_snapshot.md +0 -259
  466. package/plan/001_d3bb02af4886/bugfix/P1M1T1S1/PRP.md +0 -457
  467. package/plan/001_d3bb02af4886/bugfix/RESEARCH_SUMMARY.md +0 -346
  468. package/plan/001_d3bb02af4886/bugfix/architecture/codebase_structure.md +0 -311
  469. package/plan/001_d3bb02af4886/bugfix/architecture/concurrent_execution_best_practices.md +0 -1565
  470. package/plan/001_d3bb02af4886/bugfix/architecture/error_handling_patterns.md +0 -288
  471. package/plan/001_d3bb02af4886/bugfix/architecture/promise_all_analysis.md +0 -741
  472. package/plan/001_d3bb02af4886/docs/PRP/P1M1T1S4-functional-workflow-error-state-capture-test.md +0 -652
  473. package/plan/001_d3bb02af4886/docs/PRP/P1P2-PRP.md +0 -527
  474. package/plan/001_d3bb02af4886/docs/PRP/P3P4-PRP.md +0 -1388
  475. package/plan/001_d3bb02af4886/docs/PRP/P4P5-PRP.md +0 -1136
  476. package/plan/001_d3bb02af4886/docs/PRP/PRP.md +0 -527
  477. package/plan/001_d3bb02af4886/docs/PRP/bugfix/P1M1T2S1-PRP.md +0 -415
  478. package/plan/001_d3bb02af4886/docs/PRP/bugfix/P1M1T2S2-PRP.md +0 -378
  479. package/plan/001_d3bb02af4886/docs/PRP/bugfix/P1M1T2S4-PRP.md +0 -713
  480. package/plan/001_d3bb02af4886/docs/PRP/bugfix/P1M2T1S4-PRP.md +0 -370
  481. package/plan/001_d3bb02af4886/docs/PRP_P1M3T1S3.md +0 -499
  482. package/plan/001_d3bb02af4886/docs/TEST_RESULTS.md +0 -230
  483. package/plan/001_d3bb02af4886/docs/architecture/external_deps.md +0 -358
  484. package/plan/001_d3bb02af4886/docs/architecture/system_context.md +0 -242
  485. package/plan/001_d3bb02af4886/docs/bugfix/ANALYSIS_PRD_VS_IMPLEMENTATION.md +0 -1134
  486. package/plan/001_d3bb02af4886/docs/bugfix/GAP_ANALYSIS_SUMMARY.md +0 -179
  487. package/plan/001_d3bb02af4886/docs/bugfix/P1M4T2S1/PRP.md +0 -629
  488. package/plan/001_d3bb02af4886/docs/bugfix/P1M4T2S1/validation-report.md +0 -214
  489. package/plan/001_d3bb02af4886/docs/bugfix/PRP_P1M4T2S3.md +0 -629
  490. package/plan/001_d3bb02af4886/docs/bugfix/bugfix_PRP.md +0 -529
  491. package/plan/001_d3bb02af4886/docs/bugfix/bugfix_QUICK_REFERENCE.md +0 -142
  492. package/plan/001_d3bb02af4886/docs/bugfix/bugfix_README.md +0 -304
  493. package/plan/001_d3bb02af4886/docs/bugfix/bugfix_TEST_RESULTS.md +0 -558
  494. package/plan/001_d3bb02af4886/docs/bugfix/bugfix_VALIDATION_SUMMARY.md +0 -256
  495. package/plan/001_d3bb02af4886/docs/bugfix/system_context.md +0 -346
  496. package/plan/001_d3bb02af4886/docs/bugfix-architecture/bug_analysis.md +0 -415
  497. package/plan/001_d3bb02af4886/docs/bugfix-architecture/implementation_patterns.md +0 -489
  498. package/plan/001_d3bb02af4886/docs/bugfix-architecture/system_context.md +0 -218
  499. package/plan/001_d3bb02af4886/docs/bugfix_INITIATION_SUMMARY.md +0 -380
  500. package/plan/001_d3bb02af4886/docs/research/CYCLE_DETECTION_PATTERNS.md +0 -1923
  501. package/plan/001_d3bb02af4886/docs/research/CYCLE_DETECTION_QUICK_REF.md +0 -319
  502. package/plan/001_d3bb02af4886/docs/research/P1M1T2S1/codebase-context.md +0 -115
  503. package/plan/001_d3bb02af4886/docs/research/P1M1T2S1/cycle-detection-algorithms.md +0 -134
  504. package/plan/001_d3bb02af4886/docs/research/P1M1T2S1/test-patterns.md +0 -153
  505. package/plan/001_d3bb02af4886/docs/research/P1M1T2S1/workflow-class.md +0 -132
  506. package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/DECORATOR_DOCUMENTATION_BEST_PRACTICES.md +0 -716
  507. package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/DECORATOR_DOCUMENTATION_QUICK_REF.md +0 -186
  508. package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/GROUNDSWELL_DECORATOR_EXAMPLES.md +0 -604
  509. package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/INDEX.md +0 -213
  510. package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/codebase_structure.md +0 -30
  511. package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/existing_test_pattern.md +0 -56
  512. package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/getRootObservers_implementation.md +0 -53
  513. package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/test_conventions.md +0 -49
  514. package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/PRP.md +0 -958
  515. package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/QUICK_REFERENCE.md +0 -339
  516. package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/README.md +0 -305
  517. package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/SUMMARY.md +0 -433
  518. package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/bidirectional-tree-consistency-testing.md +0 -1574
  519. package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/test-pattern-examples.md +0 -1014
  520. package/plan/001_d3bb02af4886/docs/research/P1P2/LRU_CACHE_BEST_PRACTICES.md +0 -1929
  521. package/plan/001_d3bb02af4886/docs/research/P1P2/LRU_CACHE_CODE_PATTERNS.md +0 -857
  522. package/plan/001_d3bb02af4886/docs/research/P1P2/LRU_CACHE_INTEGRATION_GUIDE.md +0 -738
  523. package/plan/001_d3bb02af4886/docs/research/P1P2/LRU_CACHE_RESEARCH_INDEX.md +0 -424
  524. package/plan/001_d3bb02af4886/docs/research/P1P2/REFLECTION_INDEX.md +0 -291
  525. package/plan/001_d3bb02af4886/docs/research/P1P2/REFLECTION_RESEARCH_REPORT.md +0 -1342
  526. package/plan/001_d3bb02af4886/docs/research/P1P2/RESEARCH_SUMMARY.md +0 -342
  527. package/plan/001_d3bb02af4886/docs/research/P1P2/anthropic-sdk.md +0 -174
  528. package/plan/001_d3bb02af4886/docs/research/P1P2/async-local-storage.md +0 -200
  529. package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-code-patterns.md +0 -1205
  530. package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-decision-matrix.md +0 -421
  531. package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-implementation-guide.md +0 -1341
  532. package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-integration-guide.md +0 -834
  533. package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-patterns.md +0 -1468
  534. package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-quick-reference.md +0 -558
  535. package/plan/001_d3bb02af4886/docs/research/P1P2/zod-schema.md +0 -152
  536. package/plan/001_d3bb02af4886/docs/research/P3P4/caching-lru.md +0 -116
  537. package/plan/001_d3bb02af4886/docs/research/P3P4/introspection-tools.md +0 -177
  538. package/plan/001_d3bb02af4886/docs/research/P3P4/reflection-patterns.md +0 -117
  539. package/plan/001_d3bb02af4886/docs/research/P4P5/RESEARCH_SUMMARY.md +0 -151
  540. package/plan/001_d3bb02af4886/docs/research/PROMISE_ALLSETTLED_QUICK_REF.md +0 -376
  541. package/plan/001_d3bb02af4886/docs/research/PROMISE_ALLSETTLED_RESEARCH.md +0 -1507
  542. package/plan/001_d3bb02af4886/docs/research/bugfix_typescript_patterns.md +0 -949
  543. package/plan/001_d3bb02af4886/docs/research/error-testing-research.md +0 -619
  544. package/plan/001_d3bb02af4886/docs/research/error_handling_patterns.md +0 -723
  545. package/plan/001_d3bb02af4886/docs/research/general/INTROSPECTION_RESEARCH_SUMMARY.md +0 -378
  546. package/plan/001_d3bb02af4886/docs/research/general/README-INTROSPECTION.md +0 -352
  547. package/plan/001_d3bb02af4886/docs/research/general/agent-introspection-patterns.md +0 -1085
  548. package/plan/001_d3bb02af4886/docs/research/general/introspection-security-guide.md +0 -984
  549. package/plan/001_d3bb02af4886/docs/research/general/introspection-tool-examples.md +0 -875
  550. package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/PRP_TEMPLATE.md +0 -460
  551. package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/QUICK_REFERENCE.md +0 -324
  552. package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/README.md +0 -175
  553. package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/RESEARCH_REPORT.md +0 -499
  554. package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/SUMMARY.md +0 -163
  555. package/plan/001_d3bb02af4886/prd_snapshot.md +0 -543
  556. package/plan/bugfix/BUG_FIX_SUMMARY.md +0 -961
  557. package/scripts/generate-llms-full.ts +0 -206
  558. package/src/__tests__/adversarial/attachChild-performance.test.ts +0 -216
  559. package/src/__tests__/adversarial/circular-reference.test.ts +0 -101
  560. package/src/__tests__/adversarial/complex-circular-reference.test.ts +0 -139
  561. package/src/__tests__/adversarial/concurrent-task-failures.test.ts +0 -571
  562. package/src/__tests__/adversarial/deep-analysis.test.ts +0 -729
  563. package/src/__tests__/adversarial/deep-hierarchy-stress.test.ts +0 -213
  564. package/src/__tests__/adversarial/e2e-prd-validation.test.ts +0 -448
  565. package/src/__tests__/adversarial/edge-case.test.ts +0 -703
  566. package/src/__tests__/adversarial/error-merge-strategy.test.ts +0 -760
  567. package/src/__tests__/adversarial/incremental-performance.test.ts +0 -140
  568. package/src/__tests__/adversarial/node-map-update-benchmarks.test.ts +0 -457
  569. package/src/__tests__/adversarial/observer-propagation.test.ts +0 -487
  570. package/src/__tests__/adversarial/parent-validation.test.ts +0 -143
  571. package/src/__tests__/adversarial/prd-12-2-compliance.test.ts +0 -611
  572. package/src/__tests__/adversarial/prd-compliance.test.ts +0 -731
  573. package/src/__tests__/compatibility/backward-compatibility.test.ts +0 -1572
  574. package/src/__tests__/helpers/tree-verification.ts +0 -257
  575. package/src/__tests__/integration/agent-workflow.test.ts +0 -256
  576. package/src/__tests__/integration/bidirectional-consistency.test.ts +0 -847
  577. package/src/__tests__/integration/observer-logging.test.ts +0 -643
  578. package/src/__tests__/integration/tree-mirroring.test.ts +0 -151
  579. package/src/__tests__/integration/workflow-reparenting.test.ts +0 -303
  580. package/src/__tests__/unit/agent.test.ts +0 -169
  581. package/src/__tests__/unit/cache-key.test.ts +0 -182
  582. package/src/__tests__/unit/cache.test.ts +0 -172
  583. package/src/__tests__/unit/context.test.ts +0 -217
  584. package/src/__tests__/unit/decorators.test.ts +0 -100
  585. package/src/__tests__/unit/introspection-tools.test.ts +0 -277
  586. package/src/__tests__/unit/logger.test.ts +0 -293
  587. package/src/__tests__/unit/observable.test.ts +0 -321
  588. package/src/__tests__/unit/prompt.test.ts +0 -135
  589. package/src/__tests__/unit/reflection.test.ts +0 -210
  590. package/src/__tests__/unit/tree-debugger-incremental.test.ts +0 -170
  591. package/src/__tests__/unit/tree-debugger.test.ts +0 -85
  592. package/src/__tests__/unit/utils/workflow-error-utils.test.ts +0 -209
  593. package/src/__tests__/unit/workflow-detachChild.test.ts +0 -100
  594. package/src/__tests__/unit/workflow-emitEvent-childDetached.test.ts +0 -153
  595. package/src/__tests__/unit/workflow-isDescendantOf.test.ts +0 -180
  596. package/src/__tests__/unit/workflow.test.ts +0 -357
  597. package/src/cache/cache-key.ts +0 -244
  598. package/src/cache/cache.ts +0 -236
  599. package/src/core/agent.ts +0 -593
  600. package/src/core/event-tree.ts +0 -260
  601. package/src/core/logger.ts +0 -112
  602. package/src/core/mcp-handler.ts +0 -184
  603. package/src/core/prompt.ts +0 -150
  604. package/src/core/workflow-context.ts +0 -351
  605. package/src/core/workflow.ts +0 -540
  606. package/src/debugger/tree-debugger.ts +0 -255
  607. package/src/decorators/observed-state.ts +0 -95
  608. package/src/decorators/step.ts +0 -139
  609. package/src/decorators/task.ts +0 -159
  610. package/src/examples/tdd-orchestrator.ts +0 -65
  611. package/src/examples/test-cycle-workflow.ts +0 -64
  612. package/src/index.ts +0 -142
  613. package/src/reflection/reflection.ts +0 -407
  614. package/src/tools/index.ts +0 -36
  615. package/src/tools/introspection.ts +0 -464
  616. package/src/types/agent.ts +0 -90
  617. package/src/types/decorators.ts +0 -32
  618. package/src/types/error-strategy.ts +0 -13
  619. package/src/types/error.ts +0 -20
  620. package/src/types/events.ts +0 -75
  621. package/src/types/index.ts +0 -55
  622. package/src/types/logging.ts +0 -24
  623. package/src/types/observer.ts +0 -18
  624. package/src/types/prompt.ts +0 -40
  625. package/src/types/reflection.ts +0 -117
  626. package/src/types/sdk-primitives.ts +0 -128
  627. package/src/types/workflow-context.ts +0 -163
  628. package/src/types/workflow.ts +0 -37
  629. package/src/utils/id.ts +0 -11
  630. package/src/utils/observable.ts +0 -106
  631. package/src/utils/workflow-error-utils.ts +0 -56
  632. package/tsconfig.json +0 -22
  633. package/vitest.config.ts +0 -16
@@ -1,867 +0,0 @@
1
- {
2
- "backlog": [
3
- {
4
- "type": "Phase",
5
- "id": "P1",
6
- "title": "Foundation Layer - Agent & Prompt Core",
7
- "status": "Completed",
8
- "description": "Implement the foundational Agent and Prompt classes with full Anthropic SDK integration, establishing the core primitives for the orchestration framework.",
9
- "milestones": [
10
- {
11
- "type": "Milestone",
12
- "id": "P1.M1",
13
- "title": "Project Setup & Dependencies",
14
- "status": "Completed",
15
- "description": "Configure project dependencies and type system extensions for Agent/Prompt layer.",
16
- "tasks": [
17
- {
18
- "type": "Task",
19
- "id": "P1.M1.T1",
20
- "title": "Add Required Dependencies",
21
- "status": "Completed",
22
- "description": "Add Anthropic SDK and Zod to package.json with correct version constraints.",
23
- "subtasks": [
24
- {
25
- "type": "Subtask",
26
- "id": "P1.M1.T1.S1",
27
- "title": "Update package.json with dependencies",
28
- "status": "Completed",
29
- "story_points": 0.5,
30
- "dependencies": [],
31
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on external_deps.md, use @anthropic-ai/sdk@^0.71.1 and zod@^3.23.0.\n2. INPUT: Current ./package.json content.\n3. LOGIC: Add dependencies section (currently only devDependencies exist). Add @anthropic-ai/sdk and zod. Verify engines.node>=18.\n4. OUTPUT: Updated package.json with dependencies block. Run npm install to verify."
32
- }
33
- ]
34
- },
35
- {
36
- "type": "Task",
37
- "id": "P1.M1.T2",
38
- "title": "Define Agent/Prompt Type System",
39
- "status": "Completed",
40
- "description": "Create TypeScript type definitions for Agent and Prompt configuration matching PRD Section 5 and 6.",
41
- "subtasks": [
42
- {
43
- "type": "Subtask",
44
- "id": "P1.M1.T2.S1",
45
- "title": "Create AgentConfig and PromptOverrides types",
46
- "status": "Completed",
47
- "story_points": 1,
48
- "dependencies": [
49
- "P1.M1.T1.S1"
50
- ],
51
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 5.1 and 5.3, AgentConfig maps 1:1 to Anthropic SDK properties.\n2. INPUT: Anthropic SDK types from @anthropic-ai/sdk.\n3. LOGIC: Create /src/types/agent.ts with AgentConfig interface: name?, system?, tools?, mcps?, skills?, hooks?, env?, enableReflection?, enableCache?. Create PromptOverrides interface extending AgentConfig with temperature?, maxTokens?, stop?, disableCache?.\n4. OUTPUT: Export types from /src/types/index.ts for consumption by Agent class in P1.M2.T1.S1."
52
- },
53
- {
54
- "type": "Subtask",
55
- "id": "P1.M1.T2.S2",
56
- "title": "Create PromptConfig and Prompt types",
57
- "status": "Completed",
58
- "story_points": 1,
59
- "dependencies": [
60
- "P1.M1.T2.S1"
61
- ],
62
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 6.1-6.2, Prompt<T> uses ZodSchema<T> for responseFormat.\n2. INPUT: Zod types from 'zod', AgentConfig types from P1.M1.T2.S1.\n3. LOGIC: Create /src/types/prompt.ts with PromptConfig<T> interface: user (string), data? (Record<string,any>), responseFormat (z.ZodType<T>), plus all override fields from AgentConfig. Define Prompt<T> class type with readonly fields.\n4. OUTPUT: Export from /src/types/index.ts for consumption by Prompt class in P1.M2.T2.S1."
63
- },
64
- {
65
- "type": "Subtask",
66
- "id": "P1.M1.T2.S3",
67
- "title": "Create Tool, MCPServer, Skill, AgentHooks types",
68
- "status": "Completed",
69
- "story_points": 1,
70
- "dependencies": [
71
- "P1.M1.T1.S1"
72
- ],
73
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on external_deps.md Section 4-6, these types must pass through to Anthropic SDK unchanged.\n2. INPUT: Anthropic SDK Tool interface, MCP patterns from research.\n3. LOGIC: Create /src/types/sdk-primitives.ts. Define Tool interface (name, description, input_schema). Define MCPServer interface (name, version?, transport, command?, args?, tools?). Define Skill interface (name, path). Define AgentHooks interface (PreToolUse?, PostToolUse?, SessionStart?, SessionEnd? arrays of HookHandler).\n4. OUTPUT: Export from /src/types/index.ts for use in AgentConfig and PromptConfig."
74
- }
75
- ]
76
- }
77
- ]
78
- },
79
- {
80
- "type": "Milestone",
81
- "id": "P1.M2",
82
- "title": "Agent Class Implementation",
83
- "status": "Completed",
84
- "description": "Implement the Agent class as a lightweight wrapper around Anthropic SDK with prompt execution capability.",
85
- "tasks": [
86
- {
87
- "type": "Task",
88
- "id": "P1.M2.T1",
89
- "title": "Core Agent Class",
90
- "status": "Completed",
91
- "description": "Implement Agent class with constructor, prompt(), and reflect() methods per PRD Section 5.2.",
92
- "subtasks": [
93
- {
94
- "type": "Subtask",
95
- "id": "P1.M2.T1.S1",
96
- "title": "Implement Agent constructor and config storage",
97
- "status": "Completed",
98
- "story_points": 1,
99
- "dependencies": [
100
- "P1.M1.T2.S1",
101
- "P1.M1.T2.S3"
102
- ],
103
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 5.1-5.2, Agent stores config and instantiates Anthropic client.\n2. INPUT: AgentConfig type from P1.M1.T2.S1. Anthropic client from @anthropic-ai/sdk.\n3. LOGIC: Create /src/core/agent.ts. Agent class stores config (name, system, tools, mcps, skills, hooks, env, enableReflection, enableCache). Create private Anthropic client instance. Do NOT extend Workflow (per system_context.md Decision 1).\n4. OUTPUT: Agent class exportable from /src/core/index.ts for prompt() implementation in P1.M2.T1.S2."
104
- },
105
- {
106
- "type": "Subtask",
107
- "id": "P1.M2.T1.S2",
108
- "title": "Implement Agent.prompt() method",
109
- "status": "Completed",
110
- "story_points": 2,
111
- "dependencies": [
112
- "P1.M2.T1.S1",
113
- "P1.M2.T2.S1"
114
- ],
115
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 5.2, prompt() merges config with Prompt overrides and executes via Anthropic SDK.\n2. INPUT: Agent instance with config, Prompt<T> instance from P1.M2.T2.S1, optional PromptOverrides.\n3. LOGIC: Merge precedence: Prompt overrides > PromptOverrides param > AgentConfig defaults. Build Anthropic messages.create() params: model, max_tokens, messages (user from Prompt), system, tools, temperature. Execute API call. Parse response content. Validate with prompt.responseFormat.parse().\n4. OUTPUT: Return Promise<T> with validated response. Throw on validation failure. For use by Workflow steps and reflection in P1.M2.T1.S3."
116
- },
117
- {
118
- "type": "Subtask",
119
- "id": "P1.M2.T1.S3",
120
- "title": "Implement Agent.reflect() method",
121
- "status": "Completed",
122
- "story_points": 1,
123
- "dependencies": [
124
- "P1.M2.T1.S2"
125
- ],
126
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 5.2, reflect() is like prompt() but with reflection context.\n2. INPUT: Agent.prompt() implementation from P1.M2.T1.S2.\n3. LOGIC: Add reflection system prompt prefix if enableReflection is true. Call internal prompt execution with reflection flag. Track reflection in event tree (prepare for P2.M1).\n4. OUTPUT: Return Promise<T> with reflection-aware response. Method signature identical to prompt() for API consistency."
127
- }
128
- ]
129
- },
130
- {
131
- "type": "Task",
132
- "id": "P1.M2.T2",
133
- "title": "Prompt Class Implementation",
134
- "status": "Completed",
135
- "description": "Implement immutable Prompt<T> class per PRD Section 6.",
136
- "subtasks": [
137
- {
138
- "type": "Subtask",
139
- "id": "P1.M2.T2.S1",
140
- "title": "Implement Prompt<T> class",
141
- "status": "Completed",
142
- "story_points": 1,
143
- "dependencies": [
144
- "P1.M1.T2.S2"
145
- ],
146
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 6.1-6.2, Prompt is immutable with readonly fields.\n2. INPUT: PromptConfig<T> type from P1.M1.T2.S2. Zod schema types.\n3. LOGIC: Create /src/core/prompt.ts. Prompt<T> class with constructor(config: PromptConfig<T>). All fields readonly: user, data, responseFormat, systemOverride?, toolsOverride?, mcpsOverride?, skillsOverride?, hooksOverride?, enableReflection?. Add validateResponse(data: unknown): T method using this.responseFormat.parse().\n4. OUTPUT: Export Prompt class from /src/core/index.ts. Consumed by Agent.prompt() in P1.M2.T1.S2."
147
- }
148
- ]
149
- },
150
- {
151
- "type": "Task",
152
- "id": "P1.M2.T3",
153
- "title": "SDK Property Pass-Through",
154
- "status": "Completed",
155
- "description": "Ensure tools, MCPs, skills, hooks pass through to Anthropic SDK unchanged.",
156
- "subtasks": [
157
- {
158
- "type": "Subtask",
159
- "id": "P1.M2.T3.S1",
160
- "title": "Implement tools array pass-through",
161
- "status": "Completed",
162
- "story_points": 1,
163
- "dependencies": [
164
- "P1.M2.T1.S2"
165
- ],
166
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 5.1 Rule 2, tools pass through unchanged to SDK.\n2. INPUT: Tool[] from AgentConfig/PromptOverrides. Anthropic messages.create() params.\n3. LOGIC: In Agent.prompt() tool handling: If prompt.toolsOverride exists, use it. Else if overrides.tools exists, use it. Else use this.config.tools. Pass directly to messages.create({tools: mergedTools}). Handle tool_use stop_reason with tool execution loop.\n4. OUTPUT: Tools available to Claude during prompt execution. Tool use responses handled. For tool event emission in P2.M1.T1.S2."
167
- },
168
- {
169
- "type": "Subtask",
170
- "id": "P1.M2.T3.S2",
171
- "title": "Implement MCP server pass-through",
172
- "status": "Complete",
173
- "story_points": 2,
174
- "dependencies": [
175
- "P1.M2.T3.S1"
176
- ],
177
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on external_deps.md Section 4, MCP servers can be in-process or stdio.\n2. INPUT: MCPServer[] from config. In-process tool definitions.\n3. LOGIC: Create /src/core/mcp-handler.ts. For inprocess transport: register tools directly. For stdio transport: spawn subprocess, communicate via stdio. Convert MCP tool responses to Anthropic tool format. Merge MCP tools with regular tools before API call.\n4. OUTPUT: MCP tools available in tool list. MCP events captured for event tree in P2.M1.T1.S3."
178
- },
179
- {
180
- "type": "Subtask",
181
- "id": "P1.M2.T3.S3",
182
- "title": "Implement hooks pass-through",
183
- "status": "Complete",
184
- "story_points": 1,
185
- "dependencies": [
186
- "P1.M2.T3.S1"
187
- ],
188
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on external_deps.md Section 5, hooks are passed unchanged. No custom hook types.\n2. INPUT: AgentHooks from config/overrides.\n3. LOGIC: In Agent.prompt() lifecycle: Before tool use - call PreToolUse hooks. After tool use - call PostToolUse hooks. At session boundaries - call SessionStart/SessionEnd. Pass hook return values to SDK as-is.\n4. OUTPUT: Hook execution integrated into prompt flow. Hook decisions logged for observability."
189
- },
190
- {
191
- "type": "Subtask",
192
- "id": "P1.M2.T3.S4",
193
- "title": "Implement skills and env pass-through",
194
- "status": "Complete",
195
- "story_points": 1,
196
- "dependencies": [
197
- "P1.M2.T1.S2"
198
- ],
199
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on external_deps.md Section 6, skills are filesystem-based. Env vars pass unchanged.\n2. INPUT: Skill[] and env Record<string,string> from config.\n3. LOGIC: Skills: Load SKILL.md content from skill.path, inject into system prompt. Env: Set environment variables before API call (process.env merge). Restore after call. Do not persist env changes.\n4. OUTPUT: Skills context available to Claude. Environment isolated per-prompt."
200
- }
201
- ]
202
- }
203
- ]
204
- }
205
- ]
206
- },
207
- {
208
- "type": "Phase",
209
- "id": "P2",
210
- "title": "Hierarchy & Event System Integration",
211
- "status": "Complete",
212
- "description": "Integrate Agent/Prompt execution into the existing workflow hierarchy with automatic mounting and full event capture.",
213
- "milestones": [
214
- {
215
- "type": "Milestone",
216
- "id": "P2.M1",
217
- "title": "Event Tree Extension",
218
- "status": "Complete",
219
- "description": "Extend WorkflowEvent union to capture agent, prompt, tool, and MCP events with automatic tree assembly.",
220
- "tasks": [
221
- {
222
- "type": "Task",
223
- "id": "P2.M1.T1",
224
- "title": "Extend Event Types",
225
- "status": "Complete",
226
- "description": "Add new event types for agent and prompt activities per PRD Section 8.",
227
- "subtasks": [
228
- {
229
- "type": "Subtask",
230
- "id": "P2.M1.T1.S1",
231
- "title": "Add agent event types to WorkflowEvent union",
232
- "status": "Complete",
233
- "story_points": 1,
234
- "dependencies": [
235
- "P1.M2.T1.S2"
236
- ],
237
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on system_context.md, events propagate to root observers via existing pattern.\n2. INPUT: Current WorkflowEvent union in /src/types/events.ts.\n3. LOGIC: Extend union with: agentPromptStart {type, agentId, promptId, node}, agentPromptEnd {type, agentId, promptId, node, duration, tokenUsage}, toolInvocation {type, toolName, input, output, duration, node}, mcpEvent {type, serverName, event, node}, reflectionStart {type, level, node}, reflectionEnd {type, level, success, node}.\n4. OUTPUT: Updated WorkflowEvent type. Observers receive new event types automatically."
238
- },
239
- {
240
- "type": "Subtask",
241
- "id": "P2.M1.T1.S2",
242
- "title": "Emit agentPromptStart/End events from Agent.prompt()",
243
- "status": "Researching",
244
- "story_points": 1,
245
- "dependencies": [
246
- "P2.M1.T1.S1"
247
- ],
248
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on /src/core/workflow.ts emitEvent pattern.\n2. INPUT: Agent.prompt() implementation, emitEvent pattern from Workflow class.\n3. LOGIC: Modify Agent to accept optional WorkflowNode context (injected when called within step). Emit agentPromptStart before API call. Track duration. Emit agentPromptEnd after response with tokenUsage from response.usage. If no workflow context, events are standalone (logged but not in tree).\n4. OUTPUT: Agent events captured in workflow tree when executed in step context."
249
- },
250
- {
251
- "type": "Subtask",
252
- "id": "P2.M1.T1.S3",
253
- "title": "Emit toolInvocation and mcpEvent events",
254
- "status": "Researching",
255
- "story_points": 1,
256
- "dependencies": [
257
- "P2.M1.T1.S2",
258
- "P1.M2.T3.S1",
259
- "P1.M2.T3.S2"
260
- ],
261
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 8.1, every tool/MCP event must be captured.\n2. INPUT: Tool execution loop in Agent.prompt(), MCP handler from P1.M2.T3.S2.\n3. LOGIC: In tool execution: emit toolInvocation with toolName, input (redact sensitive), output (truncate if large), duration. In MCP handler: emit mcpEvent for each MCP interaction. Events nested under current agentPrompt node.\n4. OUTPUT: Complete tool/MCP trace in event tree. Queryable via EventTreeHandle."
262
- }
263
- ]
264
- },
265
- {
266
- "type": "Task",
267
- "id": "P2.M1.T2",
268
- "title": "Automatic Hierarchy Mounting",
269
- "status": "Researching",
270
- "description": "Implement zero-plumbing mounting per PRD Section 7.",
271
- "subtasks": [
272
- {
273
- "type": "Subtask",
274
- "id": "P2.M1.T2.S1",
275
- "title": "Create AgentExecutionContext for hierarchy tracking",
276
- "status": "Researching",
277
- "story_points": 1,
278
- "dependencies": [
279
- "P2.M1.T1.S2"
280
- ],
281
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 7.1 and system_context.md, mounting must be automatic.\n2. INPUT: Current WorkflowNode structure, Agent class.\n3. LOGIC: Create /src/core/context.ts. AgentExecutionContext holds current workflow node reference. Use AsyncLocalStorage to propagate context through async calls. When agent.prompt() called, check AsyncLocalStorage for current node. If found, attach events as children.\n4. OUTPUT: Context automatically available in nested calls. No manual plumbing required."
282
- },
283
- {
284
- "type": "Subtask",
285
- "id": "P2.M1.T2.S2",
286
- "title": "Integrate context into @Step decorator",
287
- "status": "Researching",
288
- "story_points": 1,
289
- "dependencies": [
290
- "P2.M1.T2.S1"
291
- ],
292
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on /src/decorators/step.ts pattern.\n2. INPUT: @Step decorator implementation, AgentExecutionContext from P2.M1.T2.S1.\n3. LOGIC: Modify @Step to create AgentExecutionContext with current node before executing step function. Use AsyncLocalStorage.run() to scope context. Any agent.prompt() inside step automatically inherits context.\n4. OUTPUT: Steps provide automatic context to agent calls. Zero changes needed in user code."
293
- }
294
- ]
295
- }
296
- ]
297
- },
298
- {
299
- "type": "Milestone",
300
- "id": "P2.M2",
301
- "title": "WorkflowContext Implementation",
302
- "status": "Researching",
303
- "description": "Implement WorkflowContext with step() and spawnWorkflow() per PRD Section 4.3.",
304
- "tasks": [
305
- {
306
- "type": "Task",
307
- "id": "P2.M2.T1",
308
- "title": "WorkflowContext Interface",
309
- "status": "Researching",
310
- "description": "Create WorkflowContext providing step() callable anywhere in JS control flow.",
311
- "subtasks": [
312
- {
313
- "type": "Subtask",
314
- "id": "P2.M2.T1.S1",
315
- "title": "Define WorkflowContext interface and type",
316
- "status": "Researching",
317
- "story_points": 1,
318
- "dependencies": [
319
- "P2.M1.T2.S1"
320
- ],
321
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 4.3 interface definition.\n2. INPUT: PRD WorkflowContext interface spec.\n3. LOGIC: Create /src/types/workflow-context.ts. Define interface: workflowId: string, parentWorkflowId?: string, step(name: string, fn: () => Promise<any>): Promise<any>, spawnWorkflow(wf: Workflow): Promise<any>, eventTree: EventTreeHandle, reflection: ReflectionAPI. Export from types/index.ts.\n4. OUTPUT: Type available for WorkflowContext implementation in P2.M2.T1.S2."
322
- },
323
- {
324
- "type": "Subtask",
325
- "id": "P2.M2.T1.S2",
326
- "title": "Implement WorkflowContext class",
327
- "status": "Researching",
328
- "story_points": 2,
329
- "dependencies": [
330
- "P2.M2.T1.S1",
331
- "P2.M1.T2.S1"
332
- ],
333
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 4.3 requirements.\n2. INPUT: WorkflowContext interface, AgentExecutionContext, Workflow class.\n3. LOGIC: Create /src/core/workflow-context.ts. Constructor takes Workflow instance. step() creates step node, sets AgentExecutionContext, executes fn(), captures result/error, emits stepStart/stepEnd. spawnWorkflow() attaches child workflow, runs it, returns result. eventTree getter returns EventTreeHandle for current workflow.\n4. OUTPUT: WorkflowContext usable in new Workflow constructor pattern. For Workflow class update in P2.M2.T1.S3."
334
- },
335
- {
336
- "type": "Subtask",
337
- "id": "P2.M2.T1.S3",
338
- "title": "Update Workflow class to use executor pattern",
339
- "status": "Researching",
340
- "story_points": 2,
341
- "dependencies": [
342
- "P2.M2.T1.S2"
343
- ],
344
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 4.2 Workflow constructor signature.\n2. INPUT: Current Workflow abstract class in /src/core/workflow.ts, WorkflowContext from P2.M2.T1.S2.\n3. LOGIC: Add optional executor function to Workflow: constructor(config: WorkflowConfig, executor?: (ctx: WorkflowContext) => Promise<any>). In run(): if executor provided, create WorkflowContext, call executor(ctx). Keep abstract run() support for class-based workflows (backward compat).\n4. OUTPUT: Both patterns work: class-based (extends Workflow) and functional (new Workflow({}, async (ctx) => {...})). Backward compatible."
345
- }
346
- ]
347
- },
348
- {
349
- "type": "Task",
350
- "id": "P2.M2.T2",
351
- "title": "EventTreeHandle Implementation",
352
- "status": "Researching",
353
- "description": "Implement queryable event tree API per PRD Section 8.3.",
354
- "subtasks": [
355
- {
356
- "type": "Subtask",
357
- "id": "P2.M2.T2.S1",
358
- "title": "Implement EventTreeHandle interface",
359
- "status": "Researching",
360
- "story_points": 1,
361
- "dependencies": [
362
- "P2.M1.T1.S1"
363
- ],
364
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 8.3 interface spec.\n2. INPUT: EventNode type (extend from WorkflowNode), existing WorkflowTreeDebugger patterns.\n3. LOGIC: Create /src/core/event-tree.ts. EventTreeHandle class with: root getter, getNode(id): EventNode | undefined, getChildren(id): EventNode[], getAncestors(id): EventNode[], toJSON(): EventNode. Use existing node.children traversal patterns from tree-debugger.ts.\n4. OUTPUT: EventTreeHandle available via WorkflowContext.eventTree. Enables runtime tree inspection."
365
- }
366
- ]
367
- }
368
- ]
369
- }
370
- ]
371
- },
372
- {
373
- "type": "Phase",
374
- "id": "P3",
375
- "title": "Caching & Reflection Systems",
376
- "status": "Complete",
377
- "description": "Implement deterministic caching layer and multi-level reflection support.",
378
- "milestones": [
379
- {
380
- "type": "Milestone",
381
- "id": "P3.M1",
382
- "title": "Cache Implementation",
383
- "status": "Complete",
384
- "description": "Implement SHA-256 cache key generation and LRU cache per PRD Section 9.",
385
- "tasks": [
386
- {
387
- "type": "Task",
388
- "id": "P3.M1.T1",
389
- "title": "Cache Key Generation",
390
- "status": "Complete",
391
- "description": "Implement deterministic SHA-256 cache key from prompt inputs.",
392
- "subtasks": [
393
- {
394
- "type": "Subtask",
395
- "id": "P3.M1.T1.S1",
396
- "title": "Implement cache key generator",
397
- "status": "Complete",
398
- "story_points": 1,
399
- "dependencies": [
400
- "P1.M2.T2.S1"
401
- ],
402
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 9.1 and external_deps.md Section 3.\n2. INPUT: Prompt instance, resolved config (merged agent + overrides).\n3. LOGIC: Create /src/cache/cache-key.ts. Function generateCacheKey(inputs: CacheKeyInputs): string. Use crypto.createHash('sha256'). Deterministic JSON: sort keys, include user, data, system, model, temperature, tools (names sorted), mcps (names sorted), skills (names sorted), schema hash (from responseFormat._def). Return hex digest.\n4. OUTPUT: Consistent cache key for identical inputs. For cache lookup in P3.M1.T2.S1."
403
- },
404
- {
405
- "type": "Subtask",
406
- "id": "P3.M1.T1.S2",
407
- "title": "Implement schema version hashing",
408
- "status": "Complete",
409
- "story_points": 1,
410
- "dependencies": [
411
- "P3.M1.T1.S1"
412
- ],
413
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 9.1 schema version/hash requirement.\n2. INPUT: ZodSchema from Prompt.responseFormat.\n3. LOGIC: In cache-key.ts, add getSchemaHash(schema: z.ZodType): string. Serialize schema._def to stable JSON. Hash with SHA-256. Include in cache key generation. Handle nested schemas recursively.\n4. OUTPUT: Schema changes invalidate cache automatically. Different response shapes never collide."
414
- }
415
- ]
416
- },
417
- {
418
- "type": "Task",
419
- "id": "P3.M1.T2",
420
- "title": "LRU Cache Implementation",
421
- "status": "Complete",
422
- "description": "Implement in-memory LRU cache with bust API per PRD Section 9.2.",
423
- "subtasks": [
424
- {
425
- "type": "Subtask",
426
- "id": "P3.M1.T2.S1",
427
- "title": "Implement Cache class with LRU eviction",
428
- "status": "Complete",
429
- "story_points": 2,
430
- "dependencies": [
431
- "P3.M1.T1.S1"
432
- ],
433
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 9.2 Cache API.\n2. INPUT: Cache interface from PRD.\n3. LOGIC: Create /src/cache/cache.ts. Cache class with Map<string, {value, timestamp, accessOrder}>. Methods: get(key): Promise<any | undefined>, set(key, value): Promise<void>, bust(key): Promise<void>, bustPrefix(prefix): Promise<void>. LRU eviction: track access order, evict least recent when size > maxSize (default 1000 entries). Optional TTL support.\n4. OUTPUT: Default cache singleton exportable. Agent checks cache before API call in P3.M1.T2.S2."
434
- },
435
- {
436
- "type": "Subtask",
437
- "id": "P3.M1.T2.S2",
438
- "title": "Integrate cache into Agent.prompt()",
439
- "status": "Complete",
440
- "story_points": 1,
441
- "dependencies": [
442
- "P3.M1.T2.S1",
443
- "P1.M2.T1.S2"
444
- ],
445
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 5.1 enableCache and PromptOverrides.disableCache.\n2. INPUT: Agent.prompt() implementation, Cache class, generateCacheKey function.\n3. LOGIC: In Agent.prompt(): If this.config.enableCache && !overrides?.disableCache: generate key, check cache.get(key). If hit, return cached value (skip API). If miss, call API, cache.set(key, response). Log cache hit/miss in events.\n4. OUTPUT: Cached responses returned when available. API calls reduced for repeated prompts."
446
- }
447
- ]
448
- }
449
- ]
450
- },
451
- {
452
- "type": "Milestone",
453
- "id": "P3.M2",
454
- "title": "Reflection System",
455
- "status": "Complete",
456
- "description": "Implement reflection at Workflow, Agent, and Prompt levels per PRD Section 4.4 and related sections.",
457
- "tasks": [
458
- {
459
- "type": "Task",
460
- "id": "P3.M2.T1",
461
- "title": "ReflectionAPI Implementation",
462
- "status": "Complete",
463
- "description": "Create unified ReflectionAPI for all three levels.",
464
- "subtasks": [
465
- {
466
- "type": "Subtask",
467
- "id": "P3.M2.T1.S1",
468
- "title": "Define ReflectionAPI interface",
469
- "status": "Complete",
470
- "story_points": 1,
471
- "dependencies": [
472
- "P2.M2.T1.S1"
473
- ],
474
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 4.4 and system_context.md.\n2. INPUT: WorkflowContext requirements, enableReflection flags.\n3. LOGIC: Create /src/types/reflection.ts. ReflectionAPI interface: enabled: boolean, reflect(error: Error, context: ReflectionContext): Promise<ReflectionResult>, getReflectionHistory(): ReflectionEntry[]. ReflectionContext: level ('workflow' | 'agent' | 'prompt'), failedNode, previousAttempts. ReflectionResult: shouldRetry, revisedPrompt?, revisedConfig?.\n4. OUTPUT: Type available for implementation in P3.M2.T1.S2."
475
- },
476
- {
477
- "type": "Subtask",
478
- "id": "P3.M2.T1.S2",
479
- "title": "Implement Reflection class",
480
- "status": "Complete",
481
- "story_points": 2,
482
- "dependencies": [
483
- "P3.M2.T1.S1",
484
- "P1.M2.T1.S3"
485
- ],
486
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 4.4 workflow-level reflection on step failure.\n2. INPUT: ReflectionAPI interface, Agent.reflect() method.\n3. LOGIC: Create /src/reflection/reflection.ts. Reflection class implements ReflectionAPI. reflect() method: create reflection prompt with error context + state snapshot + prior attempts, call Agent.reflect(), parse shouldRetry decision. Emit reflectionStart/reflectionEnd events. Store history for getReflectionHistory().\n4. OUTPUT: Reflection available via WorkflowContext.reflection. Auto-triggers on step failure if enabled."
487
- },
488
- {
489
- "type": "Subtask",
490
- "id": "P3.M2.T1.S3",
491
- "title": "Wire reflection into step() and Agent.prompt()",
492
- "status": "Complete",
493
- "story_points": 1,
494
- "dependencies": [
495
- "P3.M2.T1.S2",
496
- "P2.M2.T1.S2"
497
- ],
498
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 4.4 auto-trigger on failure.\n2. INPUT: WorkflowContext.step(), Agent.prompt(), Reflection class.\n3. LOGIC: In step(): catch errors, if reflection.enabled call reflection.reflect(error, context). If shouldRetry, re-execute step with revised config. Max retries configurable. In Agent.prompt(): if prompt.enableReflection or agent.enableReflection, wrap with reflection try/retry loop.\n4. OUTPUT: Automatic reflection on failures at all levels. Events captured for observability."
499
- }
500
- ]
501
- }
502
- ]
503
- }
504
- ]
505
- },
506
- {
507
- "type": "Phase",
508
- "id": "P4",
509
- "title": "Dynamic Behavior & Introspection",
510
- "status": "Completed",
511
- "description": "Enable dynamic workflow/agent/prompt creation and provide standard introspection tools for agents.",
512
- "milestones": [
513
- {
514
- "type": "Milestone",
515
- "id": "P4.M1",
516
- "title": "Dynamic Entity Creation",
517
- "status": "Completed",
518
- "description": "Enable runtime creation and attachment of workflows, agents, and prompts per PRD Section 10.",
519
- "tasks": [
520
- {
521
- "type": "Task",
522
- "id": "P4.M1.T1",
523
- "title": "Dynamic Workflow Spawning",
524
- "status": "Completed",
525
- "description": "Allow agents to create and spawn workflows dynamically.",
526
- "subtasks": [
527
- {
528
- "type": "Subtask",
529
- "id": "P4.M1.T1.S1",
530
- "title": "Implement dynamic workflow factory",
531
- "status": "Completed",
532
- "story_points": 1,
533
- "dependencies": [
534
- "P2.M2.T1.S3"
535
- ],
536
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 10.1, agents create workflows via constructors.\n2. INPUT: Workflow class with executor pattern from P2.M2.T1.S3.\n3. LOGIC: Create /src/core/factory.ts. Export createWorkflow(config, executor): Workflow that returns new Workflow(config, executor). Workflow auto-attaches to current context via AgentExecutionContext. No additional plumbing. Factory is convenience, direct constructor works too.\n4. OUTPUT: Agents can dynamically create workflows that attach to hierarchy automatically."
537
- },
538
- {
539
- "type": "Subtask",
540
- "id": "P4.M1.T1.S2",
541
- "title": "Implement dynamic agent factory",
542
- "status": "Completed",
543
- "story_points": 0.5,
544
- "dependencies": [
545
- "P1.M2.T1.S1"
546
- ],
547
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 10.1.\n2. INPUT: Agent class from P1.M2.T1.S1.\n3. LOGIC: In /src/core/factory.ts, export createAgent(config): Agent that returns new Agent(config). Convenience wrapper. Agent instances are lightweight, stateless wrappers.\n4. OUTPUT: Agents can spawn other agents dynamically. No special handling needed."
548
- },
549
- {
550
- "type": "Subtask",
551
- "id": "P4.M1.T1.S3",
552
- "title": "Implement dynamic prompt factory",
553
- "status": "Completed",
554
- "story_points": 0.5,
555
- "dependencies": [
556
- "P1.M2.T2.S1"
557
- ],
558
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 10.1.\n2. INPUT: Prompt class from P1.M2.T2.S1.\n3. LOGIC: In /src/core/factory.ts, export createPrompt<T>(config): Prompt<T> that returns new Prompt(config). Convenience wrapper for functional style.\n4. OUTPUT: Prompts can be created dynamically at runtime."
559
- }
560
- ]
561
- },
562
- {
563
- "type": "Task",
564
- "id": "P4.M1.T2",
565
- "title": "Dynamic Context Revision",
566
- "status": "Completed",
567
- "description": "Support prompt replacement mid-session per PRD Section 10.2.",
568
- "subtasks": [
569
- {
570
- "type": "Subtask",
571
- "id": "P4.M1.T2.S1",
572
- "title": "Implement prompt revision mechanism",
573
- "status": "Completed",
574
- "story_points": 2,
575
- "dependencies": [
576
- "P2.M2.T1.S2",
577
- "P1.M2.T2.S1"
578
- ],
579
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 10.2 requirements.\n2. INPUT: WorkflowContext, step() implementation, Prompt class.\n3. LOGIC: Add to WorkflowContext: replacePrompt(oldPromptId: string, newPrompt: Prompt): void. Mechanism: mark old prompt node as 'revised', attach new prompt as sibling (not child), continue chain from new prompt. Event tree shows revision relationship. No tree forking - linear progression with revision markers.\n4. OUTPUT: Users can inspect result, create new prompt, replace, and continue. Event tree accurate."
580
- }
581
- ]
582
- }
583
- ]
584
- },
585
- {
586
- "type": "Milestone",
587
- "id": "P4.M2",
588
- "title": "Introspection Tools",
589
- "status": "Completed",
590
- "description": "Implement standard agent tools for hierarchy inspection per PRD Section 11.",
591
- "tasks": [
592
- {
593
- "type": "Task",
594
- "id": "P4.M2.T1",
595
- "title": "Implement Introspection Tool Set",
596
- "status": "Completed",
597
- "description": "Create standard tools for agents to inspect their position in the hierarchy.",
598
- "subtasks": [
599
- {
600
- "type": "Subtask",
601
- "id": "P4.M2.T1.S1",
602
- "title": "Implement inspect_current_node tool",
603
- "status": "Planned",
604
- "story_points": 1,
605
- "dependencies": [
606
- "P2.M1.T2.S1",
607
- "P1.M2.T3.S1"
608
- ],
609
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 11, tools use Anthropic SDK conventions.\n2. INPUT: AgentExecutionContext, Tool interface from types.\n3. LOGIC: Create /src/tools/introspection.ts. Define tool: name='inspect_current_node', description='Get current workflow node info', input_schema={}. Handler: get current node from AgentExecutionContext, return JSON with id, name, status, parent info.\n4. OUTPUT: Tool definition exportable. Agents can call to see their position. For agent config in P4.M2.T1.S6."
610
- },
611
- {
612
- "type": "Subtask",
613
- "id": "P4.M2.T1.S2",
614
- "title": "Implement read_ancestor_chain tool",
615
- "status": "Planned",
616
- "story_points": 1,
617
- "dependencies": [
618
- "P4.M2.T1.S1"
619
- ],
620
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 11 ancestor chain requirement.\n2. INPUT: Current node from context, EventTreeHandle.getAncestors().\n3. LOGIC: Define tool: name='read_ancestor_chain', description='Get all ancestor nodes up to root', input_schema={}. Handler: use EventTreeHandle.getAncestors(currentNode.id), return array of node summaries (id, name, status).\n4. OUTPUT: Agents can traverse up the tree to understand context."
621
- },
622
- {
623
- "type": "Subtask",
624
- "id": "P4.M2.T1.S3",
625
- "title": "Implement list_siblings_children tool",
626
- "status": "Planned",
627
- "story_points": 1,
628
- "dependencies": [
629
- "P4.M2.T1.S1"
630
- ],
631
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 11 sibling/child listing.\n2. INPUT: Current node, parent node, EventTreeHandle.\n3. LOGIC: Define tool: name='list_siblings_children', description='List sibling and child nodes', input_schema={type: enum['siblings','children']}. Handler: if siblings, get parent.children excluding self. If children, get current.children. Return node summaries.\n4. OUTPUT: Agents can explore horizontal and downward in tree."
632
- },
633
- {
634
- "type": "Subtask",
635
- "id": "P4.M2.T1.S4",
636
- "title": "Implement inspect_prior_outputs tool",
637
- "status": "Planned",
638
- "story_points": 1,
639
- "dependencies": [
640
- "P4.M2.T1.S2"
641
- ],
642
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 11 prior outputs inspection.\n2. INPUT: Ancestor chain, node events containing outputs.\n3. LOGIC: Define tool: name='inspect_prior_outputs', description='Get outputs from prior steps/prompts', input_schema={nodeId?: string, count?: number}. Handler: if nodeId provided, get that node's output. Else get last N outputs from ancestor chain. Parse agentPromptEnd events for response data.\n4. OUTPUT: Agents can access results from earlier in the workflow."
643
- },
644
- {
645
- "type": "Subtask",
646
- "id": "P4.M2.T1.S5",
647
- "title": "Implement inspect_cache_status and request_spawn tools",
648
- "status": "Planned",
649
- "story_points": 1,
650
- "dependencies": [
651
- "P3.M1.T2.S1",
652
- "P4.M1.T1.S1"
653
- ],
654
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 11 cache and spawn requirements.\n2. INPUT: Cache class, workflow factory.\n3. LOGIC: inspect_cache_status: name='inspect_cache_status', description='Check if a prompt is cached', input_schema={promptHash: string}. Handler: check cache.get(promptHash), return hit/miss status. request_spawn_workflow: name='request_spawn_workflow', description='Request to spawn a new workflow', input_schema={name: string, config: object}. Handler: validate config, call factory, return workflow id.\n4. OUTPUT: Agents can check cache and request new workflows."
655
- },
656
- {
657
- "type": "Subtask",
658
- "id": "P4.M2.T1.S6",
659
- "title": "Create introspection tools bundle for agent config",
660
- "status": "Planned",
661
- "story_points": 0.5,
662
- "dependencies": [
663
- "P4.M2.T1.S1",
664
- "P4.M2.T1.S2",
665
- "P4.M2.T1.S3",
666
- "P4.M2.T1.S4",
667
- "P4.M2.T1.S5"
668
- ],
669
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 11 standard set requirement.\n2. INPUT: All introspection tools from P4.M2.T1.S1-S5.\n3. LOGIC: In /src/tools/introspection.ts, export const INTROSPECTION_TOOLS: Tool[] = [inspect_current_node, read_ancestor_chain, list_siblings_children, inspect_prior_outputs, inspect_cache_status, request_spawn_workflow]. Export type IntrospectionTool.\n4. OUTPUT: Single import for all introspection tools. Users add to AgentConfig.tools."
670
- }
671
- ]
672
- }
673
- ]
674
- }
675
- ]
676
- },
677
- {
678
- "type": "Phase",
679
- "id": "P5",
680
- "title": "Examples & Documentation",
681
- "status": "Planned",
682
- "description": "Create all 10 canonical examples per PRD Section 12 and ensure complete documentation.",
683
- "milestones": [
684
- {
685
- "type": "Milestone",
686
- "id": "P5.M1",
687
- "title": "Canonical Examples",
688
- "status": "Planned",
689
- "description": "Implement all 10 examples from PRD Section 12.",
690
- "tasks": [
691
- {
692
- "type": "Task",
693
- "id": "P5.M1.T1",
694
- "title": "Basic Workflow Examples",
695
- "status": "Planned",
696
- "description": "Examples 1-4: Basic workflows, agents, and nesting.",
697
- "subtasks": [
698
- {
699
- "type": "Subtask",
700
- "id": "P5.M1.T1.S1",
701
- "title": "Example 1: Basic workflow with steps",
702
- "status": "Planned",
703
- "story_points": 1,
704
- "dependencies": [
705
- "P2.M2.T1.S3"
706
- ],
707
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 1.\n2. INPUT: Workflow class with executor pattern, step() API.\n3. LOGIC: Create /src/examples/01-basic-workflow.ts. Demonstrate: new Workflow({name: 'BasicWorkflow'}, async (ctx) => { await ctx.step('step1', async () => {...}); await ctx.step('step2', async () => {...}); }). Show loop with steps, conditional steps. Include WorkflowTreeDebugger output.\n4. OUTPUT: Minimal, isolated example. Runnable standalone. Documents step() usage."
708
- },
709
- {
710
- "type": "Subtask",
711
- "id": "P5.M1.T1.S2",
712
- "title": "Example 2: Workflow calling Agents with different prompts",
713
- "status": "Planned",
714
- "story_points": 1,
715
- "dependencies": [
716
- "P5.M1.T1.S1",
717
- "P1.M2.T1.S2"
718
- ],
719
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 2.\n2. INPUT: Agent class, Prompt class, step() API.\n3. LOGIC: Create /src/examples/02-agent-prompts.ts. Create Agent with base config. Create multiple Prompt instances with different user messages and schemas. In workflow step, call agent.prompt(prompt1), in another step call agent.prompt(prompt2). Show typed responses.\n4. OUTPUT: Demonstrates Agent reuse with different prompts. Shows Zod schema validation."
720
- },
721
- {
722
- "type": "Subtask",
723
- "id": "P5.M1.T1.S3",
724
- "title": "Example 3: Single Agent across many workflows",
725
- "status": "Planned",
726
- "story_points": 1,
727
- "dependencies": [
728
- "P5.M1.T1.S2"
729
- ],
730
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 3.\n2. INPUT: Agent class, multiple Workflow instances.\n3. LOGIC: Create /src/examples/03-shared-agent.ts. Create one Agent instance. Create three separate workflows that all use the same agent. Show that agent is stateless - same agent works in parallel workflows. Demonstrate observability shows separate trees.\n4. OUTPUT: Proves Agent reusability across workflows."
731
- },
732
- {
733
- "type": "Subtask",
734
- "id": "P5.M1.T1.S4",
735
- "title": "Example 4: Workflow inside a workflow",
736
- "status": "Planned",
737
- "story_points": 1,
738
- "dependencies": [
739
- "P5.M1.T1.S1"
740
- ],
741
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 4.\n2. INPUT: spawnWorkflow() API, WorkflowContext.\n3. LOGIC: Create /src/examples/04-nested-workflows.ts. Parent workflow with steps. Inside a step, ctx.spawnWorkflow(childWorkflow). Child workflow has its own steps. Show event tree with parent->child relationship. Demonstrate result propagation.\n4. OUTPUT: Demonstrates nested workflow hierarchy with automatic mounting."
742
- }
743
- ]
744
- },
745
- {
746
- "type": "Task",
747
- "id": "P5.M1.T2",
748
- "title": "Dynamic Behavior Examples",
749
- "status": "Planned",
750
- "description": "Examples 5-7: Dynamic spawning, prompt replacement, loops.",
751
- "subtasks": [
752
- {
753
- "type": "Subtask",
754
- "id": "P5.M1.T2.S1",
755
- "title": "Example 5: Agent spawning a new Workflow dynamically",
756
- "status": "Planned",
757
- "story_points": 1,
758
- "dependencies": [
759
- "P4.M1.T1.S1",
760
- "P4.M2.T1.S6"
761
- ],
762
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 5.\n2. INPUT: Introspection tools, dynamic factory.\n3. LOGIC: Create /src/examples/05-dynamic-spawn.ts. Agent with request_spawn_workflow tool. Prompt asks agent to analyze task and spawn appropriate sub-workflows. Agent uses tool to create workflows. Show automatic hierarchy attachment.\n4. OUTPUT: Demonstrates agent autonomy in creating workflows."
763
- },
764
- {
765
- "type": "Subtask",
766
- "id": "P5.M1.T2.S2",
767
- "title": "Example 6: Dynamic prompt replacement based on output",
768
- "status": "Planned",
769
- "story_points": 1,
770
- "dependencies": [
771
- "P4.M1.T2.S1"
772
- ],
773
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 6.\n2. INPUT: replacePrompt() API, conditional logic.\n3. LOGIC: Create /src/examples/06-prompt-revision.ts. Initial prompt asks yes/no question. Based on response, create follow-up prompt. If 'no', replace initial prompt with clarifying prompt. Show tree with revision markers. Continue chain from revised prompt.\n4. OUTPUT: Demonstrates context revision without tree forking."
774
- },
775
- {
776
- "type": "Subtask",
777
- "id": "P5.M1.T2.S3",
778
- "title": "Example 7: Loops calling multiple agents with observability",
779
- "status": "Planned",
780
- "story_points": 1,
781
- "dependencies": [
782
- "P5.M1.T1.S2"
783
- ],
784
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 7.\n2. INPUT: step() in loops, multiple agents.\n3. LOGIC: Create /src/examples/07-agent-loops.ts. Array of items to process. for loop with ctx.step() for each item. Different agents for different item types. Show full event tree with all iterations. Demonstrate timing metrics per step.\n4. OUTPUT: Shows step() works in arbitrary JS control flow with full observability."
785
- }
786
- ]
787
- },
788
- {
789
- "type": "Task",
790
- "id": "P5.M1.T3",
791
- "title": "SDK Features & Reflection Examples",
792
- "status": "Planned",
793
- "description": "Examples 8-10: Tools/MCPs/hooks, reflection, introspection.",
794
- "subtasks": [
795
- {
796
- "type": "Subtask",
797
- "id": "P5.M1.T3.S1",
798
- "title": "Example 8: Tools, MCPs, hooks, skills usage",
799
- "status": "Planned",
800
- "story_points": 2,
801
- "dependencies": [
802
- "P1.M2.T3.S1",
803
- "P1.M2.T3.S2",
804
- "P1.M2.T3.S3",
805
- "P1.M2.T3.S4"
806
- ],
807
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 8.\n2. INPUT: All SDK pass-through implementations.\n3. LOGIC: Create /src/examples/08-sdk-features.ts. Define custom tools (calculator, file reader). Define MCP server config. Define hooks (log before tool use). Define skills path. Create agent with all features. Execute prompts that trigger tool use. Show hook execution, MCP events, skills context.\n4. OUTPUT: Comprehensive demonstration of Anthropic SDK integration."
808
- },
809
- {
810
- "type": "Subtask",
811
- "id": "P5.M1.T3.S2",
812
- "title": "Example 9: Reflection at each level",
813
- "status": "Planned",
814
- "story_points": 2,
815
- "dependencies": [
816
- "P3.M2.T1.S3"
817
- ],
818
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 9.\n2. INPUT: Reflection system at all levels.\n3. LOGIC: Create /src/examples/09-reflection.ts. Three scenarios: (a) Workflow-level: step fails, reflection retries. (b) Agent-level: prompt fails validation, agent reflects. (c) Prompt-level: enableReflection on specific prompt. Show reflection events in tree, retry counts, revised prompts.\n4. OUTPUT: Demonstrates multi-level reflection with observability."
819
- },
820
- {
821
- "type": "Subtask",
822
- "id": "P5.M1.T3.S3",
823
- "title": "Example 10: Introspection tools demo",
824
- "status": "Planned",
825
- "story_points": 1,
826
- "dependencies": [
827
- "P4.M2.T1.S6"
828
- ],
829
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on PRD Section 12 item 10.\n2. INPUT: INTROSPECTION_TOOLS bundle.\n3. LOGIC: Create /src/examples/10-introspection.ts. Agent with all introspection tools. Nested workflow structure. Prompt asks agent to 'describe your current position in the hierarchy'. Agent uses inspect_current_node, read_ancestor_chain, list_siblings_children. Show agent's understanding of its context.\n4. OUTPUT: Demonstrates agent self-awareness within hierarchy."
830
- }
831
- ]
832
- }
833
- ]
834
- },
835
- {
836
- "type": "Milestone",
837
- "id": "P5.M2",
838
- "title": "Export & Integration",
839
- "status": "Planned",
840
- "description": "Finalize exports and ensure all components are accessible.",
841
- "tasks": [
842
- {
843
- "type": "Task",
844
- "id": "P5.M2.T1",
845
- "title": "Update Main Exports",
846
- "status": "Planned",
847
- "description": "Update /src/index.ts with all new exports.",
848
- "subtasks": [
849
- {
850
- "type": "Subtask",
851
- "id": "P5.M2.T1.S1",
852
- "title": "Add all new exports to index.ts",
853
- "status": "Planned",
854
- "story_points": 1,
855
- "dependencies": [
856
- "P5.M1.T3.S3"
857
- ],
858
- "context_scope": "CONTRACT DEFINITION:\n1. RESEARCH VALIDATION: Based on current /src/index.ts pattern.\n2. INPUT: All new classes, types, tools from Phases 1-4.\n3. LOGIC: Update /src/index.ts. Add exports: Agent, Prompt, createAgent, createPrompt, createWorkflow, WorkflowContext, EventTreeHandle, Cache, ReflectionAPI, INTROSPECTION_TOOLS. Add type exports: AgentConfig, PromptConfig, PromptOverrides, MCPServer, Skill, AgentHooks, etc. Organize by category with comments.\n4. OUTPUT: All public API accessible via single import. Package ready for use."
859
- }
860
- ]
861
- }
862
- ]
863
- }
864
- ]
865
- }
866
- ]
867
- }