@decibelsystems/tools 2.0.0

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 (478) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +342 -0
  3. package/dist/agentic/compiler.d.ts +21 -0
  4. package/dist/agentic/compiler.d.ts.map +1 -0
  5. package/dist/agentic/compiler.js +267 -0
  6. package/dist/agentic/compiler.js.map +1 -0
  7. package/dist/agentic/golden.d.ts +25 -0
  8. package/dist/agentic/golden.d.ts.map +1 -0
  9. package/dist/agentic/golden.js +255 -0
  10. package/dist/agentic/golden.js.map +1 -0
  11. package/dist/agentic/index.d.ts +17 -0
  12. package/dist/agentic/index.d.ts.map +1 -0
  13. package/dist/agentic/index.js +153 -0
  14. package/dist/agentic/index.js.map +1 -0
  15. package/dist/agentic/linter.d.ts +20 -0
  16. package/dist/agentic/linter.d.ts.map +1 -0
  17. package/dist/agentic/linter.js +340 -0
  18. package/dist/agentic/linter.js.map +1 -0
  19. package/dist/agentic/renderer.d.ts +17 -0
  20. package/dist/agentic/renderer.d.ts.map +1 -0
  21. package/dist/agentic/renderer.js +277 -0
  22. package/dist/agentic/renderer.js.map +1 -0
  23. package/dist/agentic/types.d.ts +199 -0
  24. package/dist/agentic/types.d.ts.map +1 -0
  25. package/dist/agentic/types.js +8 -0
  26. package/dist/agentic/types.js.map +1 -0
  27. package/dist/architectAdrs.d.ts +32 -0
  28. package/dist/architectAdrs.d.ts.map +1 -0
  29. package/dist/architectAdrs.js +162 -0
  30. package/dist/architectAdrs.js.map +1 -0
  31. package/dist/client/facade-client.d.ts +41 -0
  32. package/dist/client/facade-client.d.ts.map +1 -0
  33. package/dist/client/facade-client.js +243 -0
  34. package/dist/client/facade-client.js.map +1 -0
  35. package/dist/client/index.d.ts +4 -0
  36. package/dist/client/index.d.ts.map +1 -0
  37. package/dist/client/index.js +18 -0
  38. package/dist/client/index.js.map +1 -0
  39. package/dist/client/transports.d.ts +78 -0
  40. package/dist/client/transports.d.ts.map +1 -0
  41. package/dist/client/transports.js +258 -0
  42. package/dist/client/transports.js.map +1 -0
  43. package/dist/client/types.d.ts +49 -0
  44. package/dist/client/types.d.ts.map +1 -0
  45. package/dist/client/types.js +8 -0
  46. package/dist/client/types.js.map +1 -0
  47. package/dist/config.d.ts +8 -0
  48. package/dist/config.d.ts.map +1 -0
  49. package/dist/config.js +19 -0
  50. package/dist/config.js.map +1 -0
  51. package/dist/daemon.d.ts +77 -0
  52. package/dist/daemon.d.ts.map +1 -0
  53. package/dist/daemon.js +374 -0
  54. package/dist/daemon.js.map +1 -0
  55. package/dist/daemonConfig.d.ts +43 -0
  56. package/dist/daemonConfig.d.ts.map +1 -0
  57. package/dist/daemonConfig.js +113 -0
  58. package/dist/daemonConfig.js.map +1 -0
  59. package/dist/dataRoot.d.ts +5 -0
  60. package/dist/dataRoot.d.ts.map +1 -0
  61. package/dist/dataRoot.js +23 -0
  62. package/dist/dataRoot.js.map +1 -0
  63. package/dist/decibelPaths.d.ts +42 -0
  64. package/dist/decibelPaths.d.ts.map +1 -0
  65. package/dist/decibelPaths.js +150 -0
  66. package/dist/decibelPaths.js.map +1 -0
  67. package/dist/facades/definitions.d.ts +6 -0
  68. package/dist/facades/definitions.d.ts.map +1 -0
  69. package/dist/facades/definitions.js +450 -0
  70. package/dist/facades/definitions.js.map +1 -0
  71. package/dist/facades/index.d.ts +27 -0
  72. package/dist/facades/index.d.ts.map +1 -0
  73. package/dist/facades/index.js +124 -0
  74. package/dist/facades/index.js.map +1 -0
  75. package/dist/facades/types.d.ts +38 -0
  76. package/dist/facades/types.d.ts.map +1 -0
  77. package/dist/facades/types.js +8 -0
  78. package/dist/facades/types.js.map +1 -0
  79. package/dist/httpServer.d.ts +66 -0
  80. package/dist/httpServer.d.ts.map +1 -0
  81. package/dist/httpServer.js +1723 -0
  82. package/dist/httpServer.js.map +1 -0
  83. package/dist/kernel.d.ts +87 -0
  84. package/dist/kernel.d.ts.map +1 -0
  85. package/dist/kernel.js +256 -0
  86. package/dist/kernel.js.map +1 -0
  87. package/dist/lib/agent-services/assumptions.d.ts +16 -0
  88. package/dist/lib/agent-services/assumptions.d.ts.map +1 -0
  89. package/dist/lib/agent-services/assumptions.js +284 -0
  90. package/dist/lib/agent-services/assumptions.js.map +1 -0
  91. package/dist/lib/agent-services/context-pack.d.ts +6 -0
  92. package/dist/lib/agent-services/context-pack.d.ts.map +1 -0
  93. package/dist/lib/agent-services/context-pack.js +354 -0
  94. package/dist/lib/agent-services/context-pack.js.map +1 -0
  95. package/dist/lib/agent-services/drift-guard.d.ts +14 -0
  96. package/dist/lib/agent-services/drift-guard.d.ts.map +1 -0
  97. package/dist/lib/agent-services/drift-guard.js +355 -0
  98. package/dist/lib/agent-services/drift-guard.js.map +1 -0
  99. package/dist/lib/agent-services/index.d.ts +5 -0
  100. package/dist/lib/agent-services/index.d.ts.map +1 -0
  101. package/dist/lib/agent-services/index.js +10 -0
  102. package/dist/lib/agent-services/index.js.map +1 -0
  103. package/dist/lib/benchmark.d.ts +110 -0
  104. package/dist/lib/benchmark.d.ts.map +1 -0
  105. package/dist/lib/benchmark.js +338 -0
  106. package/dist/lib/benchmark.js.map +1 -0
  107. package/dist/lib/supabase.d.ts +123 -0
  108. package/dist/lib/supabase.d.ts.map +1 -0
  109. package/dist/lib/supabase.js +91 -0
  110. package/dist/lib/supabase.js.map +1 -0
  111. package/dist/license.d.ts +30 -0
  112. package/dist/license.d.ts.map +1 -0
  113. package/dist/license.js +131 -0
  114. package/dist/license.js.map +1 -0
  115. package/dist/projectPaths.d.ts +27 -0
  116. package/dist/projectPaths.d.ts.map +1 -0
  117. package/dist/projectPaths.js +86 -0
  118. package/dist/projectPaths.js.map +1 -0
  119. package/dist/projectRegistry.d.ts +97 -0
  120. package/dist/projectRegistry.d.ts.map +1 -0
  121. package/dist/projectRegistry.js +374 -0
  122. package/dist/projectRegistry.js.map +1 -0
  123. package/dist/sentinelIssues.d.ts +65 -0
  124. package/dist/sentinelIssues.d.ts.map +1 -0
  125. package/dist/sentinelIssues.js +297 -0
  126. package/dist/sentinelIssues.js.map +1 -0
  127. package/dist/server.d.ts +3 -0
  128. package/dist/server.d.ts.map +1 -0
  129. package/dist/server.js +195 -0
  130. package/dist/server.js.map +1 -0
  131. package/dist/test.d.ts +7 -0
  132. package/dist/test.d.ts.map +1 -0
  133. package/dist/test.js +77 -0
  134. package/dist/test.js.map +1 -0
  135. package/dist/tools/agentic/index.d.ts +7 -0
  136. package/dist/tools/agentic/index.d.ts.map +1 -0
  137. package/dist/tools/agentic/index.js +203 -0
  138. package/dist/tools/agentic/index.js.map +1 -0
  139. package/dist/tools/architect/index.d.ts +11 -0
  140. package/dist/tools/architect/index.d.ts.map +1 -0
  141. package/dist/tools/architect/index.js +506 -0
  142. package/dist/tools/architect/index.js.map +1 -0
  143. package/dist/tools/architect.d.ts +19 -0
  144. package/dist/tools/architect.d.ts.map +1 -0
  145. package/dist/tools/architect.js +88 -0
  146. package/dist/tools/architect.js.map +1 -0
  147. package/dist/tools/auditor/index.d.ts +10 -0
  148. package/dist/tools/auditor/index.d.ts.map +1 -0
  149. package/dist/tools/auditor/index.js +310 -0
  150. package/dist/tools/auditor/index.js.map +1 -0
  151. package/dist/tools/auditor.d.ts +149 -0
  152. package/dist/tools/auditor.d.ts.map +1 -0
  153. package/dist/tools/auditor.js +775 -0
  154. package/dist/tools/auditor.js.map +1 -0
  155. package/dist/tools/bench/index.d.ts +3 -0
  156. package/dist/tools/bench/index.d.ts.map +1 -0
  157. package/dist/tools/bench/index.js +220 -0
  158. package/dist/tools/bench/index.js.map +1 -0
  159. package/dist/tools/bench.d.ts +89 -0
  160. package/dist/tools/bench.d.ts.map +1 -0
  161. package/dist/tools/bench.js +826 -0
  162. package/dist/tools/bench.js.map +1 -0
  163. package/dist/tools/context/index.d.ts +11 -0
  164. package/dist/tools/context/index.d.ts.map +1 -0
  165. package/dist/tools/context/index.js +482 -0
  166. package/dist/tools/context/index.js.map +1 -0
  167. package/dist/tools/context.d.ts +146 -0
  168. package/dist/tools/context.d.ts.map +1 -0
  169. package/dist/tools/context.js +481 -0
  170. package/dist/tools/context.js.map +1 -0
  171. package/dist/tools/coordinator/coordinator.d.ts +168 -0
  172. package/dist/tools/coordinator/coordinator.d.ts.map +1 -0
  173. package/dist/tools/coordinator/coordinator.js +535 -0
  174. package/dist/tools/coordinator/coordinator.js.map +1 -0
  175. package/dist/tools/coordinator/index.d.ts +12 -0
  176. package/dist/tools/coordinator/index.d.ts.map +1 -0
  177. package/dist/tools/coordinator/index.js +381 -0
  178. package/dist/tools/coordinator/index.js.map +1 -0
  179. package/dist/tools/corpus/index.d.ts +5 -0
  180. package/dist/tools/corpus/index.d.ts.map +1 -0
  181. package/dist/tools/corpus/index.js +105 -0
  182. package/dist/tools/corpus/index.js.map +1 -0
  183. package/dist/tools/corpus.d.ts +33 -0
  184. package/dist/tools/corpus.d.ts.map +1 -0
  185. package/dist/tools/corpus.js +180 -0
  186. package/dist/tools/corpus.js.map +1 -0
  187. package/dist/tools/crit.d.ts +63 -0
  188. package/dist/tools/crit.d.ts.map +1 -0
  189. package/dist/tools/crit.js +159 -0
  190. package/dist/tools/crit.js.map +1 -0
  191. package/dist/tools/data-inspector.d.ts +189 -0
  192. package/dist/tools/data-inspector.d.ts.map +1 -0
  193. package/dist/tools/data-inspector.js +669 -0
  194. package/dist/tools/data-inspector.js.map +1 -0
  195. package/dist/tools/deck.d.ts +11 -0
  196. package/dist/tools/deck.d.ts.map +1 -0
  197. package/dist/tools/deck.js +188 -0
  198. package/dist/tools/deck.js.map +1 -0
  199. package/dist/tools/designer/index.d.ts +11 -0
  200. package/dist/tools/designer/index.d.ts.map +1 -0
  201. package/dist/tools/designer/index.js +442 -0
  202. package/dist/tools/designer/index.js.map +1 -0
  203. package/dist/tools/designer/lateral-tools.d.ts +6 -0
  204. package/dist/tools/designer/lateral-tools.d.ts.map +1 -0
  205. package/dist/tools/designer/lateral-tools.js +190 -0
  206. package/dist/tools/designer/lateral-tools.js.map +1 -0
  207. package/dist/tools/designer.d.ts +122 -0
  208. package/dist/tools/designer.d.ts.map +1 -0
  209. package/dist/tools/designer.js +495 -0
  210. package/dist/tools/designer.js.map +1 -0
  211. package/dist/tools/dojo/index.d.ts +13 -0
  212. package/dist/tools/dojo/index.d.ts.map +1 -0
  213. package/dist/tools/dojo/index.js +613 -0
  214. package/dist/tools/dojo/index.js.map +1 -0
  215. package/dist/tools/dojo.d.ts +254 -0
  216. package/dist/tools/dojo.d.ts.map +1 -0
  217. package/dist/tools/dojo.js +933 -0
  218. package/dist/tools/dojo.js.map +1 -0
  219. package/dist/tools/dojoBench.d.ts +49 -0
  220. package/dist/tools/dojoBench.d.ts.map +1 -0
  221. package/dist/tools/dojoBench.js +205 -0
  222. package/dist/tools/dojoBench.js.map +1 -0
  223. package/dist/tools/dojoGraduated.d.ts +50 -0
  224. package/dist/tools/dojoGraduated.d.ts.map +1 -0
  225. package/dist/tools/dojoGraduated.js +174 -0
  226. package/dist/tools/dojoGraduated.js.map +1 -0
  227. package/dist/tools/dojoPolicy.d.ts +65 -0
  228. package/dist/tools/dojoPolicy.d.ts.map +1 -0
  229. package/dist/tools/dojoPolicy.js +263 -0
  230. package/dist/tools/dojoPolicy.js.map +1 -0
  231. package/dist/tools/feedback/index.d.ts +5 -0
  232. package/dist/tools/feedback/index.d.ts.map +1 -0
  233. package/dist/tools/feedback/index.js +153 -0
  234. package/dist/tools/feedback/index.js.map +1 -0
  235. package/dist/tools/feedback.d.ts +61 -0
  236. package/dist/tools/feedback.d.ts.map +1 -0
  237. package/dist/tools/feedback.js +209 -0
  238. package/dist/tools/feedback.js.map +1 -0
  239. package/dist/tools/forecast/index.d.ts +8 -0
  240. package/dist/tools/forecast/index.d.ts.map +1 -0
  241. package/dist/tools/forecast/index.js +283 -0
  242. package/dist/tools/forecast/index.js.map +1 -0
  243. package/dist/tools/forecast.d.ts +147 -0
  244. package/dist/tools/forecast.d.ts.map +1 -0
  245. package/dist/tools/forecast.js +417 -0
  246. package/dist/tools/forecast.js.map +1 -0
  247. package/dist/tools/friction/index.d.ts +7 -0
  248. package/dist/tools/friction/index.d.ts.map +1 -0
  249. package/dist/tools/friction/index.js +265 -0
  250. package/dist/tools/friction/index.js.map +1 -0
  251. package/dist/tools/friction.d.ts +82 -0
  252. package/dist/tools/friction.d.ts.map +1 -0
  253. package/dist/tools/friction.js +331 -0
  254. package/dist/tools/friction.js.map +1 -0
  255. package/dist/tools/git/index.d.ts +9 -0
  256. package/dist/tools/git/index.d.ts.map +1 -0
  257. package/dist/tools/git/index.js +237 -0
  258. package/dist/tools/git/index.js.map +1 -0
  259. package/dist/tools/git-sentinel/index.d.ts +7 -0
  260. package/dist/tools/git-sentinel/index.d.ts.map +1 -0
  261. package/dist/tools/git-sentinel/index.js +178 -0
  262. package/dist/tools/git-sentinel/index.js.map +1 -0
  263. package/dist/tools/git-sentinel.d.ts +78 -0
  264. package/dist/tools/git-sentinel.d.ts.map +1 -0
  265. package/dist/tools/git-sentinel.js +391 -0
  266. package/dist/tools/git-sentinel.js.map +1 -0
  267. package/dist/tools/git.d.ts +134 -0
  268. package/dist/tools/git.d.ts.map +1 -0
  269. package/dist/tools/git.js +374 -0
  270. package/dist/tools/git.js.map +1 -0
  271. package/dist/tools/guardian/index.d.ts +8 -0
  272. package/dist/tools/guardian/index.d.ts.map +1 -0
  273. package/dist/tools/guardian/index.js +171 -0
  274. package/dist/tools/guardian/index.js.map +1 -0
  275. package/dist/tools/guardian.d.ts +62 -0
  276. package/dist/tools/guardian.d.ts.map +1 -0
  277. package/dist/tools/guardian.js +332 -0
  278. package/dist/tools/guardian.js.map +1 -0
  279. package/dist/tools/hygiene/codebase-scanner.d.ts +38 -0
  280. package/dist/tools/hygiene/codebase-scanner.d.ts.map +1 -0
  281. package/dist/tools/hygiene/codebase-scanner.js +411 -0
  282. package/dist/tools/hygiene/codebase-scanner.js.map +1 -0
  283. package/dist/tools/hygiene/config-scanner.d.ts +33 -0
  284. package/dist/tools/hygiene/config-scanner.d.ts.map +1 -0
  285. package/dist/tools/hygiene/config-scanner.js +482 -0
  286. package/dist/tools/hygiene/config-scanner.js.map +1 -0
  287. package/dist/tools/hygiene/coverage-scanner.d.ts +41 -0
  288. package/dist/tools/hygiene/coverage-scanner.d.ts.map +1 -0
  289. package/dist/tools/hygiene/coverage-scanner.js +331 -0
  290. package/dist/tools/hygiene/coverage-scanner.js.map +1 -0
  291. package/dist/tools/hygiene/index.d.ts +7 -0
  292. package/dist/tools/hygiene/index.d.ts.map +1 -0
  293. package/dist/tools/hygiene/index.js +291 -0
  294. package/dist/tools/hygiene/index.js.map +1 -0
  295. package/dist/tools/hygiene/oracle-hygiene.d.ts +68 -0
  296. package/dist/tools/hygiene/oracle-hygiene.d.ts.map +1 -0
  297. package/dist/tools/hygiene/oracle-hygiene.js +324 -0
  298. package/dist/tools/hygiene/oracle-hygiene.js.map +1 -0
  299. package/dist/tools/index.d.ts +6 -0
  300. package/dist/tools/index.d.ts.map +1 -0
  301. package/dist/tools/index.js +130 -0
  302. package/dist/tools/index.js.map +1 -0
  303. package/dist/tools/lateral.d.ts +114 -0
  304. package/dist/tools/lateral.d.ts.map +1 -0
  305. package/dist/tools/lateral.js +536 -0
  306. package/dist/tools/lateral.js.map +1 -0
  307. package/dist/tools/learnings/index.d.ts +5 -0
  308. package/dist/tools/learnings/index.d.ts.map +1 -0
  309. package/dist/tools/learnings/index.js +138 -0
  310. package/dist/tools/learnings/index.js.map +1 -0
  311. package/dist/tools/learnings.d.ts +41 -0
  312. package/dist/tools/learnings.d.ts.map +1 -0
  313. package/dist/tools/learnings.js +149 -0
  314. package/dist/tools/learnings.js.map +1 -0
  315. package/dist/tools/oracle/index.d.ts +6 -0
  316. package/dist/tools/oracle/index.d.ts.map +1 -0
  317. package/dist/tools/oracle/index.js +217 -0
  318. package/dist/tools/oracle/index.js.map +1 -0
  319. package/dist/tools/oracle.d.ts +90 -0
  320. package/dist/tools/oracle.d.ts.map +1 -0
  321. package/dist/tools/oracle.js +529 -0
  322. package/dist/tools/oracle.js.map +1 -0
  323. package/dist/tools/policy.d.ts +119 -0
  324. package/dist/tools/policy.d.ts.map +1 -0
  325. package/dist/tools/policy.js +406 -0
  326. package/dist/tools/policy.js.map +1 -0
  327. package/dist/tools/provenance/index.d.ts +4 -0
  328. package/dist/tools/provenance/index.d.ts.map +1 -0
  329. package/dist/tools/provenance/index.js +63 -0
  330. package/dist/tools/provenance/index.js.map +1 -0
  331. package/dist/tools/provenance.d.ts +75 -0
  332. package/dist/tools/provenance.d.ts.map +1 -0
  333. package/dist/tools/provenance.js +224 -0
  334. package/dist/tools/provenance.js.map +1 -0
  335. package/dist/tools/rateLimiter.d.ts +45 -0
  336. package/dist/tools/rateLimiter.d.ts.map +1 -0
  337. package/dist/tools/rateLimiter.js +91 -0
  338. package/dist/tools/rateLimiter.js.map +1 -0
  339. package/dist/tools/registry/index.d.ts +10 -0
  340. package/dist/tools/registry/index.d.ts.map +1 -0
  341. package/dist/tools/registry/index.js +506 -0
  342. package/dist/tools/registry/index.js.map +1 -0
  343. package/dist/tools/registry.d.ts +3 -0
  344. package/dist/tools/registry.d.ts.map +1 -0
  345. package/dist/tools/registry.js +189 -0
  346. package/dist/tools/registry.js.map +1 -0
  347. package/dist/tools/roadmap/index.d.ts +11 -0
  348. package/dist/tools/roadmap/index.d.ts.map +1 -0
  349. package/dist/tools/roadmap/index.js +364 -0
  350. package/dist/tools/roadmap/index.js.map +1 -0
  351. package/dist/tools/roadmap.d.ts +103 -0
  352. package/dist/tools/roadmap.d.ts.map +1 -0
  353. package/dist/tools/roadmap.js +407 -0
  354. package/dist/tools/roadmap.js.map +1 -0
  355. package/dist/tools/senken.d.ts +11 -0
  356. package/dist/tools/senken.d.ts.map +1 -0
  357. package/dist/tools/senken.js +482 -0
  358. package/dist/tools/senken.js.map +1 -0
  359. package/dist/tools/sentinel/index.d.ts +21 -0
  360. package/dist/tools/sentinel/index.d.ts.map +1 -0
  361. package/dist/tools/sentinel/index.js +1067 -0
  362. package/dist/tools/sentinel/index.js.map +1 -0
  363. package/dist/tools/sentinel-scan-data.d.ts +90 -0
  364. package/dist/tools/sentinel-scan-data.d.ts.map +1 -0
  365. package/dist/tools/sentinel-scan-data.js +122 -0
  366. package/dist/tools/sentinel-scan-data.js.map +1 -0
  367. package/dist/tools/sentinel.d.ts +156 -0
  368. package/dist/tools/sentinel.d.ts.map +1 -0
  369. package/dist/tools/sentinel.js +603 -0
  370. package/dist/tools/sentinel.js.map +1 -0
  371. package/dist/tools/shared/index.d.ts +5 -0
  372. package/dist/tools/shared/index.d.ts.map +1 -0
  373. package/dist/tools/shared/index.js +8 -0
  374. package/dist/tools/shared/index.js.map +1 -0
  375. package/dist/tools/shared/project.d.ts +17 -0
  376. package/dist/tools/shared/project.d.ts.map +1 -0
  377. package/dist/tools/shared/project.js +36 -0
  378. package/dist/tools/shared/project.js.map +1 -0
  379. package/dist/tools/shared/response.d.ts +15 -0
  380. package/dist/tools/shared/response.d.ts.map +1 -0
  381. package/dist/tools/shared/response.js +77 -0
  382. package/dist/tools/shared/response.js.map +1 -0
  383. package/dist/tools/shared/runTracker.d.ts +87 -0
  384. package/dist/tools/shared/runTracker.d.ts.map +1 -0
  385. package/dist/tools/shared/runTracker.js +225 -0
  386. package/dist/tools/shared/runTracker.js.map +1 -0
  387. package/dist/tools/shared/validation.d.ts +10 -0
  388. package/dist/tools/shared/validation.d.ts.map +1 -0
  389. package/dist/tools/shared/validation.js +26 -0
  390. package/dist/tools/shared/validation.js.map +1 -0
  391. package/dist/tools/studio/cloud-spine.d.ts +27 -0
  392. package/dist/tools/studio/cloud-spine.d.ts.map +1 -0
  393. package/dist/tools/studio/cloud-spine.js +845 -0
  394. package/dist/tools/studio/cloud-spine.js.map +1 -0
  395. package/dist/tools/studio/index.d.ts +154 -0
  396. package/dist/tools/studio/index.d.ts.map +1 -0
  397. package/dist/tools/studio/index.js +541 -0
  398. package/dist/tools/studio/index.js.map +1 -0
  399. package/dist/tools/testSpec.d.ts +122 -0
  400. package/dist/tools/testSpec.d.ts.map +1 -0
  401. package/dist/tools/testSpec.js +525 -0
  402. package/dist/tools/testSpec.js.map +1 -0
  403. package/dist/tools/toolsIndex.d.ts +5 -0
  404. package/dist/tools/toolsIndex.d.ts.map +1 -0
  405. package/dist/tools/toolsIndex.js +37 -0
  406. package/dist/tools/toolsIndex.js.map +1 -0
  407. package/dist/tools/types.d.ts +47 -0
  408. package/dist/tools/types.d.ts.map +1 -0
  409. package/dist/tools/types.js +7 -0
  410. package/dist/tools/types.js.map +1 -0
  411. package/dist/tools/vector/index.d.ts +13 -0
  412. package/dist/tools/vector/index.d.ts.map +1 -0
  413. package/dist/tools/vector/index.js +592 -0
  414. package/dist/tools/vector/index.js.map +1 -0
  415. package/dist/tools/vector.d.ts +189 -0
  416. package/dist/tools/vector.d.ts.map +1 -0
  417. package/dist/tools/vector.js +570 -0
  418. package/dist/tools/vector.js.map +1 -0
  419. package/dist/tools/velocity/index.d.ts +9 -0
  420. package/dist/tools/velocity/index.d.ts.map +1 -0
  421. package/dist/tools/velocity/index.js +306 -0
  422. package/dist/tools/velocity/index.js.map +1 -0
  423. package/dist/tools/velocity.d.ts +143 -0
  424. package/dist/tools/velocity.d.ts.map +1 -0
  425. package/dist/tools/velocity.js +628 -0
  426. package/dist/tools/velocity.js.map +1 -0
  427. package/dist/tools/voice/index.d.ts +8 -0
  428. package/dist/tools/voice/index.d.ts.map +1 -0
  429. package/dist/tools/voice/index.js +203 -0
  430. package/dist/tools/voice/index.js.map +1 -0
  431. package/dist/tools/voice.d.ts +291 -0
  432. package/dist/tools/voice.d.ts.map +1 -0
  433. package/dist/tools/voice.js +734 -0
  434. package/dist/tools/voice.js.map +1 -0
  435. package/dist/tools/workflow/index.d.ts +8 -0
  436. package/dist/tools/workflow/index.d.ts.map +1 -0
  437. package/dist/tools/workflow/index.js +199 -0
  438. package/dist/tools/workflow/index.js.map +1 -0
  439. package/dist/tools/workflow.d.ts +123 -0
  440. package/dist/tools/workflow.d.ts.map +1 -0
  441. package/dist/tools/workflow.js +647 -0
  442. package/dist/tools/workflow.js.map +1 -0
  443. package/dist/transports/bridge.d.ts +22 -0
  444. package/dist/transports/bridge.d.ts.map +1 -0
  445. package/dist/transports/bridge.js +177 -0
  446. package/dist/transports/bridge.js.map +1 -0
  447. package/dist/transports/http.d.ts +9 -0
  448. package/dist/transports/http.d.ts.map +1 -0
  449. package/dist/transports/http.js +35 -0
  450. package/dist/transports/http.js.map +1 -0
  451. package/dist/transports/index.d.ts +6 -0
  452. package/dist/transports/index.d.ts.map +1 -0
  453. package/dist/transports/index.js +8 -0
  454. package/dist/transports/index.js.map +1 -0
  455. package/dist/transports/mcp.d.ts +9 -0
  456. package/dist/transports/mcp.d.ts.map +1 -0
  457. package/dist/transports/mcp.js +51 -0
  458. package/dist/transports/mcp.js.map +1 -0
  459. package/dist/transports/stdio.d.ts +9 -0
  460. package/dist/transports/stdio.d.ts.map +1 -0
  461. package/dist/transports/stdio.js +26 -0
  462. package/dist/transports/stdio.js.map +1 -0
  463. package/dist/transports/types.d.ts +27 -0
  464. package/dist/transports/types.d.ts.map +1 -0
  465. package/dist/transports/types.js +8 -0
  466. package/dist/transports/types.js.map +1 -0
  467. package/dist/types/agent-services.d.ts +193 -0
  468. package/dist/types/agent-services.d.ts.map +1 -0
  469. package/dist/types/agent-services.js +8 -0
  470. package/dist/types/agent-services.js.map +1 -0
  471. package/dist/types/index.d.ts +2 -0
  472. package/dist/types/index.d.ts.map +1 -0
  473. package/dist/types/index.js +7 -0
  474. package/dist/types/index.js.map +1 -0
  475. package/package.json +72 -0
  476. package/templates/AGENT.md +87 -0
  477. package/templates/com.decibel.daemon.plist +47 -0
  478. package/templates/sentinel/ISSUE_TEMPLATE.md +20 -0
