@bevel-software/platform-core-backend 0.35.0 → 0.36.1

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 (827) hide show
  1. package/agent-guide/directory-structure.md +1 -1
  2. package/agent-guide/onboarding.md +111 -0
  3. package/agent-guide/start-here.md +1 -0
  4. package/agent-guide/tool-manuals.md +1 -0
  5. package/dist/core/catalog-cache-invalidation.d.ts +2 -2
  6. package/dist/core/catalog-cache-invalidation.d.ts.map +1 -1
  7. package/dist/core/compose-embed.d.ts +2 -2
  8. package/dist/core/compose-embed.d.ts.map +1 -1
  9. package/dist/core/compose-embed.js +1 -1
  10. package/dist/core/compose-embed.js.map +1 -1
  11. package/dist/core/core-ports.d.ts +19 -4
  12. package/dist/core/core-ports.d.ts.map +1 -1
  13. package/dist/core/core-ports.js.map +1 -1
  14. package/dist/core/create-core-server.d.ts.map +1 -1
  15. package/dist/core/create-core-server.js +26 -24
  16. package/dist/core/create-core-server.js.map +1 -1
  17. package/dist/core/create-core-services.d.ts +19 -13
  18. package/dist/core/create-core-services.d.ts.map +1 -1
  19. package/dist/core/create-core-services.js +68 -56
  20. package/dist/core/create-core-services.js.map +1 -1
  21. package/dist/core/lifecycle.d.ts +4 -4
  22. package/dist/core/lifecycle.d.ts.map +1 -1
  23. package/dist/core/lifecycle.js +5 -5
  24. package/dist/core/lifecycle.js.map +1 -1
  25. package/dist/core-config.d.ts +2 -2
  26. package/dist/core-config.js +3 -3
  27. package/dist/core-config.js.map +1 -1
  28. package/dist/index.d.ts +4 -4
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +3 -3
  31. package/dist/index.js.map +1 -1
  32. package/dist/modules/access/access-control.service.js +1 -1
  33. package/dist/modules/access/access-control.service.js.map +1 -1
  34. package/dist/modules/access/access-declarations.d.ts +2 -2
  35. package/dist/modules/access/access-declarations.d.ts.map +1 -1
  36. package/dist/modules/access/access-declarations.js +2 -2
  37. package/dist/modules/access/access-declarations.js.map +1 -1
  38. package/dist/modules/access/access-mutation.service.d.ts +2 -2
  39. package/dist/modules/access/access-mutation.service.d.ts.map +1 -1
  40. package/dist/modules/access/access-mutation.service.js +2 -2
  41. package/dist/modules/access/access-mutation.service.js.map +1 -1
  42. package/dist/modules/access/access-requests.routes.d.ts +2 -2
  43. package/dist/modules/access/access-requests.routes.d.ts.map +1 -1
  44. package/dist/modules/access/access-requests.routes.js +5 -5
  45. package/dist/modules/access/access-requests.routes.js.map +1 -1
  46. package/dist/modules/access/access-requests.service.d.ts +2 -2
  47. package/dist/modules/access/access-requests.service.d.ts.map +1 -1
  48. package/dist/modules/access/access-requests.service.js +11 -11
  49. package/dist/modules/access/access-requests.service.js.map +1 -1
  50. package/dist/modules/access/access.routes.d.ts +2 -2
  51. package/dist/modules/access/access.routes.d.ts.map +1 -1
  52. package/dist/modules/access/access.routes.js +9 -9
  53. package/dist/modules/access/access.routes.js.map +1 -1
  54. package/dist/modules/access/admin-locked-commit.d.ts +5 -5
  55. package/dist/modules/access/admin-locked-commit.d.ts.map +1 -1
  56. package/dist/modules/access/admin-locked-commit.js +7 -7
  57. package/dist/modules/access/admin-locked-commit.js.map +1 -1
  58. package/dist/modules/access/admin-route-helpers.d.ts +1 -1
  59. package/dist/modules/access/admin-route-helpers.js +5 -5
  60. package/dist/modules/access/admin-route-helpers.js.map +1 -1
  61. package/dist/modules/access/change-read-gate.d.ts +1 -1
  62. package/dist/modules/access/change-read-gate.js +1 -1
  63. package/dist/modules/access/groups-admin.service.d.ts +7 -7
  64. package/dist/modules/access/groups-admin.service.d.ts.map +1 -1
  65. package/dist/modules/access/groups-admin.service.js +6 -6
  66. package/dist/modules/access/groups-admin.service.js.map +1 -1
  67. package/dist/modules/access/reference-scan.d.ts +1 -1
  68. package/dist/modules/access/roles-admin.service.d.ts +7 -7
  69. package/dist/modules/access/roles-admin.service.d.ts.map +1 -1
  70. package/dist/modules/access/roles-admin.service.js +8 -8
  71. package/dist/modules/access/roles-admin.service.js.map +1 -1
  72. package/dist/modules/access/synced-groups-committer.d.ts +4 -4
  73. package/dist/modules/access/synced-groups-committer.d.ts.map +1 -1
  74. package/dist/modules/access/synced-groups-committer.js +7 -7
  75. package/dist/modules/access/synced-groups-committer.js.map +1 -1
  76. package/dist/modules/access/user-access-removal.service.d.ts +6 -6
  77. package/dist/modules/access/user-access-removal.service.d.ts.map +1 -1
  78. package/dist/modules/access/user-access-removal.service.js +4 -4
  79. package/dist/modules/access/user-access-removal.service.js.map +1 -1
  80. package/dist/modules/access-model/access-errors.d.ts +4 -4
  81. package/dist/modules/access-model/access-errors.d.ts.map +1 -1
  82. package/dist/modules/access-model/access-errors.js +4 -4
  83. package/dist/modules/access-model/access-errors.js.map +1 -1
  84. package/dist/modules/access-model/access-grammar.d.ts +1 -1
  85. package/dist/modules/access-model/access-grammar.js +4 -4
  86. package/dist/modules/access-model/change-gate.d.ts +1 -1
  87. package/dist/modules/access-model/change-gate.js +1 -1
  88. package/dist/modules/access-model/roles-yaml-guard.d.ts +4 -4
  89. package/dist/modules/access-model/roles-yaml-guard.d.ts.map +1 -1
  90. package/dist/modules/access-model/roles-yaml-guard.js +4 -4
  91. package/dist/modules/access-model/roles-yaml-guard.js.map +1 -1
  92. package/dist/modules/agent-guide/agent-guide.d.ts +19 -14
  93. package/dist/modules/agent-guide/agent-guide.d.ts.map +1 -1
  94. package/dist/modules/agent-guide/agent-guide.js +42 -18
  95. package/dist/modules/agent-guide/agent-guide.js.map +1 -1
  96. package/dist/modules/agent-guide/guide-budget.d.ts +5 -2
  97. package/dist/modules/agent-guide/guide-budget.d.ts.map +1 -1
  98. package/dist/modules/agent-guide/guide-budget.js +6 -2
  99. package/dist/modules/agent-guide/guide-budget.js.map +1 -1
  100. package/dist/modules/agent-instructions/agent-instructions.routes.d.ts +12 -5
  101. package/dist/modules/agent-instructions/agent-instructions.routes.d.ts.map +1 -1
  102. package/dist/modules/agent-instructions/agent-instructions.routes.js +13 -6
  103. package/dist/modules/agent-instructions/agent-instructions.routes.js.map +1 -1
  104. package/dist/modules/agent-instructions/compose.d.ts +15 -8
  105. package/dist/modules/agent-instructions/compose.d.ts.map +1 -1
  106. package/dist/modules/agent-instructions/compose.js +24 -10
  107. package/dist/modules/agent-instructions/compose.js.map +1 -1
  108. package/dist/modules/agent-instructions/shared-file-rules.d.ts +14 -6
  109. package/dist/modules/agent-instructions/shared-file-rules.d.ts.map +1 -1
  110. package/dist/modules/agent-instructions/shared-file-rules.js +51 -11
  111. package/dist/modules/agent-instructions/shared-file-rules.js.map +1 -1
  112. package/dist/modules/auth/account-erasure.service.d.ts +36 -7
  113. package/dist/modules/auth/account-erasure.service.d.ts.map +1 -1
  114. package/dist/modules/auth/account-erasure.service.js +30 -10
  115. package/dist/modules/auth/account-erasure.service.js.map +1 -1
  116. package/dist/modules/auth/account-hooks.d.ts +20 -0
  117. package/dist/modules/auth/account-hooks.d.ts.map +1 -1
  118. package/dist/modules/auth/account-hooks.js +10 -0
  119. package/dist/modules/auth/account-hooks.js.map +1 -1
  120. package/dist/modules/auth/account-switch-lock.js +2 -2
  121. package/dist/modules/auth/account-switch-lock.js.map +1 -1
  122. package/dist/modules/auth/account.routes.d.ts +7 -2
  123. package/dist/modules/auth/account.routes.d.ts.map +1 -1
  124. package/dist/modules/auth/account.routes.js +23 -4
  125. package/dist/modules/auth/account.routes.js.map +1 -1
  126. package/dist/modules/auth/auth.service.d.ts +1 -1
  127. package/dist/modules/auth/auth.service.js +4 -4
  128. package/dist/modules/auth/auth.service.js.map +1 -1
  129. package/dist/modules/auth/index.d.ts +1 -0
  130. package/dist/modules/auth/index.d.ts.map +1 -1
  131. package/dist/modules/database/core-schema.js +2 -2
  132. package/dist/modules/database/core-schema.js.map +1 -1
  133. package/dist/modules/diff/diff.routes.d.ts +3 -3
  134. package/dist/modules/diff/diff.routes.d.ts.map +1 -1
  135. package/dist/modules/diff/diff.routes.js +7 -7
  136. package/dist/modules/diff/diff.routes.js.map +1 -1
  137. package/dist/modules/embed/embed.routes.js +1 -1
  138. package/dist/modules/embed/embed.routes.js.map +1 -1
  139. package/dist/modules/embed/embed.service.d.ts +4 -4
  140. package/dist/modules/embed/embed.service.d.ts.map +1 -1
  141. package/dist/modules/embed/embed.service.js +18 -18
  142. package/dist/modules/embed/embed.service.js.map +1 -1
  143. package/dist/modules/kb-fs/branch-name.js +8 -8
  144. package/dist/modules/kb-fs/branch-name.js.map +1 -1
  145. package/dist/modules/kb-fs/file-change-notifier.d.ts +2 -2
  146. package/dist/modules/kb-fs/locking-filesystem.d.ts +9 -9
  147. package/dist/modules/kb-fs/locking-filesystem.d.ts.map +1 -1
  148. package/dist/modules/kb-fs/locking-filesystem.js +27 -27
  149. package/dist/modules/kb-fs/locking-filesystem.js.map +1 -1
  150. package/dist/modules/kb-fs/repo-path.js +5 -5
  151. package/dist/modules/kb-fs/repo-path.js.map +1 -1
  152. package/dist/modules/kb-fs/tmp-ref.d.ts +2 -2
  153. package/dist/modules/kb-fs/tmp-ref.d.ts.map +1 -1
  154. package/dist/modules/kb-fs/tmp-ref.js +2 -2
  155. package/dist/modules/kb-fs/tmp-ref.js.map +1 -1
  156. package/dist/modules/kb-sync/index.d.ts +1 -1
  157. package/dist/modules/kb-sync/index.d.ts.map +1 -1
  158. package/dist/modules/kb-sync/kb-sync.interface.d.ts +3 -3
  159. package/dist/modules/kb-sync/kb-sync.interface.d.ts.map +1 -1
  160. package/dist/modules/kb-sync/kb-sync.service.d.ts +3 -3
  161. package/dist/modules/kb-sync/kb-sync.service.d.ts.map +1 -1
  162. package/dist/modules/kb-sync/kb-sync.service.js +10 -10
  163. package/dist/modules/kb-sync/kb-sync.service.js.map +1 -1
  164. package/dist/modules/mcp/mcp.service.d.ts +11 -4
  165. package/dist/modules/mcp/mcp.service.d.ts.map +1 -1
  166. package/dist/modules/mcp/mcp.service.js +75 -19
  167. package/dist/modules/mcp/mcp.service.js.map +1 -1
  168. package/dist/modules/onboarding/onboarding.contract.d.ts +1 -1
  169. package/dist/modules/onboarding/onboarding.routes.js +2 -2
  170. package/dist/modules/onboarding/onboarding.routes.js.map +1 -1
  171. package/dist/modules/onboarding/starter-pack.service.d.ts +4 -4
  172. package/dist/modules/onboarding/starter-pack.service.d.ts.map +1 -1
  173. package/dist/modules/onboarding/starter-pack.service.js +4 -4
  174. package/dist/modules/onboarding/starter-pack.service.js.map +1 -1
  175. package/dist/modules/plugins/join-request-jobs.service.d.ts +2 -2
  176. package/dist/modules/plugins/join-request-jobs.service.d.ts.map +1 -1
  177. package/dist/modules/plugins/join-request-jobs.service.js +7 -7
  178. package/dist/modules/plugins/join-request-jobs.service.js.map +1 -1
  179. package/dist/modules/plugins/join-requests.service.d.ts +3 -3
  180. package/dist/modules/plugins/join-requests.service.d.ts.map +1 -1
  181. package/dist/modules/plugins/join-requests.service.js +5 -5
  182. package/dist/modules/plugins/join-requests.service.js.map +1 -1
  183. package/dist/modules/plugins/plugin-rename.service.js +1 -1
  184. package/dist/modules/plugins/plugin-rename.service.js.map +1 -1
  185. package/dist/modules/plugins/plugins.routes.d.ts +2 -2
  186. package/dist/modules/plugins/plugins.routes.d.ts.map +1 -1
  187. package/dist/modules/plugins/plugins.routes.js +8 -8
  188. package/dist/modules/plugins/plugins.routes.js.map +1 -1
  189. package/dist/modules/secrets-vault/db-secrets-vault.service.d.ts +77 -2
  190. package/dist/modules/secrets-vault/db-secrets-vault.service.d.ts.map +1 -1
  191. package/dist/modules/secrets-vault/db-secrets-vault.service.js +479 -53
  192. package/dist/modules/secrets-vault/db-secrets-vault.service.js.map +1 -1
  193. package/dist/modules/secrets-vault/index.d.ts +2 -1
  194. package/dist/modules/secrets-vault/index.d.ts.map +1 -1
  195. package/dist/modules/secrets-vault/index.js +1 -0
  196. package/dist/modules/secrets-vault/index.js.map +1 -1
  197. package/dist/modules/secrets-vault/managed-sign-in-erasure.d.ts +36 -0
  198. package/dist/modules/secrets-vault/managed-sign-in-erasure.d.ts.map +1 -0
  199. package/dist/modules/secrets-vault/managed-sign-in-erasure.js +37 -0
  200. package/dist/modules/secrets-vault/managed-sign-in-erasure.js.map +1 -0
  201. package/dist/modules/secrets-vault/secrets-vault.contract.d.ts +152 -0
  202. package/dist/modules/secrets-vault/secrets-vault.contract.d.ts.map +1 -1
  203. package/dist/modules/secrets-vault/secrets-vault.contract.js.map +1 -1
  204. package/dist/modules/secrets-vault/secrets-vault.routes.d.ts +7 -1
  205. package/dist/modules/secrets-vault/secrets-vault.routes.d.ts.map +1 -1
  206. package/dist/modules/secrets-vault/secrets-vault.routes.js +125 -10
  207. package/dist/modules/secrets-vault/secrets-vault.routes.js.map +1 -1
  208. package/dist/modules/settings/connection-check.js +1 -1
  209. package/dist/modules/settings/connection-check.js.map +1 -1
  210. package/dist/modules/settings/deployment-settings.service.js +1 -1
  211. package/dist/modules/settings/git-root-folders.js +1 -1
  212. package/dist/modules/settings/git-root-folders.js.map +1 -1
  213. package/dist/modules/settings/setup.routes.d.ts +1 -1
  214. package/dist/modules/settings/setup.routes.js +1 -1
  215. package/dist/modules/skills/pending-skills.service.d.ts +3 -3
  216. package/dist/modules/skills/pending-skills.service.d.ts.map +1 -1
  217. package/dist/modules/skills/pending-skills.service.js +4 -4
  218. package/dist/modules/skills/pending-skills.service.js.map +1 -1
  219. package/dist/modules/skills/skill-access-requests.routes.d.ts +2 -2
  220. package/dist/modules/skills/skill-access-requests.routes.d.ts.map +1 -1
  221. package/dist/modules/skills/skill-access-requests.routes.js +5 -5
  222. package/dist/modules/skills/skill-access-requests.routes.js.map +1 -1
  223. package/dist/modules/tool-helpers/tool-context.d.ts +4 -4
  224. package/dist/modules/tool-helpers/tool-context.d.ts.map +1 -1
  225. package/dist/modules/tool-helpers/tool-context.js +2 -2
  226. package/dist/modules/tool-helpers/tool-context.js.map +1 -1
  227. package/dist/modules/tool-helpers/tool-handler.js +2 -2
  228. package/dist/modules/tool-helpers/tool-handler.js.map +1 -1
  229. package/dist/modules/tool-helpers/tool.contract.d.ts +4 -4
  230. package/dist/modules/tool-helpers/tool.contract.d.ts.map +1 -1
  231. package/dist/modules/tool-manuals/mcp-server-edit.service.js +1 -1
  232. package/dist/modules/tool-manuals/mcp-server-edit.service.js.map +1 -1
  233. package/dist/modules/tool-manuals/pending-tools.service.d.ts +3 -3
  234. package/dist/modules/tool-manuals/pending-tools.service.d.ts.map +1 -1
  235. package/dist/modules/tool-manuals/pending-tools.service.js +4 -4
  236. package/dist/modules/tool-manuals/pending-tools.service.js.map +1 -1
  237. package/dist/modules/tool-manuals/tool-delete.service.js +1 -1
  238. package/dist/modules/tool-manuals/tool-delete.service.js.map +1 -1
  239. package/dist/modules/tool-manuals/tool-manuals.contract.d.ts +43 -3
  240. package/dist/modules/tool-manuals/tool-manuals.contract.d.ts.map +1 -1
  241. package/dist/modules/tool-manuals/tool-manuals.service.d.ts +6 -0
  242. package/dist/modules/tool-manuals/tool-manuals.service.d.ts.map +1 -1
  243. package/dist/modules/tool-manuals/tool-manuals.service.js +51 -5
  244. package/dist/modules/tool-manuals/tool-manuals.service.js.map +1 -1
  245. package/dist/modules/tool-manuals/tool-manuals.tools.d.ts +3 -0
  246. package/dist/modules/tool-manuals/tool-manuals.tools.d.ts.map +1 -1
  247. package/dist/modules/tool-manuals/tool-manuals.tools.js +36 -15
  248. package/dist/modules/tool-manuals/tool-manuals.tools.js.map +1 -1
  249. package/dist/modules/version-control/agent-tools/change-request-read-shape.d.ts.map +1 -0
  250. package/dist/modules/version-control/agent-tools/change-request-read-shape.js.map +1 -0
  251. package/dist/modules/version-control/agent-tools/change-request-read.tools.d.ts.map +1 -0
  252. package/dist/modules/{workflow → version-control}/agent-tools/change-request-read.tools.js +2 -2
  253. package/dist/modules/version-control/agent-tools/change-request-read.tools.js.map +1 -0
  254. package/dist/modules/version-control/agent-tools/change-request-summary.d.ts.map +1 -0
  255. package/dist/modules/version-control/agent-tools/change-request-summary.js.map +1 -0
  256. package/dist/modules/{workflow/agent-tools/workflow.tools.d.ts → version-control/agent-tools/version-control.tools.d.ts} +4 -4
  257. package/dist/modules/version-control/agent-tools/version-control.tools.d.ts.map +1 -0
  258. package/dist/modules/{workflow/agent-tools/workflow.tools.js → version-control/agent-tools/version-control.tools.js} +31 -31
  259. package/dist/modules/version-control/agent-tools/version-control.tools.js.map +1 -0
  260. package/dist/modules/{workflow → version-control}/change-request-hooks.d.ts +1 -1
  261. package/dist/modules/version-control/change-request-hooks.d.ts.map +1 -0
  262. package/dist/modules/version-control/change-request-hooks.js.map +1 -0
  263. package/dist/modules/version-control/change-request-review/approval-lock.d.ts.map +1 -0
  264. package/dist/modules/version-control/change-request-review/approval-lock.js.map +1 -0
  265. package/dist/modules/{workflow/review-workflow/review-workflow.interface.d.ts → version-control/change-request-review/change-request-review.interface.d.ts} +2 -2
  266. package/dist/modules/version-control/change-request-review/change-request-review.interface.d.ts.map +1 -0
  267. package/dist/modules/version-control/change-request-review/change-request-review.interface.js +2 -0
  268. package/dist/modules/version-control/change-request-review/change-request-review.interface.js.map +1 -0
  269. package/dist/modules/{workflow/review-workflow/review-workflow.service.d.ts → version-control/change-request-review/change-request-review.service.d.ts} +3 -3
  270. package/dist/modules/version-control/change-request-review/change-request-review.service.d.ts.map +1 -0
  271. package/dist/modules/{workflow/review-workflow/review-workflow.service.js → version-control/change-request-review/change-request-review.service.js} +26 -26
  272. package/dist/modules/version-control/change-request-review/change-request-review.service.js.map +1 -0
  273. package/dist/modules/{workflow → version-control}/event-bus.d.ts +8 -8
  274. package/dist/modules/version-control/event-bus.d.ts.map +1 -0
  275. package/dist/modules/{workflow → version-control}/event-bus.js +4 -4
  276. package/dist/modules/version-control/event-bus.js.map +1 -0
  277. package/dist/modules/{workflow → version-control}/events-delivery.d.ts +4 -4
  278. package/dist/modules/version-control/events-delivery.d.ts.map +1 -0
  279. package/dist/modules/version-control/events-delivery.js.map +1 -0
  280. package/dist/modules/{workflow → version-control}/events.routes.d.ts +4 -4
  281. package/dist/modules/version-control/events.routes.d.ts.map +1 -0
  282. package/dist/modules/version-control/events.routes.js.map +1 -0
  283. package/dist/modules/{workflow → version-control}/file-lock.service.d.ts +2 -2
  284. package/dist/modules/version-control/file-lock.service.d.ts.map +1 -0
  285. package/dist/modules/{workflow → version-control}/file-lock.service.js +6 -6
  286. package/dist/modules/version-control/file-lock.service.js.map +1 -0
  287. package/dist/modules/version-control/git/change-request-link.d.ts.map +1 -0
  288. package/dist/modules/version-control/git/change-request-link.js.map +1 -0
  289. package/dist/modules/version-control/git/git-version.d.ts.map +1 -0
  290. package/dist/modules/version-control/git/git-version.js.map +1 -0
  291. package/dist/modules/{workflow → version-control}/git/git.service.d.ts +8 -8
  292. package/dist/modules/version-control/git/git.service.d.ts.map +1 -0
  293. package/dist/modules/{workflow → version-control}/git/git.service.js +53 -53
  294. package/dist/modules/version-control/git/git.service.js.map +1 -0
  295. package/dist/modules/version-control/git/merge-commit.d.ts.map +1 -0
  296. package/dist/modules/version-control/git/merge-commit.js.map +1 -0
  297. package/dist/modules/version-control/git/node-git-runner.d.ts.map +1 -0
  298. package/dist/modules/{workflow → version-control}/git/node-git-runner.js +1 -1
  299. package/dist/modules/version-control/git/node-git-runner.js.map +1 -0
  300. package/dist/modules/{workflow → version-control}/git/pull-request.service.d.ts +5 -5
  301. package/dist/modules/version-control/git/pull-request.service.d.ts.map +1 -0
  302. package/dist/modules/{workflow → version-control}/git/pull-request.service.js +10 -10
  303. package/dist/modules/version-control/git/pull-request.service.js.map +1 -0
  304. package/dist/modules/{workflow → version-control}/index.d.ts +6 -5
  305. package/dist/modules/version-control/index.d.ts.map +1 -0
  306. package/dist/modules/{workflow → version-control}/index.js +3 -2
  307. package/dist/modules/version-control/index.js.map +1 -0
  308. package/dist/modules/{workflow → version-control}/pending-commits.service.d.ts +2 -2
  309. package/dist/modules/version-control/pending-commits.service.d.ts.map +1 -0
  310. package/dist/modules/{workflow → version-control}/pending-commits.service.js +2 -2
  311. package/dist/modules/version-control/pending-commits.service.js.map +1 -0
  312. package/dist/modules/{workflow → version-control}/pending-commits.worker.d.ts +5 -5
  313. package/dist/modules/version-control/pending-commits.worker.d.ts.map +1 -0
  314. package/dist/modules/{workflow → version-control}/pending-commits.worker.js +3 -3
  315. package/dist/modules/version-control/pending-commits.worker.js.map +1 -0
  316. package/dist/modules/{workflow → version-control}/read-on-branch.d.ts +2 -2
  317. package/dist/modules/version-control/read-on-branch.d.ts.map +1 -0
  318. package/dist/modules/{workflow → version-control}/read-on-branch.js +2 -2
  319. package/dist/modules/version-control/read-on-branch.js.map +1 -0
  320. package/dist/modules/version-control/recovery-bot.d.ts.map +1 -0
  321. package/dist/modules/version-control/recovery-bot.js.map +1 -0
  322. package/dist/modules/version-control/sanitize-error.d.ts.map +1 -0
  323. package/dist/modules/version-control/sanitize-error.js.map +1 -0
  324. package/dist/modules/{workflow/workflow-hooks.d.ts → version-control/version-control-hooks.d.ts} +4 -4
  325. package/dist/modules/version-control/version-control-hooks.d.ts.map +1 -0
  326. package/dist/modules/{workflow/workflow-hooks.js → version-control/version-control-hooks.js} +3 -3
  327. package/dist/modules/version-control/version-control-hooks.js.map +1 -0
  328. package/dist/modules/{workflow/workflow.routes.d.ts → version-control/version-control.routes.d.ts} +6 -5
  329. package/dist/modules/version-control/version-control.routes.d.ts.map +1 -0
  330. package/dist/modules/{workflow/workflow.routes.js → version-control/version-control.routes.js} +61 -60
  331. package/dist/modules/version-control/version-control.routes.js.map +1 -0
  332. package/dist/modules/{workflow/workflow.service.d.ts → version-control/version-control.service.d.ts} +26 -31
  333. package/dist/modules/version-control/version-control.service.d.ts.map +1 -0
  334. package/dist/modules/{workflow/workflow.service.js → version-control/version-control.service.js} +89 -94
  335. package/dist/modules/version-control/version-control.service.js.map +1 -0
  336. package/dist/modules/workspace/agent-access.gate.d.ts +5 -5
  337. package/dist/modules/workspace/agent-access.gate.d.ts.map +1 -1
  338. package/dist/modules/workspace/agent-access.gate.js +1 -1
  339. package/dist/modules/workspace/git-internals.middleware.d.ts +1 -1
  340. package/dist/modules/workspace/git-internals.middleware.js +2 -2
  341. package/dist/modules/workspace/kb-repository.js +1 -1
  342. package/dist/modules/workspace/kb-repository.js.map +1 -1
  343. package/dist/modules/workspace/startup/kb-git.d.ts +1 -1
  344. package/dist/modules/workspace/startup/kb-git.d.ts.map +1 -1
  345. package/dist/modules/workspace/startup/kb-git.js +1 -1
  346. package/dist/modules/workspace/startup/kb-git.js.map +1 -1
  347. package/dist/modules/workspace/startup/steps/seed-tree.d.ts +2 -2
  348. package/dist/modules/workspace/startup/steps/seed-tree.d.ts.map +1 -1
  349. package/dist/modules/workspace/startup/steps/seed-tree.js +1 -1
  350. package/dist/modules/workspace/startup/steps/seed-tree.js.map +1 -1
  351. package/dist/modules/workspace/startup/steps/template-files.step.d.ts +2 -2
  352. package/dist/modules/workspace/startup/steps/template-files.step.d.ts.map +1 -1
  353. package/dist/modules/workspace/startup/steps/template-files.step.js +2 -2
  354. package/dist/modules/workspace/startup/steps/template-files.step.js.map +1 -1
  355. package/dist/modules/workspace/startup/steps/template-source.d.ts +17 -4
  356. package/dist/modules/workspace/startup/steps/template-source.d.ts.map +1 -1
  357. package/dist/modules/workspace/startup/steps/template-source.js +8 -5
  358. package/dist/modules/workspace/startup/steps/template-source.js.map +1 -1
  359. package/dist/modules/workspace/workspace-tmp.js +3 -3
  360. package/dist/modules/workspace/workspace-tmp.js.map +1 -1
  361. package/dist/modules/workspace/workspace.routes.d.ts +4 -4
  362. package/dist/modules/workspace/workspace.routes.d.ts.map +1 -1
  363. package/dist/modules/workspace/workspace.routes.js +22 -22
  364. package/dist/modules/workspace/workspace.routes.js.map +1 -1
  365. package/dist/modules/workspace/workspace.service.d.ts +6 -6
  366. package/dist/modules/workspace/workspace.service.d.ts.map +1 -1
  367. package/dist/modules/workspace/workspace.service.js +11 -11
  368. package/dist/modules/workspace/workspace.service.js.map +1 -1
  369. package/dist/modules/workspace/workspace.tools.d.ts +2 -1
  370. package/dist/modules/workspace/workspace.tools.d.ts.map +1 -1
  371. package/dist/modules/workspace/workspace.tools.js +15 -10
  372. package/dist/modules/workspace/workspace.tools.js.map +1 -1
  373. package/dist/shared/canonical-file-identity.d.ts +2 -2
  374. package/dist/shared/canonical-file-identity.js +5 -5
  375. package/dist/shared/canonical-file-identity.js.map +1 -1
  376. package/dist/shared/domain-errors.d.ts +39 -39
  377. package/dist/shared/domain-errors.d.ts.map +1 -1
  378. package/dist/shared/domain-errors.js +44 -44
  379. package/dist/shared/domain-errors.js.map +1 -1
  380. package/dist/shared/git.contract.d.ts +1 -1
  381. package/dist/shared/git.contract.js +1 -1
  382. package/dist/shared/http-errors.d.ts +3 -3
  383. package/dist/shared/http-errors.d.ts.map +1 -1
  384. package/dist/shared/http-errors.js +1 -1
  385. package/dist/shared/http-errors.js.map +1 -1
  386. package/dist/shared/pending-proposals.d.ts +3 -3
  387. package/dist/shared/pending-proposals.d.ts.map +1 -1
  388. package/dist/shared/pending-proposals.js +2 -2
  389. package/dist/shared/pending-proposals.js.map +1 -1
  390. package/dist/tenancy/static-tenant-source.js +1 -1
  391. package/dist/tenancy/static-tenant-source.js.map +1 -1
  392. package/migrations/0012_agent_audit.sql +40 -40
  393. package/migrations/0013_agent_identity_and_key_soft_delete.sql +29 -29
  394. package/migrations/meta/0012_snapshot.json +2246 -2246
  395. package/migrations/meta/0013_snapshot.json +2258 -2258
  396. package/package.json +4 -4
  397. package/src/__tests__/account-admin.ts +27 -0
  398. package/src/__tests__/hexis-catalog.ts +4 -4
  399. package/src/__tests__/kb-context.ts +30 -30
  400. package/src/__tests__/kb-layout-config.test.ts +21 -0
  401. package/src/__tests__/open-change-gate.ts +1 -1
  402. package/src/__tests__/tool-handler.ts +15 -0
  403. package/src/__tests__/tool-wiring.ts +10 -4
  404. package/src/__tests__/workspace-service.ts +1 -1
  405. package/src/core/__tests__/catalog-cache-invalidation.test.ts +3 -3
  406. package/src/core/__tests__/compose-embed.test.ts +1 -1
  407. package/src/core/__tests__/damaged-document.tools.test.ts +3 -3
  408. package/src/core/__tests__/erasure-slices-wired-once.test.ts +46 -0
  409. package/src/core/__tests__/gated-boot.test.ts +2 -2
  410. package/src/core/__tests__/lifecycle.test.ts +9 -9
  411. package/src/core/catalog-cache-invalidation.ts +2 -2
  412. package/src/core/compose-embed.ts +3 -3
  413. package/src/core/core-ports.ts +19 -4
  414. package/src/core/create-core-server.ts +39 -25
  415. package/src/core/create-core-services.ts +79 -63
  416. package/src/core/lifecycle.ts +9 -9
  417. package/src/core-config.ts +3 -3
  418. package/src/index.ts +5 -5
  419. package/src/modules/access/__tests__/access-control.admin-root-floor.test.ts +4 -4
  420. package/src/modules/access/__tests__/access-own-read-grant.test.ts +14 -14
  421. package/src/modules/access/__tests__/access-requests.routes.test.ts +20 -20
  422. package/src/modules/access/__tests__/access.routes.admins.test.ts +4 -4
  423. package/src/modules/access/__tests__/access.routes.batch.test.ts +4 -4
  424. package/src/modules/access/__tests__/access.routes.folder-governs.test.ts +6 -6
  425. package/src/modules/access/__tests__/access.routes.group-grant.test.ts +6 -6
  426. package/src/modules/access/__tests__/access.routes.overrides.test.ts +5 -5
  427. package/src/modules/access/__tests__/access.routes.proposal-branch.test.ts +6 -6
  428. package/src/modules/access/__tests__/access.routes.prospective.test.ts +3 -3
  429. package/src/modules/access/__tests__/access.routes.revoke.test.ts +6 -6
  430. package/src/modules/access/__tests__/access.routes.unknown-email.test.ts +6 -6
  431. package/src/modules/access/__tests__/admin-locked-commit.test.ts +6 -6
  432. package/src/modules/access/__tests__/admin-route-helpers.test.ts +5 -5
  433. package/src/modules/access/__tests__/groups-admin.service.test.ts +27 -27
  434. package/src/modules/access/__tests__/roles-admin.security.test.ts +14 -13
  435. package/src/modules/access/__tests__/roles-admin.service.test.ts +27 -27
  436. package/src/modules/access/__tests__/roles-capabilities.test.ts +19 -19
  437. package/src/modules/access/__tests__/roles.routes.test.ts +6 -6
  438. package/src/modules/access/__tests__/synced-groups-committer.test.ts +13 -13
  439. package/src/modules/access/__tests__/user-access-removal.service.test.ts +29 -29
  440. package/src/modules/access/access-control.service.ts +1 -1
  441. package/src/modules/access/access-declarations.ts +2 -2
  442. package/src/modules/access/access-mutation.service.ts +2 -2
  443. package/src/modules/access/access-requests.routes.ts +7 -7
  444. package/src/modules/access/access-requests.service.ts +13 -13
  445. package/src/modules/access/access.routes.ts +11 -11
  446. package/src/modules/access/admin-locked-commit.ts +11 -11
  447. package/src/modules/access/admin-route-helpers.ts +5 -5
  448. package/src/modules/access/change-read-gate.ts +1 -1
  449. package/src/modules/access/groups-admin.service.ts +7 -7
  450. package/src/modules/access/reference-scan.ts +1 -1
  451. package/src/modules/access/roles-admin.service.ts +9 -9
  452. package/src/modules/access/synced-groups-committer.ts +11 -11
  453. package/src/modules/access/user-access-removal.service.ts +7 -7
  454. package/src/modules/access-model/__tests__/access-grammar.test.ts +2 -2
  455. package/src/modules/access-model/access-errors.ts +4 -4
  456. package/src/modules/access-model/access-grammar.ts +4 -4
  457. package/src/modules/access-model/change-gate.ts +1 -1
  458. package/src/modules/access-model/roles-yaml-guard.ts +4 -4
  459. package/src/modules/agent-guide/__tests__/agent-guide.test.ts +19 -4
  460. package/src/modules/agent-guide/__tests__/agent-guide.tools.test.ts +1 -1
  461. package/src/modules/agent-guide/__tests__/guide-matches-code.test.ts +2 -2
  462. package/src/modules/agent-guide/agent-guide.ts +48 -22
  463. package/src/modules/agent-guide/guide-budget.ts +6 -2
  464. package/src/modules/agent-instructions/__tests__/agent-instructions.route.test.ts +4 -5
  465. package/src/modules/agent-instructions/__tests__/compose.test.ts +1 -1
  466. package/src/modules/agent-instructions/__tests__/shared-file-rules.test.ts +113 -7
  467. package/src/modules/agent-instructions/agent-instructions.routes.ts +12 -5
  468. package/src/modules/agent-instructions/compose.ts +24 -9
  469. package/src/modules/agent-instructions/shared-file-rules.ts +53 -11
  470. package/src/modules/agent-scope/__tests__/agent-surfaces.connect-as.test.ts +1 -1
  471. package/src/modules/audit/__tests__/agent-rest-audit.middleware.test.ts +113 -113
  472. package/src/modules/audit/__tests__/event-classifier.test.ts +121 -121
  473. package/src/modules/audit/event-classifier.ts +155 -155
  474. package/src/modules/auth/__tests__/account-deactivation.test.ts +1 -1
  475. package/src/modules/auth/__tests__/account-erasure.approval-gate.test.ts +4 -4
  476. package/src/modules/auth/__tests__/account-erasure.participants.test.ts +56 -0
  477. package/src/modules/auth/__tests__/account-switch-lock.pg.test.ts +2 -2
  478. package/src/modules/auth/__tests__/account-switch-lock.test.ts +2 -2
  479. package/src/modules/auth/__tests__/account.routes.test.ts +73 -11
  480. package/src/modules/auth/__tests__/auth.service.test.ts +1 -1
  481. package/src/modules/auth/account-erasure.service.ts +27 -9
  482. package/src/modules/auth/account-hooks.ts +34 -0
  483. package/src/modules/auth/account-switch-lock.ts +2 -2
  484. package/src/modules/auth/account.routes.ts +23 -5
  485. package/src/modules/auth/auth.service.ts +4 -4
  486. package/src/modules/auth/index.ts +1 -0
  487. package/src/modules/database/__tests__/advisory-lock.test.ts +169 -169
  488. package/src/modules/database/__tests__/migrations-unqualified.test.ts +32 -32
  489. package/src/modules/database/core-schema.ts +2 -2
  490. package/src/modules/diff/__tests__/diff.routes.read-gate.test.ts +2 -2
  491. package/src/modules/diff/__tests__/diff.routes.rejectPathsLocked.test.ts +12 -12
  492. package/src/modules/diff/diff.routes.ts +8 -8
  493. package/src/modules/embed/__tests__/embed.service.lock.test.ts +7 -7
  494. package/src/modules/embed/__tests__/embed.service.test.ts +42 -42
  495. package/src/modules/embed/__tests__/embed.tools.test.ts +1 -1
  496. package/src/modules/embed/embed.routes.ts +1 -1
  497. package/src/modules/embed/embed.service.ts +17 -17
  498. package/src/modules/kb-fs/__tests__/branch-name.test.ts +2 -2
  499. package/src/modules/kb-fs/__tests__/locking-filesystem.test.ts +260 -260
  500. package/src/modules/kb-fs/__tests__/move-with-edits.test.ts +34 -34
  501. package/src/modules/kb-fs/__tests__/repo-path.test.ts +8 -8
  502. package/src/modules/kb-fs/branch-name.ts +8 -8
  503. package/src/modules/kb-fs/file-change-notifier.ts +2 -2
  504. package/src/modules/kb-fs/locking-filesystem.ts +30 -30
  505. package/src/modules/kb-fs/repo-path.ts +5 -5
  506. package/src/modules/kb-fs/tmp-ref.ts +3 -3
  507. package/src/modules/kb-sync/__tests__/kb-sync.service.test.ts +36 -36
  508. package/src/modules/kb-sync/index.ts +1 -1
  509. package/src/modules/kb-sync/kb-sync.interface.ts +3 -3
  510. package/src/modules/kb-sync/kb-sync.service.ts +9 -9
  511. package/src/modules/marketplace/__tests__/github-facade.test.ts +1 -1
  512. package/src/modules/marketplace/__tests__/marketplace-git.test.ts +1 -1
  513. package/src/modules/mcp/__tests__/mcp-proxy-helpers.test.ts +4 -2
  514. package/src/modules/mcp/__tests__/mcp.e2e.test.ts +69 -8
  515. package/src/modules/mcp/__tests__/mcp.service.test.ts +91 -13
  516. package/src/modules/mcp/__tests__/read-only-hint.pg.test.ts +194 -0
  517. package/src/modules/mcp/mcp.service.ts +89 -28
  518. package/src/modules/onboarding/__tests__/starter-pack.service.test.ts +55 -55
  519. package/src/modules/onboarding/onboarding.contract.ts +1 -1
  520. package/src/modules/onboarding/onboarding.routes.ts +2 -2
  521. package/src/modules/onboarding/starter-pack.service.ts +6 -6
  522. package/src/modules/plugins/__tests__/bundle-dialect.e2e.test.ts +1 -1
  523. package/src/modules/plugins/__tests__/compile-marketplace.test.ts +1 -1
  524. package/src/modules/plugins/__tests__/join-request-jobs.service.test.ts +43 -43
  525. package/src/modules/plugins/__tests__/join-requests.service.test.ts +19 -19
  526. package/src/modules/plugins/__tests__/join-requests.settlement.test.ts +26 -26
  527. package/src/modules/plugins/__tests__/plugins.routes.test.ts +25 -25
  528. package/src/modules/plugins/join-request-jobs.service.ts +10 -10
  529. package/src/modules/plugins/join-requests.service.ts +4 -4
  530. package/src/modules/plugins/plugin-rename.service.ts +1 -1
  531. package/src/modules/plugins/plugins.routes.ts +9 -9
  532. package/src/modules/secrets-vault/__tests__/db-secrets-vault.managed.test.ts +773 -0
  533. package/src/modules/secrets-vault/__tests__/db-secrets-vault.oauth.test.ts +28 -1
  534. package/src/modules/secrets-vault/__tests__/managed-sign-in.route.test.ts +351 -0
  535. package/src/modules/secrets-vault/db-secrets-vault.service.ts +562 -95
  536. package/src/modules/secrets-vault/index.ts +7 -0
  537. package/src/modules/secrets-vault/managed-sign-in-erasure.ts +41 -0
  538. package/src/modules/secrets-vault/secrets-variable-loader.ts +134 -134
  539. package/src/modules/secrets-vault/secrets-vault.contract.ts +152 -0
  540. package/src/modules/secrets-vault/secrets-vault.routes.ts +157 -10
  541. package/src/modules/settings/__tests__/repository-source.test.ts +1 -1
  542. package/src/modules/settings/__tests__/setup.routes.layout-phase.test.ts +1 -1
  543. package/src/modules/settings/__tests__/setup.routes.managed-phase.test.ts +1 -1
  544. package/src/modules/settings/connection-check.ts +1 -1
  545. package/src/modules/settings/deployment-settings.service.ts +1 -1
  546. package/src/modules/settings/git-root-folders.ts +1 -1
  547. package/src/modules/settings/setup.routes.ts +1 -1
  548. package/src/modules/skills/__tests__/allowed-tools-warn.tools.test.ts +3 -3
  549. package/src/modules/skills/__tests__/branch-skills.tools.test.ts +1 -1
  550. package/src/modules/skills/__tests__/pending-skills.service.test.ts +8 -8
  551. package/src/modules/skills/__tests__/skill-access-requests.routes.test.ts +18 -18
  552. package/src/modules/skills/__tests__/skills.service.test.ts +3 -3
  553. package/src/modules/skills/pending-skills.service.ts +3 -3
  554. package/src/modules/skills/skill-access-requests.routes.ts +7 -7
  555. package/src/modules/tool-helpers/__tests__/agent-roles-write.test.ts +4 -4
  556. package/src/modules/tool-helpers/__tests__/branch-declaration.test.ts +3 -3
  557. package/src/modules/tool-helpers/__tests__/can-write.tools.test.ts +3 -3
  558. package/src/modules/tool-helpers/__tests__/phase4-tools.test.ts +4 -4
  559. package/src/modules/tool-helpers/__tests__/tools-surface.test.ts +3 -3
  560. package/src/modules/tool-helpers/__tests__/validate-token.test.ts +1 -1
  561. package/src/modules/tool-helpers/tool-context.ts +6 -6
  562. package/src/modules/tool-helpers/tool-handler.ts +2 -2
  563. package/src/modules/tool-helpers/tool.contract.ts +4 -4
  564. package/src/modules/tool-manuals/__tests__/pending-tools.service.test.ts +9 -9
  565. package/src/modules/tool-manuals/__tests__/tool-manuals.managed-sign-in.test.ts +89 -0
  566. package/src/modules/tool-manuals/__tests__/tool-manuals.restart.test.ts +1 -1
  567. package/src/modules/tool-manuals/__tests__/tool-manuals.tools.test.ts +36 -1
  568. package/src/modules/tool-manuals/mcp-server-edit.service.ts +1 -1
  569. package/src/modules/tool-manuals/pending-tools.service.ts +3 -3
  570. package/src/modules/tool-manuals/tool-delete.service.ts +1 -1
  571. package/src/modules/tool-manuals/tool-manuals.contract.ts +41 -3
  572. package/src/modules/tool-manuals/tool-manuals.service.ts +53 -5
  573. package/src/modules/tool-manuals/tool-manuals.tools.ts +41 -15
  574. package/src/modules/tool-registry/__tests__/own-tool-schemas.test.ts +4 -4
  575. package/src/modules/tool-registry/__tests__/read-only-hints.test.ts +3 -3
  576. package/src/modules/tool-registry/__tests__/tool-description-length.test.ts +6 -6
  577. package/src/modules/{workflow → version-control}/__tests__/apply-failure.test.ts +54 -54
  578. package/src/modules/{workflow → version-control}/__tests__/event-bus.test.ts +27 -27
  579. package/src/modules/{workflow → version-control}/__tests__/events-delivery.test.ts +37 -37
  580. package/src/modules/{workflow → version-control}/__tests__/file-lock.service.deletion-gate.test.ts +2 -2
  581. package/src/modules/{workflow → version-control}/__tests__/file-lock.service.path-identity.test.ts +8 -8
  582. package/src/modules/{workflow → version-control}/__tests__/merge-announces-tree.test.ts +11 -11
  583. package/src/modules/{workflow → version-control}/__tests__/pending-commits.worker.concurrency.test.ts +9 -9
  584. package/src/modules/{workflow → version-control}/__tests__/pending-commits.worker.test.ts +25 -25
  585. package/src/modules/{workflow → version-control}/__tests__/preserve-roles-yaml.test.ts +42 -42
  586. package/src/modules/version-control/__tests__/public-surface.test.ts +114 -0
  587. package/src/modules/{workflow/__tests__/workflow.routes.folder-proposals.test.ts → version-control/__tests__/version-control.routes.folder-proposals.test.ts} +18 -18
  588. package/src/modules/{workflow/__tests__/workflow.routes.fork-point-file.test.ts → version-control/__tests__/version-control.routes.fork-point-file.test.ts} +19 -19
  589. package/src/modules/{workflow/__tests__/workflow.routes.history-read-gate.test.ts → version-control/__tests__/version-control.routes.history-read-gate.test.ts} +13 -13
  590. package/src/modules/{workflow/__tests__/workflow.routes.lock-path.test.ts → version-control/__tests__/version-control.routes.lock-path.test.ts} +18 -18
  591. package/src/modules/{workflow/__tests__/workflow.routes.open-change-request.test.ts → version-control/__tests__/version-control.routes.open-change-request.test.ts} +7 -7
  592. package/src/modules/{workflow/__tests__/workflow.routes.push-refused.test.ts → version-control/__tests__/version-control.routes.push-refused.test.ts} +14 -14
  593. package/src/modules/{workflow/__tests__/workflow.service.branch-in-use.test.ts → version-control/__tests__/version-control.service.branch-in-use.test.ts} +6 -6
  594. package/src/modules/{workflow/__tests__/workflow.service.commitFileWhileLocked.test.ts → version-control/__tests__/version-control.service.commitFileWhileLocked.test.ts} +14 -14
  595. package/src/modules/{workflow/__tests__/workflow.service.delete-branch.test.ts → version-control/__tests__/version-control.service.delete-branch.test.ts} +14 -14
  596. package/src/modules/{workflow/__tests__/workflow.service.deleted-branch-sweep.test.ts → version-control/__tests__/version-control.service.deleted-branch-sweep.test.ts} +4 -4
  597. package/src/modules/{workflow/__tests__/workflow.service.facade.test.ts → version-control/__tests__/version-control.service.facade.test.ts} +97 -99
  598. package/src/modules/{workflow/__tests__/workflow.service.folder-proposals.test.ts → version-control/__tests__/version-control.service.folder-proposals.test.ts} +7 -7
  599. package/src/modules/{workflow/__tests__/workflow.service.platform-restore.test.ts → version-control/__tests__/version-control.service.platform-restore.test.ts} +6 -6
  600. package/src/modules/{workflow/__tests__/workflow.service.read-gate.test.ts → version-control/__tests__/version-control.service.read-gate.test.ts} +9 -9
  601. package/src/modules/{workflow/__tests__/workflow.service.releaseLock.test.ts → version-control/__tests__/version-control.service.releaseLock.test.ts} +42 -42
  602. package/src/modules/{workflow/__tests__/workflow.service.repository-replaced.test.ts → version-control/__tests__/version-control.service.repository-replaced.test.ts} +4 -4
  603. package/src/modules/{workflow/__tests__/workflow.service.sync.test.ts → version-control/__tests__/version-control.service.sync.test.ts} +17 -17
  604. package/src/modules/{workflow/__tests__/workflow.service.update-change-request.pg.test.ts → version-control/__tests__/version-control.service.update-change-request.pg.test.ts} +6 -6
  605. package/src/modules/{workflow/__tests__/workflow.service.update-change-request.test.ts → version-control/__tests__/version-control.service.update-change-request.test.ts} +11 -11
  606. package/src/modules/{workflow/__tests__/workflow.service.update-from-target.test.ts → version-control/__tests__/version-control.service.update-from-target.test.ts} +22 -22
  607. package/src/modules/{workflow → version-control}/agent-tools/__tests__/change-request-read.tools.test.ts +3 -3
  608. package/src/modules/{workflow → version-control}/agent-tools/__tests__/update-change-request.parity.test.ts +16 -16
  609. package/src/modules/{workflow/agent-tools/__tests__/workflow.tools.test.ts → version-control/agent-tools/__tests__/version-control.tools.test.ts} +9 -9
  610. package/src/modules/{workflow → version-control}/agent-tools/change-request-read.tools.ts +2 -2
  611. package/src/modules/{workflow/agent-tools/workflow.tools.ts → version-control/agent-tools/version-control.tools.ts} +30 -30
  612. package/src/modules/{workflow → version-control}/change-request-hooks.ts +1 -1
  613. package/src/modules/{workflow/review-workflow → version-control/change-request-review}/__tests__/approval-states.test.ts +5 -5
  614. package/src/modules/{workflow/review-workflow → version-control/change-request-review}/__tests__/cancel-pr.test.ts +8 -8
  615. package/src/modules/{workflow/review-workflow → version-control/change-request-review}/__tests__/carry-approvals-forward.test.ts +6 -6
  616. package/src/modules/{workflow/review-workflow → version-control/change-request-review}/__tests__/erase-approver.test.ts +5 -5
  617. package/src/modules/{workflow/review-workflow → version-control/change-request-review}/__tests__/merge-gate.test.ts +3 -3
  618. package/src/modules/{workflow/review-workflow → version-control/change-request-review}/__tests__/merge-records-own-commit.test.ts +3 -3
  619. package/src/modules/{workflow/review-workflow/review-workflow.interface.ts → version-control/change-request-review/change-request-review.interface.ts} +1 -1
  620. package/src/modules/{workflow/review-workflow/review-workflow.service.ts → version-control/change-request-review/change-request-review.service.ts} +28 -28
  621. package/src/modules/{workflow → version-control}/event-bus.ts +14 -14
  622. package/src/modules/{workflow → version-control}/events-delivery.ts +11 -11
  623. package/src/modules/{workflow → version-control}/events.routes.ts +5 -5
  624. package/src/modules/{workflow → version-control}/file-lock.service.ts +6 -6
  625. package/src/modules/{workflow → version-control}/git/__tests__/git-test-helpers.ts +3 -3
  626. package/src/modules/{workflow → version-control}/git/__tests__/git.service.accessGating.test.ts +5 -5
  627. package/src/modules/{workflow → version-control}/git/__tests__/git.service.appliedChange.test.ts +4 -4
  628. package/src/modules/{workflow → version-control}/git/__tests__/git.service.changedFilesForPr.test.ts +16 -16
  629. package/src/modules/{workflow → version-control}/git/__tests__/git.service.changedPathsMemo.test.ts +2 -2
  630. package/src/modules/{workflow → version-control}/git/__tests__/git.service.commitChanges.test.ts +3 -3
  631. package/src/modules/{workflow → version-control}/git/__tests__/git.service.commitFile.strayPath.test.ts +10 -10
  632. package/src/modules/{workflow → version-control}/git/__tests__/git.service.commitFile.test.ts +3 -3
  633. package/src/modules/{workflow → version-control}/git/__tests__/git.service.createBranch.test.ts +3 -3
  634. package/src/modules/{workflow → version-control}/git/__tests__/git.service.deleteBranch.test.ts +7 -7
  635. package/src/modules/{workflow → version-control}/git/__tests__/git.service.diffFileAtCommit.test.ts +9 -9
  636. package/src/modules/{workflow → version-control}/git/__tests__/git.service.diffFileBetweenBranches.test.ts +23 -23
  637. package/src/modules/{workflow → version-control}/git/__tests__/git.service.fileBytesAtCommit.test.ts +7 -7
  638. package/src/modules/{workflow → version-control}/git/__tests__/git.service.fileContentsAtCommit.test.ts +3 -3
  639. package/src/modules/{workflow → version-control}/git/__tests__/git.service.forkPoint.test.ts +2 -2
  640. package/src/modules/{workflow → version-control}/git/__tests__/git.service.history-guards.test.ts +2 -2
  641. package/src/modules/{workflow → version-control}/git/__tests__/git.service.list-branches.test.ts +12 -12
  642. package/src/modules/{workflow → version-control}/git/__tests__/git.service.listTrackedFiles.test.ts +2 -2
  643. package/src/modules/{workflow → version-control}/git/__tests__/git.service.logForFile.test.ts +6 -6
  644. package/src/modules/{workflow → version-control}/git/__tests__/git.service.mergeChangeRequest.test.ts +20 -20
  645. package/src/modules/{workflow → version-control}/git/__tests__/git.service.mergeIntoBranch.test.ts +16 -16
  646. package/src/modules/{workflow → version-control}/git/__tests__/git.service.pendingChanges.test.ts +2 -2
  647. package/src/modules/{workflow → version-control}/git/__tests__/git.service.postMergePull.test.ts +5 -5
  648. package/src/modules/{workflow → version-control}/git/__tests__/git.service.prFetchFailure.test.ts +2 -2
  649. package/src/modules/{workflow → version-control}/git/__tests__/git.service.pull.test.ts +12 -12
  650. package/src/modules/{workflow → version-control}/git/__tests__/git.service.readFileAtRef.test.ts +3 -3
  651. package/src/modules/{workflow → version-control}/git/__tests__/git.service.revertPathsAndPush.test.ts +2 -2
  652. package/src/modules/{workflow → version-control}/git/__tests__/git.service.status.test.ts +4 -4
  653. package/src/modules/{workflow → version-control}/git/__tests__/git.service.syncFromRemote.test.ts +8 -8
  654. package/src/modules/{workflow → version-control}/git/__tests__/git.service.worktrees.test.ts +4 -4
  655. package/src/modules/{workflow → version-control}/git/__tests__/pull-request.service.list-fetch.test.ts +2 -2
  656. package/src/modules/{workflow → version-control}/git/__tests__/pull-request.service.test.ts +6 -6
  657. package/src/modules/{workflow → version-control}/git/git.service.ts +57 -57
  658. package/src/modules/{workflow → version-control}/git/node-git-runner.ts +1 -1
  659. package/src/modules/{workflow → version-control}/git/pull-request.service.ts +12 -12
  660. package/src/modules/{workflow → version-control}/index.ts +6 -5
  661. package/src/modules/{workflow → version-control}/pending-commits.service.ts +2 -2
  662. package/src/modules/{workflow → version-control}/pending-commits.worker.ts +8 -8
  663. package/src/modules/{workflow → version-control}/read-on-branch.ts +2 -2
  664. package/src/modules/{workflow/workflow-hooks.ts → version-control/version-control-hooks.ts} +3 -3
  665. package/src/modules/{workflow/workflow.routes.ts → version-control/version-control.routes.ts} +64 -63
  666. package/src/modules/{workflow/workflow.service.ts → version-control/version-control.service.ts} +92 -97
  667. package/src/modules/workspace/__tests__/agent-access.gate.test.ts +8 -8
  668. package/src/modules/workspace/__tests__/agent-downloads.test.ts +13 -16
  669. package/src/modules/workspace/__tests__/agent-uploads.test.ts +11 -12
  670. package/src/modules/workspace/__tests__/escape-sequences.routes.test.ts +11 -16
  671. package/src/modules/workspace/__tests__/file-stat-access.test.ts +3 -3
  672. package/src/modules/workspace/__tests__/git-internals.security.test.ts +27 -27
  673. package/src/modules/workspace/__tests__/kb-repository.test.ts +1 -1
  674. package/src/modules/workspace/__tests__/rest-tool-arguments.test.ts +3 -3
  675. package/src/modules/workspace/__tests__/start-session.default-branch.test.ts +152 -0
  676. package/src/modules/workspace/__tests__/workspace-paths-inside-the-repo.test.ts +6 -6
  677. package/src/modules/workspace/__tests__/workspace-tmp.tools.test.ts +13 -14
  678. package/src/modules/workspace/__tests__/workspace.routes.at-ref.test.ts +6 -6
  679. package/src/modules/workspace/__tests__/workspace.routes.branch-errors.test.ts +4 -4
  680. package/src/modules/workspace/__tests__/workspace.routes.create-grant.test.ts +6 -6
  681. package/src/modules/workspace/__tests__/workspace.routes.delete.test.ts +8 -8
  682. package/src/modules/workspace/__tests__/workspace.routes.download-implies-read.test.ts +4 -4
  683. package/src/modules/workspace/__tests__/workspace.routes.download.test.ts +6 -6
  684. package/src/modules/workspace/__tests__/workspace.routes.file-writes.test.ts +6 -6
  685. package/src/modules/workspace/__tests__/workspace.routes.folder-zip-access.test.ts +4 -4
  686. package/src/modules/workspace/__tests__/workspace.routes.folders.test.ts +6 -6
  687. package/src/modules/workspace/__tests__/workspace.routes.move-platform-files.test.ts +7 -7
  688. package/src/modules/workspace/__tests__/workspace.routes.read-gate.test.ts +13 -13
  689. package/src/modules/workspace/__tests__/workspace.service.any-workspace-credentials.test.ts +1 -1
  690. package/src/modules/workspace/__tests__/workspace.service.replaced-repository.test.ts +1 -1
  691. package/src/modules/workspace/__tests__/workspace.service.worktrees.test.ts +1 -1
  692. package/src/modules/workspace/__tests__/workspace.tools.agents-file.test.ts +5 -5
  693. package/src/modules/workspace/__tests__/workspace.tools.branch-errors.test.ts +5 -5
  694. package/src/modules/workspace/__tests__/workspace.tools.test.ts +27 -27
  695. package/src/modules/workspace/agent-access.gate.ts +5 -5
  696. package/src/modules/workspace/git-internals.middleware.ts +2 -2
  697. package/src/modules/workspace/kb-repository.ts +1 -1
  698. package/src/modules/workspace/startup/__tests__/kb-startup-runner.degraded.test.ts +1 -1
  699. package/src/modules/workspace/startup/__tests__/kb-startup-runner.test.ts +1 -1
  700. package/src/modules/workspace/startup/__tests__/kb-startup-runner.worktrees.test.ts +1 -1
  701. package/src/modules/workspace/startup/kb-git.ts +1 -1
  702. package/src/modules/workspace/startup/steps/__tests__/steps.test.ts +94 -70
  703. package/src/modules/workspace/startup/steps/seed-tree.ts +4 -5
  704. package/src/modules/workspace/startup/steps/template-files.step.ts +4 -5
  705. package/src/modules/workspace/startup/steps/template-source.ts +21 -6
  706. package/src/modules/workspace/workspace-tmp.ts +4 -4
  707. package/src/modules/workspace/workspace.routes.ts +26 -26
  708. package/src/modules/workspace/workspace.service.ts +11 -11
  709. package/src/modules/workspace/workspace.tools.ts +17 -10
  710. package/src/shared/__tests__/canonical-file-identity.test.ts +5 -5
  711. package/src/shared/__tests__/http-errors.test.ts +4 -4
  712. package/src/shared/canonical-file-identity.ts +5 -5
  713. package/src/shared/domain-errors.ts +44 -44
  714. package/src/shared/git.contract.ts +1 -1
  715. package/src/shared/http-errors.ts +3 -3
  716. package/src/shared/kb-context.ts +130 -130
  717. package/src/shared/pending-proposals.ts +4 -4
  718. package/src/tenancy/__tests__/tenant-host.test.ts +372 -372
  719. package/src/tenancy/__tests__/tenant-runtime.test.ts +221 -221
  720. package/src/tenancy/__tests__/tenant-secrets.test.ts +35 -35
  721. package/src/tenancy/index.ts +35 -35
  722. package/src/tenancy/static-tenant-source.ts +1 -1
  723. package/src/tenancy/tenant-host.ts +261 -261
  724. package/src/tenancy/tenant-runtime.ts +208 -208
  725. package/src/tenancy/tenant-source.contract.ts +59 -59
  726. package/dist/modules/workflow/agent-tools/change-request-read-shape.d.ts.map +0 -1
  727. package/dist/modules/workflow/agent-tools/change-request-read-shape.js.map +0 -1
  728. package/dist/modules/workflow/agent-tools/change-request-read.tools.d.ts.map +0 -1
  729. package/dist/modules/workflow/agent-tools/change-request-read.tools.js.map +0 -1
  730. package/dist/modules/workflow/agent-tools/change-request-summary.d.ts.map +0 -1
  731. package/dist/modules/workflow/agent-tools/change-request-summary.js.map +0 -1
  732. package/dist/modules/workflow/agent-tools/workflow.tools.d.ts.map +0 -1
  733. package/dist/modules/workflow/agent-tools/workflow.tools.js.map +0 -1
  734. package/dist/modules/workflow/change-request-hooks.d.ts.map +0 -1
  735. package/dist/modules/workflow/change-request-hooks.js.map +0 -1
  736. package/dist/modules/workflow/event-bus.d.ts.map +0 -1
  737. package/dist/modules/workflow/event-bus.js.map +0 -1
  738. package/dist/modules/workflow/events-delivery.d.ts.map +0 -1
  739. package/dist/modules/workflow/events-delivery.js.map +0 -1
  740. package/dist/modules/workflow/events.routes.d.ts.map +0 -1
  741. package/dist/modules/workflow/events.routes.js.map +0 -1
  742. package/dist/modules/workflow/file-lock.service.d.ts.map +0 -1
  743. package/dist/modules/workflow/file-lock.service.js.map +0 -1
  744. package/dist/modules/workflow/git/change-request-link.d.ts.map +0 -1
  745. package/dist/modules/workflow/git/change-request-link.js.map +0 -1
  746. package/dist/modules/workflow/git/git-version.d.ts.map +0 -1
  747. package/dist/modules/workflow/git/git-version.js.map +0 -1
  748. package/dist/modules/workflow/git/git.service.d.ts.map +0 -1
  749. package/dist/modules/workflow/git/git.service.js.map +0 -1
  750. package/dist/modules/workflow/git/merge-commit.d.ts.map +0 -1
  751. package/dist/modules/workflow/git/merge-commit.js.map +0 -1
  752. package/dist/modules/workflow/git/node-git-runner.d.ts.map +0 -1
  753. package/dist/modules/workflow/git/node-git-runner.js.map +0 -1
  754. package/dist/modules/workflow/git/pull-request.service.d.ts.map +0 -1
  755. package/dist/modules/workflow/git/pull-request.service.js.map +0 -1
  756. package/dist/modules/workflow/index.d.ts.map +0 -1
  757. package/dist/modules/workflow/index.js.map +0 -1
  758. package/dist/modules/workflow/pending-commits.service.d.ts.map +0 -1
  759. package/dist/modules/workflow/pending-commits.service.js.map +0 -1
  760. package/dist/modules/workflow/pending-commits.worker.d.ts.map +0 -1
  761. package/dist/modules/workflow/pending-commits.worker.js.map +0 -1
  762. package/dist/modules/workflow/read-on-branch.d.ts.map +0 -1
  763. package/dist/modules/workflow/read-on-branch.js.map +0 -1
  764. package/dist/modules/workflow/recovery-bot.d.ts.map +0 -1
  765. package/dist/modules/workflow/recovery-bot.js.map +0 -1
  766. package/dist/modules/workflow/review-workflow/approval-lock.d.ts.map +0 -1
  767. package/dist/modules/workflow/review-workflow/approval-lock.js.map +0 -1
  768. package/dist/modules/workflow/review-workflow/review-workflow.interface.d.ts.map +0 -1
  769. package/dist/modules/workflow/review-workflow/review-workflow.interface.js +0 -2
  770. package/dist/modules/workflow/review-workflow/review-workflow.interface.js.map +0 -1
  771. package/dist/modules/workflow/review-workflow/review-workflow.service.d.ts.map +0 -1
  772. package/dist/modules/workflow/review-workflow/review-workflow.service.js.map +0 -1
  773. package/dist/modules/workflow/sanitize-error.d.ts.map +0 -1
  774. package/dist/modules/workflow/sanitize-error.js.map +0 -1
  775. package/dist/modules/workflow/workflow-hooks.d.ts.map +0 -1
  776. package/dist/modules/workflow/workflow-hooks.js.map +0 -1
  777. package/dist/modules/workflow/workflow.routes.d.ts.map +0 -1
  778. package/dist/modules/workflow/workflow.routes.js.map +0 -1
  779. package/dist/modules/workflow/workflow.service.d.ts.map +0 -1
  780. package/dist/modules/workflow/workflow.service.js.map +0 -1
  781. package/src/modules/mcp/__tests__/read-only-hint.e2e.test.ts +0 -213
  782. /package/dist/modules/{workflow → version-control}/agent-tools/change-request-read-shape.d.ts +0 -0
  783. /package/dist/modules/{workflow → version-control}/agent-tools/change-request-read-shape.js +0 -0
  784. /package/dist/modules/{workflow → version-control}/agent-tools/change-request-read.tools.d.ts +0 -0
  785. /package/dist/modules/{workflow → version-control}/agent-tools/change-request-summary.d.ts +0 -0
  786. /package/dist/modules/{workflow → version-control}/agent-tools/change-request-summary.js +0 -0
  787. /package/dist/modules/{workflow → version-control}/change-request-hooks.js +0 -0
  788. /package/dist/modules/{workflow/review-workflow → version-control/change-request-review}/approval-lock.d.ts +0 -0
  789. /package/dist/modules/{workflow/review-workflow → version-control/change-request-review}/approval-lock.js +0 -0
  790. /package/dist/modules/{workflow → version-control}/events-delivery.js +0 -0
  791. /package/dist/modules/{workflow → version-control}/events.routes.js +0 -0
  792. /package/dist/modules/{workflow → version-control}/git/change-request-link.d.ts +0 -0
  793. /package/dist/modules/{workflow → version-control}/git/change-request-link.js +0 -0
  794. /package/dist/modules/{workflow → version-control}/git/git-version.d.ts +0 -0
  795. /package/dist/modules/{workflow → version-control}/git/git-version.js +0 -0
  796. /package/dist/modules/{workflow → version-control}/git/merge-commit.d.ts +0 -0
  797. /package/dist/modules/{workflow → version-control}/git/merge-commit.js +0 -0
  798. /package/dist/modules/{workflow → version-control}/git/node-git-runner.d.ts +0 -0
  799. /package/dist/modules/{workflow → version-control}/recovery-bot.d.ts +0 -0
  800. /package/dist/modules/{workflow → version-control}/recovery-bot.js +0 -0
  801. /package/dist/modules/{workflow → version-control}/sanitize-error.d.ts +0 -0
  802. /package/dist/modules/{workflow → version-control}/sanitize-error.js +0 -0
  803. /package/src/modules/{workflow → version-control}/__tests__/change-request-hooks.test.ts +0 -0
  804. /package/src/modules/{workflow → version-control}/__tests__/fake-file-lock-db.ts +0 -0
  805. /package/src/modules/{workflow → version-control}/__tests__/pending-commits.canonical.test.ts +0 -0
  806. /package/src/modules/{workflow → version-control}/__tests__/pending-commits.enqueue-if-absent.test.ts +0 -0
  807. /package/src/modules/{workflow → version-control}/__tests__/pending-commits.repository-replaced.test.ts +0 -0
  808. /package/src/modules/{workflow → version-control}/__tests__/sanitize-error.test.ts +0 -0
  809. /package/src/modules/{workflow → version-control}/agent-tools/__tests__/change-request-read-shape.test.ts +0 -0
  810. /package/src/modules/{workflow → version-control}/agent-tools/change-request-read-shape.ts +0 -0
  811. /package/src/modules/{workflow → version-control}/agent-tools/change-request-summary.ts +0 -0
  812. /package/src/modules/{workflow/review-workflow → version-control/change-request-review}/approval-lock.ts +0 -0
  813. /package/src/modules/{workflow → version-control}/git/__tests__/branchAuthor.test.ts +0 -0
  814. /package/src/modules/{workflow → version-control}/git/__tests__/change-request-link.test.ts +0 -0
  815. /package/src/modules/{workflow → version-control}/git/__tests__/git-version.failure.test.ts +0 -0
  816. /package/src/modules/{workflow → version-control}/git/__tests__/git-version.test.ts +0 -0
  817. /package/src/modules/{workflow → version-control}/git/__tests__/node-git-runner.test.ts +0 -0
  818. /package/src/modules/{workflow → version-control}/git/__tests__/pull-request.service.getPrDetail.test.ts +0 -0
  819. /package/src/modules/{workflow → version-control}/git/__tests__/pull-request.service.placeholder.test.ts +0 -0
  820. /package/src/modules/{workflow → version-control}/git/__tests__/pull-request.service.viewer-can-cancel.test.ts +0 -0
  821. /package/src/modules/{workflow → version-control}/git/__tests__/pull-request.service.viewer-can-delete.test.ts +0 -0
  822. /package/src/modules/{workflow → version-control}/git/__tests__/pull-request.service.viewer-can-update.test.ts +0 -0
  823. /package/src/modules/{workflow → version-control}/git/change-request-link.ts +0 -0
  824. /package/src/modules/{workflow → version-control}/git/git-version.ts +0 -0
  825. /package/src/modules/{workflow → version-control}/git/merge-commit.ts +0 -0
  826. /package/src/modules/{workflow → version-control}/recovery-bot.ts +0 -0
  827. /package/src/modules/{workflow → version-control}/sanitize-error.ts +0 -0
