@bevel-software/platform-core-backend 0.4.1 → 0.5.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 (305) hide show
  1. package/THIRD-PARTY-NOTICES.md +6118 -0
  2. package/dist/core/core-ports.d.ts +15 -0
  3. package/dist/core/core-ports.d.ts.map +1 -1
  4. package/dist/core/core-ports.js.map +1 -1
  5. package/dist/core/create-core-server.d.ts.map +1 -1
  6. package/dist/core/create-core-server.js +40 -6
  7. package/dist/core/create-core-server.js.map +1 -1
  8. package/dist/core/create-core-services.d.ts +17 -1
  9. package/dist/core/create-core-services.d.ts.map +1 -1
  10. package/dist/core/create-core-services.js +153 -29
  11. package/dist/core/create-core-services.js.map +1 -1
  12. package/dist/core-config.d.ts +70 -21
  13. package/dist/core-config.d.ts.map +1 -1
  14. package/dist/core-config.js +134 -58
  15. package/dist/core-config.js.map +1 -1
  16. package/dist/modules/access/access-control.interface.d.ts +6 -0
  17. package/dist/modules/access/access-control.interface.d.ts.map +1 -1
  18. package/dist/modules/access/access-control.service.d.ts +74 -5
  19. package/dist/modules/access/access-control.service.d.ts.map +1 -1
  20. package/dist/modules/access/access-control.service.js +116 -15
  21. package/dist/modules/access/access-control.service.js.map +1 -1
  22. package/dist/modules/access/access-declarations.d.ts +93 -0
  23. package/dist/modules/access/access-declarations.d.ts.map +1 -0
  24. package/dist/modules/access/access-declarations.js +168 -0
  25. package/dist/modules/access/access-declarations.js.map +1 -0
  26. package/dist/modules/access/access-mutation.service.js +4 -4
  27. package/dist/modules/access/access-mutation.service.js.map +1 -1
  28. package/dist/modules/access/access-splice.d.ts +16 -1
  29. package/dist/modules/access/access-splice.d.ts.map +1 -1
  30. package/dist/modules/access/access-splice.js +40 -21
  31. package/dist/modules/access/access-splice.js.map +1 -1
  32. package/dist/modules/access/access.routes.d.ts.map +1 -1
  33. package/dist/modules/access/access.routes.js +51 -0
  34. package/dist/modules/access/access.routes.js.map +1 -1
  35. package/dist/modules/access/creator-access.d.ts +8 -0
  36. package/dist/modules/access/creator-access.d.ts.map +1 -1
  37. package/dist/modules/access/creator-access.js +21 -2
  38. package/dist/modules/access/creator-access.js.map +1 -1
  39. package/dist/modules/admin/admin-access.service.d.ts +1 -1
  40. package/dist/modules/admin/admin-access.service.d.ts.map +1 -1
  41. package/dist/modules/admin/admin-access.service.js +3 -2
  42. package/dist/modules/admin/admin-access.service.js.map +1 -1
  43. package/dist/modules/auth/auth.routes.d.ts.map +1 -1
  44. package/dist/modules/auth/auth.routes.js +50 -1
  45. package/dist/modules/auth/auth.routes.js.map +1 -1
  46. package/dist/modules/auth/auth.service.d.ts +39 -10
  47. package/dist/modules/auth/auth.service.d.ts.map +1 -1
  48. package/dist/modules/auth/auth.service.js +38 -16
  49. package/dist/modules/auth/auth.service.js.map +1 -1
  50. package/dist/modules/database/core-schema.d.ts +124 -0
  51. package/dist/modules/database/core-schema.d.ts.map +1 -1
  52. package/dist/modules/database/core-schema.js +45 -0
  53. package/dist/modules/database/core-schema.js.map +1 -1
  54. package/dist/modules/groups/group-provision.service.d.ts +130 -0
  55. package/dist/modules/groups/group-provision.service.d.ts.map +1 -0
  56. package/dist/modules/groups/group-provision.service.js +288 -0
  57. package/dist/modules/groups/group-provision.service.js.map +1 -0
  58. package/dist/modules/groups/groups.contract.d.ts +106 -0
  59. package/dist/modules/groups/groups.contract.d.ts.map +1 -0
  60. package/dist/modules/groups/groups.contract.js +36 -0
  61. package/dist/modules/groups/groups.contract.js.map +1 -0
  62. package/dist/modules/groups/groups.routes.d.ts +42 -0
  63. package/dist/modules/groups/groups.routes.d.ts.map +1 -0
  64. package/dist/modules/groups/groups.routes.js +379 -0
  65. package/dist/modules/groups/groups.routes.js.map +1 -0
  66. package/dist/modules/groups/groups.service.d.ts +60 -0
  67. package/dist/modules/groups/groups.service.d.ts.map +1 -0
  68. package/dist/modules/groups/groups.service.js +172 -0
  69. package/dist/modules/groups/groups.service.js.map +1 -0
  70. package/dist/modules/groups/index.d.ts +7 -0
  71. package/dist/modules/groups/index.d.ts.map +1 -0
  72. package/dist/modules/groups/index.js +6 -0
  73. package/dist/modules/groups/index.js.map +1 -0
  74. package/dist/modules/groups/join-proposals.d.ts +53 -0
  75. package/dist/modules/groups/join-proposals.d.ts.map +1 -0
  76. package/dist/modules/groups/join-proposals.js +67 -0
  77. package/dist/modules/groups/join-proposals.js.map +1 -0
  78. package/dist/modules/groups/join-requests.service.d.ts +81 -0
  79. package/dist/modules/groups/join-requests.service.d.ts.map +1 -0
  80. package/dist/modules/groups/join-requests.service.js +135 -0
  81. package/dist/modules/groups/join-requests.service.js.map +1 -0
  82. package/dist/modules/secrets-vault/secrets-vault.routes.d.ts +20 -0
  83. package/dist/modules/secrets-vault/secrets-vault.routes.d.ts.map +1 -1
  84. package/dist/modules/secrets-vault/secrets-vault.routes.js +59 -11
  85. package/dist/modules/secrets-vault/secrets-vault.routes.js.map +1 -1
  86. package/dist/modules/settings/deployment-settings.service.d.ts +129 -0
  87. package/dist/modules/settings/deployment-settings.service.d.ts.map +1 -0
  88. package/dist/modules/settings/deployment-settings.service.js +368 -0
  89. package/dist/modules/settings/deployment-settings.service.js.map +1 -0
  90. package/dist/modules/settings/setup.routes.d.ts +49 -0
  91. package/dist/modules/settings/setup.routes.d.ts.map +1 -0
  92. package/dist/modules/settings/setup.routes.js +292 -0
  93. package/dist/modules/settings/setup.routes.js.map +1 -0
  94. package/dist/modules/skills/index.d.ts +2 -1
  95. package/dist/modules/skills/index.d.ts.map +1 -1
  96. package/dist/modules/skills/index.js +1 -0
  97. package/dist/modules/skills/index.js.map +1 -1
  98. package/dist/modules/skills/pending-skills.service.d.ts +40 -0
  99. package/dist/modules/skills/pending-skills.service.d.ts.map +1 -0
  100. package/dist/modules/skills/pending-skills.service.js +147 -0
  101. package/dist/modules/skills/pending-skills.service.js.map +1 -0
  102. package/dist/modules/skills/skills.contract.d.ts +32 -3
  103. package/dist/modules/skills/skills.contract.d.ts.map +1 -1
  104. package/dist/modules/skills/skills.contract.js +1 -1
  105. package/dist/modules/skills/skills.routes.d.ts +3 -2
  106. package/dist/modules/skills/skills.routes.d.ts.map +1 -1
  107. package/dist/modules/skills/skills.routes.js +18 -1
  108. package/dist/modules/skills/skills.routes.js.map +1 -1
  109. package/dist/modules/skills/skills.service.d.ts +22 -0
  110. package/dist/modules/skills/skills.service.d.ts.map +1 -1
  111. package/dist/modules/skills/skills.service.js +24 -12
  112. package/dist/modules/skills/skills.service.js.map +1 -1
  113. package/dist/modules/tool-manuals/index.d.ts +1 -1
  114. package/dist/modules/tool-manuals/index.d.ts.map +1 -1
  115. package/dist/modules/tool-manuals/index.js.map +1 -1
  116. package/dist/modules/tool-manuals/tool-manuals.contract.d.ts +47 -2
  117. package/dist/modules/tool-manuals/tool-manuals.contract.d.ts.map +1 -1
  118. package/dist/modules/tool-manuals/tool-manuals.contract.js +1 -1
  119. package/dist/modules/tool-manuals/tool-manuals.routes.d.ts +4 -0
  120. package/dist/modules/tool-manuals/tool-manuals.routes.d.ts.map +1 -1
  121. package/dist/modules/tool-manuals/tool-manuals.routes.js +23 -0
  122. package/dist/modules/tool-manuals/tool-manuals.routes.js.map +1 -1
  123. package/dist/modules/tool-manuals/tool-manuals.service.d.ts +3 -1
  124. package/dist/modules/tool-manuals/tool-manuals.service.d.ts.map +1 -1
  125. package/dist/modules/tool-manuals/tool-manuals.service.js +84 -17
  126. package/dist/modules/tool-manuals/tool-manuals.service.js.map +1 -1
  127. package/dist/modules/tool-manuals/tool-manuals.tools.d.ts.map +1 -1
  128. package/dist/modules/tool-manuals/tool-manuals.tools.js +6 -2
  129. package/dist/modules/tool-manuals/tool-manuals.tools.js.map +1 -1
  130. package/dist/modules/workflow/agent-tools/workflow.tools.d.ts.map +1 -1
  131. package/dist/modules/workflow/agent-tools/workflow.tools.js +4 -2
  132. package/dist/modules/workflow/agent-tools/workflow.tools.js.map +1 -1
  133. package/dist/modules/workflow/event-bus.d.ts +11 -0
  134. package/dist/modules/workflow/event-bus.d.ts.map +1 -1
  135. package/dist/modules/workflow/event-bus.js +22 -0
  136. package/dist/modules/workflow/event-bus.js.map +1 -1
  137. package/dist/modules/workflow/file-lock.service.d.ts +9 -0
  138. package/dist/modules/workflow/file-lock.service.d.ts.map +1 -1
  139. package/dist/modules/workflow/file-lock.service.js +16 -0
  140. package/dist/modules/workflow/file-lock.service.js.map +1 -1
  141. package/dist/modules/workflow/git/branch-name.d.ts +1 -1
  142. package/dist/modules/workflow/git/branch-name.d.ts.map +1 -1
  143. package/dist/modules/workflow/git/branch-name.js +1 -1
  144. package/dist/modules/workflow/git/branch-name.js.map +1 -1
  145. package/dist/modules/workflow/git/git.service.d.ts +31 -2
  146. package/dist/modules/workflow/git/git.service.d.ts.map +1 -1
  147. package/dist/modules/workflow/git/git.service.js +144 -52
  148. package/dist/modules/workflow/git/git.service.js.map +1 -1
  149. package/dist/modules/workflow/git/pull-request.service.d.ts +12 -6
  150. package/dist/modules/workflow/git/pull-request.service.d.ts.map +1 -1
  151. package/dist/modules/workflow/git/pull-request.service.js +19 -9
  152. package/dist/modules/workflow/git/pull-request.service.js.map +1 -1
  153. package/dist/modules/workflow/review-workflow/review-workflow.service.d.ts.map +1 -1
  154. package/dist/modules/workflow/review-workflow/review-workflow.service.js +12 -3
  155. package/dist/modules/workflow/review-workflow/review-workflow.service.js.map +1 -1
  156. package/dist/modules/workflow/workflow.routes.d.ts.map +1 -1
  157. package/dist/modules/workflow/workflow.routes.js +95 -14
  158. package/dist/modules/workflow/workflow.routes.js.map +1 -1
  159. package/dist/modules/workflow/workflow.service.d.ts +92 -3
  160. package/dist/modules/workflow/workflow.service.d.ts.map +1 -1
  161. package/dist/modules/workflow/workflow.service.js +381 -108
  162. package/dist/modules/workflow/workflow.service.js.map +1 -1
  163. package/dist/modules/workspace/bevel-ignore.d.ts +5 -0
  164. package/dist/modules/workspace/bevel-ignore.d.ts.map +1 -1
  165. package/dist/modules/workspace/bevel-ignore.js +5 -1
  166. package/dist/modules/workspace/bevel-ignore.js.map +1 -1
  167. package/dist/modules/workspace/kb-seed.interface.d.ts +1 -1
  168. package/dist/modules/workspace/kb-seed.service.d.ts +60 -5
  169. package/dist/modules/workspace/kb-seed.service.d.ts.map +1 -1
  170. package/dist/modules/workspace/kb-seed.service.js +228 -51
  171. package/dist/modules/workspace/kb-seed.service.js.map +1 -1
  172. package/dist/modules/workspace/workspace.routes.d.ts +2 -1
  173. package/dist/modules/workspace/workspace.routes.d.ts.map +1 -1
  174. package/dist/modules/workspace/workspace.routes.js +51 -18
  175. package/dist/modules/workspace/workspace.routes.js.map +1 -1
  176. package/dist/modules/workspace/workspace.service.d.ts +16 -4
  177. package/dist/modules/workspace/workspace.service.d.ts.map +1 -1
  178. package/dist/modules/workspace/workspace.service.js +36 -9
  179. package/dist/modules/workspace/workspace.service.js.map +1 -1
  180. package/dist/modules/workspace/workspace.tools.d.ts.map +1 -1
  181. package/dist/modules/workspace/workspace.tools.js +8 -3
  182. package/dist/modules/workspace/workspace.tools.js.map +1 -1
  183. package/dist/shared/kb-layout.test.js +2 -2
  184. package/dist/test-setup.d.ts +2 -0
  185. package/dist/test-setup.d.ts.map +1 -0
  186. package/dist/test-setup.js +18 -0
  187. package/dist/test-setup.js.map +1 -0
  188. package/kb-template/.bevelignore +6 -2
  189. package/kb-template/AGENTS.md +272 -0
  190. package/kb-template/KnowledgeBase/How to get started.md +65 -0
  191. package/kb-template/access.md +36 -36
  192. package/migrations/0002_user_onboarding_done.sql +1 -0
  193. package/migrations/0003_deployment_settings.sql +9 -0
  194. package/migrations/meta/0001_snapshot.json +1486 -0
  195. package/migrations/meta/0002_snapshot.json +1493 -0
  196. package/migrations/meta/0003_snapshot.json +1552 -0
  197. package/migrations/meta/_journal.json +15 -1
  198. package/package.json +5 -4
  199. package/src/__tests__/branch-model.test.ts +79 -0
  200. package/src/__tests__/core-config.admin.test.ts +114 -0
  201. package/src/__tests__/database-url.test.ts +70 -0
  202. package/src/core/core-ports.ts +15 -0
  203. package/src/core/create-core-server.ts +55 -6
  204. package/src/core/create-core-services.ts +201 -36
  205. package/src/core-config.ts +139 -59
  206. package/src/modules/access/__tests__/access-declarations.test.ts +195 -0
  207. package/src/modules/access/__tests__/access-md-format.test.ts +191 -0
  208. package/src/modules/access/__tests__/access-splice.test.ts +21 -0
  209. package/src/modules/access/__tests__/access.routes.overrides.test.ts +214 -0
  210. package/src/modules/access/access-control.interface.ts +11 -0
  211. package/src/modules/access/access-control.service.ts +113 -15
  212. package/src/modules/access/access-declarations.ts +251 -0
  213. package/src/modules/access/access-mutation.service.ts +4 -4
  214. package/src/modules/access/access-splice.ts +64 -21
  215. package/src/modules/access/access.routes.ts +61 -0
  216. package/src/modules/access/creator-access.ts +22 -2
  217. package/src/modules/admin/admin-access.service.ts +4 -3
  218. package/src/modules/auth/__tests__/auth.service.test.ts +57 -0
  219. package/src/modules/auth/__tests__/onboarding-done.route.test.ts +147 -0
  220. package/src/modules/auth/auth.routes.ts +50 -1
  221. package/src/modules/auth/auth.service.ts +55 -17
  222. package/src/modules/database/core-schema.ts +46 -0
  223. package/src/modules/groups/__tests__/group-index.service.test.ts +225 -0
  224. package/src/modules/groups/__tests__/group-provision.service.test.ts +247 -0
  225. package/src/modules/groups/__tests__/groups.routes.test.ts +493 -0
  226. package/src/modules/groups/__tests__/join-proposals.test.ts +101 -0
  227. package/src/modules/groups/__tests__/join-requests.service.test.ts +175 -0
  228. package/src/modules/groups/group-provision.service.ts +328 -0
  229. package/src/modules/groups/groups.contract.ts +107 -0
  230. package/src/modules/groups/groups.routes.ts +433 -0
  231. package/src/modules/groups/groups.service.ts +193 -0
  232. package/src/modules/groups/index.ts +17 -0
  233. package/src/modules/groups/join-proposals.ts +114 -0
  234. package/src/modules/groups/join-requests.service.ts +185 -0
  235. package/src/modules/secrets-vault/__tests__/oauth-return-to.route.test.ts +283 -0
  236. package/src/modules/secrets-vault/secrets-vault.routes.ts +68 -12
  237. package/src/modules/settings/__tests__/deployment-settings.service.test.ts +256 -0
  238. package/src/modules/settings/__tests__/setup.routes.test.ts +201 -0
  239. package/src/modules/settings/deployment-settings.service.ts +419 -0
  240. package/src/modules/settings/setup.routes.ts +317 -0
  241. package/src/modules/skills/__tests__/pending-skills.service.test.ts +240 -0
  242. package/src/modules/skills/__tests__/skills.service.test.ts +13 -13
  243. package/src/modules/skills/index.ts +3 -0
  244. package/src/modules/skills/pending-skills.service.ts +168 -0
  245. package/src/modules/skills/skills.contract.ts +34 -3
  246. package/src/modules/skills/skills.routes.ts +23 -2
  247. package/src/modules/skills/skills.service.ts +24 -16
  248. package/src/modules/tool-manuals/__tests__/tool-manuals.detail.route.test.ts +262 -0
  249. package/src/modules/tool-manuals/__tests__/tool-manuals.mcp-oauth.test.ts +2 -2
  250. package/src/modules/tool-manuals/__tests__/tool-manuals.service.test.ts +61 -23
  251. package/src/modules/tool-manuals/__tests__/tool-manuals.tools.test.ts +156 -156
  252. package/src/modules/tool-manuals/index.ts +2 -0
  253. package/src/modules/tool-manuals/tool-manuals.contract.ts +50 -2
  254. package/src/modules/tool-manuals/tool-manuals.routes.ts +21 -0
  255. package/src/modules/tool-manuals/tool-manuals.service.ts +86 -17
  256. package/src/modules/tool-manuals/tool-manuals.tools.ts +206 -202
  257. package/src/modules/workflow/__tests__/event-bus.test.ts +35 -0
  258. package/src/modules/workflow/__tests__/workflow.service.facade.test.ts +251 -5
  259. package/src/modules/workflow/agent-tools/workflow.tools.ts +4 -2
  260. package/src/modules/workflow/event-bus.ts +25 -0
  261. package/src/modules/workflow/file-lock.service.ts +17 -0
  262. package/src/modules/workflow/git/__tests__/git.service.accessGating.test.ts +9 -49
  263. package/src/modules/workflow/git/__tests__/git.service.changedFilesForPr.test.ts +101 -0
  264. package/src/modules/workflow/git/__tests__/git.service.commitFile.test.ts +219 -211
  265. package/src/modules/workflow/git/__tests__/git.service.fileContentsAtCommit.test.ts +132 -0
  266. package/src/modules/workflow/git/__tests__/git.service.logForFile.test.ts +4 -2
  267. package/src/modules/workflow/git/__tests__/git.service.postMergePull.test.ts +275 -272
  268. package/src/modules/workflow/git/__tests__/git.service.pull.test.ts +5 -0
  269. package/src/modules/workflow/git/__tests__/pull-request.service.viewer-can-cancel.test.ts +44 -0
  270. package/src/modules/workflow/git/branch-name.ts +5 -1
  271. package/src/modules/workflow/git/git.service.ts +159 -62
  272. package/src/modules/workflow/git/pull-request.service.ts +22 -11
  273. package/src/modules/workflow/review-workflow/__tests__/cancel-pr.test.ts +4 -1
  274. package/src/modules/workflow/review-workflow/review-workflow.service.ts +12 -3
  275. package/src/modules/workflow/workflow.routes.ts +91 -13
  276. package/src/modules/workflow/workflow.service.ts +353 -13
  277. package/src/modules/workspace/__tests__/kb-seed.service.test.ts +255 -24
  278. package/src/modules/workspace/__tests__/workspace.routes.create-grant.test.ts +236 -233
  279. package/src/modules/workspace/__tests__/workspace.routes.delete.test.ts +179 -176
  280. package/src/modules/workspace/__tests__/workspace.routes.download.test.ts +320 -303
  281. package/src/modules/workspace/__tests__/workspace.routes.read-gate.test.ts +337 -276
  282. package/src/modules/workspace/__tests__/workspace.tools.test.ts +14 -6
  283. package/src/modules/workspace/bevel-ignore.ts +66 -62
  284. package/src/modules/workspace/kb-seed.interface.ts +1 -1
  285. package/src/modules/workspace/kb-seed.service.ts +247 -53
  286. package/src/modules/workspace/workspace.routes.ts +54 -18
  287. package/src/modules/workspace/workspace.service.ts +45 -7
  288. package/src/modules/workspace/workspace.tools.ts +922 -917
  289. package/src/shared/__tests__/frontmatter-id.test.ts +53 -0
  290. package/src/shared/__tests__/join-request.test.ts +96 -0
  291. package/src/shared/__tests__/kb-layout.group.test.ts +45 -0
  292. package/src/shared/kb-layout.test.ts +2 -2
  293. package/src/test-setup.ts +18 -0
  294. package/kb-template/Agents/README.md +0 -38
  295. package/kb-template/CLAUDE.md +0 -419
  296. package/kb-template/Data/.gitkeep +0 -0
  297. package/kb-template/Data/README.md +0 -39
  298. package/kb-template/KnowledgeBase/README.md +0 -37
  299. package/kb-template/Pipelines/.gitkeep +0 -0
  300. package/kb-template/Pipelines/README.md +0 -38
  301. package/kb-template/Skills/.gitkeep +0 -0
  302. package/kb-template/Skills/README.md +0 -32
  303. package/kb-template/Tools/.gitkeep +0 -0
  304. package/kb-template/Tools/README.md +0 -42
  305. /package/kb-template/{Agents → Groups}/.gitkeep +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.tools.js","sourceRoot":"","sources":["../../../src/modules/workspace/workspace.tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.tools.js","sourceRoot":"","sources":["../../../src/modules/workspace/workspace.tools.ts"],"names":[],"mappings":"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"}