@@ -0,0 +1,613 @@
1
+ // ============================================================================
2
+ // Dojo Domain Tools
3
+ // ============================================================================
4
+ // AI Feature Incubator - proposals, experiments, wishes, graduation.
5
+ // ============================================================================
6
+ import { toolSuccess, toolError, requireFields, requireOneOf, withRunTracking, summaryGenerators } from '../shared/index.js';
7
+ import { createProposal, scaffoldExperiment, listDojo, runExperiment, getExperimentResults, addWish, listWishes, canGraduate, readArtifact, isDojoError, dojoListProjects, } from '../dojo.js';
8
+ // ============================================================================
9
+ // Proposal Tools
10
+ // ============================================================================
11
+ export const dojoCreateProposalTool = {
12
+ definition: {
13
+ name: 'dojo_create_proposal',
14
+ description: 'Create a new Dojo proposal for a feature or capability. Automatically saves to .decibel/dojo/proposals/. AI can propose, but only humans can enable experiments. No separate file writing needed.',
15
+ annotations: {
16
+ title: 'Create Proposal',
17
+ readOnlyHint: false,
18
+ destructiveHint: false,
19
+ idempotentHint: false,
20
+ },
21
+ inputSchema: {
22
+ type: 'object',
23
+ properties: {
24
+ project_id: {
25
+ type: 'string',
26
+ description: 'Project ID to create proposal in (e.g., "senken" or "decibel-tools-mcp")',
27
+ },
28
+ caller_role: {
29
+ type: 'string',
30
+ enum: ['human', 'mother', 'ai'],
31
+ description: 'Role of the caller for access control (default: human)',
32
+ },
33
+ agent_id: {
34
+ type: 'string',
35
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
36
+ },
37
+ title: {
38
+ type: 'string',
39
+ description: 'Proposal title (e.g., "Exchange Rate Limit Pattern Detector")',
40
+ },
41
+ problem: {
42
+ type: 'string',
43
+ description: 'The problem this proposal addresses',
44
+ },
45
+ hypothesis: {
46
+ type: 'string',
47
+ description: 'Why this solution will work',
48
+ },
49
+ owner: {
50
+ type: 'string',
51
+ enum: ['ai', 'human'],
52
+ description: 'Who created this proposal (default: ai)',
53
+ },
54
+ target_module: {
55
+ type: 'string',
56
+ description: 'Target module: sentinel|designer|architect|oracle|tools|dojo',
57
+ },
58
+ scope_in: {
59
+ type: 'array',
60
+ items: { type: 'string' },
61
+ description: "What's included in scope",
62
+ },
63
+ scope_out: {
64
+ type: 'array',
65
+ items: { type: 'string' },
66
+ description: "What's explicitly NOT included",
67
+ },
68
+ acceptance: {
69
+ type: 'array',
70
+ items: { type: 'string' },
71
+ description: 'Acceptance criteria - how we know it works',
72
+ },
73
+ risks: {
74
+ type: 'array',
75
+ items: { type: 'string' },
76
+ description: 'What could go wrong',
77
+ },
78
+ follows: {
79
+ type: 'string',
80
+ description: 'Proposal ID this follows (for feedback loops)',
81
+ },
82
+ insight: {
83
+ type: 'string',
84
+ description: 'Insight from previous experiment that led to this proposal',
85
+ },
86
+ wish_id: {
87
+ type: 'string',
88
+ description: 'Link to existing wish (e.g., "WISH-0001"). Auto-fills problem from wish reason and marks wish as resolved.',
89
+ },
90
+ },
91
+ required: ['title', 'problem', 'hypothesis'],
92
+ },
93
+ },
94
+ handler: withRunTracking(async (args) => {
95
+ try {
96
+ requireFields(args, 'title', 'problem', 'hypothesis');
97
+ const result = await createProposal(args);
98
+ if (isDojoError(result)) {
99
+ return toolError(JSON.stringify(result));
100
+ }
101
+ return toolSuccess(result);
102
+ }
103
+ catch (err) {
104
+ return toolError(err instanceof Error ? err.message : String(err));
105
+ }
106
+ }, {
107
+ toolName: 'dojo_create_proposal',
108
+ getProjectId: (args) => args.project_id,
109
+ getSummary: summaryGenerators.proposal,
110
+ }),
111
+ };
112
+ export const dojoScaffoldExperimentTool = {
113
+ definition: {
114
+ name: 'dojo_scaffold_experiment',
115
+ description: 'Create an experiment skeleton from a proposal. Automatically creates the experiment directory at .decibel/dojo/experiments/ with manifest, entrypoint, and README. No separate file writing needed.',
116
+ annotations: {
117
+ title: 'Scaffold Experiment',
118
+ readOnlyHint: false,
119
+ destructiveHint: false,
120
+ idempotentHint: false,
121
+ },
122
+ inputSchema: {
123
+ type: 'object',
124
+ properties: {
125
+ project_id: {
126
+ type: 'string',
127
+ description: 'Project ID containing the proposal (e.g., "senken" or "decibel-tools-mcp")',
128
+ },
129
+ caller_role: {
130
+ type: 'string',
131
+ enum: ['human', 'mother', 'ai'],
132
+ description: 'Role of the caller for access control (default: human)',
133
+ },
134
+ agent_id: {
135
+ type: 'string',
136
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
137
+ },
138
+ proposal_id: {
139
+ type: 'string',
140
+ description: 'Proposal ID (e.g., "DOJO-PROP-0001")',
141
+ },
142
+ script_type: {
143
+ type: 'string',
144
+ enum: ['py', 'ts'],
145
+ description: 'Script type for entrypoint (default: py)',
146
+ },
147
+ experiment_type: {
148
+ type: 'string',
149
+ enum: ['script', 'tool', 'check', 'prompt'],
150
+ description: 'Experiment type: script (default), tool (MCP tool candidate), check (validation), prompt (template)',
151
+ },
152
+ },
153
+ required: ['proposal_id'],
154
+ },
155
+ },
156
+ handler: withRunTracking(async (args) => {
157
+ try {
158
+ requireFields(args, 'proposal_id');
159
+ if (args.experiment_type) {
160
+ const validTypes = ['script', 'tool', 'check', 'prompt'];
161
+ requireOneOf(args.experiment_type, 'experiment_type', validTypes);
162
+ }
163
+ const result = await scaffoldExperiment(args);
164
+ if (isDojoError(result)) {
165
+ return toolError(JSON.stringify(result));
166
+ }
167
+ return toolSuccess(result);
168
+ }
169
+ catch (err) {
170
+ return toolError(err instanceof Error ? err.message : String(err));
171
+ }
172
+ }, {
173
+ toolName: 'dojo_scaffold_experiment',
174
+ getProjectId: (args) => args.project_id,
175
+ getSummary: summaryGenerators.scaffold,
176
+ }),
177
+ };
178
+ export const dojoListTool = {
179
+ definition: {
180
+ name: 'dojo_list',
181
+ description: 'List Dojo proposals, experiments, and wishes with their states.',
182
+ annotations: {
183
+ title: 'List Dojo Items',
184
+ readOnlyHint: true,
185
+ destructiveHint: false,
186
+ },
187
+ inputSchema: {
188
+ type: 'object',
189
+ properties: {
190
+ project_id: {
191
+ type: 'string',
192
+ description: 'Project ID to list Dojo items from (e.g., "senken" or "decibel-tools-mcp")',
193
+ },
194
+ caller_role: {
195
+ type: 'string',
196
+ enum: ['human', 'mother', 'ai'],
197
+ description: 'Role of the caller for access control (default: human)',
198
+ },
199
+ agent_id: {
200
+ type: 'string',
201
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
202
+ },
203
+ filter: {
204
+ type: 'string',
205
+ enum: ['proposals', 'experiments', 'wishes', 'all'],
206
+ description: 'Filter results (default: all)',
207
+ },
208
+ },
209
+ },
210
+ },
211
+ handler: async (args) => {
212
+ try {
213
+ const result = await listDojo(args);
214
+ if (isDojoError(result)) {
215
+ return toolError(JSON.stringify(result));
216
+ }
217
+ return toolSuccess(result);
218
+ }
219
+ catch (err) {
220
+ return toolError(err instanceof Error ? err.message : String(err));
221
+ }
222
+ },
223
+ };
224
+ // ============================================================================
225
+ // Experiment Tools
226
+ // ============================================================================
227
+ export const dojoRunExperimentTool = {
228
+ definition: {
229
+ name: 'dojo_run_experiment',
230
+ description: 'Run an experiment in SANDBOX mode. Results are written to {project}/.decibel/dojo/results/. NOTE: This always runs in sandbox mode - enabled mode is human-only via CLI.',
231
+ annotations: {
232
+ title: 'Run Experiment',
233
+ readOnlyHint: false,
234
+ destructiveHint: false,
235
+ idempotentHint: false,
236
+ },
237
+ inputSchema: {
238
+ type: 'object',
239
+ properties: {
240
+ project_id: {
241
+ type: 'string',
242
+ description: 'Project ID containing the experiment (e.g., "senken" or "decibel-tools-mcp")',
243
+ },
244
+ caller_role: {
245
+ type: 'string',
246
+ enum: ['human', 'mother', 'ai'],
247
+ description: 'Role of the caller for access control (default: human)',
248
+ },
249
+ agent_id: {
250
+ type: 'string',
251
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
252
+ },
253
+ experiment_id: {
254
+ type: 'string',
255
+ description: 'Experiment ID (e.g., "DOJO-EXP-0001")',
256
+ },
257
+ },
258
+ required: ['experiment_id'],
259
+ },
260
+ },
261
+ handler: async (args) => {
262
+ try {
263
+ requireFields(args, 'experiment_id');
264
+ // SAFETY: runExperiment always uses --sandbox, never --enabled
265
+ const result = await runExperiment(args);
266
+ if (isDojoError(result)) {
267
+ return toolError(JSON.stringify(result));
268
+ }
269
+ return toolSuccess(result);
270
+ }
271
+ catch (err) {
272
+ return toolError(err instanceof Error ? err.message : String(err));
273
+ }
274
+ },
275
+ };
276
+ export const dojoReadResultsTool = {
277
+ definition: {
278
+ name: 'dojo_read_results',
279
+ description: 'Read results from a previous experiment run. Use to examine what an experiment produced.',
280
+ annotations: {
281
+ title: 'Read Results',
282
+ readOnlyHint: true,
283
+ destructiveHint: false,
284
+ },
285
+ inputSchema: {
286
+ type: 'object',
287
+ properties: {
288
+ project_id: {
289
+ type: 'string',
290
+ description: 'Project ID containing the experiment (e.g., "senken" or "decibel-tools-mcp")',
291
+ },
292
+ caller_role: {
293
+ type: 'string',
294
+ enum: ['human', 'mother', 'ai'],
295
+ description: 'Role of the caller for access control (default: human)',
296
+ },
297
+ agent_id: {
298
+ type: 'string',
299
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
300
+ },
301
+ experiment_id: {
302
+ type: 'string',
303
+ description: 'Experiment ID (e.g., "DOJO-EXP-0001")',
304
+ },
305
+ run_id: {
306
+ type: 'string',
307
+ description: 'Specific run ID (default: latest)',
308
+ },
309
+ },
310
+ required: ['experiment_id'],
311
+ },
312
+ },
313
+ handler: async (args) => {
314
+ try {
315
+ requireFields(args, 'experiment_id');
316
+ const result = await getExperimentResults(args);
317
+ if (isDojoError(result)) {
318
+ return toolError(JSON.stringify(result));
319
+ }
320
+ return toolSuccess(result);
321
+ }
322
+ catch (err) {
323
+ return toolError(err instanceof Error ? err.message : String(err));
324
+ }
325
+ },
326
+ };
327
+ export const dojoReadArtifactTool = {
328
+ definition: {
329
+ name: 'dojo_read_artifact',
330
+ description: 'Read an artifact file from experiment results. Returns parsed content for yaml/json, raw text for others, base64 for binary.',
331
+ annotations: {
332
+ title: 'Read Artifact',
333
+ readOnlyHint: true,
334
+ destructiveHint: false,
335
+ },
336
+ inputSchema: {
337
+ type: 'object',
338
+ properties: {
339
+ project_id: {
340
+ type: 'string',
341
+ description: 'Project ID containing the experiment (e.g., "senken" or "decibel-tools-mcp")',
342
+ },
343
+ caller_role: {
344
+ type: 'string',
345
+ enum: ['human', 'mother', 'ai'],
346
+ description: 'Role of the caller for access control (default: human)',
347
+ },
348
+ agent_id: {
349
+ type: 'string',
350
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
351
+ },
352
+ experiment_id: {
353
+ type: 'string',
354
+ description: 'Experiment ID (e.g., "DOJO-EXP-0001")',
355
+ },
356
+ run_id: {
357
+ type: 'string',
358
+ description: 'Run ID from dojo_run_experiment response (e.g., "20251216-070615")',
359
+ },
360
+ filename: {
361
+ type: 'string',
362
+ description: 'Artifact filename (e.g., "result.yaml", "plot.png")',
363
+ },
364
+ },
365
+ required: ['experiment_id', 'run_id', 'filename'],
366
+ },
367
+ },
368
+ handler: async (args) => {
369
+ try {
370
+ requireFields(args, 'experiment_id', 'run_id', 'filename');
371
+ const result = await readArtifact(args);
372
+ if (isDojoError(result)) {
373
+ return toolError(JSON.stringify(result));
374
+ }
375
+ return toolSuccess(result);
376
+ }
377
+ catch (err) {
378
+ return toolError(err instanceof Error ? err.message : String(err));
379
+ }
380
+ },
381
+ };
382
+ export const dojoCanGraduateTool = {
383
+ definition: {
384
+ name: 'dojo_can_graduate',
385
+ description: 'Check if an experiment can be graduated to a real tool. Returns eligibility and reasons. (Actual graduation is human-only via CLI)',
386
+ annotations: {
387
+ title: 'Check Graduation',
388
+ readOnlyHint: true,
389
+ destructiveHint: false,
390
+ },
391
+ inputSchema: {
392
+ type: 'object',
393
+ properties: {
394
+ project_id: {
395
+ type: 'string',
396
+ description: 'Project ID containing the experiment (e.g., "senken" or "decibel-tools-mcp")',
397
+ },
398
+ caller_role: {
399
+ type: 'string',
400
+ enum: ['human', 'mother', 'ai'],
401
+ description: 'Role of the caller for access control (default: human)',
402
+ },
403
+ agent_id: {
404
+ type: 'string',
405
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
406
+ },
407
+ experiment_id: {
408
+ type: 'string',
409
+ description: 'Experiment ID (e.g., "DOJO-EXP-0001")',
410
+ },
411
+ },
412
+ required: ['experiment_id'],
413
+ },
414
+ },
415
+ handler: async (args) => {
416
+ try {
417
+ requireFields(args, 'experiment_id');
418
+ const result = await canGraduate(args);
419
+ if (isDojoError(result)) {
420
+ return toolError(JSON.stringify(result));
421
+ }
422
+ return toolSuccess(result);
423
+ }
424
+ catch (err) {
425
+ return toolError(err instanceof Error ? err.message : String(err));
426
+ }
427
+ },
428
+ };
429
+ // ============================================================================
430
+ // Wish Tools
431
+ // ============================================================================
432
+ export const dojoAddWishTool = {
433
+ definition: {
434
+ name: 'dojo_add_wish',
435
+ description: 'Add a capability wish to the Dojo wishlist. Requires 4 fields: capability (what), reason (why), inputs (data needed), outputs (what it produces).',
436
+ annotations: {
437
+ title: 'Add Wish',
438
+ readOnlyHint: false,
439
+ destructiveHint: false,
440
+ idempotentHint: false,
441
+ },
442
+ inputSchema: {
443
+ type: 'object',
444
+ properties: {
445
+ project_id: {
446
+ type: 'string',
447
+ description: 'Project ID to add wish to (e.g., "senken" or "decibel-tools-mcp")',
448
+ },
449
+ caller_role: {
450
+ type: 'string',
451
+ enum: ['human', 'mother', 'ai'],
452
+ description: 'Role of the caller for access control (default: human)',
453
+ },
454
+ agent_id: {
455
+ type: 'string',
456
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
457
+ },
458
+ capability: {
459
+ type: 'string',
460
+ description: 'What it does - the core idea (e.g., "Correlation matrix for active signals")',
461
+ },
462
+ reason: {
463
+ type: 'string',
464
+ description: 'Why it improves outcomes (e.g., "Identify when multiple trades create unintended hedging")',
465
+ },
466
+ inputs: {
467
+ type: 'array',
468
+ items: { type: 'string' },
469
+ description: 'What data it needs (e.g., ["active_signals", "price_history_30d"])',
470
+ },
471
+ outputs: {
472
+ type: ['string', 'object'],
473
+ description: 'What it produces (e.g., {"correlation_matrix": {}, "hedging_risk_score": 0.0, "conflicts": []})',
474
+ },
475
+ integration_point: {
476
+ type: 'string',
477
+ description: 'Where it plugs in - filled during scaffold phase',
478
+ },
479
+ success_metric: {
480
+ type: 'string',
481
+ description: 'How we know it works - filled before enable phase',
482
+ },
483
+ risks: {
484
+ type: 'array',
485
+ items: { type: 'string' },
486
+ description: 'Safety review items - filled before enable phase',
487
+ },
488
+ mvp: {
489
+ type: 'string',
490
+ description: 'Smallest viable slice - if scoping is needed',
491
+ },
492
+ algorithm_outline: {
493
+ type: 'string',
494
+ description: 'Logic outline - if the algorithm is non-obvious',
495
+ },
496
+ context: {
497
+ type: 'object',
498
+ description: 'Additional structured context about when/why this wish occurred',
499
+ },
500
+ },
501
+ required: ['capability', 'reason', 'inputs', 'outputs'],
502
+ },
503
+ },
504
+ handler: withRunTracking(async (args) => {
505
+ try {
506
+ requireFields(args, 'capability', 'reason');
507
+ const result = await addWish(args);
508
+ if (isDojoError(result)) {
509
+ return toolError(JSON.stringify(result));
510
+ }
511
+ return toolSuccess(result);
512
+ }
513
+ catch (err) {
514
+ return toolError(err instanceof Error ? err.message : String(err));
515
+ }
516
+ }, {
517
+ toolName: 'dojo_add_wish',
518
+ getProjectId: (args) => args.project_id,
519
+ getSummary: summaryGenerators.wish,
520
+ }),
521
+ };
522
+ export const dojoListWishesTool = {
523
+ definition: {
524
+ name: 'dojo_list_wishes',
525
+ description: 'List wishes from the Dojo wishlist. Shows what capabilities AI has requested.',
526
+ annotations: {
527
+ title: 'List Wishes',
528
+ readOnlyHint: true,
529
+ destructiveHint: false,
530
+ },
531
+ inputSchema: {
532
+ type: 'object',
533
+ properties: {
534
+ project_id: {
535
+ type: 'string',
536
+ description: 'Project ID to list wishes from (e.g., "senken" or "decibel-tools-mcp")',
537
+ },
538
+ caller_role: {
539
+ type: 'string',
540
+ enum: ['human', 'mother', 'ai'],
541
+ description: 'Role of the caller for access control (default: human)',
542
+ },
543
+ agent_id: {
544
+ type: 'string',
545
+ description: 'Identifier for the calling agent (e.g., "mother", "chatgpt") - used for audit trails',
546
+ },
547
+ unresolved_only: {
548
+ type: 'boolean',
549
+ description: 'Only show unresolved wishes (default: false)',
550
+ },
551
+ },
552
+ },
553
+ },
554
+ handler: async (args) => {
555
+ try {
556
+ const result = await listWishes(args);
557
+ if (isDojoError(result)) {
558
+ return toolError(JSON.stringify(result));
559
+ }
560
+ return toolSuccess(result);
561
+ }
562
+ catch (err) {
563
+ return toolError(err instanceof Error ? err.message : String(err));
564
+ }
565
+ },
566
+ };
567
+ // ============================================================================
568
+ // Utility Tools
569
+ // ============================================================================
570
+ export const dojoProjectsTool = {
571
+ definition: {
572
+ name: 'dojo_projects',
573
+ description: 'List available projects for Dojo operations. Helps discover which projects you can use. Shows the default project if one exists.',
574
+ annotations: {
575
+ title: 'List Projects',
576
+ readOnlyHint: true,
577
+ destructiveHint: false,
578
+ },
579
+ inputSchema: {
580
+ type: 'object',
581
+ properties: {},
582
+ },
583
+ },
584
+ handler: async () => {
585
+ try {
586
+ const result = dojoListProjects();
587
+ return toolSuccess(result);
588
+ }
589
+ catch (err) {
590
+ return toolError(err instanceof Error ? err.message : String(err));
591
+ }
592
+ },
593
+ };
594
+ // ============================================================================
595
+ // Domain Export
596
+ // ============================================================================
597
+ export const dojoTools = [
598
+ // Proposal tools
599
+ dojoCreateProposalTool,
600
+ dojoScaffoldExperimentTool,
601
+ dojoListTool,
602
+ // Experiment tools
603
+ dojoRunExperimentTool,
604
+ dojoReadResultsTool,
605
+ dojoReadArtifactTool,
606
+ dojoCanGraduateTool,
607
+ // Wish tools
608
+ dojoAddWishTool,
609
+ dojoListWishesTool,
610
+ // Utility tools
611
+ dojoProjectsTool,
612
+ ];
613
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/dojo/index.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAC/E,qEAAqE;AACrE,+EAA+E;AAG/E,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC7H,OAAO,EACL,cAAc,EAEd,kBAAkB,EAElB,QAAQ,EAER,aAAa,EAEb,oBAAoB,EAEpB,OAAO,EAEP,UAAU,EAEV,WAAW,EAEX,YAAY,EAEZ,WAAW,EAEX,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,sBAAsB,GAAa;IAC9C,UAAU,EAAE;QACV,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,mMAAmM;QAChN,WAAW,EAAE;YACX,KAAK,EAAE,iBAAiB;YACxB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0EAA0E;iBACxF;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,+DAA+D;iBAC7E;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qCAAqC;iBACnD;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,6BAA6B;iBAC3C;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;oBACrB,WAAW,EAAE,yCAAyC;iBACvD;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,0BAA0B;iBACxC;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,gCAAgC;iBAC9C;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,4CAA4C;iBAC1D;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,qBAAqB;iBACnC;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,+CAA+C;iBAC7D;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4DAA4D;iBAC1E;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4GAA4G;iBAC1H;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC;SAC7C;KACF;IACD,OAAO,EAAE,eAAe,CACtB,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAA2B,CAAC,CAAC;YACjE,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC,EACD;QACE,QAAQ,EAAE,sBAAsB;QAChC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAgC;QAC7D,UAAU,EAAE,iBAAiB,CAAC,QAAQ;KACvC,CACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAa;IAClD,UAAU,EAAE;QACV,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,qMAAqM;QAClN,WAAW,EAAE;YACX,KAAK,EAAE,qBAAqB;YAC5B,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4EAA4E;iBAC1F;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sCAAsC;iBACpD;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;oBAClB,WAAW,EAAE,0CAA0C;iBACxD;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;oBAC3C,WAAW,EAAE,qGAAqG;iBACnH;aACF;YACD,QAAQ,EAAE,CAAC,aAAa,CAAC;SAC1B;KACF;IACD,OAAO,EAAE,eAAe,CACtB,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;YACnC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,MAAM,UAAU,GAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC3E,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;YACpE,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAA+B,CAAC,CAAC;YACzE,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC,EACD;QACE,QAAQ,EAAE,0BAA0B;QACpC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAgC;QAC7D,UAAU,EAAE,iBAAiB,CAAC,QAAQ;KACvC,CACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAa;IACpC,UAAU,EAAE;QACV,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,iEAAiE;QAC9E,WAAW,EAAE;YACX,KAAK,EAAE,iBAAiB;YACxB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;SACvB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4EAA4E;iBAC1F;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC;oBACnD,WAAW,EAAE,+BAA+B;iBAC7C;aACF;SACF;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAqB,CAAC,CAAC;YACrD,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,qBAAqB,GAAa;IAC7C,UAAU,EAAE;QACV,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,0KAA0K;QACvL,WAAW,EAAE;YACX,KAAK,EAAE,gBAAgB;YACvB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8EAA8E;iBAC5F;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uCAAuC;iBACrD;aACF;YACD,QAAQ,EAAE,CAAC,eAAe,CAAC;SAC5B;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACrC,+DAA+D;YAC/D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAA0B,CAAC,CAAC;YAC/D,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAa;IAC3C,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,0FAA0F;QACvG,WAAW,EAAE;YACX,KAAK,EAAE,cAAc;YACrB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;SACvB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8EAA8E;iBAC5F;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uCAAuC;iBACrD;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mCAAmC;iBACjD;aACF;YACD,QAAQ,EAAE,CAAC,eAAe,CAAC;SAC5B;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,IAAuB,CAAC,CAAC;YACnE,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAa;IAC5C,UAAU,EAAE;QACV,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,8HAA8H;QAC3I,WAAW,EAAE;YACX,KAAK,EAAE,eAAe;YACtB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;SACvB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8EAA8E;iBAC5F;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uCAAuC;iBACrD;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oEAAoE;iBAClF;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qDAAqD;iBACnE;aACF;YACD,QAAQ,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,UAAU,CAAC;SAClD;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC3D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAyB,CAAC,CAAC;YAC7D,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAa;IAC3C,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,oIAAoI;QACjJ,WAAW,EAAE;YACX,KAAK,EAAE,kBAAkB;YACzB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;SACvB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8EAA8E;iBAC5F;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uCAAuC;iBACrD;aACF;YACD,QAAQ,EAAE,CAAC,eAAe,CAAC;SAC5B;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAwB,CAAC,CAAC;YAC3D,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,MAAM,CAAC,MAAM,eAAe,GAAa;IACvC,UAAU,EAAE;QACV,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,mJAAmJ;QAChK,WAAW,EAAE;YACX,KAAK,EAAE,UAAU;YACjB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mEAAmE;iBACjF;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8EAA8E;iBAC5F;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4FAA4F;iBAC1G;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,oEAAoE;iBAClF;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;oBAC1B,WAAW,EAAE,iGAAiG;iBAC/G;gBACD,iBAAiB,EAAE;oBACjB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kDAAkD;iBAChE;gBACD,cAAc,EAAE;oBACd,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mDAAmD;iBACjE;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,kDAAkD;iBAChE;gBACD,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8CAA8C;iBAC5D;gBACD,iBAAiB,EAAE;oBACjB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iDAAiD;iBAC/D;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iEAAiE;iBAC/E;aACF;YACD,QAAQ,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;SACxD;KACF;IACD,OAAO,EAAE,eAAe,CACtB,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAoB,CAAC,CAAC;YACnD,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC,EACD;QACE,QAAQ,EAAE,eAAe;QACzB,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAgC;QAC7D,UAAU,EAAE,iBAAiB,CAAC,IAAI;KACnC,CACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAa;IAC1C,UAAU,EAAE;QACV,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,+EAA+E;QAC5F,WAAW,EAAE;YACX,KAAK,EAAE,aAAa;YACpB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;SACvB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,wEAAwE;iBACtF;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;oBAC/B,WAAW,EAAE,wDAAwD;iBACtE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sFAAsF;iBACpG;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,8CAA8C;iBAC5D;aACF;SACF;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAuB,CAAC,CAAC;YACzD,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,gBAAgB,GAAa;IACxC,UAAU,EAAE;QACV,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,kIAAkI;QAC/I,WAAW,EAAE;YACX,KAAK,EAAE,eAAe;YACtB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;SACvB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;YAClC,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,SAAS,GAAe;IACnC,iBAAiB;IACjB,sBAAsB;IACtB,0BAA0B;IAC1B,YAAY;IACZ,mBAAmB;IACnB,qBAAqB;IACrB,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,aAAa;IACb,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,gBAAgB;CACjB,CAAC"}