@stigmer/server 3.15.3-dev.20260914121148 → 3.15.3-dev.20260916211208

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 (555) hide show
  1. package/README.md +3 -3
  2. package/dist/archive/content-store.d.ts +35 -0
  3. package/dist/archive/content-store.d.ts.map +1 -0
  4. package/dist/archive/content-store.js +98 -0
  5. package/dist/archive/content-store.js.map +1 -0
  6. package/dist/archive/inflate.d.ts +22 -0
  7. package/dist/archive/inflate.d.ts.map +1 -0
  8. package/dist/archive/inflate.js +75 -0
  9. package/dist/archive/inflate.js.map +1 -0
  10. package/dist/archive/limits.d.ts +33 -0
  11. package/dist/archive/limits.d.ts.map +1 -0
  12. package/dist/archive/limits.js +31 -0
  13. package/dist/archive/limits.js.map +1 -0
  14. package/dist/archive/open.d.ts +24 -0
  15. package/dist/archive/open.d.ts.map +1 -0
  16. package/dist/archive/open.js +93 -0
  17. package/dist/archive/open.js.map +1 -0
  18. package/dist/{domain/skill/storage → archive}/prefilter.d.ts +5 -0
  19. package/dist/archive/prefilter.d.ts.map +1 -0
  20. package/dist/archive/prefilter.js.map +1 -0
  21. package/dist/archive/write.d.ts +8 -0
  22. package/dist/archive/write.d.ts.map +1 -0
  23. package/dist/archive/write.js +44 -0
  24. package/dist/archive/write.js.map +1 -0
  25. package/dist/authorization/authorizer.d.ts +98 -0
  26. package/dist/authorization/authorizer.d.ts.map +1 -0
  27. package/dist/authorization/authorizer.js +156 -0
  28. package/dist/authorization/authorizer.js.map +1 -0
  29. package/dist/authorization/derived-tuples.d.ts +42 -0
  30. package/dist/authorization/derived-tuples.d.ts.map +1 -0
  31. package/dist/authorization/derived-tuples.js +240 -0
  32. package/dist/authorization/derived-tuples.js.map +1 -0
  33. package/dist/authorization/evaluator.d.ts +66 -0
  34. package/dist/authorization/evaluator.d.ts.map +1 -0
  35. package/dist/authorization/evaluator.js +153 -0
  36. package/dist/authorization/evaluator.js.map +1 -0
  37. package/dist/authorization/facts.d.ts +29 -0
  38. package/dist/authorization/facts.d.ts.map +1 -0
  39. package/dist/authorization/facts.js +17 -0
  40. package/dist/authorization/facts.js.map +1 -0
  41. package/dist/authorization/list-read-scope.d.ts +18 -0
  42. package/dist/authorization/list-read-scope.d.ts.map +1 -0
  43. package/dist/authorization/list-read-scope.js +155 -0
  44. package/dist/authorization/list-read-scope.js.map +1 -0
  45. package/dist/authorization/model/agent.d.ts +2 -0
  46. package/dist/authorization/model/agent.d.ts.map +1 -0
  47. package/dist/authorization/model/agent.js +42 -0
  48. package/dist/authorization/model/agent.js.map +1 -0
  49. package/dist/authorization/model/agent_channel.d.ts +2 -0
  50. package/dist/authorization/model/agent_channel.d.ts.map +1 -0
  51. package/dist/authorization/model/agent_channel.js +38 -0
  52. package/dist/authorization/model/agent_channel.js.map +1 -0
  53. package/dist/authorization/model/agent_execution.d.ts +2 -0
  54. package/dist/authorization/model/agent_execution.d.ts.map +1 -0
  55. package/dist/authorization/model/agent_execution.js +25 -0
  56. package/dist/authorization/model/agent_execution.js.map +1 -0
  57. package/dist/authorization/model/agent_instance.d.ts +2 -0
  58. package/dist/authorization/model/agent_instance.d.ts.map +1 -0
  59. package/dist/authorization/model/agent_instance.js +47 -0
  60. package/dist/authorization/model/agent_instance.js.map +1 -0
  61. package/dist/authorization/model/agent_share.d.ts +2 -0
  62. package/dist/authorization/model/agent_share.d.ts.map +1 -0
  63. package/dist/authorization/model/agent_share.js +29 -0
  64. package/dist/authorization/model/agent_share.js.map +1 -0
  65. package/dist/authorization/model/api_key.d.ts +2 -0
  66. package/dist/authorization/model/api_key.d.ts.map +1 -0
  67. package/dist/authorization/model/api_key.js +27 -0
  68. package/dist/authorization/model/api_key.js.map +1 -0
  69. package/dist/authorization/model/artifact.d.ts +2 -0
  70. package/dist/authorization/model/artifact.d.ts.map +1 -0
  71. package/dist/authorization/model/artifact.js +27 -0
  72. package/dist/authorization/model/artifact.js.map +1 -0
  73. package/dist/authorization/model/channel_app.d.ts +2 -0
  74. package/dist/authorization/model/channel_app.d.ts.map +1 -0
  75. package/dist/authorization/model/channel_app.js +28 -0
  76. package/dist/authorization/model/channel_app.js.map +1 -0
  77. package/dist/authorization/model/default-of.d.ts +38 -0
  78. package/dist/authorization/model/default-of.d.ts.map +1 -0
  79. package/dist/authorization/model/default-of.js +39 -0
  80. package/dist/authorization/model/default-of.js.map +1 -0
  81. package/dist/authorization/model/environment.d.ts +2 -0
  82. package/dist/authorization/model/environment.d.ts.map +1 -0
  83. package/dist/authorization/model/environment.js +33 -0
  84. package/dist/authorization/model/environment.js.map +1 -0
  85. package/dist/authorization/model/execution_context.d.ts +2 -0
  86. package/dist/authorization/model/execution_context.d.ts.map +1 -0
  87. package/dist/authorization/model/execution_context.js +19 -0
  88. package/dist/authorization/model/execution_context.js.map +1 -0
  89. package/dist/authorization/model/iam_policy.d.ts +2 -0
  90. package/dist/authorization/model/iam_policy.d.ts.map +1 -0
  91. package/dist/authorization/model/iam_policy.js +31 -0
  92. package/dist/authorization/model/iam_policy.js.map +1 -0
  93. package/dist/authorization/model/identity_account.d.ts +2 -0
  94. package/dist/authorization/model/identity_account.d.ts.map +1 -0
  95. package/dist/authorization/model/identity_account.js +25 -0
  96. package/dist/authorization/model/identity_account.js.map +1 -0
  97. package/dist/authorization/model/index.d.ts +36 -0
  98. package/dist/authorization/model/index.d.ts.map +1 -0
  99. package/dist/authorization/model/index.js +72 -0
  100. package/dist/authorization/model/index.js.map +1 -0
  101. package/dist/authorization/model/mcp_server.d.ts +2 -0
  102. package/dist/authorization/model/mcp_server.d.ts.map +1 -0
  103. package/dist/authorization/model/mcp_server.js +37 -0
  104. package/dist/authorization/model/mcp_server.js.map +1 -0
  105. package/dist/authorization/model/memory.d.ts +2 -0
  106. package/dist/authorization/model/memory.d.ts.map +1 -0
  107. package/dist/authorization/model/memory.js +26 -0
  108. package/dist/authorization/model/memory.js.map +1 -0
  109. package/dist/authorization/model/oauth_app.d.ts +2 -0
  110. package/dist/authorization/model/oauth_app.d.ts.map +1 -0
  111. package/dist/authorization/model/oauth_app.js +30 -0
  112. package/dist/authorization/model/oauth_app.js.map +1 -0
  113. package/dist/authorization/model/organization.d.ts +2 -0
  114. package/dist/authorization/model/organization.d.ts.map +1 -0
  115. package/dist/authorization/model/organization.js +54 -0
  116. package/dist/authorization/model/organization.js.map +1 -0
  117. package/dist/authorization/model/plugin.d.ts +2 -0
  118. package/dist/authorization/model/plugin.d.ts.map +1 -0
  119. package/dist/authorization/model/plugin.js +44 -0
  120. package/dist/authorization/model/plugin.js.map +1 -0
  121. package/dist/authorization/model/project.d.ts +2 -0
  122. package/dist/authorization/model/project.d.ts.map +1 -0
  123. package/dist/authorization/model/project.js +32 -0
  124. package/dist/authorization/model/project.js.map +1 -0
  125. package/dist/authorization/model/rewrite.d.ts +127 -0
  126. package/dist/authorization/model/rewrite.d.ts.map +1 -0
  127. package/dist/authorization/model/rewrite.js +82 -0
  128. package/dist/authorization/model/rewrite.js.map +1 -0
  129. package/dist/authorization/model/schedule.d.ts +2 -0
  130. package/dist/authorization/model/schedule.d.ts.map +1 -0
  131. package/dist/authorization/model/schedule.js +29 -0
  132. package/dist/authorization/model/schedule.js.map +1 -0
  133. package/dist/authorization/model/session.d.ts +2 -0
  134. package/dist/authorization/model/session.d.ts.map +1 -0
  135. package/dist/authorization/model/session.js +38 -0
  136. package/dist/authorization/model/session.js.map +1 -0
  137. package/dist/authorization/model/skill.d.ts +2 -0
  138. package/dist/authorization/model/skill.d.ts.map +1 -0
  139. package/dist/authorization/model/skill.js +38 -0
  140. package/dist/authorization/model/skill.js.map +1 -0
  141. package/dist/authorization/model/workflow.d.ts +2 -0
  142. package/dist/authorization/model/workflow.d.ts.map +1 -0
  143. package/dist/authorization/model/workflow.js +38 -0
  144. package/dist/authorization/model/workflow.js.map +1 -0
  145. package/dist/authorization/model/workflow_execution.d.ts +2 -0
  146. package/dist/authorization/model/workflow_execution.d.ts.map +1 -0
  147. package/dist/authorization/model/workflow_execution.js +32 -0
  148. package/dist/authorization/model/workflow_execution.js.map +1 -0
  149. package/dist/authorization/model/workflow_instance.d.ts +2 -0
  150. package/dist/authorization/model/workflow_instance.d.ts.map +1 -0
  151. package/dist/authorization/model/workflow_instance.js +92 -0
  152. package/dist/authorization/model/workflow_instance.js.map +1 -0
  153. package/dist/authorization/organization-directory.d.ts +13 -0
  154. package/dist/authorization/organization-directory.d.ts.map +1 -0
  155. package/dist/authorization/organization-directory.js +83 -0
  156. package/dist/authorization/organization-directory.js.map +1 -0
  157. package/dist/authorization/person.d.ts +42 -0
  158. package/dist/authorization/person.d.ts.map +1 -0
  159. package/dist/authorization/person.js +19 -0
  160. package/dist/authorization/person.js.map +1 -0
  161. package/dist/authorization/posture.d.ts +38 -0
  162. package/dist/authorization/posture.d.ts.map +1 -0
  163. package/dist/authorization/posture.js +7 -0
  164. package/dist/authorization/posture.js.map +1 -0
  165. package/dist/authorization/schedule-fire-caller.d.ts +12 -0
  166. package/dist/authorization/schedule-fire-caller.d.ts.map +1 -0
  167. package/dist/authorization/schedule-fire-caller.js +67 -0
  168. package/dist/authorization/schedule-fire-caller.js.map +1 -0
  169. package/dist/authorization/store-test-kit.d.ts +68 -0
  170. package/dist/authorization/store-test-kit.d.ts.map +1 -0
  171. package/dist/authorization/store-test-kit.js +311 -0
  172. package/dist/authorization/store-test-kit.js.map +1 -0
  173. package/dist/authorization/tuples.d.ts +115 -0
  174. package/dist/authorization/tuples.d.ts.map +1 -0
  175. package/dist/authorization/tuples.js +83 -0
  176. package/dist/authorization/tuples.js.map +1 -0
  177. package/dist/boot/compose.d.ts.map +1 -1
  178. package/dist/boot/compose.js +157 -32
  179. package/dist/boot/compose.js.map +1 -1
  180. package/dist/boot/inprocess.d.ts +12 -0
  181. package/dist/boot/inprocess.d.ts.map +1 -1
  182. package/dist/boot/inprocess.js +62 -20
  183. package/dist/boot/inprocess.js.map +1 -1
  184. package/dist/domain/agent/controller.d.ts.map +1 -1
  185. package/dist/domain/agent/controller.js +9 -0
  186. package/dist/domain/agent/controller.js.map +1 -1
  187. package/dist/domain/iampolicy/constants.d.ts +11 -0
  188. package/dist/domain/iampolicy/constants.d.ts.map +1 -1
  189. package/dist/domain/iampolicy/constants.js +11 -0
  190. package/dist/domain/iampolicy/constants.js.map +1 -1
  191. package/dist/domain/iampolicy/membership.d.ts +72 -1
  192. package/dist/domain/iampolicy/membership.d.ts.map +1 -1
  193. package/dist/domain/iampolicy/membership.js +141 -56
  194. package/dist/domain/iampolicy/membership.js.map +1 -1
  195. package/dist/domain/identityaccount/actor.d.ts +26 -0
  196. package/dist/domain/identityaccount/actor.d.ts.map +1 -0
  197. package/dist/domain/identityaccount/actor.js +17 -0
  198. package/dist/domain/identityaccount/actor.js.map +1 -0
  199. package/dist/domain/mcpserver/controller.d.ts.map +1 -1
  200. package/dist/domain/mcpserver/controller.js +9 -0
  201. package/dist/domain/mcpserver/controller.js.map +1 -1
  202. package/dist/domain/plugin/archive.d.ts +37 -0
  203. package/dist/domain/plugin/archive.d.ts.map +1 -0
  204. package/dist/domain/plugin/archive.js +50 -0
  205. package/dist/domain/plugin/archive.js.map +1 -0
  206. package/dist/domain/plugin/constants.d.ts +38 -0
  207. package/dist/domain/plugin/constants.d.ts.map +1 -0
  208. package/dist/domain/plugin/constants.js +46 -0
  209. package/dist/domain/plugin/constants.js.map +1 -0
  210. package/dist/domain/plugin/controller.d.ts +25 -0
  211. package/dist/domain/plugin/controller.d.ts.map +1 -0
  212. package/dist/domain/plugin/controller.js +493 -0
  213. package/dist/domain/plugin/controller.js.map +1 -0
  214. package/dist/domain/plugin/materialize/agent.d.ts +13 -0
  215. package/dist/domain/plugin/materialize/agent.d.ts.map +1 -0
  216. package/dist/domain/plugin/materialize/agent.js +128 -0
  217. package/dist/domain/plugin/materialize/agent.js.map +1 -0
  218. package/dist/domain/plugin/materialize/default-agent-instructions.d.ts +22 -0
  219. package/dist/domain/plugin/materialize/default-agent-instructions.d.ts.map +1 -0
  220. package/dist/domain/plugin/materialize/default-agent-instructions.js +31 -0
  221. package/dist/domain/plugin/materialize/default-agent-instructions.js.map +1 -0
  222. package/dist/domain/plugin/materialize/identity.d.ts +28 -0
  223. package/dist/domain/plugin/materialize/identity.d.ts.map +1 -0
  224. package/dist/domain/plugin/materialize/identity.js +40 -0
  225. package/dist/domain/plugin/materialize/identity.js.map +1 -0
  226. package/dist/domain/plugin/materialize/mcp-servers.d.ts +15 -0
  227. package/dist/domain/plugin/materialize/mcp-servers.d.ts.map +1 -0
  228. package/dist/domain/plugin/materialize/mcp-servers.js +131 -0
  229. package/dist/domain/plugin/materialize/mcp-servers.js.map +1 -0
  230. package/dist/domain/plugin/materialize/plan.d.ts +24 -0
  231. package/dist/domain/plugin/materialize/plan.d.ts.map +1 -0
  232. package/dist/domain/plugin/materialize/plan.js +77 -0
  233. package/dist/domain/plugin/materialize/plan.js.map +1 -0
  234. package/dist/domain/plugin/materialize/ports.d.ts +42 -0
  235. package/dist/domain/plugin/materialize/ports.d.ts.map +1 -0
  236. package/dist/domain/plugin/materialize/ports.js +2 -0
  237. package/dist/domain/plugin/materialize/ports.js.map +1 -0
  238. package/dist/domain/plugin/materialize/skills.d.ts +12 -0
  239. package/dist/domain/plugin/materialize/skills.d.ts.map +1 -0
  240. package/dist/domain/plugin/materialize/skills.js +44 -0
  241. package/dist/domain/plugin/materialize/skills.js.map +1 -0
  242. package/dist/domain/plugin/materialize/workflows.d.ts +15 -0
  243. package/dist/domain/plugin/materialize/workflows.d.ts.map +1 -0
  244. package/dist/domain/plugin/materialize/workflows.js +31 -0
  245. package/dist/domain/plugin/materialize/workflows.js.map +1 -0
  246. package/dist/domain/plugin/members.d.ts +42 -0
  247. package/dist/domain/plugin/members.d.ts.map +1 -0
  248. package/dist/domain/plugin/members.js +97 -0
  249. package/dist/domain/plugin/members.js.map +1 -0
  250. package/dist/domain/plugin/overlay/documents.d.ts +31 -0
  251. package/dist/domain/plugin/overlay/documents.d.ts.map +1 -0
  252. package/dist/domain/plugin/overlay/documents.js +38 -0
  253. package/dist/domain/plugin/overlay/documents.js.map +1 -0
  254. package/dist/domain/plugin/overlay/parse.d.ts +16 -0
  255. package/dist/domain/plugin/overlay/parse.d.ts.map +1 -0
  256. package/dist/domain/plugin/overlay/parse.js +79 -0
  257. package/dist/domain/plugin/overlay/parse.js.map +1 -0
  258. package/dist/domain/plugin/overlay/sanitize.d.ts +10 -0
  259. package/dist/domain/plugin/overlay/sanitize.d.ts.map +1 -0
  260. package/dist/domain/plugin/overlay/sanitize.js +101 -0
  261. package/dist/domain/plugin/overlay/sanitize.js.map +1 -0
  262. package/dist/domain/plugin/push.d.ts +133 -0
  263. package/dist/domain/plugin/push.d.ts.map +1 -0
  264. package/dist/domain/plugin/push.js +800 -0
  265. package/dist/domain/plugin/push.js.map +1 -0
  266. package/dist/domain/plugin/search-extractor.d.ts +3 -0
  267. package/dist/domain/plugin/search-extractor.d.ts.map +1 -0
  268. package/dist/domain/plugin/search-extractor.js +41 -0
  269. package/dist/domain/plugin/search-extractor.js.map +1 -0
  270. package/dist/domain/skill/constants.d.ts +6 -11
  271. package/dist/domain/skill/constants.d.ts.map +1 -1
  272. package/dist/domain/skill/constants.js +6 -11
  273. package/dist/domain/skill/constants.js.map +1 -1
  274. package/dist/domain/skill/controller.d.ts.map +1 -1
  275. package/dist/domain/skill/controller.js +33 -30
  276. package/dist/domain/skill/controller.js.map +1 -1
  277. package/dist/domain/skill/push.d.ts +9 -10
  278. package/dist/domain/skill/push.d.ts.map +1 -1
  279. package/dist/domain/skill/push.js +53 -122
  280. package/dist/domain/skill/push.js.map +1 -1
  281. package/dist/domain/skill/search-extractor.d.ts.map +1 -1
  282. package/dist/domain/skill/search-extractor.js.map +1 -1
  283. package/dist/domain/skill/storage/artifact-storage.d.ts +26 -29
  284. package/dist/domain/skill/storage/artifact-storage.d.ts.map +1 -1
  285. package/dist/domain/skill/storage/artifact-storage.js +6 -103
  286. package/dist/domain/skill/storage/artifact-storage.js.map +1 -1
  287. package/dist/domain/skill/storage/zip-gate.d.ts +1 -2
  288. package/dist/domain/skill/storage/zip-gate.d.ts.map +1 -1
  289. package/dist/domain/skill/storage/zip-gate.js +56 -126
  290. package/dist/domain/skill/storage/zip-gate.js.map +1 -1
  291. package/dist/domain/skill/version-resolution.d.ts +5 -5
  292. package/dist/domain/skill/version-resolution.d.ts.map +1 -1
  293. package/dist/domain/skill/version-resolution.js +34 -216
  294. package/dist/domain/skill/version-resolution.js.map +1 -1
  295. package/dist/domain/workflow/controller.d.ts.map +1 -1
  296. package/dist/domain/workflow/controller.js +30 -3
  297. package/dist/domain/workflow/controller.js.map +1 -1
  298. package/dist/domain/workflow/registry/data/task-kind-registry.json +1 -0
  299. package/dist/extensions/authorizer.d.ts +10 -5
  300. package/dist/extensions/authorizer.d.ts.map +1 -1
  301. package/dist/extensions/drivers.d.ts +4 -1
  302. package/dist/extensions/drivers.d.ts.map +1 -1
  303. package/dist/extensions/list-read-scope.d.ts +47 -20
  304. package/dist/extensions/list-read-scope.d.ts.map +1 -1
  305. package/dist/extensions/list-read-scope.js +20 -24
  306. package/dist/extensions/list-read-scope.js.map +1 -1
  307. package/dist/extensions/organization-directory.d.ts +13 -9
  308. package/dist/extensions/organization-directory.d.ts.map +1 -1
  309. package/dist/extensions/organization-directory.js.map +1 -1
  310. package/dist/extensions/resource-authorization.d.ts +33 -0
  311. package/dist/extensions/resource-authorization.d.ts.map +1 -1
  312. package/dist/extensions/schedule-fire-caller.d.ts +45 -18
  313. package/dist/extensions/schedule-fire-caller.d.ts.map +1 -1
  314. package/dist/extensions/schedule-fire-caller.js +12 -1
  315. package/dist/extensions/schedule-fire-caller.js.map +1 -1
  316. package/dist/index.d.ts +10 -0
  317. package/dist/index.d.ts.map +1 -1
  318. package/dist/index.js +8 -0
  319. package/dist/index.js.map +1 -1
  320. package/dist/pipeline/apiresource-labels.d.ts +23 -3
  321. package/dist/pipeline/apiresource-labels.d.ts.map +1 -1
  322. package/dist/pipeline/apiresource-labels.js +20 -0
  323. package/dist/pipeline/apiresource-labels.js.map +1 -1
  324. package/dist/pipeline/errors.d.ts.map +1 -1
  325. package/dist/pipeline/errors.js.map +1 -1
  326. package/dist/pipeline/steps/authorization-facts.d.ts +12 -0
  327. package/dist/pipeline/steps/authorization-facts.d.ts.map +1 -0
  328. package/dist/pipeline/steps/authorization-facts.js +100 -0
  329. package/dist/pipeline/steps/authorization-facts.js.map +1 -0
  330. package/dist/pipeline/steps/delete.d.ts.map +1 -1
  331. package/dist/pipeline/steps/delete.js +1 -1
  332. package/dist/pipeline/steps/delete.js.map +1 -1
  333. package/dist/pipeline/steps/duplicate.d.ts.map +1 -1
  334. package/dist/pipeline/steps/duplicate.js.map +1 -1
  335. package/dist/pipeline/steps/guard-plugin-managed.d.ts +12 -0
  336. package/dist/pipeline/steps/guard-plugin-managed.d.ts.map +1 -0
  337. package/dist/pipeline/steps/guard-plugin-managed.js +96 -0
  338. package/dist/pipeline/steps/guard-plugin-managed.js.map +1 -0
  339. package/dist/pipeline/steps/guard-reserved-labels.d.ts +16 -2
  340. package/dist/pipeline/steps/guard-reserved-labels.d.ts.map +1 -1
  341. package/dist/pipeline/steps/guard-reserved-labels.js +11 -7
  342. package/dist/pipeline/steps/guard-reserved-labels.js.map +1 -1
  343. package/dist/pipeline/steps/helpers.d.ts.map +1 -1
  344. package/dist/pipeline/steps/helpers.js.map +1 -1
  345. package/dist/pipeline/steps/index-search.d.ts.map +1 -1
  346. package/dist/pipeline/steps/index-search.js.map +1 -1
  347. package/dist/pipeline/steps/load-existing.d.ts.map +1 -1
  348. package/dist/pipeline/steps/load-existing.js +1 -1
  349. package/dist/pipeline/steps/load-existing.js.map +1 -1
  350. package/dist/pipeline/steps/references.d.ts +16 -0
  351. package/dist/pipeline/steps/references.d.ts.map +1 -1
  352. package/dist/pipeline/steps/references.js +18 -0
  353. package/dist/pipeline/steps/references.js.map +1 -1
  354. package/dist/pipeline/steps/resolve-artifact-source.d.ts +35 -0
  355. package/dist/pipeline/steps/resolve-artifact-source.d.ts.map +1 -0
  356. package/dist/pipeline/steps/resolve-artifact-source.js +27 -0
  357. package/dist/pipeline/steps/resolve-artifact-source.js.map +1 -0
  358. package/dist/pipeline/steps/server-stamped-reserved-labels.d.ts.map +1 -1
  359. package/dist/pipeline/steps/server-stamped-reserved-labels.js.map +1 -1
  360. package/dist/pipeline/steps/slug.d.ts.map +1 -1
  361. package/dist/pipeline/steps/slug.js.map +1 -1
  362. package/dist/pipeline/steps/validate-visibility.d.ts +9 -0
  363. package/dist/pipeline/steps/validate-visibility.d.ts.map +1 -1
  364. package/dist/pipeline/steps/validate-visibility.js +6 -1
  365. package/dist/pipeline/steps/validate-visibility.js.map +1 -1
  366. package/dist/pipeline/steps/validation.d.ts.map +1 -1
  367. package/dist/pipeline/steps/validation.js.map +1 -1
  368. package/dist/pipeline/steps/version-archive.d.ts +63 -0
  369. package/dist/pipeline/steps/version-archive.d.ts.map +1 -0
  370. package/dist/pipeline/steps/version-archive.js +129 -0
  371. package/dist/pipeline/steps/version-archive.js.map +1 -0
  372. package/dist/pipeline/steps/version-history.d.ts +49 -0
  373. package/dist/pipeline/steps/version-history.d.ts.map +1 -0
  374. package/dist/pipeline/steps/version-history.js +229 -0
  375. package/dist/pipeline/steps/version-history.js.map +1 -0
  376. package/dist/pipeline/steps/visibility-gates.d.ts +8 -0
  377. package/dist/pipeline/steps/visibility-gates.d.ts.map +1 -1
  378. package/dist/pipeline/steps/visibility-gates.js +7 -2
  379. package/dist/pipeline/steps/visibility-gates.js.map +1 -1
  380. package/dist/query/search/registry.d.ts.map +1 -1
  381. package/dist/query/search/registry.js +2 -0
  382. package/dist/query/search/registry.js.map +1 -1
  383. package/dist/temporal/schedule/run-starter.d.ts +1 -1
  384. package/dist/temporal/schedule/run-starter.d.ts.map +1 -1
  385. package/dist/temporal/schedule/run-starter.js +14 -1
  386. package/dist/temporal/schedule/run-starter.js.map +1 -1
  387. package/package.json +5 -4
  388. package/src/archive/__tests__/archive.test.ts +233 -0
  389. package/src/{domain/skill → archive}/__tests__/prefilter.test.ts +1 -1
  390. package/src/archive/content-store.ts +132 -0
  391. package/src/archive/inflate.ts +107 -0
  392. package/src/archive/limits.ts +42 -0
  393. package/src/archive/open.ts +131 -0
  394. package/src/{domain/skill/storage → archive}/prefilter.ts +5 -0
  395. package/src/archive/write.ts +54 -0
  396. package/src/authorization/README.md +124 -0
  397. package/src/authorization/__tests__/authorizer.test.ts +719 -0
  398. package/src/authorization/__tests__/derived-tuples.test.ts +802 -0
  399. package/src/authorization/__tests__/drivers.ts +70 -0
  400. package/src/authorization/__tests__/evaluator.test.ts +359 -0
  401. package/src/authorization/__tests__/facts.test.ts +155 -0
  402. package/src/authorization/__tests__/fixtures/fga/agent-channel-owner.fga.yaml +112 -0
  403. package/src/authorization/__tests__/fixtures/fga/agent-share-owner.fga.yaml +109 -0
  404. package/src/authorization/__tests__/fixtures/fga/artifact-org-and-owner.fga.yaml +128 -0
  405. package/src/authorization/__tests__/fixtures/fga/blueprint-private-visibility.fga.yaml +410 -0
  406. package/src/authorization/__tests__/fixtures/fga/channel-app-owner.fga.yaml +125 -0
  407. package/src/authorization/__tests__/fixtures/fga/channel-participation.fga.yaml +201 -0
  408. package/src/authorization/__tests__/fixtures/fga/channel-session-visibility.fga.yaml +187 -0
  409. package/src/authorization/__tests__/fixtures/fga/cross-org-share-creation.fga.yaml +98 -0
  410. package/src/authorization/__tests__/fixtures/fga/default-instance-inheritance.fga.yaml +271 -0
  411. package/src/authorization/__tests__/fixtures/fga/memory-subject-only.fga.yaml +72 -0
  412. package/src/authorization/__tests__/fixtures/fga/org-admin-owner-inheritance.fga.yaml +328 -0
  413. package/src/authorization/__tests__/fixtures/fga/org-shared-environment.fga.yaml +144 -0
  414. package/src/authorization/__tests__/fixtures/fga/platform-visibility.fga.yaml +223 -0
  415. package/src/authorization/__tests__/fixtures/fga/provider-standing-viewer.fga.yaml +40 -0
  416. package/src/authorization/__tests__/fixtures/fga/public-visibility-setter.fga.yaml +52 -0
  417. package/src/authorization/__tests__/fixtures/fga/reserved-label-writer.fga.yaml +41 -0
  418. package/src/authorization/__tests__/fixtures/fga/schedule-owner.fga.yaml +113 -0
  419. package/src/authorization/__tests__/fixtures/fga/schedule-session-visibility.fga.yaml +214 -0
  420. package/src/authorization/__tests__/fixtures/fga/session-personal-resource.fga.yaml +117 -0
  421. package/src/authorization/__tests__/fixtures/fga/workflow-execution-sharing.fga.yaml +192 -0
  422. package/src/authorization/__tests__/list-read-scope.measure.test.ts +317 -0
  423. package/src/authorization/__tests__/list-read-scope.test.ts +796 -0
  424. package/src/authorization/__tests__/organization-directory.test.ts +236 -0
  425. package/src/authorization/__tests__/person.test.ts +114 -0
  426. package/src/authorization/__tests__/posture.test.ts +25 -0
  427. package/src/authorization/__tests__/schedule-fire-caller.test.ts +134 -0
  428. package/src/authorization/__tests__/store-tests.test.ts +306 -0
  429. package/src/authorization/__tests__/support.ts +101 -0
  430. package/src/authorization/__tests__/tuples.test.ts +62 -0
  431. package/src/authorization/__tests__/wire-permissions.test.ts +154 -0
  432. package/src/authorization/authorizer.ts +208 -0
  433. package/src/authorization/derived-tuples.ts +384 -0
  434. package/src/authorization/evaluator.ts +283 -0
  435. package/src/authorization/facts.ts +47 -0
  436. package/src/authorization/list-read-scope.ts +216 -0
  437. package/src/authorization/model/__tests__/registry.test.ts +317 -0
  438. package/src/authorization/model/agent.ts +64 -0
  439. package/src/authorization/model/agent_channel.ts +49 -0
  440. package/src/authorization/model/agent_execution.ts +33 -0
  441. package/src/authorization/model/agent_instance.ts +66 -0
  442. package/src/authorization/model/agent_share.ts +40 -0
  443. package/src/authorization/model/api_key.ts +28 -0
  444. package/src/authorization/model/artifact.ts +38 -0
  445. package/src/authorization/model/channel_app.ts +39 -0
  446. package/src/authorization/model/default-of.ts +99 -0
  447. package/src/authorization/model/environment.ts +48 -0
  448. package/src/authorization/model/execution_context.ts +20 -0
  449. package/src/authorization/model/iam_policy.ts +42 -0
  450. package/src/authorization/model/identity_account.ts +26 -0
  451. package/src/authorization/model/index.ts +108 -0
  452. package/src/authorization/model/mcp_server.ts +59 -0
  453. package/src/authorization/model/memory.ts +27 -0
  454. package/src/authorization/model/oauth_app.ts +42 -0
  455. package/src/authorization/model/organization.ts +55 -0
  456. package/src/authorization/model/plugin.ts +66 -0
  457. package/src/authorization/model/project.ts +47 -0
  458. package/src/authorization/model/rewrite.ts +213 -0
  459. package/src/authorization/model/schedule.ts +40 -0
  460. package/src/authorization/model/session.ts +50 -0
  461. package/src/authorization/model/skill.ts +60 -0
  462. package/src/authorization/model/workflow.ts +60 -0
  463. package/src/authorization/model/workflow_execution.ts +44 -0
  464. package/src/authorization/model/workflow_instance.ts +122 -0
  465. package/src/authorization/organization-directory.ts +114 -0
  466. package/src/authorization/person.ts +68 -0
  467. package/src/authorization/posture.ts +49 -0
  468. package/src/authorization/schedule-fire-caller.ts +91 -0
  469. package/src/authorization/store-test-kit.ts +454 -0
  470. package/src/authorization/tuples.ts +190 -0
  471. package/src/boot/compose.ts +175 -38
  472. package/src/boot/inprocess.ts +108 -30
  473. package/src/domain/agent/controller.ts +11 -0
  474. package/src/domain/iampolicy/__tests__/membership.test.ts +357 -3
  475. package/src/domain/iampolicy/constants.ts +12 -0
  476. package/src/domain/iampolicy/membership.ts +221 -66
  477. package/src/domain/identityaccount/actor.ts +44 -0
  478. package/src/domain/mcpserver/controller.ts +11 -0
  479. package/src/domain/plugin/__tests__/materialize.test.ts +303 -0
  480. package/src/domain/plugin/__tests__/overlay-parse.test.ts +85 -0
  481. package/src/domain/plugin/__tests__/plugin.test.ts +681 -0
  482. package/src/domain/plugin/__tests__/sanitize.test.ts +174 -0
  483. package/src/domain/plugin/archive.ts +89 -0
  484. package/src/domain/plugin/constants.ts +53 -0
  485. package/src/domain/plugin/controller.ts +913 -0
  486. package/src/domain/plugin/materialize/agent.ts +186 -0
  487. package/src/domain/plugin/materialize/default-agent-instructions.ts +59 -0
  488. package/src/domain/plugin/materialize/identity.ts +67 -0
  489. package/src/domain/plugin/materialize/mcp-servers.ts +175 -0
  490. package/src/domain/plugin/materialize/plan.ts +124 -0
  491. package/src/domain/plugin/materialize/ports.ts +53 -0
  492. package/src/domain/plugin/materialize/skills.ts +68 -0
  493. package/src/domain/plugin/materialize/workflows.ts +51 -0
  494. package/src/domain/plugin/members.ts +180 -0
  495. package/src/domain/plugin/overlay/documents.ts +78 -0
  496. package/src/domain/plugin/overlay/parse.ts +115 -0
  497. package/src/domain/plugin/overlay/sanitize.ts +149 -0
  498. package/src/domain/plugin/push.ts +1062 -0
  499. package/src/domain/plugin/search-extractor.ts +60 -0
  500. package/src/domain/skill/constants.ts +11 -14
  501. package/src/domain/skill/controller.ts +44 -36
  502. package/src/domain/skill/push.ts +61 -156
  503. package/src/domain/skill/search-extractor.ts +3 -1
  504. package/src/domain/skill/storage/artifact-storage.ts +23 -124
  505. package/src/domain/skill/storage/zip-gate.ts +58 -154
  506. package/src/domain/skill/version-resolution.ts +67 -269
  507. package/src/domain/workflow/controller.ts +38 -4
  508. package/src/domain/workflow/registry/data/task-kind-registry.json +1 -0
  509. package/src/extensions/__tests__/built-in-authorization-composed.test.ts +835 -0
  510. package/src/extensions/__tests__/composed-support.ts +32 -1
  511. package/src/extensions/__tests__/extension-composition.test.ts +35 -0
  512. package/src/extensions/__tests__/list-read-scope.test.ts +137 -33
  513. package/src/extensions/__tests__/role-reconciliation-composed.test.ts +209 -0
  514. package/src/extensions/__tests__/tier-truthfulness.test.ts +6 -14
  515. package/src/extensions/authorizer.ts +10 -5
  516. package/src/extensions/drivers.ts +4 -1
  517. package/src/extensions/list-read-scope.ts +67 -45
  518. package/src/extensions/organization-directory.ts +13 -9
  519. package/src/extensions/resource-authorization.ts +34 -0
  520. package/src/extensions/schedule-fire-caller.ts +49 -18
  521. package/src/index.ts +51 -1
  522. package/src/pipeline/__tests__/router-transport.test.ts +1 -3
  523. package/src/pipeline/apiresource-labels.ts +31 -3
  524. package/src/pipeline/errors.ts +5 -5
  525. package/src/pipeline/steps/__tests__/authorize-annotation-completeness.test.ts +1 -20
  526. package/src/pipeline/steps/__tests__/guard-memory-capture.test.ts +3 -9
  527. package/src/pipeline/steps/__tests__/guard-plugin-managed.test.ts +151 -0
  528. package/src/pipeline/steps/__tests__/guard-reserved-labels.test.ts +83 -8
  529. package/src/pipeline/steps/authorization-facts.ts +131 -0
  530. package/src/pipeline/steps/delete.ts +11 -3
  531. package/src/pipeline/steps/duplicate.ts +8 -2
  532. package/src/pipeline/steps/guard-plugin-managed.ts +133 -0
  533. package/src/pipeline/steps/guard-reserved-labels.ts +29 -8
  534. package/src/pipeline/steps/helpers.ts +4 -1
  535. package/src/pipeline/steps/index-search.ts +28 -15
  536. package/src/pipeline/steps/load-existing.ts +12 -3
  537. package/src/pipeline/steps/references.ts +36 -2
  538. package/src/pipeline/steps/resolve-artifact-source.ts +66 -0
  539. package/src/pipeline/steps/server-stamped-reserved-labels.ts +2 -1
  540. package/src/pipeline/steps/slug.ts +7 -2
  541. package/src/pipeline/steps/validate-visibility.ts +9 -2
  542. package/src/pipeline/steps/validation.ts +3 -1
  543. package/src/pipeline/steps/version-archive.ts +225 -0
  544. package/src/pipeline/steps/version-history.ts +362 -0
  545. package/src/pipeline/steps/visibility-gates.ts +12 -9
  546. package/src/query/README.md +1 -1
  547. package/src/query/search/__tests__/criteria.test.ts +6 -7
  548. package/src/query/search/__tests__/query-store.test.ts +9 -2
  549. package/src/query/search/__tests__/registry.test.ts +6 -4
  550. package/src/query/search/registry.ts +6 -1
  551. package/src/temporal/schedule/__tests__/run-starter.test.ts +86 -24
  552. package/src/temporal/schedule/run-starter.ts +31 -8
  553. package/dist/domain/skill/storage/prefilter.d.ts.map +0 -1
  554. package/dist/domain/skill/storage/prefilter.js.map +0 -1
  555. /package/dist/{domain/skill/storage → archive}/prefilter.js +0 -0
