@braidhq/server 0.0.1 → 0.2.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 (376) hide show
  1. package/README.md +164 -0
  2. package/dist/app.d.ts +12 -3
  3. package/dist/app.d.ts.map +1 -1
  4. package/dist/app.js +154 -9
  5. package/dist/app.js.map +1 -1
  6. package/dist/authMode.d.ts +39 -0
  7. package/dist/authMode.d.ts.map +1 -0
  8. package/dist/authMode.js +50 -0
  9. package/dist/authMode.js.map +1 -0
  10. package/dist/composeApp.d.ts +79 -0
  11. package/dist/composeApp.d.ts.map +1 -0
  12. package/dist/composeApp.js +136 -0
  13. package/dist/composeApp.js.map +1 -0
  14. package/dist/composeFsApp.d.ts +27 -0
  15. package/dist/composeFsApp.d.ts.map +1 -0
  16. package/dist/composeFsApp.js +309 -0
  17. package/dist/composeFsApp.js.map +1 -0
  18. package/dist/index.d.ts +3 -2
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +3 -2
  21. package/dist/index.js.map +1 -1
  22. package/dist/infrastructure/_shared/env.d.ts +10 -0
  23. package/dist/infrastructure/_shared/env.d.ts.map +1 -0
  24. package/dist/infrastructure/_shared/env.js +19 -0
  25. package/dist/infrastructure/_shared/env.js.map +1 -0
  26. package/dist/infrastructure/_shared/frontmatter.d.ts +13 -0
  27. package/dist/infrastructure/_shared/frontmatter.d.ts.map +1 -0
  28. package/dist/infrastructure/{fs → _shared}/frontmatter.js +5 -5
  29. package/dist/infrastructure/_shared/frontmatter.js.map +1 -0
  30. package/dist/infrastructure/_shared/jsonFileStore.d.ts.map +1 -0
  31. package/dist/infrastructure/_shared/jsonFileStore.js.map +1 -0
  32. package/dist/infrastructure/_shared/paths.d.ts +43 -0
  33. package/dist/infrastructure/_shared/paths.d.ts.map +1 -0
  34. package/dist/infrastructure/_shared/paths.js +96 -0
  35. package/dist/infrastructure/_shared/paths.js.map +1 -0
  36. package/dist/infrastructure/auth/AccessPolicy.d.ts +87 -0
  37. package/dist/infrastructure/auth/AccessPolicy.d.ts.map +1 -0
  38. package/dist/infrastructure/auth/AccessPolicy.js +177 -0
  39. package/dist/infrastructure/auth/AccessPolicy.js.map +1 -0
  40. package/dist/infrastructure/auth/SessionStore.d.ts +50 -0
  41. package/dist/infrastructure/auth/SessionStore.d.ts.map +1 -0
  42. package/dist/infrastructure/auth/SessionStore.js +104 -0
  43. package/dist/infrastructure/auth/SessionStore.js.map +1 -0
  44. package/dist/infrastructure/batch/FsBatchPlanRepository.d.ts +79 -0
  45. package/dist/infrastructure/batch/FsBatchPlanRepository.d.ts.map +1 -0
  46. package/dist/infrastructure/batch/FsBatchPlanRepository.js +42 -0
  47. package/dist/infrastructure/batch/FsBatchPlanRepository.js.map +1 -0
  48. package/dist/infrastructure/history/GitWorkspaceHistory.d.ts +18 -0
  49. package/dist/infrastructure/history/GitWorkspaceHistory.d.ts.map +1 -0
  50. package/dist/infrastructure/history/GitWorkspaceHistory.js +310 -0
  51. package/dist/infrastructure/history/GitWorkspaceHistory.js.map +1 -0
  52. package/dist/infrastructure/history/commitMessage.d.ts +4 -0
  53. package/dist/infrastructure/history/commitMessage.d.ts.map +1 -0
  54. package/dist/infrastructure/history/commitMessage.js +90 -0
  55. package/dist/infrastructure/history/commitMessage.js.map +1 -0
  56. package/dist/infrastructure/hitl/FsClarificationRepository.d.ts +13 -0
  57. package/dist/infrastructure/hitl/FsClarificationRepository.d.ts.map +1 -0
  58. package/dist/infrastructure/hitl/FsClarificationRepository.js +39 -0
  59. package/dist/infrastructure/hitl/FsClarificationRepository.js.map +1 -0
  60. package/dist/infrastructure/hitl/FsProposalRepository.d.ts.map +1 -0
  61. package/dist/infrastructure/{fs → hitl}/FsProposalRepository.js +10 -3
  62. package/dist/infrastructure/hitl/FsProposalRepository.js.map +1 -0
  63. package/dist/infrastructure/hitl/StatusedJsonStore.d.ts +30 -0
  64. package/dist/infrastructure/hitl/StatusedJsonStore.d.ts.map +1 -0
  65. package/dist/infrastructure/{fs/FsStatusedJsonRepository.js → hitl/StatusedJsonStore.js} +3 -3
  66. package/dist/infrastructure/hitl/StatusedJsonStore.js.map +1 -0
  67. package/dist/infrastructure/model/FsModelSerializer.d.ts +96 -0
  68. package/dist/infrastructure/model/FsModelSerializer.d.ts.map +1 -0
  69. package/dist/infrastructure/model/FsModelSerializer.js +60 -0
  70. package/dist/infrastructure/model/FsModelSerializer.js.map +1 -0
  71. package/dist/infrastructure/oauth/GoogleOAuth.d.ts +43 -14
  72. package/dist/infrastructure/oauth/GoogleOAuth.d.ts.map +1 -1
  73. package/dist/infrastructure/oauth/GoogleOAuth.js +78 -11
  74. package/dist/infrastructure/oauth/GoogleOAuth.js.map +1 -1
  75. package/dist/infrastructure/reactor/FsReactorCycleRepository.d.ts +29 -0
  76. package/dist/infrastructure/reactor/FsReactorCycleRepository.d.ts.map +1 -0
  77. package/dist/infrastructure/reactor/FsReactorCycleRepository.js +94 -0
  78. package/dist/infrastructure/reactor/FsReactorCycleRepository.js.map +1 -0
  79. package/dist/infrastructure/secrets/SecretStore.d.ts +11 -14
  80. package/dist/infrastructure/secrets/SecretStore.d.ts.map +1 -1
  81. package/dist/infrastructure/secrets/SecretStore.js +4 -4
  82. package/dist/infrastructure/secrets/SecretStore.js.map +1 -1
  83. package/dist/infrastructure/{fs → skill}/FsRunRepository.d.ts +9 -4
  84. package/dist/infrastructure/skill/FsRunRepository.d.ts.map +1 -0
  85. package/dist/infrastructure/skill/FsRunRepository.js +162 -0
  86. package/dist/infrastructure/skill/FsRunRepository.js.map +1 -0
  87. package/dist/infrastructure/{fs → skill}/FsSkillRegistry.d.ts +4 -13
  88. package/dist/infrastructure/skill/FsSkillRegistry.d.ts.map +1 -0
  89. package/dist/infrastructure/{fs → skill}/FsSkillRegistry.js +38 -18
  90. package/dist/infrastructure/skill/FsSkillRegistry.js.map +1 -0
  91. package/dist/infrastructure/{agent → skill}/SubprocessSkillRunner.d.ts +13 -15
  92. package/dist/infrastructure/skill/SubprocessSkillRunner.d.ts.map +1 -0
  93. package/dist/infrastructure/{agent → skill}/SubprocessSkillRunner.js +124 -40
  94. package/dist/infrastructure/skill/SubprocessSkillRunner.js.map +1 -0
  95. package/dist/infrastructure/skill/asyncQueue.d.ts +20 -0
  96. package/dist/infrastructure/skill/asyncQueue.d.ts.map +1 -0
  97. package/dist/infrastructure/{agent → skill}/asyncQueue.js +2 -3
  98. package/dist/infrastructure/{agent → skill}/asyncQueue.js.map +1 -1
  99. package/dist/infrastructure/skill/lineBuffer.d.ts +15 -0
  100. package/dist/infrastructure/skill/lineBuffer.d.ts.map +1 -0
  101. package/dist/infrastructure/{agent/streamJsonParser.js → skill/lineBuffer.js} +5 -17
  102. package/dist/infrastructure/skill/lineBuffer.js.map +1 -0
  103. package/dist/infrastructure/skill/orphanReaper.d.ts +20 -0
  104. package/dist/infrastructure/skill/orphanReaper.d.ts.map +1 -0
  105. package/dist/infrastructure/{orphanReaper.js → skill/orphanReaper.js} +7 -5
  106. package/dist/infrastructure/skill/orphanReaper.js.map +1 -0
  107. package/dist/infrastructure/skill/subprocessEventStream.d.ts +16 -0
  108. package/dist/infrastructure/skill/subprocessEventStream.d.ts.map +1 -0
  109. package/dist/infrastructure/skill/subprocessEventStream.js +29 -0
  110. package/dist/infrastructure/skill/subprocessEventStream.js.map +1 -0
  111. package/dist/infrastructure/source/FsSourceUnitDigest.d.ts +19 -0
  112. package/dist/infrastructure/source/FsSourceUnitDigest.d.ts.map +1 -0
  113. package/dist/infrastructure/source/FsSourceUnitDigest.js +58 -0
  114. package/dist/infrastructure/source/FsSourceUnitDigest.js.map +1 -0
  115. package/dist/infrastructure/source/FsSourceUnitObservationRepository.d.ts +31 -0
  116. package/dist/infrastructure/source/FsSourceUnitObservationRepository.d.ts.map +1 -0
  117. package/dist/infrastructure/source/FsSourceUnitObservationRepository.js +88 -0
  118. package/dist/infrastructure/source/FsSourceUnitObservationRepository.js.map +1 -0
  119. package/dist/infrastructure/source/intentScan.d.ts +13 -0
  120. package/dist/infrastructure/source/intentScan.d.ts.map +1 -0
  121. package/dist/infrastructure/source/intentScan.js +137 -0
  122. package/dist/infrastructure/source/intentScan.js.map +1 -0
  123. package/dist/infrastructure/users/UserDirectoryFromRegistry.d.ts +14 -0
  124. package/dist/infrastructure/users/UserDirectoryFromRegistry.d.ts.map +1 -0
  125. package/dist/infrastructure/users/UserDirectoryFromRegistry.js +21 -0
  126. package/dist/infrastructure/users/UserDirectoryFromRegistry.js.map +1 -0
  127. package/dist/infrastructure/users/UserRegistryFile.d.ts +22 -0
  128. package/dist/infrastructure/users/UserRegistryFile.d.ts.map +1 -0
  129. package/dist/infrastructure/users/UserRegistryFile.js +89 -0
  130. package/dist/infrastructure/users/UserRegistryFile.js.map +1 -0
  131. package/dist/infrastructure/users/ensureWorkspaceOwners.d.ts +12 -0
  132. package/dist/infrastructure/users/ensureWorkspaceOwners.d.ts.map +1 -0
  133. package/dist/infrastructure/users/ensureWorkspaceOwners.js +25 -0
  134. package/dist/infrastructure/users/ensureWorkspaceOwners.js.map +1 -0
  135. package/dist/infrastructure/workspace/FsWorkspaceRepository.d.ts.map +1 -0
  136. package/dist/infrastructure/{fs → workspace}/FsWorkspaceRepository.js +15 -5
  137. package/dist/infrastructure/workspace/FsWorkspaceRepository.js.map +1 -0
  138. package/dist/infrastructure/workspace/WorkspaceDiscovery.d.ts +18 -0
  139. package/dist/infrastructure/workspace/WorkspaceDiscovery.d.ts.map +1 -0
  140. package/dist/infrastructure/workspace/WorkspaceDiscovery.js +50 -0
  141. package/dist/infrastructure/workspace/WorkspaceDiscovery.js.map +1 -0
  142. package/dist/infrastructure/workspace/WorkspaceRegistryFile.d.ts +42 -0
  143. package/dist/infrastructure/workspace/WorkspaceRegistryFile.d.ts.map +1 -0
  144. package/dist/infrastructure/workspace/WorkspaceRegistryFile.js +160 -0
  145. package/dist/infrastructure/workspace/WorkspaceRegistryFile.js.map +1 -0
  146. package/dist/infrastructure/workspace/productManifestWriter.d.ts +24 -0
  147. package/dist/infrastructure/workspace/productManifestWriter.d.ts.map +1 -0
  148. package/dist/infrastructure/{fs → workspace}/productManifestWriter.js +14 -28
  149. package/dist/infrastructure/workspace/productManifestWriter.js.map +1 -0
  150. package/dist/middleware/auth.d.ts +39 -0
  151. package/dist/middleware/auth.d.ts.map +1 -0
  152. package/dist/middleware/auth.js +87 -0
  153. package/dist/middleware/auth.js.map +1 -0
  154. package/dist/middleware/cors.d.ts.map +1 -1
  155. package/dist/middleware/cors.js +5 -2
  156. package/dist/middleware/cors.js.map +1 -1
  157. package/dist/middleware/error.d.ts.map +1 -1
  158. package/dist/middleware/error.js +15 -13
  159. package/dist/middleware/error.js.map +1 -1
  160. package/dist/middleware/workspaceAccess.d.ts +51 -0
  161. package/dist/middleware/workspaceAccess.d.ts.map +1 -0
  162. package/dist/middleware/workspaceAccess.js +91 -0
  163. package/dist/middleware/workspaceAccess.js.map +1 -0
  164. package/dist/policy/CapabilityCheck.d.ts +14 -0
  165. package/dist/policy/CapabilityCheck.d.ts.map +1 -0
  166. package/dist/policy/CapabilityCheck.js +2 -0
  167. package/dist/policy/CapabilityCheck.js.map +1 -0
  168. package/dist/policy/PermissionRegistry.d.ts +25 -0
  169. package/dist/policy/PermissionRegistry.d.ts.map +1 -0
  170. package/dist/policy/PermissionRegistry.js +29 -0
  171. package/dist/policy/PermissionRegistry.js.map +1 -0
  172. package/dist/policy/ViewerContext.d.ts +29 -0
  173. package/dist/policy/ViewerContext.d.ts.map +1 -0
  174. package/dist/policy/ViewerContext.js +2 -0
  175. package/dist/policy/ViewerContext.js.map +1 -0
  176. package/dist/policy/checks.d.ts +15 -0
  177. package/dist/policy/checks.d.ts.map +1 -0
  178. package/dist/policy/checks.js +55 -0
  179. package/dist/policy/checks.js.map +1 -0
  180. package/dist/policy/defaultRegistry.d.ts +9 -0
  181. package/dist/policy/defaultRegistry.d.ts.map +1 -0
  182. package/dist/policy/defaultRegistry.js +15 -0
  183. package/dist/policy/defaultRegistry.js.map +1 -0
  184. package/dist/policy/index.d.ts +8 -0
  185. package/dist/policy/index.d.ts.map +1 -0
  186. package/dist/policy/index.js +5 -0
  187. package/dist/policy/index.js.map +1 -0
  188. package/dist/policy/resolveViewer.d.ts +16 -0
  189. package/dist/policy/resolveViewer.d.ts.map +1 -0
  190. package/dist/policy/resolveViewer.js +37 -0
  191. package/dist/policy/resolveViewer.js.map +1 -0
  192. package/dist/routes/_shared.d.ts +138 -0
  193. package/dist/routes/_shared.d.ts.map +1 -0
  194. package/dist/routes/_shared.js +33 -0
  195. package/dist/routes/_shared.js.map +1 -0
  196. package/dist/routes/admin.d.ts +13 -0
  197. package/dist/routes/admin.d.ts.map +1 -0
  198. package/dist/routes/admin.js +228 -0
  199. package/dist/routes/admin.js.map +1 -0
  200. package/dist/routes/auth.d.ts +35 -0
  201. package/dist/routes/auth.d.ts.map +1 -0
  202. package/dist/routes/auth.js +168 -0
  203. package/dist/routes/auth.js.map +1 -0
  204. package/dist/routes/batch.d.ts +7 -0
  205. package/dist/routes/batch.d.ts.map +1 -0
  206. package/dist/routes/batch.js +47 -0
  207. package/dist/routes/batch.js.map +1 -0
  208. package/dist/routes/clarifications.d.ts +8 -0
  209. package/dist/routes/clarifications.d.ts.map +1 -0
  210. package/dist/routes/clarifications.js +243 -0
  211. package/dist/routes/clarifications.js.map +1 -0
  212. package/dist/routes/edges.d.ts +2 -2
  213. package/dist/routes/edges.d.ts.map +1 -1
  214. package/dist/routes/edges.js +34 -16
  215. package/dist/routes/edges.js.map +1 -1
  216. package/dist/routes/health.d.ts +2 -2
  217. package/dist/routes/health.d.ts.map +1 -1
  218. package/dist/routes/health.js +21 -3
  219. package/dist/routes/health.js.map +1 -1
  220. package/dist/routes/history.d.ts +7 -0
  221. package/dist/routes/history.d.ts.map +1 -0
  222. package/dist/routes/history.js +90 -0
  223. package/dist/routes/history.js.map +1 -0
  224. package/dist/routes/model.d.ts +2 -2
  225. package/dist/routes/model.d.ts.map +1 -1
  226. package/dist/routes/model.js +20 -4
  227. package/dist/routes/model.js.map +1 -1
  228. package/dist/routes/nodes.d.ts +2 -2
  229. package/dist/routes/nodes.d.ts.map +1 -1
  230. package/dist/routes/nodes.js +77 -25
  231. package/dist/routes/nodes.js.map +1 -1
  232. package/dist/routes/oauth.d.ts +6 -7
  233. package/dist/routes/oauth.d.ts.map +1 -1
  234. package/dist/routes/oauth.js +6 -7
  235. package/dist/routes/oauth.js.map +1 -1
  236. package/dist/routes/ontology.d.ts +2 -2
  237. package/dist/routes/ontology.d.ts.map +1 -1
  238. package/dist/routes/ontology.js +22 -5
  239. package/dist/routes/ontology.js.map +1 -1
  240. package/dist/routes/proposals.d.ts +5 -4
  241. package/dist/routes/proposals.d.ts.map +1 -1
  242. package/dist/routes/proposals.js +176 -45
  243. package/dist/routes/proposals.js.map +1 -1
  244. package/dist/routes/reactorCycles.d.ts +7 -0
  245. package/dist/routes/reactorCycles.d.ts.map +1 -0
  246. package/dist/routes/reactorCycles.js +60 -0
  247. package/dist/routes/reactorCycles.js.map +1 -0
  248. package/dist/routes/runs.d.ts.map +1 -1
  249. package/dist/routes/runs.js +66 -12
  250. package/dist/routes/runs.js.map +1 -1
  251. package/dist/routes/skillInputOptions.d.ts +10 -0
  252. package/dist/routes/skillInputOptions.d.ts.map +1 -0
  253. package/dist/routes/skillInputOptions.js +159 -0
  254. package/dist/routes/skillInputOptions.js.map +1 -0
  255. package/dist/routes/skills.d.ts +21 -3
  256. package/dist/routes/skills.d.ts.map +1 -1
  257. package/dist/routes/skills.js +223 -21
  258. package/dist/routes/skills.js.map +1 -1
  259. package/dist/routes/sourceLoaders.d.ts +7 -0
  260. package/dist/routes/sourceLoaders.d.ts.map +1 -0
  261. package/dist/routes/sourceLoaders.js +30 -0
  262. package/dist/routes/sourceLoaders.js.map +1 -0
  263. package/dist/routes/sourceUnitObservations.d.ts +20 -0
  264. package/dist/routes/sourceUnitObservations.d.ts.map +1 -0
  265. package/dist/routes/sourceUnitObservations.js +80 -0
  266. package/dist/routes/sourceUnitObservations.js.map +1 -0
  267. package/dist/routes/sourceWebhooks.d.ts +26 -0
  268. package/dist/routes/sourceWebhooks.d.ts.map +1 -0
  269. package/dist/routes/sourceWebhooks.js +301 -0
  270. package/dist/routes/sourceWebhooks.js.map +1 -0
  271. package/dist/routes/users.d.ts +7 -0
  272. package/dist/routes/users.d.ts.map +1 -0
  273. package/dist/routes/users.js +109 -0
  274. package/dist/routes/users.js.map +1 -0
  275. package/dist/routes/workspaceEvents.d.ts +5 -4
  276. package/dist/routes/workspaceEvents.d.ts.map +1 -1
  277. package/dist/routes/workspaceEvents.js +7 -6
  278. package/dist/routes/workspaceEvents.js.map +1 -1
  279. package/dist/routes/workspaceMembers.d.ts +11 -0
  280. package/dist/routes/workspaceMembers.d.ts.map +1 -0
  281. package/dist/routes/workspaceMembers.js +81 -0
  282. package/dist/routes/workspaceMembers.js.map +1 -0
  283. package/dist/routes/workspaces.d.ts +30 -1
  284. package/dist/routes/workspaces.d.ts.map +1 -1
  285. package/dist/routes/workspaces.js +207 -63
  286. package/dist/routes/workspaces.js.map +1 -1
  287. package/dist/server.js +9 -29
  288. package/dist/server.js.map +1 -1
  289. package/dist/startServer.d.ts +17 -0
  290. package/dist/startServer.d.ts.map +1 -0
  291. package/dist/startServer.js +81 -0
  292. package/dist/startServer.js.map +1 -0
  293. package/dist/startup.d.ts +28 -0
  294. package/dist/startup.d.ts.map +1 -0
  295. package/dist/startup.js +94 -0
  296. package/dist/startup.js.map +1 -0
  297. package/package.json +49 -32
  298. package/LICENSE +0 -21
  299. package/dist/composeFs.d.ts +0 -20
  300. package/dist/composeFs.d.ts.map +0 -1
  301. package/dist/composeFs.js +0 -134
  302. package/dist/composeFs.js.map +0 -1
  303. package/dist/composition.d.ts +0 -49
  304. package/dist/composition.d.ts.map +0 -1
  305. package/dist/composition.js +0 -43
  306. package/dist/composition.js.map +0 -1
  307. package/dist/infrastructure/agent/ClaudeCodeAgentBinding.d.ts +0 -8
  308. package/dist/infrastructure/agent/ClaudeCodeAgentBinding.d.ts.map +0 -1
  309. package/dist/infrastructure/agent/ClaudeCodeAgentBinding.js +0 -62
  310. package/dist/infrastructure/agent/ClaudeCodeAgentBinding.js.map +0 -1
  311. package/dist/infrastructure/agent/SubprocessSkillRunner.d.ts.map +0 -1
  312. package/dist/infrastructure/agent/SubprocessSkillRunner.js.map +0 -1
  313. package/dist/infrastructure/agent/asyncQueue.d.ts +0 -22
  314. package/dist/infrastructure/agent/asyncQueue.d.ts.map +0 -1
  315. package/dist/infrastructure/agent/mcpConfig.d.ts +0 -18
  316. package/dist/infrastructure/agent/mcpConfig.d.ts.map +0 -1
  317. package/dist/infrastructure/agent/mcpConfig.js +0 -47
  318. package/dist/infrastructure/agent/mcpConfig.js.map +0 -1
  319. package/dist/infrastructure/agent/streamJsonParser.d.ts +0 -20
  320. package/dist/infrastructure/agent/streamJsonParser.d.ts.map +0 -1
  321. package/dist/infrastructure/agent/streamJsonParser.js.map +0 -1
  322. package/dist/infrastructure/agent/subprocessEventStream.d.ts +0 -26
  323. package/dist/infrastructure/agent/subprocessEventStream.d.ts.map +0 -1
  324. package/dist/infrastructure/agent/subprocessEventStream.js +0 -112
  325. package/dist/infrastructure/agent/subprocessEventStream.js.map +0 -1
  326. package/dist/infrastructure/fs/FsClarifyTicketRepository.d.ts +0 -13
  327. package/dist/infrastructure/fs/FsClarifyTicketRepository.d.ts.map +0 -1
  328. package/dist/infrastructure/fs/FsClarifyTicketRepository.js +0 -33
  329. package/dist/infrastructure/fs/FsClarifyTicketRepository.js.map +0 -1
  330. package/dist/infrastructure/fs/FsDecisionRepository.d.ts +0 -13
  331. package/dist/infrastructure/fs/FsDecisionRepository.d.ts.map +0 -1
  332. package/dist/infrastructure/fs/FsDecisionRepository.js +0 -56
  333. package/dist/infrastructure/fs/FsDecisionRepository.js.map +0 -1
  334. package/dist/infrastructure/fs/FsProposalRepository.d.ts.map +0 -1
  335. package/dist/infrastructure/fs/FsProposalRepository.js.map +0 -1
  336. package/dist/infrastructure/fs/FsRunRepository.d.ts.map +0 -1
  337. package/dist/infrastructure/fs/FsRunRepository.js +0 -88
  338. package/dist/infrastructure/fs/FsRunRepository.js.map +0 -1
  339. package/dist/infrastructure/fs/FsSkillRegistry.d.ts.map +0 -1
  340. package/dist/infrastructure/fs/FsSkillRegistry.js.map +0 -1
  341. package/dist/infrastructure/fs/FsStatusedJsonRepository.d.ts +0 -35
  342. package/dist/infrastructure/fs/FsStatusedJsonRepository.d.ts.map +0 -1
  343. package/dist/infrastructure/fs/FsStatusedJsonRepository.js.map +0 -1
  344. package/dist/infrastructure/fs/FsWorkspaceRepository.d.ts.map +0 -1
  345. package/dist/infrastructure/fs/FsWorkspaceRepository.js.map +0 -1
  346. package/dist/infrastructure/fs/WorkspaceRegistryFile.d.ts +0 -17
  347. package/dist/infrastructure/fs/WorkspaceRegistryFile.d.ts.map +0 -1
  348. package/dist/infrastructure/fs/WorkspaceRegistryFile.js +0 -58
  349. package/dist/infrastructure/fs/WorkspaceRegistryFile.js.map +0 -1
  350. package/dist/infrastructure/fs/frontmatter.d.ts +0 -13
  351. package/dist/infrastructure/fs/frontmatter.d.ts.map +0 -1
  352. package/dist/infrastructure/fs/frontmatter.js.map +0 -1
  353. package/dist/infrastructure/fs/jsonFileStore.d.ts.map +0 -1
  354. package/dist/infrastructure/fs/jsonFileStore.js.map +0 -1
  355. package/dist/infrastructure/fs/paths.d.ts +0 -22
  356. package/dist/infrastructure/fs/paths.d.ts.map +0 -1
  357. package/dist/infrastructure/fs/paths.js +0 -46
  358. package/dist/infrastructure/fs/paths.js.map +0 -1
  359. package/dist/infrastructure/fs/productManifestWriter.d.ts +0 -22
  360. package/dist/infrastructure/fs/productManifestWriter.d.ts.map +0 -1
  361. package/dist/infrastructure/fs/productManifestWriter.js.map +0 -1
  362. package/dist/infrastructure/orphanReaper.d.ts +0 -18
  363. package/dist/infrastructure/orphanReaper.d.ts.map +0 -1
  364. package/dist/infrastructure/orphanReaper.js.map +0 -1
  365. package/dist/routes/clarify.d.ts +0 -8
  366. package/dist/routes/clarify.d.ts.map +0 -1
  367. package/dist/routes/clarify.js +0 -84
  368. package/dist/routes/clarify.js.map +0 -1
  369. package/dist/routes/decisions.d.ts +0 -7
  370. package/dist/routes/decisions.d.ts.map +0 -1
  371. package/dist/routes/decisions.js +0 -30
  372. package/dist/routes/decisions.js.map +0 -1
  373. /package/dist/infrastructure/{fs → _shared}/jsonFileStore.d.ts +0 -0
  374. /package/dist/infrastructure/{fs → _shared}/jsonFileStore.js +0 -0
  375. /package/dist/infrastructure/{fs → hitl}/FsProposalRepository.d.ts +0 -0
  376. /package/dist/infrastructure/{fs → workspace}/FsWorkspaceRepository.d.ts +0 -0