@@ -3,7 +3,7 @@ import path from 'node:path';
3
3
  import { fileURLToPath } from 'node:url';
4
4
  import { defaultKbTemplateDir, defaultStarterPacksDir } from './assets.js';
5
5
  import { assertKeyDecodesTo32Bytes } from './shared/token-crypto.js';
6
- import { DEFAULT_GIT_TIMEOUT_MS } from './modules/workflow/git/node-git-runner.js';
6
+ import { DEFAULT_GIT_TIMEOUT_MS } from './modules/version-control/git/node-git-runner.js';
7
7
  import { DEFAULT_DB_SCHEMA, assertSchemaName } from './modules/database/connection.js';
8
8
  import { logger } from './shared/logging.js';
9
9
  import { hasControlCharacter } from './modules/kb-fs/repo-path.js';
@@ -145,7 +145,7 @@ export interface ProcessConfig {
145
145
  }
146
146
 
147
147
  /**
148
- * Configuration for the CORE platform: the git-backed workspace/workflow,
148
+ * Configuration for the CORE platform: the git-backed workspace and version control,
149
149
  * skills, tools, secrets vault, access control, and the MCP surface. Contains
150
150
  * NO LLM, connector, or SSO-provider settings — those live on the enterprise
151
151
  * `AppConfig` (config.ts), which extends this class. A core-only deployment
@@ -372,7 +372,7 @@ export class CoreConfig implements TenantConfig, ProcessConfig {
372
372
  readonly trustProxy: string;
373
373
  /**
374
374
  * Deadline in milliseconds on every git command, after which the child is
375
- * killed and the call fails (see `modules/workflow/git/node-git-runner.ts`).
375
+ * killed and the call fails (see `modules/version-control/git/node-git-runner.ts`).
376
376
  *
377
377
  * Configurable because the right ceiling depends on the deployment's own git
378
378
  * host and the size of its knowledge base: a first clone over a slow link can
package/src/index.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @bevel-software/platform-core-backend — the open-source core of the Bevel platform:
3
- * git-backed knowledge workspace, workflow (branches / change requests /
3
+ * git-backed knowledge workspace, version control (branches / change requests /
4
4
  * locks / SSE), skills, tool manuals + registry + auth, secrets vault, access
5
5
  * control, diff/backup ledger, code-mode and the remote MCP surface.
6
6
  *
@@ -122,7 +122,7 @@ export type { ISessionSink } from './modules/workspace/session-sink.js';
122
122
  export type {
123
123
  ISystemNoticeSink,
124
124
  RecoveryAgentRunner,
125
- } from './modules/workflow/pending-commits.worker.js';
125
+ } from './modules/version-control/pending-commits.worker.js';
126
126
  export type { ILlmUsageMeter } from './modules/tool-auth/llm-usage-meter.js';
127
127
  export type { AuthProviderPlugin } from './modules/auth/auth.routes.js';
128
128
  export type { IErasureParticipant } from './modules/auth/account-erasure.service.js';
@@ -144,17 +144,17 @@ export {
144
144
  type IAccountAdmission,
145
145
  } from './modules/auth/account-admission.js';
146
146
  export {
147
- WorkflowHooks,
147
+ VersionControlHooks,
148
148
  type CommitValidationHook,
149
149
  type CommitValidationContext,
150
150
  type AgentOperationContext,
151
151
  type AgentReadHook,
152
152
  type PreWriteHook,
153
- } from './modules/workflow/workflow-hooks.js';
153
+ } from './modules/version-control/version-control-hooks.js';
154
154
  export {
155
155
  ChangeRequestHooks,
156
156
  type ChangeRequestOpenedEvent,
157
157
  type ChangeRequestOpenedHook,
158
158
  type ChangeRequestPerson,
159
159
  type IChangeRequestHooks,
160
- } from './modules/workflow/change-request-hooks.js';
160
+ } from './modules/version-control/change-request-hooks.js';
@@ -9,8 +9,8 @@ import { NodeFs } from '../../kb-fs/node-fs.js';
9
9
 
10
10
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
11
11
  import type { AuthService } from '../../auth/auth.service.js';
12
- import type { WorkflowService } from '../../workflow/workflow.service.js';
13
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
12
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
13
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
14
14
  import { usersDbDouble } from './users-db-double.js';
15
15
  import { AccessControlService } from '../access-control.service.js';
16
16
  import {
@@ -317,8 +317,8 @@ describe('Admin write floor at the repository root', () => {
317
317
  acquireLock: async () => ({ acquired: true, lock: {} }),
318
318
  releaseLock: async () => undefined,
319
319
  releaseLockNoCommit: async () => undefined,
320
- } as unknown as WorkflowService,
321
- { emit: () => {} } as unknown as WorkflowEventBus,
320
+ } as unknown as VersionControlService,
321
+ { emit: () => {} } as unknown as VersionControlEventBus,
322
322
  usersDbDouble(),
323
323
  testKbContext({ kbDirName: KB }),
324
324
  new NodeFs(),
@@ -4,9 +4,9 @@ import fs from 'node:fs/promises';
4
4
  import path from 'node:path';
5
5
  import os from 'node:os';
6
6
 
7
- import type { WorkspaceService } from '../../workspace/workspace.service.js';
7
+ import type { WorkspaceService } from '../../workspace/index.js';
8
8
  import { AccessControlService } from '../access-control.service.js';
9
- import { registerAccessFrontmatterExtensions } from '../../access-model/access-grammar.js';
9
+ import { registerAccessFrontmatterExtensions } from '../../access-model/index.js';
10
10
 
11
11
  const KB = 'knowledge-base';
12
12
 
@@ -74,12 +74,12 @@ describe('a file-own read grant on a whole-document configuration file', () => {
74
74
  beforeEach(async () => {
75
75
  root = await fs.mkdtemp(path.join(os.tmpdir(), 'own-read-'));
76
76
  repo = path.join(root, ws, KB);
77
- await fs.mkdir(path.join(repo, 'Pipelines'), { recursive: true });
77
+ await fs.mkdir(path.join(repo, 'Workflows'), { recursive: true });
78
78
  await fs.mkdir(path.join(repo, 'Agents'), { recursive: true });
79
79
  await fs.writeFile(path.join(repo, 'roles.yaml'), ROLES_YAML);
80
80
  await fs.writeFile(path.join(repo, 'access.md'), '---\nwrite:\n - Admin\ndownload:\n - Admin\nowner: []\n---\n');
81
- await fs.writeFile(path.join(repo, 'Pipelines', 'access.md'), '---\nwrite: []\n---\n');
82
- await fs.writeFile(path.join(repo, 'Pipelines', 'Coding-Delivery.pipeline'), PIPELINE);
81
+ await fs.writeFile(path.join(repo, 'Workflows', 'access.md'), '---\nwrite: []\n---\n');
82
+ await fs.writeFile(path.join(repo, 'Workflows', 'Coding-Delivery.workflow'), PIPELINE);
83
83
  await fs.writeFile(path.join(repo, 'Agents', 'access.md'), '---\nwrite: []\n---\n');
84
84
  await fs.writeFile(path.join(repo, 'Agents', 'delivery-coder.agent'), AGENT);
85
85
  });
@@ -93,26 +93,26 @@ describe('a file-own read grant on a whole-document configuration file', () => {
93
93
  );
94
94
 
95
95
  it('the grantee reads the file (registered kinds)', async () => {
96
- registerAccessFrontmatterExtensions(['.pipeline', '.agent']);
96
+ registerAccessFrontmatterExtensions(['.workflow', '.agent']);
97
97
  const s = svc();
98
- expect(await s.canRead(ws, 'coding-agent@bevel.software', 'Pipelines/Coding-Delivery.pipeline')).toBe(true);
98
+ expect(await s.canRead(ws, 'coding-agent@bevel.software', 'Workflows/Coding-Delivery.workflow')).toBe(true);
99
99
  expect(await s.canRead(ws, 'coding-agent@bevel.software', 'Agents/delivery-coder.agent')).toBe(true);
100
- expect(await s.canWrite(ws, 'coding-agent@bevel.software', 'Pipelines/Coding-Delivery.pipeline')).toBe(true);
100
+ expect(await s.canWrite(ws, 'coding-agent@bevel.software', 'Workflows/Coding-Delivery.workflow')).toBe(true);
101
101
  // Batch path, which the explorer and the tool catalog use.
102
102
  const batch = await s.canReadBatch(ws, 'coding-agent@bevel.software', [
103
- 'Pipelines/Coding-Delivery.pipeline',
103
+ 'Workflows/Coding-Delivery.workflow',
104
104
  'Agents/delivery-coder.agent',
105
- 'Pipelines/README.md',
105
+ 'Workflows/README.md',
106
106
  ]);
107
107
  expect([...batch.entries()]).toEqual([
108
- ['Pipelines/Coding-Delivery.pipeline', true],
108
+ ['Workflows/Coding-Delivery.workflow', true],
109
109
  ['Agents/delivery-coder.agent', true],
110
- ['Pipelines/README.md', false],
110
+ ['Workflows/README.md', false],
111
111
  ]);
112
112
  });
113
113
 
114
114
  it('a stranger does not', async () => {
115
- registerAccessFrontmatterExtensions(['.pipeline', '.agent']);
116
- expect(await svc().canRead(ws, 'someone@else.io', 'Pipelines/Coding-Delivery.pipeline')).toBe(false);
115
+ registerAccessFrontmatterExtensions(['.workflow', '.agent']);
116
+ expect(await svc().canRead(ws, 'someone@else.io', 'Workflows/Coding-Delivery.workflow')).toBe(false);
117
117
  });
118
118
  });
@@ -2,7 +2,7 @@ import type { Server } from 'node:http';
2
2
  import type { AddressInfo } from 'node:net';
3
3
  import express from 'express';
4
4
  import { describe, it, expect, afterEach, vi } from 'vitest';
5
- import { joinBranchFor, type IWorkflowService } from '@bevel-software/platform-shared';
5
+ import { joinBranchFor, type IVersionControlService } from '@bevel-software/platform-shared';
6
6
 
7
7
  import { workspaceIdForBranch } from '../../../shared/workspace-id.js';
8
8
  import { testKbContext, TEST_BRANCH_MODEL } from '../../../__tests__/kb-context.js';
@@ -71,7 +71,7 @@ async function makeHarness(opts: HarnessOpts = {}) {
71
71
  const opened: unknown[] = [];
72
72
  const written: { path: string; text: string }[] = [];
73
73
 
74
- const workflow = {
74
+ const versionControl = {
75
75
  listChangeRequestsAuthoredBy: vi.fn(async () => openCrs),
76
76
  listChangeRequests: vi.fn(async () => openCrs),
77
77
  // The ref list FOLLOWS create and delete, as origin's does: a probe that
@@ -94,7 +94,7 @@ async function makeHarness(opts: HarnessOpts = {}) {
94
94
  latestClosedChangeRequest: vi.fn(async () => lastClosed),
95
95
  getChangeRequest: vi.fn(async (n: number) => ({ number: n, state: 'open' })),
96
96
  getChangeRequestDetail: vi.fn(async () => ({ body: '', ...detail })),
97
- } as unknown as IWorkflowService;
97
+ } as unknown as IVersionControlService;
98
98
 
99
99
  const workspaceService = {
100
100
  getOrCreateForBranch: vi.fn(async (branch: string) => ({ id: workspaceIdForBranch(branch) })),
@@ -143,7 +143,7 @@ async function makeHarness(opts: HarnessOpts = {}) {
143
143
  accessControl,
144
144
  workspaceService,
145
145
  authService: { getUserById: async () => RITA } as unknown as AuthService,
146
- workflow,
146
+ versionControl,
147
147
  lifecycle,
148
148
  kb: testKbContext({ kbDirName: KB }),
149
149
  }),
@@ -153,7 +153,7 @@ async function makeHarness(opts: HarnessOpts = {}) {
153
153
  });
154
154
  const { port } = server.address() as AddressInfo;
155
155
  const base = `http://127.0.0.1:${port}/api/workspace`;
156
- return { server, base, workflow, workspaceService, accessControl, lifecycle, opened, written };
156
+ return { server, base, versionControl, workspaceService, accessControl, lifecycle, opened, written };
157
157
  }
158
158
 
159
159
  const post = (url: string, body: unknown) =>
@@ -264,7 +264,7 @@ describe('POST /workspace/:id/access/request', () => {
264
264
  server = h.server;
265
265
  const res = await post(`${h.base}/${LIVE_WS}/access/request`, folderBody);
266
266
  expect(await res.json()).toMatchObject({ number: 31 });
267
- expect(h.workflow.openChangeRequest).not.toHaveBeenCalled();
267
+ expect(h.versionControl.openChangeRequest).not.toHaveBeenCalled();
268
268
  expect(h.workspaceService.writeFile).not.toHaveBeenCalled();
269
269
  });
270
270
 
@@ -290,7 +290,7 @@ describe('POST /workspace/:id/access/request', () => {
290
290
  const res = await post(`${h.base}/${workspaceIdForBranch('rita/draft')}/access/request`, folderBody);
291
291
  expect(res.status).toBe(400);
292
292
  expect(await res.json()).toMatchObject({ kind: 'not-live-workspace' });
293
- expect(h.workflow.openChangeRequest).not.toHaveBeenCalled();
293
+ expect(h.versionControl.openChangeRequest).not.toHaveBeenCalled();
294
294
  });
295
295
 
296
296
  it('answers as unknown for an item the caller cannot read', async () => {
@@ -298,7 +298,7 @@ describe('POST /workspace/:id/access/request', () => {
298
298
  server = h.server;
299
299
  const res = await post(`${h.base}/${LIVE_WS}/access/request`, folderBody);
300
300
  expect(res.status).toBe(404);
301
- expect(h.workflow.openChangeRequest).not.toHaveBeenCalled();
301
+ expect(h.versionControl.openChangeRequest).not.toHaveBeenCalled();
302
302
  });
303
303
 
304
304
  it('refuses an editor — they have the dialog, not a request', async () => {
@@ -329,7 +329,7 @@ describe('POST /workspace/:id/access/request', () => {
329
329
  expect(
330
330
  (await post(`${h.base}/${LIVE_WS}/access/request`, { ...folderBody, note: 'x'.repeat(501) })).status,
331
331
  ).toBe(400);
332
- expect(h.workflow.openChangeRequest).not.toHaveBeenCalled();
332
+ expect(h.versionControl.openChangeRequest).not.toHaveBeenCalled();
333
333
  });
334
334
  });
335
335
 
@@ -517,10 +517,10 @@ describe('a branch left over from an answered request', () => {
517
517
  const res = await post(`${h.base}/${LIVE_WS}/access/request`, folderBody);
518
518
 
519
519
  expect(res.status).toBe(200);
520
- expect(h.workflow.deleteBranch).toHaveBeenCalledWith(LIVE_WS, stale, expect.anything());
521
- expect(h.workflow.createBranch).toHaveBeenCalledWith(LIVE_WS, stale, LIVE);
520
+ expect(h.versionControl.deleteBranch).toHaveBeenCalledWith(LIVE_WS, stale, expect.anything());
521
+ expect(h.versionControl.createBranch).toHaveBeenCalledWith(LIVE_WS, stale, LIVE);
522
522
  // Order matters: recut first, THEN write the proposal onto it.
523
- const deleted = (h.workflow.deleteBranch as ReturnType<typeof vi.fn>).mock.invocationCallOrder[0];
523
+ const deleted = (h.versionControl.deleteBranch as ReturnType<typeof vi.fn>).mock.invocationCallOrder[0];
524
524
  const written = (h.workspaceService.writeFile as ReturnType<typeof vi.fn>).mock.invocationCallOrder[0];
525
525
  expect(deleted).toBeLessThan(written);
526
526
  });
@@ -529,20 +529,20 @@ describe('a branch left over from an answered request', () => {
529
529
  const h = await makeHarness();
530
530
  server = h.server;
531
531
  await post(`${h.base}/${LIVE_WS}/access/request`, folderBody);
532
- expect(h.workflow.deleteBranch).not.toHaveBeenCalled();
533
- expect(h.workflow.createBranch).toHaveBeenCalledWith(LIVE_WS, stale, LIVE);
532
+ expect(h.versionControl.deleteBranch).not.toHaveBeenCalled();
533
+ expect(h.versionControl.createBranch).toHaveBeenCalledWith(LIVE_WS, stale, LIVE);
534
534
  });
535
535
 
536
536
  it('still opens the request when the recut fails, rather than refusing the person', async () => {
537
537
  vi.spyOn(console, 'warn').mockImplementation(() => {});
538
538
  const h = await makeHarness({ existingBranches: [stale] });
539
- (h.workflow.deleteBranch as ReturnType<typeof vi.fn>).mockRejectedValueOnce(
539
+ (h.versionControl.deleteBranch as ReturnType<typeof vi.fn>).mockRejectedValueOnce(
540
540
  new Error('the branch could not be removed'),
541
541
  );
542
542
  server = h.server;
543
543
  const res = await post(`${h.base}/${LIVE_WS}/access/request`, folderBody);
544
544
  expect(res.status).toBe(200);
545
- expect(h.workflow.openChangeRequest).toHaveBeenCalled();
545
+ expect(h.versionControl.openChangeRequest).toHaveBeenCalled();
546
546
  });
547
547
 
548
548
  it('answers with the rival request when one opened while the recut was under way', async () => {
@@ -551,16 +551,16 @@ describe('a branch left over from an answered request', () => {
551
551
  // request is what they both get.
552
552
  const h = await makeHarness({ existingBranches: [stale] });
553
553
  let listings = 0;
554
- (h.workflow.listChangeRequests as ReturnType<typeof vi.fn>).mockImplementation(async () =>
554
+ (h.versionControl.listChangeRequests as ReturnType<typeof vi.fn>).mockImplementation(async () =>
555
555
  listings++ === 0 ? [] : [{ number: 55, branch: stale, state: 'open' }],
556
556
  );
557
- (h.workflow.deleteBranch as ReturnType<typeof vi.fn>).mockRejectedValueOnce(
557
+ (h.versionControl.deleteBranch as ReturnType<typeof vi.fn>).mockRejectedValueOnce(
558
558
  new Error('Branch has an open change request (#55).'),
559
559
  );
560
560
  server = h.server;
561
561
  const res = await post(`${h.base}/${LIVE_WS}/access/request`, folderBody);
562
562
  expect(await res.json()).toMatchObject({ number: 55 });
563
- expect(h.workflow.openChangeRequest).not.toHaveBeenCalled();
563
+ expect(h.versionControl.openChangeRequest).not.toHaveBeenCalled();
564
564
  });
565
565
 
566
566
  it('answers a re-send with the level the OPEN request asks for, not the one just sent', async () => {
@@ -609,7 +609,7 @@ describe('what a failed send tells the person', () => {
609
609
  // reader2/join-artest3-04i7dr4-0nxlotq and try again" is not.
610
610
  vi.spyOn(console, 'warn').mockImplementation(() => {});
611
611
  const h = await makeHarness();
612
- (h.workflow.openChangeRequest as ReturnType<typeof vi.fn>).mockRejectedValueOnce(
612
+ (h.versionControl.openChangeRequest as ReturnType<typeof vi.fn>).mockRejectedValueOnce(
613
613
  new ChangeRequestConflictsError(joinBranchFor(RITA.email, FOLDER), LIVE, [
614
614
  `${FOLDER}/access.md`,
615
615
  ]),
@@ -10,8 +10,8 @@ import { AccessControlService } from '../access-control.service.js';
10
10
  import { NodeFs } from '../../kb-fs/node-fs.js';
11
11
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
12
12
  import type { AuthService } from '../../auth/auth.service.js';
13
- import type { WorkflowService } from '../../workflow/workflow.service.js';
14
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
13
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
14
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
15
15
  import { createAccessRoutes } from '../access.routes.js';
16
16
  import { usersDbDouble } from './users-db-double.js';
17
17
  import { testKbContext } from '../../../__tests__/kb-context.js';
@@ -93,8 +93,8 @@ async function makeHarness(
93
93
  workspaceService,
94
94
  authService,
95
95
  authService,
96
- {} as unknown as WorkflowService,
97
- { emit: vi.fn() } as unknown as WorkflowEventBus,
96
+ {} as unknown as VersionControlService,
97
+ { emit: vi.fn() } as unknown as VersionControlEventBus,
98
98
  db,
99
99
  testKbContext({ kbDirName: KB }),
100
100
  new NodeFs(),
@@ -6,8 +6,8 @@ import { describe, it, expect, afterEach, vi } from 'vitest';
6
6
  import type { IAccessControl } from '../access-control.interface.js';
7
7
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
8
8
  import type { AuthService } from '../../auth/auth.service.js';
9
- import type { WorkflowService } from '../../workflow/workflow.service.js';
10
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
9
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
10
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
11
11
  import { createAccessRoutes } from '../access.routes.js';
12
12
  import { usersDbDouble } from './users-db-double.js';
13
13
  import { testKbContext } from '../../../__tests__/kb-context.js';
@@ -63,8 +63,8 @@ async function makeHarness(): Promise<Harness> {
63
63
  workspaceService,
64
64
  authService,
65
65
  authService,
66
- {} as unknown as WorkflowService,
67
- { emit: vi.fn() } as unknown as WorkflowEventBus,
66
+ {} as unknown as VersionControlService,
67
+ { emit: vi.fn() } as unknown as VersionControlEventBus,
68
68
  usersDbDouble(),
69
69
  testKbContext({ kbDirName: KB }),
70
70
  new NodeFs(),
@@ -10,8 +10,8 @@ import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
10
10
  import type { IAccessControl } from '../access-control.interface.js';
11
11
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
12
12
  import type { AuthService } from '../../auth/auth.service.js';
13
- import type { WorkflowService } from '../../workflow/workflow.service.js';
14
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
13
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
14
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
15
15
  import { createAccessRoutes } from '../access.routes.js';
16
16
  import { usersDbDouble } from './users-db-double.js';
17
17
  import { AccessMutationError, AccessMutationService } from '../access-mutation.service.js';
@@ -137,13 +137,13 @@ describe('access mutations on a file that cannot carry frontmatter', () => {
137
137
  // The third release shape: the caller held the lock and touched nothing,
138
138
  // so disk and commit queue are left exactly as they are.
139
139
  releaseLockUntouched = vi.fn(async () => undefined);
140
- const workflowService = {
140
+ const versionControlService = {
141
141
  getLock: vi.fn(async () => null),
142
142
  acquireLock,
143
143
  releaseLock: vi.fn(async () => undefined),
144
144
  releaseLockNoCommit,
145
145
  releaseLockUntouched,
146
- } as unknown as WorkflowService;
146
+ } as unknown as VersionControlService;
147
147
 
148
148
  const app = express();
149
149
  app.use(express.json());
@@ -158,8 +158,8 @@ describe('access mutations on a file that cannot carry frontmatter', () => {
158
158
  workspaceService,
159
159
  { getUserById: vi.fn(async () => USER) } as unknown as AuthService,
160
160
  { whileSwitchedOn: async (_email: string, write: () => Promise<void>) => write() },
161
- workflowService,
162
- { emit: vi.fn() } as unknown as WorkflowEventBus,
161
+ versionControlService,
162
+ { emit: vi.fn() } as unknown as VersionControlEventBus,
163
163
  usersDbDouble(),
164
164
  testKbContext({ kbDirName: KB }),
165
165
  new NodeFs(),
@@ -7,8 +7,8 @@ import type { IAccessControl } from '../access-control.interface.js';
7
7
  import { AccessControlService } from '../access-control.service.js';
8
8
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
9
9
  import type { AuthService } from '../../auth/auth.service.js';
10
- import type { WorkflowService } from '../../workflow/workflow.service.js';
11
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
10
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
11
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
12
12
  import { createAccessRoutes } from '../access.routes.js';
13
13
  import { usersDbDouble } from './users-db-double.js';
14
14
  import { testKbContext } from '../../../__tests__/kb-context.js';
@@ -85,13 +85,13 @@ async function makeHarness(opts: {
85
85
  } as unknown as WorkspaceService;
86
86
 
87
87
  const authService = { getUserById: vi.fn(async () => USER) } as unknown as AuthService;
88
- const workflowService = {
88
+ const versionControlService = {
89
89
  getLock: vi.fn(async () => null),
90
90
  acquireLock: vi.fn(async () => ({ acquired: true, lock: {} })),
91
91
  releaseLock: vi.fn(async () => undefined),
92
92
  releaseLockNoCommit: vi.fn(async () => undefined),
93
- } as unknown as WorkflowService;
94
- const eventBus = { emit: vi.fn() } as unknown as WorkflowEventBus;
93
+ } as unknown as VersionControlService;
94
+ const eventBus = { emit: vi.fn() } as unknown as VersionControlEventBus;
95
95
  const db = usersDbDouble();
96
96
 
97
97
  const app = express();
@@ -100,7 +100,7 @@ async function makeHarness(opts: {
100
100
  (req as unknown as { userId: string }).userId = USER.id;
101
101
  next();
102
102
  });
103
- app.use('/api', createAccessRoutes(accessControl, workspaceService, authService, authService, workflowService, eventBus, db, testKbContext({ kbDirName: KB }), new NodeFs()));
103
+ app.use('/api', createAccessRoutes(accessControl, workspaceService, authService, authService, versionControlService, eventBus, db, testKbContext({ kbDirName: KB }), new NodeFs()));
104
104
 
105
105
  const server = await new Promise<Server>((resolve) => {
106
106
  const s = app.listen(0, () => resolve(s));
@@ -7,8 +7,8 @@ import type { FileTreeEntry } from '@bevel-software/platform-shared';
7
7
  import type { IAccessControl } from '../access-control.interface.js';
8
8
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
9
9
  import type { AuthService } from '../../auth/auth.service.js';
10
- import type { WorkflowService } from '../../workflow/workflow.service.js';
11
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
10
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
11
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
12
12
  import { createAccessRoutes } from '../access.routes.js';
13
13
  import { usersDbDouble } from './users-db-double.js';
14
14
  import { testKbContext } from '../../../__tests__/kb-context.js';
@@ -87,8 +87,8 @@ async function makeHarness(opts: {
87
87
  } as unknown as WorkspaceService;
88
88
 
89
89
  const authService = { getUserById: vi.fn(async () => USER) } as unknown as AuthService;
90
- const workflowService = {} as unknown as WorkflowService;
91
- const eventBus = { emit: vi.fn() } as unknown as WorkflowEventBus;
90
+ const versionControlService = {} as unknown as VersionControlService;
91
+ const eventBus = { emit: vi.fn() } as unknown as VersionControlEventBus;
92
92
  const db = usersDbDouble();
93
93
 
94
94
  const app = express();
@@ -99,7 +99,7 @@ async function makeHarness(opts: {
99
99
  });
100
100
  app.use(
101
101
  '/api',
102
- createAccessRoutes(accessControl, workspaceService, authService, authService, workflowService, eventBus, db, testKbContext({ kbDirName: KB }), new NodeFs()),
102
+ createAccessRoutes(accessControl, workspaceService, authService, authService, versionControlService, eventBus, db, testKbContext({ kbDirName: KB }), new NodeFs()),
103
103
  );
104
104
 
105
105
  const server = await new Promise<Server>((resolve) => {
@@ -10,8 +10,8 @@ import { NodeFs } from '../../kb-fs/node-fs.js';
10
10
 
11
11
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
12
12
  import type { AuthService } from '../../auth/auth.service.js';
13
- import type { WorkflowService } from '../../workflow/workflow.service.js';
14
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
13
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
14
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
15
15
  import { usersDbDouble } from './users-db-double.js';
16
16
  import { AccessControlService } from '../access-control.service.js';
17
17
  import { createAccessRoutes } from '../access.routes.js';
@@ -115,12 +115,12 @@ describe('access routes on a proposal branch (real git)', () => {
115
115
  git(repo, 'add', '-A');
116
116
  git(repo, 'commit', '-q', '-m', `access: ${wsPath} on ${branch}`);
117
117
  });
118
- const workflowService = {
118
+ const versionControlService = {
119
119
  getLock: async () => null,
120
120
  acquireLock: async () => ({ acquired: true, lock: {} }),
121
121
  releaseLock,
122
122
  releaseLockNoCommit: async () => undefined,
123
- } as unknown as WorkflowService;
123
+ } as unknown as VersionControlService;
124
124
 
125
125
  const app = express();
126
126
  app.use(express.json());
@@ -135,8 +135,8 @@ describe('access routes on a proposal branch (real git)', () => {
135
135
  workspaceService,
136
136
  authService,
137
137
  authService,
138
- workflowService,
139
- { emit: () => {} } as unknown as WorkflowEventBus,
138
+ versionControlService,
139
+ { emit: () => {} } as unknown as VersionControlEventBus,
140
140
  usersDbDouble(),
141
141
  testKbContext({ kbDirName: KB }),
142
142
  new NodeFs(),
@@ -6,7 +6,7 @@ import { describe, it, expect, afterEach, vi } from 'vitest';
6
6
  import type { HolderChanges, IAccessControl, ProspectiveHolders } from '../access-control.interface.js';
7
7
  import type { WorkspaceService } from '../../workspace/index.js';
8
8
  import type { AuthService } from '../../auth/index.js';
9
- import type { WorkflowEventBus, WorkflowService } from '../../workflow/index.js';
9
+ import type { VersionControlEventBus, VersionControlService } from '../../version-control/index.js';
10
10
  import type { Database } from '../../database/index.js';
11
11
  import { createAccessRoutes } from '../access.routes.js';
12
12
  import { testKbContext } from '../../../__tests__/kb-context.js';
@@ -76,8 +76,8 @@ async function makeHarness(opts: { canRead?: boolean; readable?: (path: string)
76
76
  {} as unknown as WorkspaceService,
77
77
  { getUserById: vi.fn(async () => USER) } as unknown as AuthService,
78
78
  { whileSwitchedOn: async (_email: string, write: () => Promise<void>) => write() },
79
- {} as unknown as WorkflowService,
80
- { emit: vi.fn() } as unknown as WorkflowEventBus,
79
+ {} as unknown as VersionControlService,
80
+ { emit: vi.fn() } as unknown as VersionControlEventBus,
81
81
  {} as unknown as Database,
82
82
  testKbContext({ kbDirName: KB }),
83
83
  realDisk(),
@@ -6,8 +6,8 @@ import { describe, it, expect, afterEach, vi } from 'vitest';
6
6
  import type { IAccessControl, GrantSources } from '../access-control.interface.js';
7
7
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
8
8
  import type { AuthService } from '../../auth/auth.service.js';
9
- import type { WorkflowService } from '../../workflow/workflow.service.js';
10
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
9
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
10
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
11
11
  import { createAccessRoutes } from '../access.routes.js';
12
12
  import { usersDbDouble } from './users-db-double.js';
13
13
  import { testKbContext } from '../../../__tests__/kb-context.js';
@@ -121,14 +121,14 @@ async function makeHarness(opts: {
121
121
  const acquireLock = vi.fn(async () => ({ acquired: true, lock: {} }));
122
122
  const releaseLock = vi.fn(async () => undefined);
123
123
  const releaseLockNoCommit = vi.fn(async () => undefined);
124
- const workflowService = {
124
+ const versionControlService = {
125
125
  getLock: vi.fn(async () => null),
126
126
  acquireLock,
127
127
  releaseLock,
128
128
  releaseLockNoCommit,
129
- } as unknown as WorkflowService;
129
+ } as unknown as VersionControlService;
130
130
 
131
- const eventBus = { emit: vi.fn() } as unknown as WorkflowEventBus;
131
+ const eventBus = { emit: vi.fn() } as unknown as VersionControlEventBus;
132
132
  const db = usersDbDouble();
133
133
 
134
134
  const app = express();
@@ -137,7 +137,7 @@ async function makeHarness(opts: {
137
137
  (req as unknown as { userId: string }).userId = USER.id;
138
138
  next();
139
139
  });
140
- app.use('/api', createAccessRoutes(accessControl, workspaceService, authService, authService, workflowService, eventBus, db, testKbContext({ kbDirName: KB }), new NodeFs()));
140
+ app.use('/api', createAccessRoutes(accessControl, workspaceService, authService, authService, versionControlService, eventBus, db, testKbContext({ kbDirName: KB }), new NodeFs()));
141
141
 
142
142
  const server = await new Promise<Server>((resolve) => {
143
143
  const s = app.listen(0, () => resolve(s));
@@ -6,8 +6,8 @@ import { describe, it, expect, afterEach, vi } from 'vitest';
6
6
  import type { IAccessControl } from '../access-control.interface.js';
7
7
  import type { WorkspaceService } from '../../workspace/workspace.service.js';
8
8
  import type { AuthService } from '../../auth/auth.service.js';
9
- import type { WorkflowService } from '../../workflow/workflow.service.js';
10
- import type { WorkflowEventBus } from '../../workflow/event-bus.js';
9
+ import type { VersionControlService } from '../../version-control/version-control.service.js';
10
+ import type { VersionControlEventBus } from '../../version-control/event-bus.js';
11
11
  import { createAccessRoutes } from '../access.routes.js';
12
12
  import type { Database } from '../../database/connection.js';
13
13
  import { usersDbDouble } from './users-db-double.js';
@@ -89,12 +89,12 @@ async function makeHarness(opts: {
89
89
  } as unknown as WorkspaceService;
90
90
 
91
91
  const authService = { getUserById: vi.fn(async () => USER) } as unknown as AuthService;
92
- const workflowService = {
92
+ const versionControlService = {
93
93
  getLock: vi.fn(async () => null),
94
94
  acquireLock: vi.fn(async () => ({ acquired: true, lock: {} })),
95
95
  releaseLock: vi.fn(async () => undefined),
96
96
  releaseLockNoCommit: vi.fn(async () => undefined),
97
- } as unknown as WorkflowService;
97
+ } as unknown as VersionControlService;
98
98
 
99
99
  const app = express();
100
100
  app.use(express.json());
@@ -109,8 +109,8 @@ async function makeHarness(opts: {
109
109
  workspaceService,
110
110
  authService,
111
111
  authService,
112
- workflowService,
113
- { emit: vi.fn() } as unknown as WorkflowEventBus,
112
+ versionControlService,
113
+ { emit: vi.fn() } as unknown as VersionControlEventBus,
114
114
  opts.db ?? usersDbDouble(opts.accounts ?? []),
115
115
  testKbContext({ kbDirName: KB }),
116
116
  new NodeFs(),
@@ -1,8 +1,8 @@
1
1
  import { describe, it, expect, vi } from 'vitest';
2
2
 
3
3
  import { AdminLockedCommits } from '../admin-locked-commit.js';
4
- import { PushNeedsAgentResolutionError, WorkflowDomainError } from '../../../shared/domain-errors.js';
5
- import type { AuthUser, IWorkspaceService, IWorkflowService } from '@bevel-software/platform-shared';
4
+ import { PushNeedsAgentResolutionError, VersionControlDomainError } from '../../../shared/domain-errors.js';
5
+ import type { AuthUser, IWorkspaceService, IVersionControlService } from '@bevel-software/platform-shared';
6
6
 
7
7
  const KB = 'knowledge-base';
8
8
  const BRANCH = 'main';
@@ -41,7 +41,7 @@ function makeHarness(opts: {
41
41
  deleteFile: async (_id: string, wsRel: string) => void files.delete(wsRel),
42
42
  } as unknown as IWorkspaceService;
43
43
 
44
- const workflowService = {
44
+ const versionControlService = {
45
45
  acquireLock: vi.fn(async (_w: string, _b: string, p: string, user: AuthUser) => {
46
46
  if (locks.has(p)) return { acquired: false, lock: { holderUserId: 'x', holderName: 'X' } };
47
47
  locks.set(p, user);
@@ -60,14 +60,14 @@ function makeHarness(opts: {
60
60
  if (opts.commitError) throw opts.commitError;
61
61
  return {};
62
62
  }),
63
- } as unknown as IWorkflowService;
63
+ } as unknown as IVersionControlService;
64
64
 
65
65
  const locked = new AdminLockedCommits({
66
66
  workspaceService,
67
- workflowService,
67
+ versionControlService,
68
68
  kbDirName: KB,
69
69
  defaultBranchOf: () => BRANCH,
70
- makeError: (message, status, payload) => new WorkflowDomainError(message, status, payload),
70
+ makeError: (message, status, payload) => new VersionControlDomainError(message, status, payload),
71
71
  logTag: 'test-admin',
72
72
  contendedSubject: 'Things',
73
73
  });