@@ -2,32 +2,59 @@
2
2
  * The schedule-fire caller seam (stigmer-cloud#572) — WHO a schedule fire
3
3
  * acts as when the RunStarter re-enters the execution create pipeline.
4
4
  *
5
- * OSS deliberately has no caller identity on this lane (DD-015 D-G: the
6
- * single-user edition has no tokens to carry one), so with no driver
7
- * composed every fire enters as the in-process `internal` class — today's
8
- * behavior, byte-identical. The cloud edition's Java baseline instead
9
- * mints a schedule JWT per fire (sub = the org's system-schedule account,
10
- * claim = the firing Schedule id) so the created session and execution
11
- * carry real attribution and the schedule's viewer set reaches the run
12
- * (the FGA model's session#schedule link — "without it a scheduled run is
13
- * invisible to every human, including the schedule's owner"). This seam
14
- * lets a composition supply that identity; the fire then propagates it
15
- * through the R5 caller-propagation header exactly like the other
16
- * request-origin in-process creates.
5
+ * With no driver composed a fire enters as the in-process `internal`
6
+ * class — the trusted-local laptop's lane, where the one caller is the
7
+ * server's operator and attribution has nobody to separate. Under an
8
+ * authentication posture that lane is wrong: the internal class carries
9
+ * the operator's email or `"system"`, which no enforcing evaluator
10
+ * recognizes as a person, so the fired session would belong to nobody
11
+ * (the FGA model's own words — "without it a scheduled run is invisible
12
+ * to every human, including the schedule's owner"). Two drivers answer
13
+ * it: the cloud edition mints a schedule JWT per fire (sub = the org's
14
+ * system-schedule account, claim = the firing Schedule id) so the run
15
+ * reaches the schedule's viewer set through the session#schedule link;
16
+ * open source, under the built-in authorization posture, makes the fire
17
+ * act as the schedule's CREATOR (authorization/schedule-fire-caller.ts),
18
+ * so the run and its session are that person's. The fire then propagates
19
+ * the identity through the R5 caller-propagation header exactly like the
20
+ * other request-origin in-process creates.
17
21
  *
18
22
  * Single-instance point. The mint is per fire — the schedule id is a
19
- * claim of the minted credential, never a cached field — and a mint
20
- * failure is an infrastructure fault: the RunStarter lets it propagate,
21
- * so the tick activity retries (the deterministic execution name absorbs
22
- * the retry) and a manual trigger surfaces the failure to its caller.
23
+ * claim of the minted credential, never a cached field. Two failure
24
+ * shapes, and the RunStarter tells them apart by type, the store-fault
25
+ * precedent (`ResourceNotFoundError` is checked with `instanceof`; every
26
+ * other fault is infrastructure):
27
+ *
28
+ * - any other thrown error is an INFRASTRUCTURE fault: the RunStarter
29
+ * lets it propagate, so the tick activity retries (the deterministic
30
+ * execution name absorbs the retry) and a manual trigger surfaces
31
+ * the failure to its caller;
32
+ * - `ScheduleFireCallerRefusedError` is a DETERMINISTIC refusal — this
33
+ * fire can act as nobody, and no retry will change that (a schedule
34
+ * stamped by no person this server knows). The RunStarter answers
35
+ * the `refused` outcome the way it answers a launch gate's refusal:
36
+ * the failure streak counts it and pauses the schedule with the
37
+ * reason, so the person who scheduled it sees why in the console
38
+ * instead of a tick failing quietly forever.
23
39
  */
24
40
  import type { CallerIdentity } from "./identity.js";
25
41
  export interface ScheduleFireCallerMint {
26
42
  /**
27
43
  * Mints the caller identity one fire acts as. `rawToken` must carry the
28
- * edition's verifiable credential for the identity (compositions read
29
- * fire-scoped claims — e.g. the schedule id — from it downstream).
44
+ * edition's verifiable credential for the identity when the edition
45
+ * reads fire-scoped claims from it downstream (the cloud does — the
46
+ * schedule id); an edition that propagates the identity in-process and
47
+ * reads nothing off the token leaves it empty (open source does).
30
48
  */
31
49
  mintFireCaller(org: string, scheduleId: string): Promise<CallerIdentity>;
32
50
  }
51
+ /**
52
+ * The mint's deterministic refusal (the module header): thrown by a
53
+ * driver when the fire can act as nobody and retrying cannot help. The
54
+ * message is the reason the schedule's status carries, so it is written
55
+ * for the person who scheduled the run.
56
+ */
57
+ export declare class ScheduleFireCallerRefusedError extends Error {
58
+ constructor(reason: string);
59
+ }
33
60
  //# sourceMappingURL=schedule-fire-caller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schedule-fire-caller.d.ts","sourceRoot":"","sources":["../../src/extensions/schedule-fire-caller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC1E"}
1
+ {"version":3,"file":"schedule-fire-caller.d.ts","sourceRoot":"","sources":["../../src/extensions/schedule-fire-caller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,WAAW,sBAAsB;IACrC;;;;;;OAMG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC1E;AAED;;;;;GAKG;AACH,qBAAa,8BAA+B,SAAQ,KAAK;gBAC3C,MAAM,EAAE,MAAM;CAI3B"}
@@ -1,2 +1,13 @@
1
- export {};
1
+ /**
2
+ * The mint's deterministic refusal (the module header): thrown by a
3
+ * driver when the fire can act as nobody and retrying cannot help. The
4
+ * message is the reason the schedule's status carries, so it is written
5
+ * for the person who scheduled the run.
6
+ */
7
+ export class ScheduleFireCallerRefusedError extends Error {
8
+ constructor(reason) {
9
+ super(reason);
10
+ this.name = "ScheduleFireCallerRefusedError";
11
+ }
12
+ }
2
13
  //# sourceMappingURL=schedule-fire-caller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schedule-fire-caller.js","sourceRoot":"","sources":["../../src/extensions/schedule-fire-caller.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"schedule-fire-caller.js","sourceRoot":"","sources":["../../src/extensions/schedule-fire-caller.ts"],"names":[],"mappings":"AAoDA;;;;;GAKG;AACH,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IACvD,YAAY,MAAc;QACxB,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;IAC/C,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -69,8 +69,18 @@ export type { AuthorizationQueryEngine } from "./extensions/authorization-querie
69
69
  export type { IdentityFederation } from "./extensions/identity-federation.js";
70
70
  export type { AccountsBySubject } from "./domain/identityaccount/resolve.js";
71
71
  export { identityIdForSubject } from "./domain/identityaccount/resolve.js";
72
+ export type { DerivedRelation, KindDeclaration, Rewrite, SubjectType, } from "./authorization/model/rewrite.js";
73
+ export type { Model } from "./authorization/model/index.js";
74
+ export { builtInModel, declarationFor, newModel, } from "./authorization/model/index.js";
75
+ export type { CheckContext, ObjectRef, Person, Subject, Tuple, TupleSource, } from "./authorization/tuples.js";
76
+ export type { EvaluationFault } from "./authorization/evaluator.js";
77
+ export { AuthorizationEvaluationError, MAX_RESOLUTION_DEPTH, checkRelation, } from "./authorization/evaluator.js";
78
+ export type { StoreTestCase, StoreTestDocument, StoreTestKit, StoreTestSkip, StoreTestSkipReason, } from "./authorization/store-test-kit.js";
79
+ export { parseStoreTestDocument, storeTestCases, } from "./authorization/store-test-kit.js";
80
+ export { NOT_FOUND_EXEMPT_KINDS } from "./authorization/authorizer.js";
72
81
  export type { ListReadScope, ListEntryMeta, } from "./extensions/list-read-scope.js";
73
82
  export type { ScheduleFireCallerMint } from "./extensions/schedule-fire-caller.js";
83
+ export { ScheduleFireCallerRefusedError } from "./extensions/schedule-fire-caller.js";
74
84
  export type { VisitorErrorPolicy } from "./pipeline/interceptors/error-boundary.js";
75
85
  export { createErrorBoundaryInterceptor } from "./pipeline/interceptors/error-boundary.js";
76
86
  export { diffVisibilityShapes, visibilityShapesFor, } from "./pipeline/steps/authorization-tuples.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -49,6 +49,14 @@ export { identityAccountStoreContract } from "./domain/identityaccount/store-con
49
49
  export { DuplicatePolicyError } from "./domain/iampolicy/store.js";
50
50
  export { iamPolicyStoreContract } from "./domain/iampolicy/store-contract.js";
51
51
  export { identityIdForSubject } from "./domain/identityaccount/resolve.js";
52
+ export { builtInModel, declarationFor, newModel, } from "./authorization/model/index.js";
53
+ export { AuthorizationEvaluationError, MAX_RESOLUTION_DEPTH, checkRelation, } from "./authorization/evaluator.js";
54
+ export { parseStoreTestDocument, storeTestCases, } from "./authorization/store-test-kit.js";
55
+ // The kinds whose missing row the built-in authorizer denies instead of
56
+ // answering not-found — the cloud's probe exemption over the open-source
57
+ // tier; exported so the cloud's drift test pins the two sets equal.
58
+ export { NOT_FOUND_EXEMPT_KINDS } from "./authorization/authorizer.js";
59
+ export { ScheduleFireCallerRefusedError } from "./extensions/schedule-fire-caller.js";
52
60
  export { createErrorBoundaryInterceptor } from "./pipeline/interceptors/error-boundary.js";
53
61
  export { diffVisibilityShapes, visibilityShapesFor, } from "./pipeline/steps/authorization-tuples.js";
54
62
  export { RequestContext } from "./pipeline/request-context.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,wCAAwC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAiEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAQ3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAQ1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAW1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAKnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAK9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAkB3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,2CAA2C,CAAC;AAC3F,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAIlD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,uBAAuB,EACvB,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,yEAAyE;AACzE,+DAA+D;AAC/D,wEAAwE;AACxE,QAAQ;AACR,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,wEAAwE;AACxE,wEAAwE;AACxE,uEAAuE;AACvE,gEAAgE;AAChE,OAAO,EACL,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AAEzC,sEAAsE;AACtE,qEAAqE;AACrE,6DAA6D;AAC7D,iEAAiE;AACjE,wEAAwE;AACxE,iEAAiE;AACjE,yEAAyE;AACzE,+DAA+D;AAC/D,yEAAyE;AACzE,8DAA8D;AAC9D,wEAAwE;AACxE,uEAAuE;AACvE,mEAAmE;AACnE,2DAA2D;AAC3D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AACzC,+DAA+D;AAC/D,qEAAqE;AACrE,qEAAqE;AACrE,wEAAwE;AACxE,iCAAiC;AACjC,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,oEAAoE;AACpE,wEAAwE;AACxE,sEAAsE;AACtE,qEAAqE;AACrE,uEAAuE;AACvE,kDAAkD;AAClD,OAAO,EACL,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,0EAA0E;AAC1E,uEAAuE;AACvE,oEAAoE;AACpE,uEAAuE;AACvE,oEAAoE;AACpE,wCAAwC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAMtE,OAAO,EACL,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAM9B,uEAAuE;AACvE,yEAAyE;AACzE,uEAAuE;AACvE,qEAAqE;AACrE,qEAAqE;AACrE,0EAA0E;AAC1E,wEAAwE;AACxE,yEAAyE;AACzE,2EAA2E;AAC3E,iEAAiE;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAO1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AACrF,0EAA0E;AAC1E,0EAA0E;AAC1E,sEAAsE;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAQvE,qEAAqE;AACrE,uEAAuE;AACvE,yEAAyE;AACzE,oEAAoE;AACpE,OAAO,EAAE,mCAAmC,EAAE,MAAM,gDAAgD,CAAC;AAkBrG,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,4BAA4B,CAAC;AAEpC,qEAAqE;AACrE,uEAAuE;AACvE,0EAA0E;AAC1E,qEAAqE;AACrE,6DAA6D;AAC7D,uEAAuE;AACvE,qEAAqE;AACrE,gEAAgE;AAChE,0EAA0E;AAC1E,qEAAqE;AACrE,uEAAuE;AACvE,iEAAiE;AACjE,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,0BAA0B,EAC1B,sBAAsB,EACtB,aAAa,GACd,MAAM,4BAA4B,CAAC;AAepC,OAAO,EAAE,kCAAkC,EAAE,MAAM,0BAA0B,CAAC;AAE9E,yEAAyE;AACzE,wEAAwE;AACxE,0EAA0E;AAC1E,0EAA0E;AAC1E,yEAAyE;AACzE,wEAAwE;AACxE,kDAAkD;AAClD,OAAO,EACL,4BAA4B,EAC5B,eAAe,EACf,gBAAgB,IAAI,sCAAsC,GAC3D,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,iCAAiC,GAClC,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AA0BrE,oEAAoE;AACpE,yEAAyE;AACzE,iDAAiD;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,12 @@
8
8
  * instances) but never to GRANT anything. Where a grant-shaped decision is
9
9
  * needed, key it on server-owned state instead (e.g. the parent blueprint's
10
10
  * status.default_instance_id, written only by the create/self-heal flows).
11
- * The cloud edition additionally guards the whole reserved namespace at its
12
- * write boundaries (GuardReservedLabelsStep); OSS has no such guard, which
13
- * is one of the reasons OSS predicates must not trust these labels alone.
11
+ * Every write boundary runs GuardReservedLabels over the namespace
12
+ * (pipeline/steps/guard-reserved-labels.ts), but the open-source
13
+ * authorizer's permissive default ALLOWS reserved-label writes by design
14
+ * (the self-hosted operator owns the store), which is why a restrict-shaped
15
+ * predicate here still pairs the label with server-owned state: the
16
+ * plugin-managed guard refuses only beside an existing plugin row.
14
17
  */
15
18
  import type { ApiResourceMetadata } from "@stigmer/protos/ai/stigmer/commons/apiresource/metadata_pb";
16
19
  /**
@@ -39,6 +42,23 @@ export declare const SYSTEM_MANAGED_LABEL = "stigmer.ai/system-managed";
39
42
  * read by the predicates here.
40
43
  */
41
44
  export declare const RESERVED_LABEL_TRUE = "true";
45
+ /**
46
+ * The plugin that materialised a resource: the label's value is the
47
+ * plugin's id (`plg_...`), never its slug, because `findAllByLabel` is
48
+ * org-agnostic and two organizations may both install `thermos`. Written
49
+ * only by the plugin controller (in-process, as the installing caller);
50
+ * membership is derived on read from it and stored nowhere else.
51
+ */
52
+ export declare const PLUGIN_LABEL = "stigmer.ai/plugin";
53
+ /**
54
+ * The archive digest a member was last materialised from — the per-child
55
+ * convergence marker. A re-push compares every member's value with the
56
+ * head's digest before deciding it has nothing to do, so a member another
57
+ * lane deleted or an older install left behind is re-materialised.
58
+ */
59
+ export declare const PLUGIN_VERSION_LABEL = "stigmer.ai/plugin-version";
60
+ /** The plugin id a resource's labels claim, or undefined when unlabelled. */
61
+ export declare function pluginIdOf(metadata: ApiResourceMetadata | undefined): string | undefined;
42
62
  /**
43
63
  * Whether the metadata carries the DEFAULT_INSTANCE_LABEL marker
44
64
  * (undefined-safe) — Go IsDefaultInstance.
@@ -1 +1 @@
1
- {"version":3,"file":"apiresource-labels.d.ts","sourceRoot":"","sources":["../../src/pipeline/apiresource-labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AAEtG;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gCAA6C,CAAC;AAEjF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,8BAA2C,CAAC;AAE7E;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,SAAS,CAAC;AAE1C;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,mBAAmB,GAAG,SAAS,GACxC,OAAO,CAET"}
1
+ {"version":3,"file":"apiresource-labels.d.ts","sourceRoot":"","sources":["../../src/pipeline/apiresource-labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AAEtG;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gCAA6C,CAAC;AAEjF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,8BAA2C,CAAC;AAE7E;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,SAAS,CAAC;AAE1C;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,sBAAmC,CAAC;AAE7D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,8BAA2C,CAAC;AAE7E,6EAA6E;AAC7E,wBAAgB,UAAU,CACxB,QAAQ,EAAE,mBAAmB,GAAG,SAAS,GACxC,MAAM,GAAG,SAAS,CAGpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,mBAAmB,GAAG,SAAS,GACxC,OAAO,CAET"}
@@ -24,6 +24,26 @@ export const SYSTEM_MANAGED_LABEL = `${RESERVED_LABEL_PREFIX}system-managed`;
24
24
  * read by the predicates here.
25
25
  */
26
26
  export const RESERVED_LABEL_TRUE = "true";
27
+ /**
28
+ * The plugin that materialised a resource: the label's value is the
29
+ * plugin's id (`plg_...`), never its slug, because `findAllByLabel` is
30
+ * org-agnostic and two organizations may both install `thermos`. Written
31
+ * only by the plugin controller (in-process, as the installing caller);
32
+ * membership is derived on read from it and stored nowhere else.
33
+ */
34
+ export const PLUGIN_LABEL = `${RESERVED_LABEL_PREFIX}plugin`;
35
+ /**
36
+ * The archive digest a member was last materialised from — the per-child
37
+ * convergence marker. A re-push compares every member's value with the
38
+ * head's digest before deciding it has nothing to do, so a member another
39
+ * lane deleted or an older install left behind is re-materialised.
40
+ */
41
+ export const PLUGIN_VERSION_LABEL = `${RESERVED_LABEL_PREFIX}plugin-version`;
42
+ /** The plugin id a resource's labels claim, or undefined when unlabelled. */
43
+ export function pluginIdOf(metadata) {
44
+ const value = metadata?.labels[PLUGIN_LABEL];
45
+ return value === undefined || value === "" ? undefined : value;
46
+ }
27
47
  /**
28
48
  * Whether the metadata carries the DEFAULT_INSTANCE_LABEL marker
29
49
  * (undefined-safe) — Go IsDefaultInstance.
@@ -1 +1 @@
1
- {"version":3,"file":"apiresource-labels.js","sourceRoot":"","sources":["../../src/pipeline/apiresource-labels.ts"],"names":[],"mappings":"AAgBA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,qBAAqB,kBAAkB,CAAC;AAEjF;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,qBAAqB,gBAAgB,CAAC;AAE7E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAE1C;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAyC;IAEzC,OAAO,QAAQ,EAAE,MAAM,CAAC,sBAAsB,CAAC,KAAK,mBAAmB,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"apiresource-labels.js","sourceRoot":"","sources":["../../src/pipeline/apiresource-labels.ts"],"names":[],"mappings":"AAmBA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,qBAAqB,kBAAkB,CAAC;AAEjF;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,qBAAqB,gBAAgB,CAAC;AAE7E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAE1C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,qBAAqB,QAAQ,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,qBAAqB,gBAAgB,CAAC;AAE7E,6EAA6E;AAC7E,MAAM,UAAU,UAAU,CACxB,QAAyC;IAEzC,MAAM,KAAK,GAAG,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IAC7C,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;AACjE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAyC;IAEzC,OAAO,QAAQ,EAAE,MAAM,CAAC,sBAAsB,CAAC,KAAK,mBAAmB,CAAC;AAC1E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/pipeline/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEzD,4CAA4C;AAC5C,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,CAExE;AAED,kEAAkE;AAClE,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAElE;AAED,sDAAsD;AACtD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,CAE7E;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAErE;AAED,6EAA6E;AAC7E,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAE1D;AAED,qEAAqE;AACrE,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAE9D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,CAE3E;AA2BD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAE/C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,YAAY,GAClB,YAAY,CAKd;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAE3D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,CAErE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/pipeline/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEzD,4CAA4C;AAC5C,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,CAExE;AAED,kEAAkE;AAClE,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAElE;AAED,sDAAsD;AACtD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,CAK7E;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAErE;AAED,6EAA6E;AAC7E,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAE1D;AAED,qEAAqE;AACrE,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAE9D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,CAE3E;AA2BD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAE/C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,YAAY,GAClB,YAAY,CAEd;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAE3D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,CAErE"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/pipeline/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/pipeline/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
2
+ import type { ResolvedParentLink, RowAuthorizationFacts } from "../../extensions/resource-authorization.js";
3
+ /** The row's facts, read structurally; every absence is the empty value, never a throw. */
4
+ export declare function rowAuthorizationFactsOf(kind: ApiResourceKind, resource: object): RowAuthorizationFacts;
5
+ /** `status.audit.spec_audit.created_by.id` as stamped — "" when any link is absent. */
6
+ export declare function createdByOf(resource: object): string;
7
+ /**
8
+ * The scope link and every configured additional parent the row names, in
9
+ * the tuple lifecycle's order. A parent the row does not name is left out.
10
+ */
11
+ export declare function parentLinksOf(kind: ApiResourceKind, resource: object, org: string): ReadonlyArray<ResolvedParentLink>;
12
+ //# sourceMappingURL=authorization-facts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization-facts.d.ts","sourceRoot":"","sources":["../../../src/pipeline/steps/authorization-facts.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qFAAqF,CAAC;AAI3H,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,4CAA4C,CAAC;AAUpD,2FAA2F;AAC3F,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,MAAM,GACf,qBAAqB,CAYvB;AAED,uFAAuF;AACvF,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIpD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,GACV,aAAa,CAAC,kBAAkB,CAAC,CAsCnC"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * The facts a stored row's authorization tuples derive from, read back
3
+ * from the row (`RowAuthorizationFacts`, extensions/resource-authorization.ts)
4
+ * — the read-time twin of the tuple lifecycle's create-time resolution in
5
+ * authorization-tuples.ts, and deliberately not that function: the
6
+ * create-time one throws when a row is missing its organization or its
7
+ * parent (a create must not half-succeed), while a row read back years
8
+ * later is a fact, missing pieces included — an empty organization
9
+ * resolves `admin from organization` to nobody, it does not fault a read.
10
+ * The two cannot drift unnoticed: src/authorization/__tests__/facts.test.ts
11
+ * pins that a well-formed row resolves to the same links through both.
12
+ *
13
+ * Two readers share this one resolver, which is the reason it is a leaf
14
+ * of its own: the list lanes' shared helper (extensions/list-read-scope.ts)
15
+ * builds every candidate's `ListEntryMeta` through it, and the built-in
16
+ * authorizer (src/authorization/facts.ts) derives a loaded row's tuples
17
+ * through it. It imports the two pure leaves it needs (apiresource-meta,
18
+ * shapes) and the protos, and nothing else, so the seam may import it by
19
+ * value without a cycle — the third such leaf, beside those two.
20
+ *
21
+ * Every read is structural (shapes.ts's own premise: protobuf-es messages
22
+ * are plain objects sharing the generated metadata and audit types), so
23
+ * the resolver needs no schema — a list lane holds decoded rows of a kind
24
+ * it names, not their descriptors.
25
+ */
26
+ import { AuthorizationScopeType } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb";
27
+ import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
28
+ import { getKindEnum, getKindMeta } from "../apiresource-meta.js";
29
+ import { parentIdOf } from "./shapes.js";
30
+ /** The row's facts, read structurally; every absence is the empty value, never a throw. */
31
+ export function rowAuthorizationFactsOf(kind, resource) {
32
+ const metadata = resource.metadata;
33
+ const org = metadata?.org ?? "";
34
+ return {
35
+ id: metadata?.id ?? "",
36
+ org,
37
+ visibility: metadata?.visibility ??
38
+ ApiResourceVisibility.api_resource_visibility_unspecified,
39
+ createdBy: createdByOf(resource),
40
+ parentLinks: parentLinksOf(kind, resource, org),
41
+ };
42
+ }
43
+ /** `status.audit.spec_audit.created_by.id` as stamped — "" when any link is absent. */
44
+ export function createdByOf(resource) {
45
+ return (resource.status?.audit?.specAudit?.createdBy?.id ?? "");
46
+ }
47
+ /**
48
+ * The scope link and every configured additional parent the row names, in
49
+ * the tuple lifecycle's order. A parent the row does not name is left out.
50
+ */
51
+ export function parentLinksOf(kind, resource, org) {
52
+ const config = getKindMeta(kind).authorization;
53
+ if (config === undefined) {
54
+ return [];
55
+ }
56
+ const links = [];
57
+ switch (config.scopeType) {
58
+ case AuthorizationScopeType.ORGANIZATION:
59
+ if (org !== "") {
60
+ links.push({
61
+ relation: "organization",
62
+ parentKind: getKindEnum("organization"),
63
+ parentId: org,
64
+ });
65
+ }
66
+ break;
67
+ case AuthorizationScopeType.PARENT:
68
+ if (config.parent !== undefined) {
69
+ pushLink(links, resource, config.parent);
70
+ }
71
+ break;
72
+ case AuthorizationScopeType.OWNER_ONLY:
73
+ case AuthorizationScopeType.PLATFORM:
74
+ case AuthorizationScopeType.NONE:
75
+ case AuthorizationScopeType.UNSPECIFIED:
76
+ // No scope link: OWNER_ONLY by design; PLATFORM is dead config in
77
+ // both editions (the lifecycle warns and writes none); NONE and
78
+ // UNSPECIFIED are kinds outside the model.
79
+ break;
80
+ default: {
81
+ const exhaustive = config.scopeType;
82
+ throw new Error(`unknown scope type: ${String(exhaustive)}`);
83
+ }
84
+ }
85
+ for (const parent of config.additionalParents) {
86
+ pushLink(links, resource, parent);
87
+ }
88
+ return links;
89
+ }
90
+ function pushLink(links, resource, parent) {
91
+ const parentId = parentIdOf(resource, parent.specField);
92
+ if (parentId !== "") {
93
+ links.push({
94
+ relation: parent.relation,
95
+ parentKind: getKindEnum(parent.kind),
96
+ parentId,
97
+ });
98
+ }
99
+ }
100
+ //# sourceMappingURL=authorization-facts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization-facts.js","sourceRoot":"","sources":["../../../src/pipeline/steps/authorization-facts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/pipeline/steps/delete.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,oBAAoB,CAAC;AAGpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAKnD,2DAA2D;AAC3D,eAAO,MAAM,eAAe,eAAe,CAAC;AAE5C,wBAAgB,wBAAwB,CAAC,IAAI,SAAS,WAAW,KAAK,YAAY,CAAC,IAAI,CAAC,CAWvF;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,SAAS,WAAW,EAC7B,YAAY,SAAS,WAAW,EAChC,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,CAuBrE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,SAAS,WAAW,EAC5D,KAAK,EAAE,KAAK,GACX,YAAY,CAAC,IAAI,CAAC,CAepB"}
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/pipeline/steps/delete.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,oBAAoB,CAAC;AAGpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAOtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAKnD,2DAA2D;AAC3D,eAAO,MAAM,eAAe,eAAe,CAAC;AAE5C,wBAAgB,wBAAwB,CACtC,IAAI,SAAS,WAAW,KACrB,YAAY,CAAC,IAAI,CAAC,CAWtB;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,SAAS,WAAW,EAC7B,YAAY,SAAS,WAAW,EAChC,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,CAuBrE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,SAAS,WAAW,EAC5D,KAAK,EAAE,KAAK,GACX,YAAY,CAAC,IAAI,CAAC,CAepB"}
@@ -1,6 +1,6 @@
1
1
  import { ResourceNotFoundError } from "../../store/interface.js";
2
2
  import { getKindName } from "../apiresource-meta.js";
3
- import { internalError, invalidArgumentError, notFoundError } from "../errors.js";
3
+ import { internalError, invalidArgumentError, notFoundError, } from "../errors.js";
4
4
  import { EXISTING_RESOURCE_KEY } from "./load-existing.js";
5
5
  import { idValueOf } from "./shapes.js";
6
6
  /** Context key for the extracted id (Go ResourceIdKey). */
@@ -1 +1 @@
1
- {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/pipeline/steps/delete.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,2DAA2D;AAC3D,MAAM,CAAC,MAAM,eAAe,GAAG,YAAY,CAAC;AAE5C,MAAM,UAAU,wBAAwB;IACtC,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,OAAO,CAAC,GAAyB;YAC/B,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACd,MAAM,oBAAoB,CAAC,yBAAyB,CAAC,CAAC;YACxD,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAG1C,KAAY,EAAE,cAA4B;IAC1C,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,KAAK,CAAC,OAAO,CAAC,GAA8B;YAC1C,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAElC,IAAI,QAAoC,CAAC;YACzC,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,CAChC,GAAG,CAAC,eAAe,EACnB,EAAE,EACF,cAAc,CACf,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,qBAAqB,EAAE,CAAC;oBAC3C,MAAM,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC5D,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;YAED,GAAG,CAAC,GAAG,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAY;IAEZ,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK,CAAC,OAAO,CAAC,GAAyB;YACrC,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,CACjB,KAAK,EACL,oBAAoB,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CACvD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,GAAyB;IAEzB,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACpC,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACxC,MAAM,aAAa,CACjB,IAAI,KAAK,CAAC,qEAAqE,CAAC,EAChF,0BAA0B,CAC3B,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/pipeline/steps/delete.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,aAAa,GACd,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,2DAA2D;AAC3D,MAAM,CAAC,MAAM,eAAe,GAAG,YAAY,CAAC;AAE5C,MAAM,UAAU,wBAAwB;IAGtC,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,OAAO,CAAC,GAAyB;YAC/B,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACd,MAAM,oBAAoB,CAAC,yBAAyB,CAAC,CAAC;YACxD,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAG1C,KAAY,EAAE,cAA4B;IAC1C,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,KAAK,CAAC,OAAO,CAAC,GAA8B;YAC1C,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAElC,IAAI,QAAoC,CAAC;YACzC,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,CAChC,GAAG,CAAC,eAAe,EACnB,EAAE,EACF,cAAc,CACf,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,qBAAqB,EAAE,CAAC;oBAC3C,MAAM,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC5D,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;YAED,GAAG,CAAC,GAAG,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAY;IAEZ,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK,CAAC,OAAO,CAAC,GAAyB;YACrC,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,CACjB,KAAK,EACL,oBAAoB,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CACvD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,GAAyB;IAEzB,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACpC,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACxC,MAAM,aAAa,CACjB,IAAI,KAAK,CACP,qEAAqE,CACtE,EACD,0BAA0B,CAC3B,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate.d.ts","sourceRoot":"","sources":["../../../src/pipeline/steps/duplicate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAKnD,wBAAgB,qBAAqB,CAAC,IAAI,SAAS,WAAW,EAC5D,KAAK,EAAE,KAAK,GACX,YAAY,CAAC,IAAI,CAAC,CAmCpB"}
1
+ {"version":3,"file":"duplicate.d.ts","sourceRoot":"","sources":["../../../src/pipeline/steps/duplicate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAKnD,wBAAgB,qBAAqB,CAAC,IAAI,SAAS,WAAW,EAC5D,KAAK,EAAE,KAAK,GACX,YAAY,CAAC,IAAI,CAAC,CAyCpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate.js","sourceRoot":"","sources":["../../../src/pipeline/steps/duplicate.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,qBAAqB,CACnC,KAAY;IAEZ,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK,CAAC,OAAO,CAAC,GAAyB;YACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,kEAAkE;gBAClE,MAAM,aAAa,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,EAAE,iBAAiB,CAAC,CAAC;YAChF,CAAC;YACD,IAAI,QAAQ,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;gBACzB,MAAM,aAAa,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,EAAE,iBAAiB,CAAC,CAAC;YAC9E,CAAC;YAED,IAAI,QAAQ,CAAC;YACb,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,kBAAkB,CACjC,KAAK,EACL,GAAG,CAAC,eAAe,EACnB,GAAG,CAAC,MAAM,EACV,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,GAAG,CACb,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,CAAC,KAAK,EAAE,gCAAgC,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,gBAAgB,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC9C,MAAM,kBAAkB,CACtB,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAChC,SAAS,QAAQ,CAAC,IAAI,aAAa,gBAAgB,EAAE,GAAG,IAAI,EAAE,UAAU,gBAAgB,EAAE,EAAE,IAAI,EAAE,GAAG,CACtG,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"duplicate.js","sourceRoot":"","sources":["../../../src/pipeline/steps/duplicate.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,qBAAqB,CACnC,KAAY;IAEZ,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK,CAAC,OAAO,CAAC,GAAyB;YACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,kEAAkE;gBAClE,MAAM,aAAa,CACjB,IAAI,KAAK,CAAC,0BAA0B,CAAC,EACrC,iBAAiB,CAClB,CAAC;YACJ,CAAC;YACD,IAAI,QAAQ,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;gBACzB,MAAM,aAAa,CACjB,IAAI,KAAK,CAAC,wBAAwB,CAAC,EACnC,iBAAiB,CAClB,CAAC;YACJ,CAAC;YAED,IAAI,QAAQ,CAAC;YACb,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,kBAAkB,CACjC,KAAK,EACL,GAAG,CAAC,eAAe,EACnB,GAAG,CAAC,MAAM,EACV,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,GAAG,CACb,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,CAAC,KAAK,EAAE,gCAAgC,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,gBAAgB,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC9C,MAAM,kBAAkB,CACtB,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAChC,SAAS,QAAQ,CAAC,IAAI,aAAa,gBAAgB,EAAE,GAAG,IAAI,EAAE,UAAU,gBAAgB,EAAE,EAAE,IAAI,EAAE,GAAG,CACtG,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { DescMessage } from "@bufbuild/protobuf";
2
+ import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
3
+ import type { PipelineStep } from "../pipeline.js";
4
+ import type { Store } from "../../store/interface.js";
5
+ /** The one sentence a refused mutation carries; the CLI and console render it as is. */
6
+ export declare function pluginManagedRefusal(kind: ApiResourceKind, slug: string, pluginSlug: string): string;
7
+ export interface GuardPluginManagedPositions {
8
+ /** The context key the stored resource rides; defaults to EXISTING_RESOURCE_KEY. */
9
+ readonly existingKey?: string;
10
+ }
11
+ export declare function newGuardPluginManagedStep<Desc extends DescMessage>(store: Store, positions?: GuardPluginManagedPositions): PipelineStep<Desc>;
12
+ //# sourceMappingURL=guard-plugin-managed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guard-plugin-managed.d.ts","sourceRoot":"","sources":["../../../src/pipeline/steps/guard-plugin-managed.ts"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,WAAW,EAAW,MAAM,oBAAoB,CAAC;AAG/D,OAAO,EAAE,eAAe,EAAE,MAAM,qFAAqF,CAAC;AAItH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAYtD,wFAAwF;AACxF,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,eAAe,EACrB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,MAAM,CAOR;AAED,MAAM,WAAW,2BAA2B;IAC1C,oFAAoF;IACpF,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,yBAAyB,CAAC,IAAI,SAAS,WAAW,EAChE,KAAK,EAAE,KAAK,EACZ,SAAS,GAAE,2BAAgC,GAC1C,YAAY,CAAC,IAAI,CAAC,CAkDpB"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * GuardPluginManaged — the write boundary for resources a plugin
3
+ * materialised. A plugin's skills, MCP servers, agent and workflows are
4
+ * ordinary resources in the organization, labelled `stigmer.ai/plugin:
5
+ * <plugin id>` by the controller that installed them; the plugin owns
6
+ * their definition, so a client edit would be silently overwritten by the
7
+ * next upgrade and a client delete would leave the plugin claiming a
8
+ * member it no longer has. Customisation is composition: the user writes
9
+ * their own agent over the plugin's skills and servers, which stay readable
10
+ * and usable by everyone the visibility admits.
11
+ *
12
+ * Two facts decide, together (the apiresource-labels.ts doctrine: a label
13
+ * restricts only beside server-owned state):
14
+ * - the STORED resource carries the plugin label — the request's labels
15
+ * are never consulted, so a client cannot detach a child by omitting
16
+ * the label on an update;
17
+ * - AND the plugin row it names exists. A label whose plugin is gone (a
18
+ * cascade that failed part-way; a label a self-hosted operator stamped
19
+ * by hand under the permissive authorizer) leaves the resource editable
20
+ * and deletable, so nothing can be locked forever.
21
+ *
22
+ * Server-composed writes pass by structure: the plugin controller is the
23
+ * one writer of these resources and rides the in-process lane as the
24
+ * installing caller (`origin: "in-process"`), exactly the arm
25
+ * GuardReservedLabels passes. Operational RPCs (connect, OAuth flows,
26
+ * instances, sessions, executions) never splice this step: they read or
27
+ * enrich a server, they do not redefine it.
28
+ *
29
+ * Placement: after the chain's load of the stored resource (LoadExisting,
30
+ * LoadExistingForDelete, a kind's visibility loader, skill push's
31
+ * FindExistingBySlug), before any state is built or persisted. The
32
+ * refusal is FAILED_PRECONDITION with the plugin named, so the user knows
33
+ * which door to use instead.
34
+ *
35
+ * Proven by __tests__/guard-plugin-managed.test.ts and the plugin
36
+ * conformance suite's managed-child arms.
37
+ */
38
+ import { Code, ConnectError } from "@connectrpc/connect";
39
+ import { PluginSchema } from "@stigmer/protos/ai/stigmer/agentic/plugin/v1/api_pb";
40
+ import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
41
+ import { pluginIdOf } from "../apiresource-labels.js";
42
+ import { internalError } from "../errors.js";
43
+ import { ResourceNotFoundError } from "../../store/interface.js";
44
+ import { EXISTING_RESOURCE_KEY } from "./load-existing.js";
45
+ import { metadataOf } from "./shapes.js";
46
+ /** The kinds a plugin materialises; the noun opens the refusal sentence. */
47
+ const MANAGED_KIND_NOUNS = new Map([
48
+ [ApiResourceKind.skill, "skill"],
49
+ [ApiResourceKind.mcp_server, "MCP server"],
50
+ [ApiResourceKind.agent, "agent"],
51
+ [ApiResourceKind.workflow, "workflow"],
52
+ ]);
53
+ /** The one sentence a refused mutation carries; the CLI and console render it as is. */
54
+ export function pluginManagedRefusal(kind, slug, pluginSlug) {
55
+ const noun = MANAGED_KIND_NOUNS.get(kind) ?? ApiResourceKind[kind] ?? String(kind);
56
+ return (`${noun} '${slug}' is managed by plugin '${pluginSlug}'; change the plugin and ` +
57
+ "push it again, or compose your own agent over it");
58
+ }
59
+ export function newGuardPluginManagedStep(store, positions = {}) {
60
+ const existingKey = positions.existingKey ?? EXISTING_RESOURCE_KEY;
61
+ return {
62
+ name: "GuardPluginManaged",
63
+ async execute(ctx) {
64
+ if (ctx.callerIdentity.callerClass === "internal" ||
65
+ ctx.callerIdentity.origin === "in-process") {
66
+ // The plugin controller's own materialisation, upgrade and cascade
67
+ // writes; the same structural pass GuardReservedLabels takes.
68
+ return;
69
+ }
70
+ const existing = ctx.get(existingKey);
71
+ if (existing === undefined) {
72
+ return;
73
+ }
74
+ const metadata = metadataOf(existing);
75
+ const pluginId = pluginIdOf(metadata);
76
+ if (pluginId === undefined) {
77
+ return;
78
+ }
79
+ let pluginSlug;
80
+ try {
81
+ const plugin = await store.getResource(ApiResourceKind.plugin, pluginId, PluginSchema);
82
+ pluginSlug = plugin.metadata?.slug ?? pluginId;
83
+ }
84
+ catch (error) {
85
+ if (error instanceof ResourceNotFoundError) {
86
+ // A dangling label locks nothing: the plugin that would own this
87
+ // resource is gone, so the resource is the user's again.
88
+ return;
89
+ }
90
+ throw internalError(error, "plugin ownership could not be checked");
91
+ }
92
+ throw new ConnectError(pluginManagedRefusal(ctx.apiResourceKind, metadata?.slug ?? "", pluginSlug), Code.FailedPrecondition);
93
+ },
94
+ };
95
+ }
96
+ //# sourceMappingURL=guard-plugin-managed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guard-plugin-managed.js","sourceRoot":"","sources":["../../../src/pipeline/steps/guard-plugin-managed.ts"],"names":[],"mappings":"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"}