@@ -1,62 +0,0 @@
1
- import process from 'node:process';
2
- export class ClaudeCodeAgentBinding {
3
- descriptor;
4
- constructor(descriptor) {
5
- this.descriptor = descriptor;
6
- if (descriptor.kind !== 'claude-code') {
7
- throw new Error(`ClaudeCodeAgentBinding expects kind="claude-code", got "${descriptor.kind}"`);
8
- }
9
- }
10
- resolveSpawn(input) {
11
- // When resuming, the prompt is just the user's follow-up text — claude
12
- // already holds the conversation context and the original slash command.
13
- const promptArg = input.resumeSessionId
14
- ? input.args
15
- : `/${input.manifest.frontmatter.name} ${input.args}`;
16
- const baseArgs = [
17
- '-p',
18
- promptArg,
19
- '--output-format',
20
- 'stream-json',
21
- '--verbose',
22
- '--dangerously-skip-permissions',
23
- '--model',
24
- this.descriptor.model,
25
- ];
26
- if (input.resumeSessionId) {
27
- baseArgs.push('--resume', input.resumeSessionId);
28
- }
29
- if (this.descriptor.effort) {
30
- baseArgs.push('--effort', this.descriptor.effort);
31
- }
32
- if (input.mcpConfigFile) {
33
- baseArgs.push('--mcp-config', input.mcpConfigFile);
34
- }
35
- for (const dir of input.workspace.resolveAddDirs()) {
36
- baseArgs.push('--add-dir', dir);
37
- }
38
- for (const extra of this.descriptor.extraArgs) {
39
- baseArgs.push(extra);
40
- }
41
- const env = {
42
- ...filterEnv(process.env),
43
- ...this.descriptor.env,
44
- BRAID_WORKSPACE: input.workspace.rootPath,
45
- BRAID_WORKSPACE_ID: input.workspace.id,
46
- BRAID_API_URL: input.apiUrl,
47
- };
48
- const invocation = input.mcpConfigFile
49
- ? { bin: 'claude', args: baseArgs, env, mcpConfigFile: input.mcpConfigFile }
50
- : { bin: 'claude', args: baseArgs, env };
51
- return invocation;
52
- }
53
- }
54
- function filterEnv(source) {
55
- const result = {};
56
- for (const [key, value] of Object.entries(source)) {
57
- if (typeof value === 'string')
58
- result[key] = value;
59
- }
60
- return result;
61
- }
62
- //# sourceMappingURL=ClaudeCodeAgentBinding.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ClaudeCodeAgentBinding.js","sourceRoot":"","sources":["../../../src/infrastructure/agent/ClaudeCodeAgentBinding.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,MAAM,OAAO,sBAAsB;IACZ;IAArB,YAAqB,UAAkC;QAAlC,eAAU,GAAV,UAAU,CAAwB;QACrD,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,2DAA2D,UAAU,CAAC,IAAI,GAAG,CAAC,CAAA;QAChG,CAAC;IACH,CAAC;IAED,YAAY,CAAC,KAAsB;QACjC,uEAAuE;QACvE,yEAAyE;QACzE,MAAM,SAAS,GAAG,KAAK,CAAC,eAAe;YACrC,CAAC,CAAC,KAAK,CAAC,IAAI;YACZ,CAAC,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAA;QACvD,MAAM,QAAQ,GAAa;YACzB,IAAI;YACJ,SAAS;YACT,iBAAiB;YACjB,aAAa;YACb,WAAW;YACX,gCAAgC;YAChC,SAAS;YACT,IAAI,CAAC,UAAU,CAAC,KAAK;SACtB,CAAA;QACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,eAAe,CAAC,CAAA;QAClD,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACnD,CAAC;QACD,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;QACpD,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,CAAC;YACnD,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;QACjC,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAC9C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtB,CAAC;QAED,MAAM,GAAG,GAA2B;YAClC,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC;YACzB,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG;YACtB,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ;YACzC,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE;YACtC,aAAa,EAAE,KAAK,CAAC,MAAM;SAC5B,CAAA;QAED,MAAM,UAAU,GAAoB,KAAK,CAAC,aAAa;YACrD,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE;YAC5E,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAA;QAC1C,OAAO,UAAU,CAAA;IACnB,CAAC;CACF;AAED,SAAS,SAAS,CAAC,MAAyB;IAC1C,MAAM,MAAM,GAA2B,EAAE,CAAA;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,OAAO,KAAK,KAAK,QAAQ;YAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IACvB,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SubprocessSkillRunner.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/agent/SubprocessSkillRunner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,SAAS,EACT,iBAAiB,EAClB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAAE,YAAY,EAAyB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC/F,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAcpE,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,YAAY,KAAK,YAAY,CAAA;AAEvG;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;CAC5B;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAA;IACrC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAA;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,sFAAsF;IACtF,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAA;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAA;IAC7B,iFAAiF;IACjF,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAA;IACrD,0EAA0E;IAC1E,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAA;CACtC;AAOD,qBAAa,qBAAsB,YAAW,WAAW;IAQ3C,OAAO,CAAC,QAAQ,CAAC,IAAI;IAPjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAC3D,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4B;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiD;IAC7E,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgC;gBAE7B,IAAI,EAAE,yBAAyB;IAEtD,KAAK,CACT,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,UAAU,CAAC;IAgEtB,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,kBAAkB,GAAG,oBAAoB;IAchF,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO;IAI9B,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxC,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YASvC,KAAK;YAgFL,IAAI;YAiBJ,iBAAiB;YAkBjB,iBAAiB;YAQjB,eAAe;IAyB7B,OAAO,CAAC,GAAG;CAGZ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SubprocessSkillRunner.js","sourceRoot":"","sources":["../../../src/infrastructure/agent/SubprocessSkillRunner.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- /**
2
- * Single-producer / single-consumer async queue backing an `AsyncIterable`.
3
- *
4
- * Used to bridge node `EventEmitter`-style callbacks (which fire whenever
5
- * subprocess stdout / stderr / close events arrive) into `for await … of`
6
- * consumers (Hono's SSE writer, vitest assertions) without buffering every
7
- * event until the producer is done.
8
- *
9
- * Contract:
10
- * - `push(item)` enqueues an item and wakes a pending consumer.
11
- * - `end()` signals that no more items are coming; the iterator finishes
12
- * once it has drained the queue.
13
- * - `iterate()` returns a single-use async generator. Calling it more than
14
- * once is undefined.
15
- */
16
- export interface AsyncQueue<T> {
17
- push: (item: T) => void;
18
- end: () => void;
19
- iterate: () => AsyncGenerator<T>;
20
- }
21
- export declare function createAsyncQueue<T>(): AsyncQueue<T>;
22
- //# sourceMappingURL=asyncQueue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asyncQueue.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/agent/asyncQueue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;IACvB,GAAG,EAAE,MAAM,IAAI,CAAA;IACf,OAAO,EAAE,MAAM,cAAc,CAAC,CAAC,CAAC,CAAA;CACjC;AAED,wBAAgB,gBAAgB,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CA2CnD"}
@@ -1,18 +0,0 @@
1
- import type { Workspace } from '@braidhq/core';
2
- export interface McpConfigFile {
3
- readonly mcpServers: Readonly<Record<string, McpServerEntry>>;
4
- }
5
- /**
6
- * Shape claude expects in `--mcp-config <file>`. Mirrors the spec's
7
- * Streamable HTTP transport: a single endpoint URL with optional headers.
8
- */
9
- interface McpStreamableHttpEntry {
10
- readonly type: 'http';
11
- readonly url: string;
12
- readonly headers?: Record<string, string>;
13
- }
14
- type McpServerEntry = McpStreamableHttpEntry;
15
- export declare function buildMcpConfig(workspace: Workspace): McpConfigFile;
16
- export declare function writeMcpConfigFile(workspace: Workspace, targetDir: string): Promise<string>;
17
- export {};
18
- //# sourceMappingURL=mcpConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcpConfig.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/agent/mcpConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAM9C,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAA;CAC9D;AAED;;;GAGG;AACH,UAAU,sBAAsB;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC1C;AAED,KAAK,cAAc,GAAG,sBAAsB,CAAA;AAE5C,wBAAgB,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,aAAa,CAMlE;AAED,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAMjG"}
@@ -1,47 +0,0 @@
1
- import { mkdir, writeFile } from 'node:fs/promises';
2
- import { dirname, join } from 'node:path';
3
- import process from 'node:process';
4
- export function buildMcpConfig(workspace) {
5
- const entries = {};
6
- for (const server of workspace.mcpServers) {
7
- entries[server.id] = toEntry(server);
8
- }
9
- return { mcpServers: entries };
10
- }
11
- export async function writeMcpConfigFile(workspace, targetDir) {
12
- const config = buildMcpConfig(workspace);
13
- const targetPath = join(targetDir, `.braid-mcp-${workspace.id}.json`);
14
- await mkdir(dirname(targetPath), { recursive: true });
15
- await writeFile(targetPath, `${JSON.stringify(config, null, 2)}\n`, 'utf-8');
16
- return targetPath;
17
- }
18
- function toEntry(server) {
19
- // `type: 'http'` is what the claude CLI's mcp-config schema currently
20
- // names the Streamable HTTP transport (it predates the rename in the MCP
21
- // 2025-06-18 spec). We use the new name in PRODUCT.md to match the spec;
22
- // we emit the legacy name here so claude understands.
23
- return {
24
- type: 'http',
25
- url: server.url,
26
- ...(server.headers ? { headers: resolveHeaders(server.headers) } : {}),
27
- };
28
- }
29
- /**
30
- * Replace `${VAR}` references in header values with the matching env var.
31
- * Throws if a referenced var is missing so the user gets a clear error at
32
- * config-write time rather than a confusing 401 from the MCP server.
33
- */
34
- function resolveHeaders(headers) {
35
- const out = {};
36
- for (const [name, value] of Object.entries(headers)) {
37
- out[name] = value.replace(/\$\{([A-Z_][A-Z0-9_]*)\}/g, (_match, varName) => {
38
- const resolved = process.env[varName];
39
- if (resolved === undefined) {
40
- throw new Error(`MCP header "${name}": environment variable "${varName}" is not set`);
41
- }
42
- return resolved;
43
- });
44
- }
45
- return out;
46
- }
47
- //# sourceMappingURL=mcpConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcpConfig.js","sourceRoot":"","sources":["../../../src/infrastructure/agent/mcpConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,OAAO,MAAM,cAAc,CAAA;AAkBlC,MAAM,UAAU,cAAc,CAAC,SAAoB;IACjD,MAAM,OAAO,GAAmC,EAAE,CAAA;IAClD,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;QAC1C,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACtC,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,CAAA;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,SAAoB,EAAE,SAAiB;IAC9E,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,SAAS,CAAC,EAAE,OAAO,CAAC,CAAA;IACrE,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACrD,MAAM,SAAS,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAC5E,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,OAAO,CAAC,MAAuB;IACtC,sEAAsE;IACtE,yEAAyE;IACzE,yEAAyE;IACzE,sDAAsD;IACtD,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvE,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,OAA+B;IACrD,MAAM,GAAG,GAA2B,EAAE,CAAA;IACtC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,OAAe,EAAE,EAAE;YACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACrC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,4BAA4B,OAAO,cAAc,CAAC,CAAA;YACvF,CAAC;YACD,OAAO,QAAQ,CAAA;QACjB,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -1,20 +0,0 @@
1
- export type LineHandler = (line: string) => void;
2
- /**
3
- * Splits a chunked text stream into newline-delimited lines, invoking the
4
- * handler exactly once per complete line. Partial lines are buffered until
5
- * the next chunk completes them. Call `flush()` after the source closes to
6
- * release any trailing line without a terminator.
7
- */
8
- export declare class LineBuffer {
9
- private readonly onLine;
10
- private buffer;
11
- constructor(onLine: LineHandler);
12
- append(chunk: string): void;
13
- flush(): void;
14
- }
15
- export interface StreamJsonEvent {
16
- readonly type: string;
17
- readonly [key: string]: unknown;
18
- }
19
- export declare function parseJsonLine(line: string): StreamJsonEvent | undefined;
20
- //# sourceMappingURL=streamJsonParser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"streamJsonParser.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/agent/streamJsonParser.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;AAEhD;;;;;GAKG;AACH,qBAAa,UAAU;IAGT,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,MAAM,CAAK;gBAEU,MAAM,EAAE,WAAW;IAEhD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAY3B,KAAK,IAAI,IAAI;CAOd;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAChC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAWvE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"streamJsonParser.js","sourceRoot":"","sources":["../../../src/infrastructure/agent/streamJsonParser.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,OAAO,UAAU;IAGQ;IAFrB,MAAM,GAAG,EAAE,CAAA;IAEnB,YAA6B,MAAmB;QAAnB,WAAM,GAAN,MAAM,CAAa;IAAG,CAAC;IAEpD,MAAM,CAAC,KAAa;QAClB,IAAI,CAAC,MAAM,IAAI,KAAK,CAAA;QACpB,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC5C,OAAO,YAAY,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;YAC/C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAA;YACjD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACnB,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,OAAM;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAA;QAC7B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACxB,CAAC;CACF;AAOD,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;IAC3B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QACtB,OAAO,SAAS,CAAA;IAClB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAoB,CAAA;QACrD,OAAO,MAAM,CAAA;IACf,CAAC;IACD,MAAM,CAAC;QACL,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
@@ -1,26 +0,0 @@
1
- import type { SkillEvent } from '@braidhq/schema';
2
- import type { ChildProcess } from 'node:child_process';
3
- interface RawEvent {
4
- readonly type: string;
5
- readonly [key: string]: unknown;
6
- }
7
- /**
8
- * Wires a child's stdout / stderr to a single SkillEvent callback.
9
- * Returns `flush` so callers can drain the final un-terminated line on
10
- * `close`.
11
- */
12
- export declare function attachOutputBuffers(child: ChildProcess, onEvent: (event: SkillEvent) => void, now: () => string): {
13
- flush: () => void;
14
- };
15
- /**
16
- * Maps a single `claude --output-format stream-json` line into zero or more
17
- * `SkillEvent`s. Claude emits these envelope shapes today: `system` (init
18
- * meta, ignored except for `session_id`), `assistant` (text / tool_use
19
- * content parts), `user` (echoed tool_result, only `is_error` surfaced),
20
- * `rate_limit_*` (ignored), `result` (final outcome). Legacy flat shapes
21
- * (`text`, `tool_use`, `artifact-written`, `error`) are kept for tests and
22
- * older tools.
23
- */
24
- export declare function mapSubprocessEvents(raw: RawEvent, now: string): SkillEvent[];
25
- export {};
26
- //# sourceMappingURL=subprocessEventStream.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"subprocessEventStream.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/agent/subprocessEventStream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAItD,UAAU,QAAQ;IAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE;AAG7E;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACpC,GAAG,EAAE,MAAM,MAAM,GAChB;IAAE,KAAK,EAAE,MAAM,IAAI,CAAA;CAAE,CAyBvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU,EAAE,CAyE5E"}
@@ -1,112 +0,0 @@
1
- import { SkillEvent as SkillEventSchema } from '@braidhq/schema';
2
- import { LineBuffer, parseJsonLine } from './streamJsonParser.js';
3
- /**
4
- * Wires a child's stdout / stderr to a single SkillEvent callback.
5
- * Returns `flush` so callers can drain the final un-terminated line on
6
- * `close`.
7
- */
8
- export function attachOutputBuffers(child, onEvent, now) {
9
- const stdout = new LineBuffer((line) => {
10
- const parsed = parseJsonLine(line);
11
- if (parsed === undefined)
12
- return;
13
- for (const event of mapSubprocessEvents(parsed, now()))
14
- onEvent(event);
15
- });
16
- // stderr is wrapped verbatim into a `[stderr]` message event so it
17
- // shows up in the transcript alongside model output.
18
- const stderr = new LineBuffer((line) => {
19
- onEvent(SkillEventSchema.parse({ type: 'message', text: `[stderr] ${line}` }));
20
- });
21
- child.stdout?.setEncoding('utf-8');
22
- child.stdout?.on('data', (chunk) => stdout.append(chunk));
23
- child.stderr?.setEncoding('utf-8');
24
- child.stderr?.on('data', (chunk) => stderr.append(chunk));
25
- return {
26
- flush: () => {
27
- stdout.flush();
28
- stderr.flush();
29
- },
30
- };
31
- }
32
- /**
33
- * Maps a single `claude --output-format stream-json` line into zero or more
34
- * `SkillEvent`s. Claude emits these envelope shapes today: `system` (init
35
- * meta, ignored except for `session_id`), `assistant` (text / tool_use
36
- * content parts), `user` (echoed tool_result, only `is_error` surfaced),
37
- * `rate_limit_*` (ignored), `result` (final outcome). Legacy flat shapes
38
- * (`text`, `tool_use`, `artifact-written`, `error`) are kept for tests and
39
- * older tools.
40
- */
41
- export function mapSubprocessEvents(raw, now) {
42
- const out = [];
43
- if (raw.type === 'system' && raw.subtype === 'init' && typeof raw.session_id === 'string') {
44
- out.push(SkillEventSchema.parse({ type: 'session-started', sessionId: raw.session_id }));
45
- return out;
46
- }
47
- if (raw.type === 'assistant') {
48
- for (const part of readContent(raw)) {
49
- if (part?.type === 'text' && typeof part.text === 'string' && part.text.length > 0) {
50
- out.push(SkillEventSchema.parse({ type: 'message', text: part.text }));
51
- }
52
- else if (part?.type === 'tool_use' && typeof part.name === 'string') {
53
- const event = {
54
- type: 'tool-call',
55
- tool: part.name,
56
- args: part.input ?? null,
57
- };
58
- if (typeof part.id === 'string' && part.id.length > 0)
59
- event.toolCallId = part.id;
60
- out.push(SkillEventSchema.parse(event));
61
- }
62
- }
63
- return out;
64
- }
65
- if (raw.type === 'user') {
66
- for (const part of readContent(raw)) {
67
- if (part?.type === 'tool_result' && typeof part.tool_use_id === 'string') {
68
- const output = typeof part.content === 'string'
69
- ? part.content
70
- : JSON.stringify(part.content ?? '');
71
- out.push(SkillEventSchema.parse({
72
- type: 'tool-result',
73
- toolCallId: part.tool_use_id,
74
- output,
75
- isError: part.is_error === true,
76
- }));
77
- }
78
- }
79
- return out;
80
- }
81
- if (raw.type === 'result') {
82
- const isError = raw.is_error === true;
83
- const text = typeof raw.result === 'string' ? raw.result : '';
84
- if (isError)
85
- out.push(SkillEventSchema.parse({ type: 'error', message: text || 'skill run failed', at: now }));
86
- else if (text.length > 0)
87
- out.push(SkillEventSchema.parse({ type: 'message', text }));
88
- return out;
89
- }
90
- if (raw.type === 'text' && typeof raw.text === 'string')
91
- return [SkillEventSchema.parse({ type: 'message', text: raw.text })];
92
- if (raw.type === 'tool_use' && typeof raw.name === 'string')
93
- return [SkillEventSchema.parse({ type: 'tool-call', tool: raw.name, args: raw.input ?? null })];
94
- if (raw.type === 'artifact-written' && typeof raw.artifactKind === 'string') {
95
- return [SkillEventSchema.parse({
96
- type: 'artifact-written',
97
- artifactKind: raw.artifactKind,
98
- artifactId: raw.artifactId,
99
- path: raw.path,
100
- })];
101
- }
102
- if (raw.type === 'error' && typeof raw.message === 'string')
103
- return [SkillEventSchema.parse({ type: 'error', message: raw.message, at: now })];
104
- return out;
105
- }
106
- function readContent(raw) {
107
- const message = raw.message;
108
- if (!message || !Array.isArray(message.content))
109
- return [];
110
- return message.content;
111
- }
112
- //# sourceMappingURL=subprocessEventStream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"subprocessEventStream.js","sourceRoot":"","sources":["../../../src/infrastructure/agent/subprocessEventStream.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { AbsolutePath, ClarifyFilter, ClarifyTicketId, WorkspaceId } from '@braidhq/schema';
2
- import { ClarifyTicket, type ClarifyTicketRepository } from '@braidhq/core';
3
- export interface FsClarifyTicketRepositoryOptions {
4
- readonly workspaceRoots: () => Promise<ReadonlyMap<WorkspaceId, AbsolutePath>>;
5
- }
6
- export declare class FsClarifyTicketRepository implements ClarifyTicketRepository {
7
- private readonly base;
8
- constructor(options: FsClarifyTicketRepositoryOptions);
9
- list(filter?: ClarifyFilter): Promise<ClarifyTicket[]>;
10
- load(clarifyTicketId: ClarifyTicketId): Promise<ClarifyTicket>;
11
- save(ticket: ClarifyTicket): Promise<void>;
12
- }
13
- //# sourceMappingURL=FsClarifyTicketRepository.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FsClarifyTicketRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/fs/FsClarifyTicketRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,eAAe,EACf,WAAW,EACZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,aAAa,EAAE,KAAK,uBAAuB,EAAY,MAAM,eAAe,CAAA;AAKrF,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;CAC/E;AAED,qBAAa,yBAA0B,YAAW,uBAAuB;IACvE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2F;gBAEpG,OAAO,EAAE,gCAAgC;IAgB/C,IAAI,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAQ5D,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC;IAI9D,IAAI,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3C"}
@@ -1,33 +0,0 @@
1
- import { ClarifyTicket, paginate } from '@braidhq/core';
2
- import { ClarifyTicket as ClarifyTicketSchema } from '@braidhq/schema';
3
- import { FsStatusedJsonRepository } from './FsStatusedJsonRepository.js';
4
- import { CLARIFY_STATUSES, clarifyDir } from './paths.js';
5
- export class FsClarifyTicketRepository {
6
- base;
7
- constructor(options) {
8
- this.base = new FsStatusedJsonRepository({
9
- entityName: 'ClarifyTicket',
10
- statuses: CLARIFY_STATUSES,
11
- dirFor: clarifyDir,
12
- parse: raw => new ClarifyTicket(ClarifyTicketSchema.parse(raw)),
13
- serialize: entity => entity.toData(),
14
- idOf: entity => entity.id,
15
- statusOf: entity => entity.status,
16
- workspaceIdOf: entity => entity.workspaceId,
17
- }, options.workspaceRoots);
18
- }
19
- async list(filter) {
20
- const tickets = await this.base.list({
21
- ...(filter?.workspaceId !== undefined ? { workspaceId: filter.workspaceId } : {}),
22
- ...(filter?.statuses !== undefined ? { statuses: filter.statuses } : {}),
23
- });
24
- return paginate(tickets, filter?.limit, filter?.offset);
25
- }
26
- load(clarifyTicketId) {
27
- return this.base.load(clarifyTicketId);
28
- }
29
- save(ticket) {
30
- return this.base.save(ticket);
31
- }
32
- }
33
- //# sourceMappingURL=FsClarifyTicketRepository.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FsClarifyTicketRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/fs/FsClarifyTicketRepository.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAgC,QAAQ,EAAE,MAAM,eAAe,CAAA;AACrF,OAAO,EAAE,aAAa,IAAI,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAMzD,MAAM,OAAO,yBAAyB;IACnB,IAAI,CAA2F;IAEhH,YAAY,OAAyC;QACnD,IAAI,CAAC,IAAI,GAAG,IAAI,wBAAwB,CACtC;YACE,UAAU,EAAE,eAAe;YAC3B,QAAQ,EAAE,gBAAgB;YAC1B,MAAM,EAAE,UAAU;YAClB,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/D,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE;YACpC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;YACzB,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM;YACjC,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW;SAC5C,EACD,OAAO,CAAC,cAAc,CACvB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAsB;QAC/B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACnC,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,MAAM,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzE,CAAC,CAAA;QACF,OAAO,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACzD,CAAC;IAED,IAAI,CAAC,eAAgC;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,CAAC,MAAqB;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;CACF"}
@@ -1,13 +0,0 @@
1
- import type { AbsolutePath, Decision, DecisionFilter, DecisionId, WorkspaceId } from '@braidhq/schema';
2
- import { type DecisionRepository } from '@braidhq/core';
3
- export interface FsDecisionRepositoryOptions {
4
- readonly workspaceRoots: () => Promise<ReadonlyMap<WorkspaceId, AbsolutePath>>;
5
- }
6
- export declare class FsDecisionRepository implements DecisionRepository {
7
- private readonly options;
8
- constructor(options: FsDecisionRepositoryOptions);
9
- append(decision: Decision): Promise<void>;
10
- list(filter?: DecisionFilter): Promise<Decision[]>;
11
- load(decisionId: DecisionId): Promise<Decision>;
12
- }
13
- //# sourceMappingURL=FsDecisionRepository.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FsDecisionRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/fs/FsDecisionRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAEtG,OAAO,EAAE,KAAK,kBAAkB,EAAiB,MAAM,eAAe,CAAA;AAKtE,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;CAC/E;AAED,qBAAa,oBAAqB,YAAW,kBAAkB;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,2BAA2B;IAE3D,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IASzC,IAAI,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAuBlD,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;CAetD"}
@@ -1,56 +0,0 @@
1
- import { join } from 'node:path';
2
- import { NotFoundError } from '@braidhq/core';
3
- import { Decision as DecisionSchema } from '@braidhq/schema';
4
- import { listJsonFiles, readJsonFile, writeJsonFile } from './jsonFileStore.js';
5
- import { decisionsDir } from './paths.js';
6
- export class FsDecisionRepository {
7
- options;
8
- constructor(options) {
9
- this.options = options;
10
- }
11
- async append(decision) {
12
- const roots = await this.options.workspaceRoots();
13
- const root = roots.get(decision.workspaceId);
14
- if (!root)
15
- throw new NotFoundError(`Workspace "${decision.workspaceId}" not registered`);
16
- const targetPath = join(decisionsDir(root), `${decision.id}.json`);
17
- await writeJsonFile(targetPath, decision);
18
- }
19
- async list(filter) {
20
- const roots = await this.options.workspaceRoots();
21
- const candidateWorkspaces = filter?.workspaceId
22
- ? new Map([[filter.workspaceId, roots.get(filter.workspaceId)]].filter(([, path]) => path))
23
- : roots;
24
- let decisions = [];
25
- for (const [, root] of candidateWorkspaces) {
26
- const files = await listJsonFiles(decisionsDir(root));
27
- for (const file of files) {
28
- const data = await readJsonFile(file);
29
- decisions.push(DecisionSchema.parse(data));
30
- }
31
- }
32
- if (filter?.actions && filter.actions.length > 0) {
33
- const actions = filter.actions;
34
- decisions = decisions.filter(decision => actions.includes(decision.action));
35
- }
36
- const start = filter?.offset ?? 0;
37
- const end = filter?.limit !== undefined ? start + filter.limit : undefined;
38
- return decisions.slice(start, end);
39
- }
40
- async load(decisionId) {
41
- const roots = await this.options.workspaceRoots();
42
- for (const [, root] of roots) {
43
- const path = join(decisionsDir(root), `${decisionId}.json`);
44
- try {
45
- const data = await readJsonFile(path);
46
- return DecisionSchema.parse(data);
47
- }
48
- catch (error) {
49
- if (error.code !== 'ENOENT')
50
- throw error;
51
- }
52
- }
53
- throw new NotFoundError(`Decision "${decisionId}" not found`);
54
- }
55
- }
56
- //# sourceMappingURL=FsDecisionRepository.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FsDecisionRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/fs/FsDecisionRepository.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FsProposalRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/fs/FsProposalRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC5F,OAAO,EAAY,QAAQ,EAAE,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAK3E,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;CAC/E;AAED,qBAAa,oBAAqB,YAAW,kBAAkB;IAC7D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkF;gBAE3F,OAAO,EAAE,2BAA2B;IAgB1C,IAAI,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAYxD,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI/C,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAG9C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FsProposalRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/fs/FsProposalRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAA2B,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAM5D,MAAM,OAAO,oBAAoB;IACd,IAAI,CAAkF;IAEvG,YAAY,OAAoC;QAC9C,IAAI,CAAC,IAAI,GAAG,IAAI,wBAAwB,CACtC;YACE,UAAU,EAAE,UAAU;YACtB,QAAQ,EAAE,iBAAiB;YAC3B,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACrD,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE;YACpC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;YACzB,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM;YACjC,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW;SAC5C,EACD,OAAO,CAAC,cAAc,CACvB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAuB;QAChC,IAAI,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACnC,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,MAAM,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzE,CAAC,CAAA;QACF,IAAI,MAAM,EAAE,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAA;YACjC,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAA;QACjF,CAAC;QACD,OAAO,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC3D,CAAC;IAED,IAAI,CAAC,UAAsB;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACnC,CAAC;IAED,IAAI,CAAC,QAAkB;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACjC,CAAC;IAED,MAAM,CAAC,UAAsB;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACrC,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FsRunRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/fs/FsRunRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAOtF;;;;;;;;;;GAUG;AACH,qBAAa,eAAgB,YAAW,aAAa;IAC7C,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAOlE,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtF,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,SAAS,EAAE,CAAC;IAyB9D,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC;CAiBvF;AAqBD,YAAY,EAAE,YAAY,EAAE,CAAA"}