@@ -31,8 +31,8 @@ describe('ontologyOf', () => {
31
31
  // KnowledgeBase paths still classify as before.
32
32
  expect(ontologyOf('KnowledgeBase/Ops/Knowledge/x.md')).toBe('KnowledgeBase/Ops');
33
33
  });
34
- it('returns null for Skills and root config (neutral)', () => {
35
- expect(ontologyOf('Skills/some-skill/SKILL.md')).toBeNull();
34
+ it('returns null for Groups and root config (neutral)', () => {
35
+ expect(ontologyOf('Groups/some-skill/SKILL.md')).toBeNull();
36
36
  expect(ontologyOf('access.md')).toBeNull();
37
37
  expect(ontologyOf('roles.yaml')).toBeNull();
38
38
  });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=test-setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-setup.d.ts","sourceRoot":"","sources":["../src/test-setup.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import { branchModelFromEnv, configureBranchModel } from '@bevel-software/platform-shared';
2
+ /**
3
+ * Apply the branch model before any suite imports something that reads it.
4
+ *
5
+ * The shared module no longer reads `process.env` at import time — both sides
6
+ * configure it during boot instead (`createCoreServices` here, a fetch of
7
+ * `/api/config` in the browser). Suites exercise pieces of the server without
8
+ * going through `createCoreServices`, so the same call has to happen for them.
9
+ *
10
+ * It must live in `setupFiles` rather than `vitest.config.ts`: the config is
11
+ * evaluated in its own module graph, so a call there configures a copy of the
12
+ * shared module that no test ever sees.
13
+ *
14
+ * The values come from the environment the config pins, which keeps the one
15
+ * place the historical two-branch pair is written.
16
+ */
17
+ configureBranchModel(branchModelFromEnv());
18
+ //# sourceMappingURL=test-setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-setup.js","sourceRoot":"","sources":["../src/test-setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAE3F;;;;;;;;;;;;;;GAcG;AACH,oBAAoB,CAAC,kBAAkB,EAAE,CAAC,CAAC"}
@@ -11,11 +11,15 @@
11
11
  # Repo hygiene files that clutter the tree without being node content.
12
12
  .gitignore
13
13
  .gitattributes
14
- # README.md files are the base folders' own documentation — keep them visible.
14
+ AGENTS.md
15
+ # The pre-rename name. Listed so a knowledge base carrying both files hides
16
+ # both — top-up adds AGENTS.md but never deletes the CLAUDE.md beside it.
15
17
  CLAUDE.md
16
18
 
17
19
  # Empty-folder placeholders used only for committing empty dirs.
18
20
  **/.gitkeep
19
21
 
20
22
  **/access.md
21
- roles.yaml
23
+ roles.yaml
24
+
25
+ Groups/
@@ -0,0 +1,272 @@
1
+ # Knowledge base
2
+
3
+ This is a git-backed knowledge base. You are the primary agent responsible for
4
+ maintaining it.
5
+
6
+ > **This file is managed by the platform.** Every server restart replaces it
7
+ > with the current template, so edits made here are overwritten. Deployment- or
8
+ > team-specific conventions belong in files of your own — anywhere under
9
+ > `KnowledgeBase/`, linked from wherever they are needed.
10
+
11
+ **There is no required format for knowledge.** Write markdown the way the
12
+ subject wants to be written: prose, tables, checklists, diagrams, whatever
13
+ serves the reader. Nothing here parses your files into a schema or rejects a
14
+ document for having the wrong shape. If a deployment layers a structured
15
+ knowledge graph on top, it brings its own conventions and its own guide; this
16
+ one describes the platform underneath, which stores files and controls who may
17
+ change them.
18
+
19
+ ## Directory Structure
20
+
21
+ ```text
22
+ knowledge-base/
23
+ ├── KnowledgeBase/ ← the knowledge itself; organise it however suits you
24
+ ├── Groups/ ← one folder per group: its skills AND its tools
25
+ ├── roles.yaml ← identity → role mapping (Admin-only edits)
26
+ └── access.md ← repo-root access-control rules
27
+ ```
28
+
29
+ Only those two folders are structural, and only `Groups/` has a layout the
30
+ platform reads:
31
+
32
+ ```text
33
+ Groups/<Group>/<skill>/SKILL.md a skill
34
+ Groups/<Group>/<name>.tool a tool manual
35
+ Groups/<Group>/access.md who can read/write the whole group
36
+ Groups/personal-<user-id>/… one per person: their own skills, private
37
+ ```
38
+
39
+ Skills and tools live TOGETHER in a group because they share one access
40
+ boundary: a tool a group cannot read is a skill that group cannot run.
41
+
42
+ **Group folders are made through the app, not by writing files.** A group
43
+ exists exactly when its folder carries an `access.md` — a bare directory
44
+ under `Groups/` is not a group and is never listed. A new
45
+ direct child of `Groups/` needs an `access.md` naming who runs it, and the
46
+ write gate refuses a plain write into an unused name there — so do not try to
47
+ create a group by writing a skill into `Groups/<new-name>/…`; it will be
48
+ denied. Send the user to the app's **New group** button (or its
49
+ `POST /api/groups` endpoint), then write into the folder it made. Names
50
+ starting with `personal-` are reserved: one such folder exists per person,
51
+ created automatically with their first personal skill, readable only by its
52
+ owner and never listed as a group — a signed-in user's own skills belong
53
+ there, and move into a group by moving the skill's folder.
54
+
55
+ Everything under `KnowledgeBase/` is yours to arrange. Subfolders, naming,
56
+ whether a topic is one file or twenty — all of it is a judgement call about
57
+ what the next reader needs, not a rule the platform enforces.
58
+
59
+ A deployment may reserve further root folders of its own — `Data/`, `Agents/`
60
+ and `Pipelines/` scaffold an agentic execution layer in some installations.
61
+ They are not part of this template and are not created here; where they exist,
62
+ each carries its own `README.md` describing what belongs in it.
63
+
64
+ ## Access control
65
+
66
+ Write access to any path is governed by `roles.yaml` (who has which role) and
67
+ `access.md` files (which roles/users can write where).
68
+
69
+ - **Roles** in `roles.yaml` map a role name to a list of emails. Role names are
70
+ case- and whitespace-insensitive (`Admin` = `admin` = `ADMIN`; `Product Team`
71
+ = `product team`). The reserved name `deny` cannot be used.
72
+ - **Access rules** live in `access.md` files. Each declares a `write:` list
73
+ whose entries are either grants (bare principal — a role name or
74
+ `Name <email>`) or denials (the lowercase word `deny`, a space, then the
75
+ principal). Capitalised forms like `Deny` are *not* triggers; they are
76
+ treated as part of a name.
77
+ - **Resolution** walks repo root → file directory, accumulating per-principal
78
+ state. User-level entries trump role-level entries. A role denial removes
79
+ only that role's contribution; it does not undo grants from other roles.
80
+ - **`roles.yaml` is editable only by Admin** — hard-coded in the resolver,
81
+ never overridable by an `access.md`.
82
+ - **`access.md` files are picked up at any depth**, so a folder can tighten or
83
+ widen what it inherited from its parent.
84
+
85
+ Rules are enforced at runtime; a malformed `roles.yaml` or `access.md` surfaces
86
+ when access is resolved.
87
+
88
+ ### Direct writes vs change requests
89
+
90
+ File-level write access decides how a change lands on the default branch:
91
+
92
+ - A user — or an agent acting as that user — whose access resolution grants
93
+ **write or owner on every file the change touches** may commit **directly**
94
+ to the default branch.
95
+ - Without that access, the change goes through a **branch + change request**,
96
+ approved by an owner / write-access holder of the affected files.
97
+ - Agents carry exactly their user's access, never more. Before writing to the
98
+ default branch, **ask the user** whether to write directly or go through the
99
+ review flow — and prefer a change request when in doubt, when the change is
100
+ large, or when it touches content the user does not own.
101
+
102
+ ## Skills (`Groups/<Group>/<skill>/SKILL.md`)
103
+
104
+ A skill is a folder holding a `SKILL.md` and whatever files it needs. The
105
+ frontmatter names it and declares which tools it may use:
106
+
107
+ ```yaml
108
+ ---
109
+ name: weekly-newsletter
110
+ description: Drafts the Friday newsletter for review.
111
+ allowed-tools: [slack_post_message]
112
+ ---
113
+ ```
114
+
115
+ The body is the instructions, in plain markdown. `allowed-tools` entries are
116
+ tool names from the `.tool` manuals in the same group — a skill can only reach
117
+ tools its group can read.
118
+
119
+ ## Tool Manuals (`Groups/<Group>/*.tool`)
120
+
121
+ Each group folder holds `*.tool` files — reusable **tool manuals** that let agents call external APIs. They are **not part of the knowledge graph** (never modelled as nodes) and are access-controlled like any other file via `access.md`. Any user who can *read* a `.tool` can use its tools; anyone who can *write* it sets its shared (admin) secrets (see below). Put each manual directly in the group folder whose skills use it. The same
122
+ integration may exist in several groups as separate files (`Everyone/notion.tool`
123
+ and `Finance/notion.tool`), each with its own credentials and access rule —
124
+ a group is a folder, not a registry of unique names.
125
+
126
+ A `.tool` file is JSON or YAML. Its `type` decides how tools are discovered:
127
+
128
+ - **`inline`** — the tools are embedded in the file (no network round-trip to list them).
129
+ - **`http`** — `url` points to an endpoint that returns a UTCP manual.
130
+ - **`mcp`** — `url` is a remote MCP server whose tools are discovered over MCP.
131
+
132
+ **The tool is the frontmatter.** A `.tool` is one `---` YAML block holding *everything* — its `id`, its access verbs (`read:`/`write:`/`owner:`/`download:`), and its config (`type`/`url`/`variables`/…) — all in the same object. Anything after the closing `---` is free-form notes the parser ignores (like a `SKILL.md` body):
133
+
134
+ ```yaml
135
+ ---
136
+ id: my_tool
137
+ write:
138
+ - Product Team
139
+ owner:
140
+ - Jane Doe <jane@x.com>
141
+ type: mcp
142
+ url: https://mcp.example.com
143
+ ---
144
+ ```
145
+
146
+ (A file with no `---` fence is the legacy form — the whole file is the object, so a bare JSON `.tool` still works.)
147
+
148
+ **`id` = variable namespace.** The `id` is the manual's stable identity: it's the UTCP namespace secrets bind to (`<id>_<VAR>`) and its route slug. It must be lowercase `snake_case` and **unique** across all `.tool` files. Resolution is `id` → `name` → the file name (so a `name:` alone works, same as the id system uses for every file). If two files collide, the one saved most recently through the app is auto-suffixed (`my_tool` → `my_tool2`). **Access** declared here gates who can use and edit that tool, exactly like a node's own frontmatter (most specific; overrides the folder `access.md`).
149
+
150
+ **Frontmatter `id` = address.** This is generic, not tool-specific: ANY `.md` or `.tool` file whose frontmatter declares an `id` (or a lowercase snake_case/kebab `name`) is addressable at `/workspace/<branch>/<id>` in the app, exactly like a knowledge node — tools, skills (`SKILL.md`), and plain notes alike. Graph nodes win an id collision; files without frontmatter stay path-addressed.
151
+
152
+ **Remote vs local (`remote`).** A tool is available to remote agents by default. Add `remote: false` for a tool that only works on the user's own machine (e.g. an mcp/http `url` on `localhost`): the hosted remote MCP endpoint then skips it and instead advertises it through the `list_local_tools` tool, which returns the `.tool`'s path so a local agent can read it and self-configure (e.g. add the MCP server to its own client).
153
+
154
+ ### Referencing secrets — `${VAR}` and the `variables` block
155
+
156
+ Anywhere a `.tool` needs a credential (an API key, a token) write a placeholder like `${API_KEY}`. At call time it is filled from the **Secrets Vault** under the key `<id>_<VAR>`, where `<id>` is the manual's resolved id (the same `id` → `name` → file-name resolution described above) — so a manual whose id is `weather` referencing `${API_KEY}` reads the secret `weather_API_KEY`. A secret is therefore bound to exactly one manual; another manual cannot read it.
157
+
158
+ Declare who provisions each variable with an optional top-level `variables` array. Each entry is `{ name, scope, label? }`:
159
+
160
+ - **`scope: admin`** (the **default**) — set **once by a writer** of this `.tool` file; the same value is shared by everyone who uses the tool. Prefer this: keep as much as possible owned by the tool author.
161
+ - **`scope: user`** — set by **each end user** for themselves (their own value, never shared).
162
+
163
+ `name` must match `[A-Za-z0-9_]+`. A referenced `${VAR}` that you don't declare defaults to `admin` — and it still SURFACES automatically: the app detects every `${VAR}` the file actually references and shows it in the secrets UI, so the `variables` block is only needed to change a variable's scope to `user`, give it a label, or declare an OAuth sign-in. Values are entered in the Secrets Vault UI (or the `.tool` editor's sidebar), never in the file itself. A malformed `variables` entry makes the whole file fail to load, so it is never silently mis-scoped.
164
+
165
+ ### Examples
166
+
167
+ An `http` manual that authenticates with a shared org key and a per-user key:
168
+
169
+ ```yaml
170
+ name: weather
171
+ type: http
172
+ url: https://api.weather.example/utcp
173
+ headers:
174
+ Authorization: Bearer ${ORG_KEY}
175
+ X-User-Key: ${USER_KEY}
176
+ variables:
177
+ - { name: ORG_KEY, scope: admin, label: "Org-wide weather.com key" }
178
+ - { name: USER_KEY, scope: user, label: "Your personal weather.com key" }
179
+ ```
180
+
181
+ An `inline` manual with one tool:
182
+
183
+ ```json
184
+ {
185
+ "name": "billing",
186
+ "type": "inline",
187
+ "variables": [{ "name": "BILLING_KEY", "scope": "admin" }],
188
+ "tools": [
189
+ {
190
+ "name": "create_invoice",
191
+ "description": "Create an invoice.",
192
+ "inputs": { "type": "object", "properties": {} },
193
+ "outputs": { "type": "object", "properties": {} },
194
+ "tool_call_template": {
195
+ "call_template_type": "http",
196
+ "http_method": "POST",
197
+ "url": "https://api.billing.example/invoices",
198
+ "headers": { "Authorization": "Bearer ${BILLING_KEY}" }
199
+ }
200
+ }
201
+ ]
202
+ }
203
+ ```
204
+
205
+ ### Adding a third-party tool
206
+
207
+ When asked to add/integrate a product as a tool (e.g. "add Notion", "wire up Linear"), **never invent an endpoint or write a placeholder URL** — a `.tool` pointing at a made-up host is useless:
208
+
209
+ 1. **Find the real endpoint from the vendor's own docs.** Prefer the vendor's official **remote MCP server** if one exists; otherwise fall back to their **REST API** base. No endpoint is named here on purpose — a URL copied into this file would be asserted long after it stopped being true, which is the failure this step exists to prevent. Use web search/extract to confirm the exact URL, transport, and auth scheme — don't answer from memory. If you have no web access or genuinely can't find it, **ask the user** for the endpoint URL and auth instead of guessing.
210
+ 2. **Pick the type from what you found.** An MCP server → `type: mcp` with the official `url` (the MCP transport is HTTP/streamable — use the `https://…` URL, **never** `ws://`/`wss://`). A plain REST/HTTP endpoint → `type: http`. Use `type: inline` only when hand-authoring the individual HTTP calls.
211
+ 3. **An OAuth-protected MCP server usually needs NOTHING beyond `type: mcp` + `url`.** Write just those two and let the app probe the server: it discovers the sign-in provider (MCP authorization spec), registers itself, and surfaces a per-user sign-in on the Connect page. That is the `oauth-auto` case, and for it you must NOT declare `variables` or `headers`.
212
+
213
+ Some providers do not support automatic registration (`oauth-manual` — see the walkthrough below). Those DO need a sign-in variable to hold the client id, and an admin pastes the client secret on the tool's page. You do not have to guess which kind you are facing: write the two lines, then run `list_tool_setup` and read `setup.kind`.
214
+ 4. **For key-based auth, wire it as `variables`, never a hard-coded secret.** Reference credentials as `${VAR}` in `headers` (e.g. `Authorization: Bearer ${NOTION_TOKEN}`) and declare each in the `variables` block with a scope (`admin` = one shared value; `user` = per-user). Users fill the values in the Secrets Vault.
215
+ 5. **Set `remote: false`** only when the tool is reachable ONLY from the user's own machine (e.g. a `localhost` MCP server); otherwise leave it remote-capable.
216
+
217
+ ### Checking what an admin still needs to configure
218
+
219
+ Call the **`list_tool_setup`** tool to see, for every accessible `.tool`, what is configured and what is still missing. Use it whenever a tool isn't working, after adding a tool, or when asked "what do I need to set up?" — then EXPLAIN the remaining steps to the user rather than guessing. Per tool it reports:
220
+
221
+ - **`setup.kind`** (for `type: mcp`): `open` = no credentials needed; `oauth-auto` = the platform registered itself with the server automatically and users just authorize on the **Connect page**; `oauth-manual` = the provider does not support automatic registration, so a tool writer must configure it by hand (below).
222
+ - **Per variable**: `adminConfigured` (the shared value — or, for a sign-in, the owner-side provider setup — is done), `userConfigured` / `authorized` (the CURRENT user's own value / sign-in), and `canWrite` (whether the current user may set the tool's shared config).
223
+
224
+ The listing is scoped by the same access controls as everything else: a `.tool` the caller can't READ doesn't appear at all, and `canWrite` means write access **on that `.tool` file itself** — granted by its frontmatter `write:`/`owner:` verbs or the `access.md` chain, NOT by any platform role. The people who manage a `.tool` file are exactly the people who configure its shared secrets. To delegate a tool to someone, add them to the file's `write:` or `owner:` list (an edit you can make via change request); that alone lets them configure it.
225
+
226
+ **Agents never handle secret VALUES.** Never ask for an API key, token, or client secret in the conversation, and there is no tool to set one. Point the right person at the right surface instead:
227
+
228
+ - **Shared (admin) values and OAuth client secrets** → a tool writer pastes them into the fields on the tool's page in the app (open the `.tool` file; the setup panel is in its sidebar).
229
+ - **Per-user values and sign-ins** → each user enters/authorizes on the **Connect page**.
230
+
231
+ For **`oauth-manual`** (e.g. Google, GitHub, Slack — no dynamic client registration), walk the admin through the one-time setup:
232
+
233
+ 1. Register an OAuth app in the provider's console, with redirect URI `<backend>/api/secrets/oauth/callback`.
234
+ 2. Put the app's **client id** (public) in the `.tool` file's sign-in variable — you can do this edit for them via a change request.
235
+ 3. The admin pastes the app's **client secret** into the "Client secret" field on the tool's page — never into the file, never into the chat.
236
+ 4. Every user then authorizes on the Connect page.
237
+
238
+ ## Conventions
239
+
240
+ These are conventions, not validations — nothing rejects a file for breaking
241
+ them. They exist because a knowledge base people can navigate beats one that is
242
+ merely correct.
243
+
244
+ 1. **Descriptive file names.** `Weekly-Sync-2026-03-14.md` beats `notes3.md`.
245
+ Avoid spaces; they survive git fine but make links noisier to read.
246
+
247
+ 2. **Markdown links between documents.** Use
248
+ `[Page Name](relative/path/to/Page.md)`, relative to the LINKING file's
249
+ directory rather than the repo root, so links resolve both in the app and on
250
+ the git host.
251
+
252
+ 3. **Absolute dates.** `YYYY-MM-DD`, never "last Tuesday" — a saved file
253
+ outlives the moment it was written.
254
+
255
+ 4. **Search before creating.** If a document on the subject exists, extend it
256
+ rather than starting a rival.
257
+
258
+ 5. **Preserve what is there.** Append or edit sections; do not overwrite a file
259
+ wholesale unless asked to.
260
+
261
+ 6. **Say where it came from.** When a claim rests on a specific source — a
262
+ person, a ticket, a document, a URL — name it inline near the claim, with
263
+ the date it was true. The next reader's first question is "says who, and is
264
+ it still true?".
265
+
266
+ ## Finding things
267
+
268
+ - `grep` for keywords across `KnowledgeBase/`.
269
+ - Follow markdown links: when you read `[Some Page](relative/path/Some Page.md)`,
270
+ that path is relative to the file you are reading.
271
+ - `list_files` to see the shape of a folder before assuming where something
272
+ lives.
@@ -0,0 +1,65 @@
1
+ # How to get started
2
+
3
+ Welcome. This workspace is your team's shared home for three things:
4
+
5
+ - **Knowledge**: documents your team writes and trusts, organised however
6
+ suits you.
7
+ - **Skills**: step-by-step instructions your AI agents follow to do real work.
8
+ - **Tools**: the integrations those agents are allowed to call, with the
9
+ credentials kept safe.
10
+
11
+ Everything lives in a git repository your team owns, so every change has an
12
+ author, a history, and a way back.
13
+
14
+ ## Find your way around
15
+
16
+ Use the app switcher in the top-left corner to move between the two views:
17
+
18
+ - **Knowledge** is the reading and writing surface: a file tree on the left,
19
+ the document on the right.
20
+ - **Skills & Tools** is the library: groups of skills and tools, who runs
21
+ them, and what still needs setting up.
22
+
23
+ ## Write your first document
24
+
25
+ Open Knowledge, pick a folder (or create one), and start a page. If you can
26
+ edit a file directly, an **Edit** button appears; if the page belongs to
27
+ someone else, you get **Propose changes** instead. A proposal becomes a
28
+ **change request**: the owner sees exactly what you want to change, and
29
+ nothing moves until they approve it. That is the whole safety model, and it
30
+ applies to agents exactly as it applies to people.
31
+
32
+ ## Set up your group
33
+
34
+ In Skills & Tools, use **New group** to make a place for your team. Creating
35
+ a group makes you the one who runs it: you approve its change requests,
36
+ answer join requests, and manage who can see what (the **Share** button on
37
+ the group page). Skills you create outside any group land in your own private
38
+ space and can move into a group later.
39
+
40
+ ## Give your agents skills and tools
41
+
42
+ - On a group page, **+** adds a skill: name it and an empty skill file opens,
43
+ ready for instructions. Write it the way you would brief a careful new
44
+ colleague: what to load, what to do, what to record.
45
+ - Tools are added as small manual files in the group. Sign-ins and keys are
46
+ entered on the **Connect** page or the tool's own page, never written into
47
+ files.
48
+
49
+ ## Connect your AI agent
50
+
51
+ Open the profile menu and choose **External agent access** to mint a
52
+ connection key, then follow the instructions there to add this workspace to
53
+ your agent (Claude Code and other MCP-capable agents work). The agent sees
54
+ exactly what you can see and can do exactly what you can do, nothing more.
55
+
56
+ ## Good to know
57
+
58
+ - The repo root's `AGENTS.md` is the full reference your agents read. It is
59
+ maintained by the platform, so leave it as it is; team conventions belong in
60
+ documents like this one.
61
+ - Nothing is ever really lost: every version of every file stays in the
62
+ repository's history.
63
+
64
+ Delete this page once your team has found its feet, or keep it for the next
65
+ person who joins.
@@ -1,36 +1,36 @@
1
- ---
2
- write:
3
- - Admin
4
- download:
5
- - Admin
6
- owner: []
7
- ---
8
-
9
- # Repository access
10
-
11
- This file is the root of the access-control tree for this knowledge base. It grants
12
- write access only to the `Admin` role by default. Subfolders can broaden or narrow
13
- access by adding their own `access.md`.
14
-
15
- See [roles.yaml](roles.yaml) for the identity → role mapping. Access resolution and validation
16
- run in the Bevel platform.
17
-
18
- ## Adding a folder-level rule
19
-
20
- Drop an `access.md` into any folder under an ontology's `Knowledge/`. Frontmatter
21
- only — the body is ignored. Example:
22
-
23
- ```yaml
24
- ---
25
- write:
26
- - Admin
27
- - Editor
28
- - Jane Doe <jane.doe@example.com>
29
- - deny Mallory Bad <mallory@example.com>
30
- ---
31
- ```
32
-
33
- Each entry is either a grant (bare principal) or a denial (`deny <principal>` —
34
- **lowercase `deny` only**; capitalised forms like `Deny` are treated as part of a
35
- name). A principal is either a role name (matched case-insensitively against
36
- `roles.yaml`) or a user reference in `Name <email>` form.
1
+ ---
2
+ write:
3
+ - Admin
4
+ download:
5
+ - Admin
6
+ owner: []
7
+ ---
8
+
9
+ # Repository access
10
+
11
+ This file is the root of the access-control tree for this knowledge base. It grants
12
+ write access only to the `Admin` role by default. Subfolders can broaden or narrow
13
+ access by adding their own `access.md`.
14
+
15
+ See [roles.yaml](roles.yaml) for the identity → role mapping. Access resolution and validation
16
+ run in the Bevel platform.
17
+
18
+ ## Adding a folder-level rule
19
+
20
+ Drop an `access.md` into any folder, at any depth. Frontmatter
21
+ only — the body is ignored. Example:
22
+
23
+ ```yaml
24
+ ---
25
+ write:
26
+ - Admin
27
+ - Editor
28
+ - Jane Doe <jane.doe@example.com>
29
+ - deny Mallory Bad <mallory@example.com>
30
+ ---
31
+ ```
32
+
33
+ Each entry is either a grant (bare principal) or a denial (`deny <principal>` —
34
+ **lowercase `deny` only**; capitalised forms like `Deny` are treated as part of a
35
+ name). A principal is either a role name (matched case-insensitively against
36
+ `roles.yaml`) or a user reference in `Name <email>` form.
@@ -0,0 +1 @@
1
+ ALTER TABLE "users" ADD COLUMN "onboarding_done" boolean DEFAULT false NOT NULL;
@@ -0,0 +1,9 @@
1
+ CREATE TABLE "deployment_settings" (
2
+ "key" text PRIMARY KEY NOT NULL,
3
+ "value" text NOT NULL,
4
+ "encrypted" boolean DEFAULT false NOT NULL,
5
+ "updated_by" uuid,
6
+ "updated_at" timestamp DEFAULT now() NOT NULL
7
+ );
8
+ --> statement-breakpoint
9
+ ALTER TABLE "deployment_settings" ADD CONSTRAINT "deployment_settings_updated_by_users_id_fk" FOREIGN KEY ("updated_by") REFERENCES "public"."users"("id") ON DELETE set null ON UPDATE no action;