@xemahq/kernel-contracts 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (802) hide show
  1. package/dist/agent-composition/index.d.ts +7 -0
  2. package/dist/agent-composition/index.d.ts.map +1 -0
  3. package/dist/agent-composition/index.js +23 -0
  4. package/dist/agent-composition/index.js.map +1 -0
  5. package/dist/agent-composition/lib/capability-layer.d.ts +11 -0
  6. package/dist/agent-composition/lib/capability-layer.d.ts.map +1 -0
  7. package/dist/agent-composition/lib/capability-layer.js +10 -0
  8. package/dist/agent-composition/lib/capability-layer.js.map +1 -0
  9. package/dist/agent-composition/lib/composition-limits-schema.d.ts +4 -0
  10. package/dist/agent-composition/lib/composition-limits-schema.d.ts.map +1 -0
  11. package/dist/agent-composition/lib/composition-limits-schema.js +13 -0
  12. package/dist/agent-composition/lib/composition-limits-schema.js.map +1 -0
  13. package/dist/agent-composition/lib/composition-workspace.d.ts +35 -0
  14. package/dist/agent-composition/lib/composition-workspace.d.ts.map +1 -0
  15. package/dist/agent-composition/lib/composition-workspace.js +9 -0
  16. package/dist/agent-composition/lib/composition-workspace.js.map +1 -0
  17. package/dist/agent-composition/lib/composition.d.ts +66 -0
  18. package/dist/agent-composition/lib/composition.d.ts.map +1 -0
  19. package/dist/agent-composition/lib/composition.js +18 -0
  20. package/dist/agent-composition/lib/composition.js.map +1 -0
  21. package/dist/agent-composition/lib/intrinsic-floor.d.ts +15 -0
  22. package/dist/agent-composition/lib/intrinsic-floor.d.ts.map +1 -0
  23. package/dist/agent-composition/lib/intrinsic-floor.js +22 -0
  24. package/dist/agent-composition/lib/intrinsic-floor.js.map +1 -0
  25. package/dist/agent-composition/lib/model-resolution-matrix.d.ts +38 -0
  26. package/dist/agent-composition/lib/model-resolution-matrix.d.ts.map +1 -0
  27. package/dist/agent-composition/lib/model-resolution-matrix.js +12 -0
  28. package/dist/agent-composition/lib/model-resolution-matrix.js.map +1 -0
  29. package/dist/agent-workspace/awp-spec.json +225 -0
  30. package/dist/agent-workspace/index.d.ts +12 -0
  31. package/dist/agent-workspace/index.d.ts.map +1 -0
  32. package/dist/agent-workspace/index.js +28 -0
  33. package/dist/agent-workspace/index.js.map +1 -0
  34. package/dist/agent-workspace/lib/agent-run-context.d.ts +12 -0
  35. package/dist/agent-workspace/lib/agent-run-context.d.ts.map +1 -0
  36. package/dist/agent-workspace/lib/agent-run-context.js +3 -0
  37. package/dist/agent-workspace/lib/agent-run-context.js.map +1 -0
  38. package/dist/agent-workspace/lib/agent-tool-defaults.d.ts +21 -0
  39. package/dist/agent-workspace/lib/agent-tool-defaults.d.ts.map +1 -0
  40. package/dist/agent-workspace/lib/agent-tool-defaults.js +111 -0
  41. package/dist/agent-workspace/lib/agent-tool-defaults.js.map +1 -0
  42. package/dist/agent-workspace/lib/awp-v1.d.ts +15 -0
  43. package/dist/agent-workspace/lib/awp-v1.d.ts.map +1 -0
  44. package/dist/agent-workspace/lib/awp-v1.js +197 -0
  45. package/dist/agent-workspace/lib/awp-v1.js.map +1 -0
  46. package/dist/agent-workspace/lib/context-json.d.ts +35 -0
  47. package/dist/agent-workspace/lib/context-json.d.ts.map +1 -0
  48. package/dist/agent-workspace/lib/context-json.js +3 -0
  49. package/dist/agent-workspace/lib/context-json.js.map +1 -0
  50. package/dist/agent-workspace/lib/deliverable-spec-ref.d.ts +10 -0
  51. package/dist/agent-workspace/lib/deliverable-spec-ref.d.ts.map +1 -0
  52. package/dist/agent-workspace/lib/deliverable-spec-ref.js +33 -0
  53. package/dist/agent-workspace/lib/deliverable-spec-ref.js.map +1 -0
  54. package/dist/agent-workspace/lib/endpoint-fetch-spec.d.ts +31 -0
  55. package/dist/agent-workspace/lib/endpoint-fetch-spec.d.ts.map +1 -0
  56. package/dist/agent-workspace/lib/endpoint-fetch-spec.js +20 -0
  57. package/dist/agent-workspace/lib/endpoint-fetch-spec.js.map +1 -0
  58. package/dist/agent-workspace/lib/manifest.d.ts +28 -0
  59. package/dist/agent-workspace/lib/manifest.d.ts.map +1 -0
  60. package/dist/agent-workspace/lib/manifest.js +16 -0
  61. package/dist/agent-workspace/lib/manifest.js.map +1 -0
  62. package/dist/agent-workspace/lib/mount-apply.d.ts +42 -0
  63. package/dist/agent-workspace/lib/mount-apply.d.ts.map +1 -0
  64. package/dist/agent-workspace/lib/mount-apply.js +15 -0
  65. package/dist/agent-workspace/lib/mount-apply.js.map +1 -0
  66. package/dist/agent-workspace/lib/working-file.d.ts +20 -0
  67. package/dist/agent-workspace/lib/working-file.d.ts.map +1 -0
  68. package/dist/agent-workspace/lib/working-file.js +42 -0
  69. package/dist/agent-workspace/lib/working-file.js.map +1 -0
  70. package/dist/agent-workspace/lib/workspace-layout.d.ts +34 -0
  71. package/dist/agent-workspace/lib/workspace-layout.d.ts.map +1 -0
  72. package/dist/agent-workspace/lib/workspace-layout.js +31 -0
  73. package/dist/agent-workspace/lib/workspace-layout.js.map +1 -0
  74. package/dist/agent-workspace/lib/workspace-spec.d.ts +61 -0
  75. package/dist/agent-workspace/lib/workspace-spec.d.ts.map +1 -0
  76. package/dist/agent-workspace/lib/workspace-spec.js +19 -0
  77. package/dist/agent-workspace/lib/workspace-spec.js.map +1 -0
  78. package/dist/biome/index.d.ts +11 -0
  79. package/dist/biome/index.d.ts.map +1 -0
  80. package/dist/biome/index.js +27 -0
  81. package/dist/biome/index.js.map +1 -0
  82. package/dist/biome/lib/biome-api.d.ts +12 -0
  83. package/dist/biome/lib/biome-api.d.ts.map +1 -0
  84. package/dist/biome/lib/biome-api.js +14 -0
  85. package/dist/biome/lib/biome-api.js.map +1 -0
  86. package/dist/biome/lib/biome-capability-refs.d.ts +11 -0
  87. package/dist/biome/lib/biome-capability-refs.d.ts.map +1 -0
  88. package/dist/biome/lib/biome-capability-refs.js +12 -0
  89. package/dist/biome/lib/biome-capability-refs.js.map +1 -0
  90. package/dist/biome/lib/biome-engines.d.ts +6 -0
  91. package/dist/biome/lib/biome-engines.d.ts.map +1 -0
  92. package/dist/biome/lib/biome-engines.js +8 -0
  93. package/dist/biome/lib/biome-engines.js.map +1 -0
  94. package/dist/biome/lib/biome-lifecycle-hooks.d.ts +10 -0
  95. package/dist/biome/lib/biome-lifecycle-hooks.d.ts.map +1 -0
  96. package/dist/biome/lib/biome-lifecycle-hooks.js +12 -0
  97. package/dist/biome/lib/biome-lifecycle-hooks.js.map +1 -0
  98. package/dist/biome/lib/biome-lifecycle.d.ts +12 -0
  99. package/dist/biome/lib/biome-lifecycle.d.ts.map +1 -0
  100. package/dist/biome/lib/biome-lifecycle.js +16 -0
  101. package/dist/biome/lib/biome-lifecycle.js.map +1 -0
  102. package/dist/biome/lib/biome-manifest.d.ts +36 -0
  103. package/dist/biome/lib/biome-manifest.d.ts.map +1 -0
  104. package/dist/biome/lib/biome-manifest.js +38 -0
  105. package/dist/biome/lib/biome-manifest.js.map +1 -0
  106. package/dist/biome/lib/biome-permissions.d.ts +9 -0
  107. package/dist/biome/lib/biome-permissions.d.ts.map +1 -0
  108. package/dist/biome/lib/biome-permissions.js +11 -0
  109. package/dist/biome/lib/biome-permissions.js.map +1 -0
  110. package/dist/biome/lib/biome-scope.d.ts +9 -0
  111. package/dist/biome/lib/biome-scope.d.ts.map +1 -0
  112. package/dist/biome/lib/biome-scope.js +13 -0
  113. package/dist/biome/lib/biome-scope.js.map +1 -0
  114. package/dist/biome/lib/biome-trust-tier.d.ts +11 -0
  115. package/dist/biome/lib/biome-trust-tier.d.ts.map +1 -0
  116. package/dist/biome/lib/biome-trust-tier.js +15 -0
  117. package/dist/biome/lib/biome-trust-tier.js.map +1 -0
  118. package/dist/biome/lib/trust-tier-policies.d.ts +8 -0
  119. package/dist/biome/lib/trust-tier-policies.d.ts.map +1 -0
  120. package/dist/biome/lib/trust-tier-policies.js +66 -0
  121. package/dist/biome/lib/trust-tier-policies.js.map +1 -0
  122. package/dist/capability/index.d.ts +9 -0
  123. package/dist/capability/index.d.ts.map +1 -0
  124. package/dist/capability/index.js +25 -0
  125. package/dist/capability/index.js.map +1 -0
  126. package/dist/capability/lib/capability-contribution.d.ts +18 -0
  127. package/dist/capability/lib/capability-contribution.d.ts.map +1 -0
  128. package/dist/capability/lib/capability-contribution.js +23 -0
  129. package/dist/capability/lib/capability-contribution.js.map +1 -0
  130. package/dist/capability/lib/capability-grant.d.ts +22 -0
  131. package/dist/capability/lib/capability-grant.d.ts.map +1 -0
  132. package/dist/capability/lib/capability-grant.js +27 -0
  133. package/dist/capability/lib/capability-grant.js.map +1 -0
  134. package/dist/capability/lib/capability-policy.d.ts +12 -0
  135. package/dist/capability/lib/capability-policy.d.ts.map +1 -0
  136. package/dist/capability/lib/capability-policy.js +14 -0
  137. package/dist/capability/lib/capability-policy.js.map +1 -0
  138. package/dist/capability/lib/capability-ref.d.ts +19 -0
  139. package/dist/capability/lib/capability-ref.d.ts.map +1 -0
  140. package/dist/capability/lib/capability-ref.js +63 -0
  141. package/dist/capability/lib/capability-ref.js.map +1 -0
  142. package/dist/capability/lib/errors.d.ts +60 -0
  143. package/dist/capability/lib/errors.d.ts.map +1 -0
  144. package/dist/capability/lib/errors.js +73 -0
  145. package/dist/capability/lib/errors.js.map +1 -0
  146. package/dist/capability/lib/meta-tool.d.ts +77 -0
  147. package/dist/capability/lib/meta-tool.d.ts.map +1 -0
  148. package/dist/capability/lib/meta-tool.js +76 -0
  149. package/dist/capability/lib/meta-tool.js.map +1 -0
  150. package/dist/capability/lib/permission-profile.d.ts +35 -0
  151. package/dist/capability/lib/permission-profile.d.ts.map +1 -0
  152. package/dist/capability/lib/permission-profile.js +38 -0
  153. package/dist/capability/lib/permission-profile.js.map +1 -0
  154. package/dist/capability/lib/shell-command-descriptor.d.ts +19 -0
  155. package/dist/capability/lib/shell-command-descriptor.d.ts.map +1 -0
  156. package/dist/capability/lib/shell-command-descriptor.js +20 -0
  157. package/dist/capability/lib/shell-command-descriptor.js.map +1 -0
  158. package/dist/contribution/index.d.ts +5 -0
  159. package/dist/contribution/index.d.ts.map +1 -0
  160. package/dist/contribution/index.js +21 -0
  161. package/dist/contribution/index.js.map +1 -0
  162. package/dist/contribution/lib/contribution-kind.d.ts +44 -0
  163. package/dist/contribution/lib/contribution-kind.d.ts.map +1 -0
  164. package/dist/contribution/lib/contribution-kind.js +47 -0
  165. package/dist/contribution/lib/contribution-kind.js.map +1 -0
  166. package/dist/contribution/lib/contribution-source.d.ts +11 -0
  167. package/dist/contribution/lib/contribution-source.d.ts.map +1 -0
  168. package/dist/contribution/lib/contribution-source.js +14 -0
  169. package/dist/contribution/lib/contribution-source.js.map +1 -0
  170. package/dist/contribution/lib/contribution.d.ts +36 -0
  171. package/dist/contribution/lib/contribution.d.ts.map +1 -0
  172. package/dist/contribution/lib/contribution.js +56 -0
  173. package/dist/contribution/lib/contribution.js.map +1 -0
  174. package/dist/contribution/lib/registry.d.ts +25 -0
  175. package/dist/contribution/lib/registry.d.ts.map +1 -0
  176. package/dist/contribution/lib/registry.js +54 -0
  177. package/dist/contribution/lib/registry.js.map +1 -0
  178. package/dist/document-templates/index.d.ts +3 -0
  179. package/dist/document-templates/index.d.ts.map +1 -0
  180. package/dist/document-templates/index.js +19 -0
  181. package/dist/document-templates/index.js.map +1 -0
  182. package/dist/document-templates/lib/document-template.d.ts +24 -0
  183. package/dist/document-templates/lib/document-template.d.ts.map +1 -0
  184. package/dist/document-templates/lib/document-template.js +10 -0
  185. package/dist/document-templates/lib/document-template.js.map +1 -0
  186. package/dist/document-templates/lib/index.d.ts +3 -0
  187. package/dist/document-templates/lib/index.d.ts.map +1 -0
  188. package/dist/document-templates/lib/index.js +19 -0
  189. package/dist/document-templates/lib/index.js.map +1 -0
  190. package/dist/document-templates/lib/rendering-shape.d.ts +7 -0
  191. package/dist/document-templates/lib/rendering-shape.d.ts.map +1 -0
  192. package/dist/document-templates/lib/rendering-shape.js +20 -0
  193. package/dist/document-templates/lib/rendering-shape.js.map +1 -0
  194. package/dist/document-themes/index.d.ts +3 -0
  195. package/dist/document-themes/index.d.ts.map +1 -0
  196. package/dist/document-themes/index.js +19 -0
  197. package/dist/document-themes/index.js.map +1 -0
  198. package/dist/document-themes/lib/component-vocabulary.d.ts +16 -0
  199. package/dist/document-themes/lib/component-vocabulary.d.ts.map +1 -0
  200. package/dist/document-themes/lib/component-vocabulary.js +55 -0
  201. package/dist/document-themes/lib/component-vocabulary.js.map +1 -0
  202. package/dist/document-themes/lib/document-theme.d.ts +57 -0
  203. package/dist/document-themes/lib/document-theme.d.ts.map +1 -0
  204. package/dist/document-themes/lib/document-theme.js +10 -0
  205. package/dist/document-themes/lib/document-theme.js.map +1 -0
  206. package/dist/document-themes/lib/index.d.ts +3 -0
  207. package/dist/document-themes/lib/index.d.ts.map +1 -0
  208. package/dist/document-themes/lib/index.js +19 -0
  209. package/dist/document-themes/lib/index.js.map +1 -0
  210. package/dist/entitlement/index.d.ts +2 -0
  211. package/dist/entitlement/index.d.ts.map +1 -0
  212. package/dist/entitlement/index.js +18 -0
  213. package/dist/entitlement/index.js.map +1 -0
  214. package/dist/entitlement/lib/entitlement.d.ts +25 -0
  215. package/dist/entitlement/lib/entitlement.d.ts.map +1 -0
  216. package/dist/entitlement/lib/entitlement.js +54 -0
  217. package/dist/entitlement/lib/entitlement.js.map +1 -0
  218. package/dist/execution-context/index.d.ts +4 -0
  219. package/dist/execution-context/index.d.ts.map +1 -0
  220. package/dist/execution-context/index.js +20 -0
  221. package/dist/execution-context/index.js.map +1 -0
  222. package/dist/execution-context/lib/caller.d.ts +19 -0
  223. package/dist/execution-context/lib/caller.d.ts.map +1 -0
  224. package/dist/execution-context/lib/caller.js +22 -0
  225. package/dist/execution-context/lib/caller.js.map +1 -0
  226. package/dist/execution-context/lib/execution-context.d.ts +60 -0
  227. package/dist/execution-context/lib/execution-context.d.ts.map +1 -0
  228. package/dist/execution-context/lib/execution-context.js +58 -0
  229. package/dist/execution-context/lib/execution-context.js.map +1 -0
  230. package/dist/execution-context/lib/subject.d.ts +3 -0
  231. package/dist/execution-context/lib/subject.d.ts.map +1 -0
  232. package/dist/execution-context/lib/subject.js +11 -0
  233. package/dist/execution-context/lib/subject.js.map +1 -0
  234. package/dist/execution-environment/index.d.ts +4 -0
  235. package/dist/execution-environment/index.d.ts.map +1 -0
  236. package/dist/execution-environment/index.js +20 -0
  237. package/dist/execution-environment/index.js.map +1 -0
  238. package/dist/execution-environment/lib/approval-rule.d.ts +10 -0
  239. package/dist/execution-environment/lib/approval-rule.d.ts.map +1 -0
  240. package/dist/execution-environment/lib/approval-rule.js +12 -0
  241. package/dist/execution-environment/lib/approval-rule.js.map +1 -0
  242. package/dist/execution-environment/lib/built-in-environments.d.ts +16 -0
  243. package/dist/execution-environment/lib/built-in-environments.d.ts.map +1 -0
  244. package/dist/execution-environment/lib/built-in-environments.js +33 -0
  245. package/dist/execution-environment/lib/built-in-environments.js.map +1 -0
  246. package/dist/execution-environment/lib/execution-environment.d.ts +58 -0
  247. package/dist/execution-environment/lib/execution-environment.d.ts.map +1 -0
  248. package/dist/execution-environment/lib/execution-environment.js +89 -0
  249. package/dist/execution-environment/lib/execution-environment.js.map +1 -0
  250. package/dist/kernel-state/index.d.ts +4 -0
  251. package/dist/kernel-state/index.d.ts.map +1 -0
  252. package/dist/kernel-state/index.js +20 -0
  253. package/dist/kernel-state/index.js.map +1 -0
  254. package/dist/kernel-state/lib/adapter-kind.d.ts +5 -0
  255. package/dist/kernel-state/lib/adapter-kind.d.ts.map +1 -0
  256. package/dist/kernel-state/lib/adapter-kind.js +9 -0
  257. package/dist/kernel-state/lib/adapter-kind.js.map +1 -0
  258. package/dist/kernel-state/lib/kernel-state.d.ts +37 -0
  259. package/dist/kernel-state/lib/kernel-state.d.ts.map +1 -0
  260. package/dist/kernel-state/lib/kernel-state.js +9 -0
  261. package/dist/kernel-state/lib/kernel-state.js.map +1 -0
  262. package/dist/kernel-state/lib/key-grammar.d.ts +16 -0
  263. package/dist/kernel-state/lib/key-grammar.d.ts.map +1 -0
  264. package/dist/kernel-state/lib/key-grammar.js +56 -0
  265. package/dist/kernel-state/lib/key-grammar.js.map +1 -0
  266. package/dist/llm-gateway/index.d.ts +3 -0
  267. package/dist/llm-gateway/index.d.ts.map +1 -0
  268. package/dist/llm-gateway/index.js +19 -0
  269. package/dist/llm-gateway/index.js.map +1 -0
  270. package/dist/llm-gateway/lib/caller.d.ts +14 -0
  271. package/dist/llm-gateway/lib/caller.d.ts.map +1 -0
  272. package/dist/llm-gateway/lib/caller.js +11 -0
  273. package/dist/llm-gateway/lib/caller.js.map +1 -0
  274. package/dist/llm-gateway/lib/errors.d.ts +27 -0
  275. package/dist/llm-gateway/lib/errors.d.ts.map +1 -0
  276. package/dist/llm-gateway/lib/errors.js +36 -0
  277. package/dist/llm-gateway/lib/errors.js.map +1 -0
  278. package/dist/mcp-tool/index.d.ts +7 -0
  279. package/dist/mcp-tool/index.d.ts.map +1 -0
  280. package/dist/mcp-tool/index.js +23 -0
  281. package/dist/mcp-tool/index.js.map +1 -0
  282. package/dist/mcp-tool/lib/mcp-protocol.d.ts +75 -0
  283. package/dist/mcp-tool/lib/mcp-protocol.d.ts.map +1 -0
  284. package/dist/mcp-tool/lib/mcp-protocol.js +19 -0
  285. package/dist/mcp-tool/lib/mcp-protocol.js.map +1 -0
  286. package/dist/mcp-tool/lib/mcp-server-config.d.ts +8 -0
  287. package/dist/mcp-tool/lib/mcp-server-config.d.ts.map +1 -0
  288. package/dist/mcp-tool/lib/mcp-server-config.js +3 -0
  289. package/dist/mcp-tool/lib/mcp-server-config.js.map +1 -0
  290. package/dist/mcp-tool/lib/provider-kind.d.ts +10 -0
  291. package/dist/mcp-tool/lib/provider-kind.d.ts.map +1 -0
  292. package/dist/mcp-tool/lib/provider-kind.js +14 -0
  293. package/dist/mcp-tool/lib/provider-kind.js.map +1 -0
  294. package/dist/mcp-tool/lib/resolver-scope.d.ts +16 -0
  295. package/dist/mcp-tool/lib/resolver-scope.d.ts.map +1 -0
  296. package/dist/mcp-tool/lib/resolver-scope.js +12 -0
  297. package/dist/mcp-tool/lib/resolver-scope.js.map +1 -0
  298. package/dist/mcp-tool/lib/tool-provider.d.ts +21 -0
  299. package/dist/mcp-tool/lib/tool-provider.d.ts.map +1 -0
  300. package/dist/mcp-tool/lib/tool-provider.js +3 -0
  301. package/dist/mcp-tool/lib/tool-provider.js.map +1 -0
  302. package/dist/mcp-tool/lib/tool-selection.d.ts +34 -0
  303. package/dist/mcp-tool/lib/tool-selection.d.ts.map +1 -0
  304. package/dist/mcp-tool/lib/tool-selection.js +18 -0
  305. package/dist/mcp-tool/lib/tool-selection.js.map +1 -0
  306. package/dist/object/index.d.ts +5 -0
  307. package/dist/object/index.d.ts.map +1 -0
  308. package/dist/object/index.js +21 -0
  309. package/dist/object/index.js.map +1 -0
  310. package/dist/object/lib/object-lifecycle.d.ts +8 -0
  311. package/dist/object/lib/object-lifecycle.d.ts.map +1 -0
  312. package/dist/object/lib/object-lifecycle.js +12 -0
  313. package/dist/object/lib/object-lifecycle.js.map +1 -0
  314. package/dist/object/lib/xema-object-kind.d.ts +43 -0
  315. package/dist/object/lib/xema-object-kind.d.ts.map +1 -0
  316. package/dist/object/lib/xema-object-kind.js +47 -0
  317. package/dist/object/lib/xema-object-kind.js.map +1 -0
  318. package/dist/object/lib/xema-object-ref.d.ts +20 -0
  319. package/dist/object/lib/xema-object-ref.d.ts.map +1 -0
  320. package/dist/object/lib/xema-object-ref.js +133 -0
  321. package/dist/object/lib/xema-object-ref.js.map +1 -0
  322. package/dist/object/lib/xema-object.d.ts +24 -0
  323. package/dist/object/lib/xema-object.d.ts.map +1 -0
  324. package/dist/object/lib/xema-object.js +24 -0
  325. package/dist/object/lib/xema-object.js.map +1 -0
  326. package/dist/policy/index.d.ts +4 -0
  327. package/dist/policy/index.d.ts.map +1 -0
  328. package/dist/policy/index.js +20 -0
  329. package/dist/policy/index.js.map +1 -0
  330. package/dist/policy/lib/obligations.d.ts +91 -0
  331. package/dist/policy/lib/obligations.d.ts.map +1 -0
  332. package/dist/policy/lib/obligations.js +76 -0
  333. package/dist/policy/lib/obligations.js.map +1 -0
  334. package/dist/policy/lib/policy.d.ts +29 -0
  335. package/dist/policy/lib/policy.d.ts.map +1 -0
  336. package/dist/policy/lib/policy.js +32 -0
  337. package/dist/policy/lib/policy.js.map +1 -0
  338. package/dist/policy/lib/route-hints.d.ts +11 -0
  339. package/dist/policy/lib/route-hints.d.ts.map +1 -0
  340. package/dist/policy/lib/route-hints.js +15 -0
  341. package/dist/policy/lib/route-hints.js.map +1 -0
  342. package/dist/runner/index.d.ts +12 -0
  343. package/dist/runner/index.d.ts.map +1 -0
  344. package/dist/runner/index.js +28 -0
  345. package/dist/runner/index.js.map +1 -0
  346. package/dist/runner/lib/dispatch.d.ts +13 -0
  347. package/dist/runner/lib/dispatch.d.ts.map +1 -0
  348. package/dist/runner/lib/dispatch.js +15 -0
  349. package/dist/runner/lib/dispatch.js.map +1 -0
  350. package/dist/runner/lib/input-hash.d.ts +2 -0
  351. package/dist/runner/lib/input-hash.d.ts.map +1 -0
  352. package/dist/runner/lib/input-hash.js +37 -0
  353. package/dist/runner/lib/input-hash.js.map +1 -0
  354. package/dist/runner/lib/job-token.d.ts +22 -0
  355. package/dist/runner/lib/job-token.d.ts.map +1 -0
  356. package/dist/runner/lib/job-token.js +3 -0
  357. package/dist/runner/lib/job-token.js.map +1 -0
  358. package/dist/runner/lib/runner-attestation.d.ts +10 -0
  359. package/dist/runner/lib/runner-attestation.d.ts.map +1 -0
  360. package/dist/runner/lib/runner-attestation.js +5 -0
  361. package/dist/runner/lib/runner-attestation.js.map +1 -0
  362. package/dist/runner/lib/runner-job.d.ts +26 -0
  363. package/dist/runner/lib/runner-job.d.ts.map +1 -0
  364. package/dist/runner/lib/runner-job.js +36 -0
  365. package/dist/runner/lib/runner-job.js.map +1 -0
  366. package/dist/runner/lib/runner-kind.d.ts +2 -0
  367. package/dist/runner/lib/runner-kind.d.ts.map +1 -0
  368. package/dist/runner/lib/runner-kind.js +7 -0
  369. package/dist/runner/lib/runner-kind.js.map +1 -0
  370. package/dist/runner/lib/runner-mode.d.ts +5 -0
  371. package/dist/runner/lib/runner-mode.d.ts.map +1 -0
  372. package/dist/runner/lib/runner-mode.js +9 -0
  373. package/dist/runner/lib/runner-mode.js.map +1 -0
  374. package/dist/runner/lib/runner-plane.d.ts +19 -0
  375. package/dist/runner/lib/runner-plane.d.ts.map +1 -0
  376. package/dist/runner/lib/runner-plane.js +31 -0
  377. package/dist/runner/lib/runner-plane.js.map +1 -0
  378. package/dist/runner/lib/runner-registration.d.ts +60 -0
  379. package/dist/runner/lib/runner-registration.d.ts.map +1 -0
  380. package/dist/runner/lib/runner-registration.js +62 -0
  381. package/dist/runner/lib/runner-registration.js.map +1 -0
  382. package/dist/runner/lib/runner.d.ts +24 -0
  383. package/dist/runner/lib/runner.d.ts.map +1 -0
  384. package/dist/runner/lib/runner.js +26 -0
  385. package/dist/runner/lib/runner.js.map +1 -0
  386. package/dist/runner/lib/runtime-isolation.d.ts +10 -0
  387. package/dist/runner/lib/runtime-isolation.d.ts.map +1 -0
  388. package/dist/runner/lib/runtime-isolation.js +23 -0
  389. package/dist/runner/lib/runtime-isolation.js.map +1 -0
  390. package/dist/search-source/index.d.ts +5 -0
  391. package/dist/search-source/index.d.ts.map +1 -0
  392. package/dist/search-source/index.js +21 -0
  393. package/dist/search-source/index.js.map +1 -0
  394. package/dist/search-source/lib/indexable-document.d.ts +40 -0
  395. package/dist/search-source/lib/indexable-document.d.ts.map +1 -0
  396. package/dist/search-source/lib/indexable-document.js +26 -0
  397. package/dist/search-source/lib/indexable-document.js.map +1 -0
  398. package/dist/search-source/lib/search-index-event.d.ts +52 -0
  399. package/dist/search-source/lib/search-index-event.d.ts.map +1 -0
  400. package/dist/search-source/lib/search-index-event.js +29 -0
  401. package/dist/search-source/lib/search-index-event.js.map +1 -0
  402. package/dist/search-source/lib/search-replay.d.ts +46 -0
  403. package/dist/search-source/lib/search-replay.d.ts.map +1 -0
  404. package/dist/search-source/lib/search-replay.js +36 -0
  405. package/dist/search-source/lib/search-replay.js.map +1 -0
  406. package/dist/search-source/lib/search-source-descriptor.d.ts +15 -0
  407. package/dist/search-source/lib/search-source-descriptor.d.ts.map +1 -0
  408. package/dist/search-source/lib/search-source-descriptor.js +3 -0
  409. package/dist/search-source/lib/search-source-descriptor.js.map +1 -0
  410. package/dist/service-registry/index.d.ts +4 -0
  411. package/dist/service-registry/index.d.ts.map +1 -0
  412. package/dist/service-registry/index.js +20 -0
  413. package/dist/service-registry/index.js.map +1 -0
  414. package/dist/service-registry/lib/inject-service.d.ts +6 -0
  415. package/dist/service-registry/lib/inject-service.d.ts.map +1 -0
  416. package/dist/service-registry/lib/inject-service.js +5 -0
  417. package/dist/service-registry/lib/inject-service.js.map +1 -0
  418. package/dist/service-registry/lib/service-descriptor.d.ts +28 -0
  419. package/dist/service-registry/lib/service-descriptor.d.ts.map +1 -0
  420. package/dist/service-registry/lib/service-descriptor.js +17 -0
  421. package/dist/service-registry/lib/service-descriptor.js.map +1 -0
  422. package/dist/service-registry/lib/service-registry-client.d.ts +30 -0
  423. package/dist/service-registry/lib/service-registry-client.d.ts.map +1 -0
  424. package/dist/service-registry/lib/service-registry-client.js +3 -0
  425. package/dist/service-registry/lib/service-registry-client.js.map +1 -0
  426. package/dist/skill/index.d.ts +5 -0
  427. package/dist/skill/index.d.ts.map +1 -0
  428. package/dist/skill/index.js +21 -0
  429. package/dist/skill/index.js.map +1 -0
  430. package/dist/skill/lib/skill-enums.d.ts +41 -0
  431. package/dist/skill/lib/skill-enums.d.ts.map +1 -0
  432. package/dist/skill/lib/skill-enums.js +54 -0
  433. package/dist/skill/lib/skill-enums.js.map +1 -0
  434. package/dist/skill/lib/skill-governance.d.ts +106 -0
  435. package/dist/skill/lib/skill-governance.d.ts.map +1 -0
  436. package/dist/skill/lib/skill-governance.js +61 -0
  437. package/dist/skill/lib/skill-governance.js.map +1 -0
  438. package/dist/skill/lib/skill-source.d.ts +14 -0
  439. package/dist/skill/lib/skill-source.d.ts.map +1 -0
  440. package/dist/skill/lib/skill-source.js +3 -0
  441. package/dist/skill/lib/skill-source.js.map +1 -0
  442. package/dist/skill/lib/skill.d.ts +52 -0
  443. package/dist/skill/lib/skill.d.ts.map +1 -0
  444. package/dist/skill/lib/skill.js +3 -0
  445. package/dist/skill/lib/skill.js.map +1 -0
  446. package/dist/space/index.d.ts +4 -0
  447. package/dist/space/index.d.ts.map +1 -0
  448. package/dist/space/index.js +20 -0
  449. package/dist/space/index.js.map +1 -0
  450. package/dist/space/lib/space-ref-parser.d.ts +8 -0
  451. package/dist/space/lib/space-ref-parser.d.ts.map +1 -0
  452. package/dist/space/lib/space-ref-parser.js +149 -0
  453. package/dist/space/lib/space-ref-parser.js.map +1 -0
  454. package/dist/space/lib/space-traversal.d.ts +3 -0
  455. package/dist/space/lib/space-traversal.d.ts.map +1 -0
  456. package/dist/space/lib/space-traversal.js +56 -0
  457. package/dist/space/lib/space-traversal.js.map +1 -0
  458. package/dist/space/lib/space.d.ts +53 -0
  459. package/dist/space/lib/space.d.ts.map +1 -0
  460. package/dist/space/lib/space.js +98 -0
  461. package/dist/space/lib/space.js.map +1 -0
  462. package/dist/subject/index.d.ts +3 -0
  463. package/dist/subject/index.d.ts.map +1 -0
  464. package/dist/subject/index.js +19 -0
  465. package/dist/subject/index.js.map +1 -0
  466. package/dist/subject/lib/subject.d.ts +29 -0
  467. package/dist/subject/lib/subject.d.ts.map +1 -0
  468. package/dist/subject/lib/subject.js +47 -0
  469. package/dist/subject/lib/subject.js.map +1 -0
  470. package/dist/subject/lib/token-class.d.ts +11 -0
  471. package/dist/subject/lib/token-class.d.ts.map +1 -0
  472. package/dist/subject/lib/token-class.js +15 -0
  473. package/dist/subject/lib/token-class.js.map +1 -0
  474. package/dist/workflow/index.d.ts +31 -0
  475. package/dist/workflow/index.d.ts.map +1 -0
  476. package/dist/workflow/index.js +47 -0
  477. package/dist/workflow/index.js.map +1 -0
  478. package/dist/workflow/lib/action-ref.d.ts +12 -0
  479. package/dist/workflow/lib/action-ref.d.ts.map +1 -0
  480. package/dist/workflow/lib/action-ref.js +3 -0
  481. package/dist/workflow/lib/action-ref.js.map +1 -0
  482. package/dist/workflow/lib/activity-outputs.d.ts +14 -0
  483. package/dist/workflow/lib/activity-outputs.d.ts.map +1 -0
  484. package/dist/workflow/lib/activity-outputs.js +3 -0
  485. package/dist/workflow/lib/activity-outputs.js.map +1 -0
  486. package/dist/workflow/lib/agent-role.d.ts +6 -0
  487. package/dist/workflow/lib/agent-role.d.ts.map +1 -0
  488. package/dist/workflow/lib/agent-role.js +41 -0
  489. package/dist/workflow/lib/agent-role.js.map +1 -0
  490. package/dist/workflow/lib/artifact-ref.d.ts +21 -0
  491. package/dist/workflow/lib/artifact-ref.d.ts.map +1 -0
  492. package/dist/workflow/lib/artifact-ref.js +38 -0
  493. package/dist/workflow/lib/artifact-ref.js.map +1 -0
  494. package/dist/workflow/lib/briefcase.d.ts +107 -0
  495. package/dist/workflow/lib/briefcase.d.ts.map +1 -0
  496. package/dist/workflow/lib/briefcase.js +62 -0
  497. package/dist/workflow/lib/briefcase.js.map +1 -0
  498. package/dist/workflow/lib/canonical-concepts/canonical-concept-registry.d.ts +18 -0
  499. package/dist/workflow/lib/canonical-concepts/canonical-concept-registry.d.ts.map +1 -0
  500. package/dist/workflow/lib/canonical-concepts/canonical-concept-registry.js +45 -0
  501. package/dist/workflow/lib/canonical-concepts/canonical-concept-registry.js.map +1 -0
  502. package/dist/workflow/lib/canonical-concepts/concepts/change-intent.concepts.d.ts +3 -0
  503. package/dist/workflow/lib/canonical-concepts/concepts/change-intent.concepts.d.ts.map +1 -0
  504. package/dist/workflow/lib/canonical-concepts/concepts/change-intent.concepts.js +79 -0
  505. package/dist/workflow/lib/canonical-concepts/concepts/change-intent.concepts.js.map +1 -0
  506. package/dist/workflow/lib/canonical-concepts/concepts/concern.concepts.d.ts +3 -0
  507. package/dist/workflow/lib/canonical-concepts/concepts/concern.concepts.d.ts.map +1 -0
  508. package/dist/workflow/lib/canonical-concepts/concepts/concern.concepts.js +133 -0
  509. package/dist/workflow/lib/canonical-concepts/concepts/concern.concepts.js.map +1 -0
  510. package/dist/workflow/lib/canonical-concepts/concepts/domain.concepts.d.ts +3 -0
  511. package/dist/workflow/lib/canonical-concepts/concepts/domain.concepts.d.ts.map +1 -0
  512. package/dist/workflow/lib/canonical-concepts/concepts/domain.concepts.js +116 -0
  513. package/dist/workflow/lib/canonical-concepts/concepts/domain.concepts.js.map +1 -0
  514. package/dist/workflow/lib/canonical-concepts/concepts/index.d.ts +8 -0
  515. package/dist/workflow/lib/canonical-concepts/concepts/index.d.ts.map +1 -0
  516. package/dist/workflow/lib/canonical-concepts/concepts/index.js +18 -0
  517. package/dist/workflow/lib/canonical-concepts/concepts/index.js.map +1 -0
  518. package/dist/workflow/lib/canonical-concepts/concepts/technology.concepts.d.ts +3 -0
  519. package/dist/workflow/lib/canonical-concepts/concepts/technology.concepts.d.ts.map +1 -0
  520. package/dist/workflow/lib/canonical-concepts/concepts/technology.concepts.js +462 -0
  521. package/dist/workflow/lib/canonical-concepts/concepts/technology.concepts.js.map +1 -0
  522. package/dist/workflow/lib/canonical-concepts/index.d.ts +3 -0
  523. package/dist/workflow/lib/canonical-concepts/index.d.ts.map +1 -0
  524. package/dist/workflow/lib/canonical-concepts/index.js +16 -0
  525. package/dist/workflow/lib/canonical-concepts/index.js.map +1 -0
  526. package/dist/workflow/lib/catalog-taxonomies.d.ts +41 -0
  527. package/dist/workflow/lib/catalog-taxonomies.d.ts.map +1 -0
  528. package/dist/workflow/lib/catalog-taxonomies.js +3475 -0
  529. package/dist/workflow/lib/catalog-taxonomies.js.map +1 -0
  530. package/dist/workflow/lib/compiled-run.d.ts +118 -0
  531. package/dist/workflow/lib/compiled-run.d.ts.map +1 -0
  532. package/dist/workflow/lib/compiled-run.js +3 -0
  533. package/dist/workflow/lib/compiled-run.js.map +1 -0
  534. package/dist/workflow/lib/compiled-working-file.d.ts +11 -0
  535. package/dist/workflow/lib/compiled-working-file.d.ts.map +1 -0
  536. package/dist/workflow/lib/compiled-working-file.js +3 -0
  537. package/dist/workflow/lib/compiled-working-file.js.map +1 -0
  538. package/dist/workflow/lib/compiled-workspace-manifest.d.ts +101 -0
  539. package/dist/workflow/lib/compiled-workspace-manifest.d.ts.map +1 -0
  540. package/dist/workflow/lib/compiled-workspace-manifest.js +3 -0
  541. package/dist/workflow/lib/compiled-workspace-manifest.js.map +1 -0
  542. package/dist/workflow/lib/concurrency-group.d.ts +6 -0
  543. package/dist/workflow/lib/concurrency-group.d.ts.map +1 -0
  544. package/dist/workflow/lib/concurrency-group.js +3 -0
  545. package/dist/workflow/lib/concurrency-group.js.map +1 -0
  546. package/dist/workflow/lib/deliverable-result.d.ts +124 -0
  547. package/dist/workflow/lib/deliverable-result.d.ts.map +1 -0
  548. package/dist/workflow/lib/deliverable-result.js +27 -0
  549. package/dist/workflow/lib/deliverable-result.js.map +1 -0
  550. package/dist/workflow/lib/domain-tag.d.ts +2 -0
  551. package/dist/workflow/lib/domain-tag.d.ts.map +1 -0
  552. package/dist/workflow/lib/domain-tag.js +3 -0
  553. package/dist/workflow/lib/domain-tag.js.map +1 -0
  554. package/dist/workflow/lib/enums.d.ts +138 -0
  555. package/dist/workflow/lib/enums.d.ts.map +1 -0
  556. package/dist/workflow/lib/enums.js +166 -0
  557. package/dist/workflow/lib/enums.js.map +1 -0
  558. package/dist/workflow/lib/errors.d.ts +35 -0
  559. package/dist/workflow/lib/errors.d.ts.map +1 -0
  560. package/dist/workflow/lib/errors.js +62 -0
  561. package/dist/workflow/lib/errors.js.map +1 -0
  562. package/dist/workflow/lib/job-run.d.ts +32 -0
  563. package/dist/workflow/lib/job-run.d.ts.map +1 -0
  564. package/dist/workflow/lib/job-run.js +3 -0
  565. package/dist/workflow/lib/job-run.js.map +1 -0
  566. package/dist/workflow/lib/model-ref.d.ts +40 -0
  567. package/dist/workflow/lib/model-ref.d.ts.map +1 -0
  568. package/dist/workflow/lib/model-ref.js +34 -0
  569. package/dist/workflow/lib/model-ref.js.map +1 -0
  570. package/dist/workflow/lib/mount-plan.d.ts +105 -0
  571. package/dist/workflow/lib/mount-plan.d.ts.map +1 -0
  572. package/dist/workflow/lib/mount-plan.js +3 -0
  573. package/dist/workflow/lib/mount-plan.js.map +1 -0
  574. package/dist/workflow/lib/phase-report.d.ts +9 -0
  575. package/dist/workflow/lib/phase-report.d.ts.map +1 -0
  576. package/dist/workflow/lib/phase-report.js +30 -0
  577. package/dist/workflow/lib/phase-report.js.map +1 -0
  578. package/dist/workflow/lib/platform-task-queue.d.ts +17 -0
  579. package/dist/workflow/lib/platform-task-queue.d.ts.map +1 -0
  580. package/dist/workflow/lib/platform-task-queue.js +33 -0
  581. package/dist/workflow/lib/platform-task-queue.js.map +1 -0
  582. package/dist/workflow/lib/review-subject/index.d.ts +5 -0
  583. package/dist/workflow/lib/review-subject/index.d.ts.map +1 -0
  584. package/dist/workflow/lib/review-subject/index.js +8 -0
  585. package/dist/workflow/lib/review-subject/index.js.map +1 -0
  586. package/dist/workflow/lib/review-subject/kinds.d.ts +5 -0
  587. package/dist/workflow/lib/review-subject/kinds.d.ts.map +1 -0
  588. package/dist/workflow/lib/review-subject/kinds.js +9 -0
  589. package/dist/workflow/lib/review-subject/kinds.js.map +1 -0
  590. package/dist/workflow/lib/review-subject/narrow.d.ts +5 -0
  591. package/dist/workflow/lib/review-subject/narrow.d.ts.map +1 -0
  592. package/dist/workflow/lib/review-subject/narrow.js +79 -0
  593. package/dist/workflow/lib/review-subject/narrow.js.map +1 -0
  594. package/dist/workflow/lib/review-subject/producers/artifact-ref.d.ts +9 -0
  595. package/dist/workflow/lib/review-subject/producers/artifact-ref.d.ts.map +1 -0
  596. package/dist/workflow/lib/review-subject/producers/artifact-ref.js +16 -0
  597. package/dist/workflow/lib/review-subject/producers/artifact-ref.js.map +1 -0
  598. package/dist/workflow/lib/review-subject/producers/string.d.ts +7 -0
  599. package/dist/workflow/lib/review-subject/producers/string.d.ts.map +1 -0
  600. package/dist/workflow/lib/review-subject/producers/string.js +11 -0
  601. package/dist/workflow/lib/review-subject/producers/string.js.map +1 -0
  602. package/dist/workflow/lib/role-capability.d.ts +16 -0
  603. package/dist/workflow/lib/role-capability.d.ts.map +1 -0
  604. package/dist/workflow/lib/role-capability.js +19 -0
  605. package/dist/workflow/lib/role-capability.js.map +1 -0
  606. package/dist/workflow/lib/run-progress.d.ts +100 -0
  607. package/dist/workflow/lib/run-progress.d.ts.map +1 -0
  608. package/dist/workflow/lib/run-progress.js +96 -0
  609. package/dist/workflow/lib/run-progress.js.map +1 -0
  610. package/dist/workflow/lib/sampling-profiles.d.ts +18 -0
  611. package/dist/workflow/lib/sampling-profiles.d.ts.map +1 -0
  612. package/dist/workflow/lib/sampling-profiles.js +56 -0
  613. package/dist/workflow/lib/sampling-profiles.js.map +1 -0
  614. package/dist/workflow/lib/snapshot-ref.d.ts +10 -0
  615. package/dist/workflow/lib/snapshot-ref.d.ts.map +1 -0
  616. package/dist/workflow/lib/snapshot-ref.js +3 -0
  617. package/dist/workflow/lib/snapshot-ref.js.map +1 -0
  618. package/dist/workflow/lib/temporal-namespace.d.ts +5 -0
  619. package/dist/workflow/lib/temporal-namespace.d.ts.map +1 -0
  620. package/dist/workflow/lib/temporal-namespace.js +34 -0
  621. package/dist/workflow/lib/temporal-namespace.js.map +1 -0
  622. package/dist/workflow/lib/trigger-payload.d.ts +35 -0
  623. package/dist/workflow/lib/trigger-payload.d.ts.map +1 -0
  624. package/dist/workflow/lib/trigger-payload.js +3 -0
  625. package/dist/workflow/lib/trigger-payload.js.map +1 -0
  626. package/dist/workflow/lib/variable-requirement.d.ts +18 -0
  627. package/dist/workflow/lib/variable-requirement.d.ts.map +1 -0
  628. package/dist/workflow/lib/variable-requirement.js +3 -0
  629. package/dist/workflow/lib/variable-requirement.js.map +1 -0
  630. package/dist/workflow/lib/work-item-payloads.d.ts +114 -0
  631. package/dist/workflow/lib/work-item-payloads.d.ts.map +1 -0
  632. package/dist/workflow/lib/work-item-payloads.js +60 -0
  633. package/dist/workflow/lib/work-item-payloads.js.map +1 -0
  634. package/dist/workflow/lib/workflow-stage.d.ts +11 -0
  635. package/dist/workflow/lib/workflow-stage.d.ts.map +1 -0
  636. package/dist/workflow/lib/workflow-stage.js +28 -0
  637. package/dist/workflow/lib/workflow-stage.js.map +1 -0
  638. package/dist/workflow/lib/workspace-manifest-enums.d.ts +42 -0
  639. package/dist/workflow/lib/workspace-manifest-enums.d.ts.map +1 -0
  640. package/dist/workflow/lib/workspace-manifest-enums.js +80 -0
  641. package/dist/workflow/lib/workspace-manifest-enums.js.map +1 -0
  642. package/package.json +173 -0
  643. package/src/agent-composition/index.ts +17 -0
  644. package/src/agent-composition/lib/capability-layer.ts +46 -0
  645. package/src/agent-composition/lib/composition-limits-schema.ts +38 -0
  646. package/src/agent-composition/lib/composition-workspace.ts +210 -0
  647. package/src/agent-composition/lib/composition.ts +205 -0
  648. package/src/agent-composition/lib/intrinsic-floor.ts +50 -0
  649. package/src/agent-composition/lib/model-resolution-matrix.ts +112 -0
  650. package/src/agent-workspace/index.ts +27 -0
  651. package/src/agent-workspace/lib/agent-run-context.ts +44 -0
  652. package/src/agent-workspace/lib/agent-tool-defaults.ts +252 -0
  653. package/src/agent-workspace/lib/awp-v1.ts +289 -0
  654. package/src/agent-workspace/lib/context-json.ts +92 -0
  655. package/src/agent-workspace/lib/deliverable-spec-ref.ts +60 -0
  656. package/src/agent-workspace/lib/endpoint-fetch-spec.ts +66 -0
  657. package/src/agent-workspace/lib/manifest.ts +53 -0
  658. package/src/agent-workspace/lib/mount-apply.ts +79 -0
  659. package/src/agent-workspace/lib/working-file.ts +173 -0
  660. package/src/agent-workspace/lib/workspace-layout.ts +106 -0
  661. package/src/agent-workspace/lib/workspace-spec.ts +212 -0
  662. package/src/biome/index.ts +10 -0
  663. package/src/biome/lib/biome-api.ts +33 -0
  664. package/src/biome/lib/biome-capability-refs.ts +29 -0
  665. package/src/biome/lib/biome-engines.ts +18 -0
  666. package/src/biome/lib/biome-lifecycle-hooks.ts +28 -0
  667. package/src/biome/lib/biome-lifecycle.ts +29 -0
  668. package/src/biome/lib/biome-manifest.ts +102 -0
  669. package/src/biome/lib/biome-permissions.ts +35 -0
  670. package/src/biome/lib/biome-scope.ts +19 -0
  671. package/src/biome/lib/biome-trust-tier.ts +21 -0
  672. package/src/biome/lib/trust-tier-policies.ts +99 -0
  673. package/src/capability/index.ts +8 -0
  674. package/src/capability/lib/capability-contribution.ts +99 -0
  675. package/src/capability/lib/capability-grant.ts +90 -0
  676. package/src/capability/lib/capability-policy.ts +37 -0
  677. package/src/capability/lib/capability-ref.ts +138 -0
  678. package/src/capability/lib/errors.ts +180 -0
  679. package/src/capability/lib/meta-tool.ts +213 -0
  680. package/src/capability/lib/permission-profile.ts +91 -0
  681. package/src/capability/lib/shell-command-descriptor.ts +66 -0
  682. package/src/contribution/index.ts +4 -0
  683. package/src/contribution/lib/contribution-kind.ts +132 -0
  684. package/src/contribution/lib/contribution-source.ts +29 -0
  685. package/src/contribution/lib/contribution.ts +209 -0
  686. package/src/contribution/lib/registry.ts +100 -0
  687. package/src/document-templates/index.ts +24 -0
  688. package/src/document-templates/lib/document-template.ts +88 -0
  689. package/src/document-templates/lib/index.ts +2 -0
  690. package/src/document-templates/lib/rendering-shape.ts +48 -0
  691. package/src/document-themes/index.ts +21 -0
  692. package/src/document-themes/lib/component-vocabulary.ts +100 -0
  693. package/src/document-themes/lib/document-theme.ts +110 -0
  694. package/src/document-themes/lib/index.ts +2 -0
  695. package/src/entitlement/index.ts +1 -0
  696. package/src/entitlement/lib/entitlement.ts +142 -0
  697. package/src/execution-context/index.ts +3 -0
  698. package/src/execution-context/lib/caller.ts +46 -0
  699. package/src/execution-context/lib/execution-context.ts +205 -0
  700. package/src/execution-context/lib/subject.ts +17 -0
  701. package/src/execution-environment/index.ts +3 -0
  702. package/src/execution-environment/lib/approval-rule.ts +32 -0
  703. package/src/execution-environment/lib/built-in-environments.ts +89 -0
  704. package/src/execution-environment/lib/execution-environment.ts +266 -0
  705. package/src/kernel-state/index.ts +3 -0
  706. package/src/kernel-state/lib/adapter-kind.ts +18 -0
  707. package/src/kernel-state/lib/kernel-state.ts +139 -0
  708. package/src/kernel-state/lib/key-grammar.ts +105 -0
  709. package/src/llm-gateway/index.ts +2 -0
  710. package/src/llm-gateway/lib/caller.ts +48 -0
  711. package/src/llm-gateway/lib/errors.ts +111 -0
  712. package/src/mcp-tool/index.ts +6 -0
  713. package/src/mcp-tool/lib/mcp-protocol.ts +94 -0
  714. package/src/mcp-tool/lib/mcp-server-config.ts +17 -0
  715. package/src/mcp-tool/lib/provider-kind.ts +35 -0
  716. package/src/mcp-tool/lib/resolver-scope.ts +32 -0
  717. package/src/mcp-tool/lib/tool-provider.ts +62 -0
  718. package/src/mcp-tool/lib/tool-selection.ts +48 -0
  719. package/src/object/index.ts +4 -0
  720. package/src/object/lib/object-lifecycle.ts +22 -0
  721. package/src/object/lib/xema-object-kind.ts +73 -0
  722. package/src/object/lib/xema-object-ref.ts +233 -0
  723. package/src/object/lib/xema-object.ts +81 -0
  724. package/src/policy/index.ts +3 -0
  725. package/src/policy/lib/obligations.ts +155 -0
  726. package/src/policy/lib/policy.ts +104 -0
  727. package/src/policy/lib/route-hints.ts +51 -0
  728. package/src/runner/index.ts +11 -0
  729. package/src/runner/lib/dispatch.ts +61 -0
  730. package/src/runner/lib/input-hash.ts +66 -0
  731. package/src/runner/lib/job-token.ts +80 -0
  732. package/src/runner/lib/runner-attestation.ts +53 -0
  733. package/src/runner/lib/runner-job.ts +90 -0
  734. package/src/runner/lib/runner-kind.ts +10 -0
  735. package/src/runner/lib/runner-mode.ts +16 -0
  736. package/src/runner/lib/runner-plane.ts +101 -0
  737. package/src/runner/lib/runner-registration.ts +204 -0
  738. package/src/runner/lib/runner.ts +103 -0
  739. package/src/runner/lib/runtime-isolation.ts +53 -0
  740. package/src/search-source/index.ts +4 -0
  741. package/src/search-source/lib/indexable-document.ts +70 -0
  742. package/src/search-source/lib/search-index-event.ts +56 -0
  743. package/src/search-source/lib/search-replay.ts +96 -0
  744. package/src/search-source/lib/search-source-descriptor.ts +50 -0
  745. package/src/service-registry/index.ts +3 -0
  746. package/src/service-registry/lib/inject-service.ts +25 -0
  747. package/src/service-registry/lib/service-descriptor.ts +75 -0
  748. package/src/service-registry/lib/service-registry-client.ts +107 -0
  749. package/src/skill/index.ts +15 -0
  750. package/src/skill/lib/skill-enums.ts +124 -0
  751. package/src/skill/lib/skill-governance.ts +281 -0
  752. package/src/skill/lib/skill-source.ts +41 -0
  753. package/src/skill/lib/skill.ts +150 -0
  754. package/src/space/index.ts +3 -0
  755. package/src/space/lib/space-ref-parser.ts +198 -0
  756. package/src/space/lib/space-traversal.ts +55 -0
  757. package/src/space/lib/space.ts +173 -0
  758. package/src/subject/index.ts +2 -0
  759. package/src/subject/lib/subject.ts +111 -0
  760. package/src/subject/lib/token-class.ts +27 -0
  761. package/src/workflow/index.ts +45 -0
  762. package/src/workflow/lib/action-ref.ts +48 -0
  763. package/src/workflow/lib/activity-outputs.ts +105 -0
  764. package/src/workflow/lib/agent-role.ts +136 -0
  765. package/src/workflow/lib/artifact-ref.ts +93 -0
  766. package/src/workflow/lib/briefcase.ts +194 -0
  767. package/src/workflow/lib/canonical-concepts/canonical-concept-registry.ts +99 -0
  768. package/src/workflow/lib/canonical-concepts/concepts/change-intent.concepts.ts +124 -0
  769. package/src/workflow/lib/canonical-concepts/concepts/concern.concepts.ts +194 -0
  770. package/src/workflow/lib/canonical-concepts/concepts/domain.concepts.ts +205 -0
  771. package/src/workflow/lib/canonical-concepts/concepts/index.ts +15 -0
  772. package/src/workflow/lib/canonical-concepts/concepts/technology.concepts.ts +667 -0
  773. package/src/workflow/lib/canonical-concepts/index.ts +2 -0
  774. package/src/workflow/lib/catalog-taxonomies.ts +3695 -0
  775. package/src/workflow/lib/compiled-run.ts +376 -0
  776. package/src/workflow/lib/compiled-working-file.ts +35 -0
  777. package/src/workflow/lib/compiled-workspace-manifest.ts +185 -0
  778. package/src/workflow/lib/concurrency-group.ts +17 -0
  779. package/src/workflow/lib/deliverable-result.ts +238 -0
  780. package/src/workflow/lib/domain-tag.ts +48 -0
  781. package/src/workflow/lib/enums.ts +288 -0
  782. package/src/workflow/lib/errors.ts +171 -0
  783. package/src/workflow/lib/job-run.ts +65 -0
  784. package/src/workflow/lib/model-ref.ts +118 -0
  785. package/src/workflow/lib/mount-plan.ts +230 -0
  786. package/src/workflow/lib/phase-report.ts +67 -0
  787. package/src/workflow/lib/platform-task-queue.ts +83 -0
  788. package/src/workflow/lib/review-subject/index.ts +15 -0
  789. package/src/workflow/lib/review-subject/kinds.ts +31 -0
  790. package/src/workflow/lib/review-subject/narrow.ts +123 -0
  791. package/src/workflow/lib/review-subject/producers/artifact-ref.ts +33 -0
  792. package/src/workflow/lib/review-subject/producers/string.ts +24 -0
  793. package/src/workflow/lib/role-capability.ts +80 -0
  794. package/src/workflow/lib/run-progress.ts +254 -0
  795. package/src/workflow/lib/sampling-profiles.ts +153 -0
  796. package/src/workflow/lib/snapshot-ref.ts +27 -0
  797. package/src/workflow/lib/temporal-namespace.ts +78 -0
  798. package/src/workflow/lib/trigger-payload.ts +69 -0
  799. package/src/workflow/lib/variable-requirement.ts +66 -0
  800. package/src/workflow/lib/work-item-payloads.ts +139 -0
  801. package/src/workflow/lib/workflow-stage.ts +89 -0
  802. package/src/workflow/lib/workspace-manifest-enums.ts +143 -0
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Internal-workflow task-queue naming — Epic T (Temporal internal-workflow
3
+ * platform).
4
+ *
5
+ * Every internal/platform workflow runs in the `xema` namespace
6
+ * (`PLATFORM_TEMPORAL_NAMESPACE`) on a task queue named for its domain. One
7
+ * queue per domain is the unit of worker assignment + concurrency budget: a
8
+ * worker may poll any subset, so a dedicated internal worker can later be
9
+ * split out as a deployment choice — not a code change.
10
+ *
11
+ * Distinct from `TaskQueueName` (the pipeline-engine's `xema_default` /
12
+ * `xema_agent` / `xema_human` queues, polled by `workflow-runtime-worker`).
13
+ * Internal/platform workflows never share those queues.
14
+ */
15
+
16
+ /**
17
+ * Closed set of internal-workflow domains. Each domain owns exactly one
18
+ * Temporal task queue (`platformTaskQueue(domain)`) and is the
19
+ * `WorkflowDomain` search-attribute value for its runs. Adding a domain is a
20
+ * one-line extension here.
21
+ */
22
+ export enum PlatformWorkflowDomain {
23
+ /** Session launch / resume / hibernate. */
24
+ SESSION_LIFECYCLE = 'session-lifecycle',
25
+ /** Session checkpoint + the lifecycle reconciler. */
26
+ SESSION_MAINTENANCE = 'session-maintenance',
27
+ /** webapp-studio provisioning. */
28
+ STUDIO = 'studio',
29
+ /** Document / PDF export + render jobs. */
30
+ DOCUMENTS = 'documents',
31
+ /** SCM repo ingestion + project analysis. */
32
+ SCM_INGESTION = 'scm-ingestion',
33
+ /** workload-runtime-api K8s reconcile. */
34
+ WORKLOAD = 'workload',
35
+ /** Integration provider sync scheduling. */
36
+ INTEGRATION_SYNC = 'integration-sync',
37
+ /**
38
+ * Integration connection lifecycle — OAuth / App-install finalize sagas,
39
+ * credential rotation, integration deletion cascades. Distinct from
40
+ * `INTEGRATION_SYNC` (scheduled provider polling).
41
+ */
42
+ INTEGRATION_LIFECYCLE = 'integration-lifecycle',
43
+ /** Biome-installation cleanup cascade. */
44
+ BIOME_LIFECYCLE = 'biome-lifecycle',
45
+ /**
46
+ * Integration-ingress webhook-outbox forward dispatch (Phase J). One
47
+ * workflow per outbox row; Temporal owns retries + DLQ semantics.
48
+ */
49
+ INTEGRATION_INGRESS = 'integration-ingress',
50
+ /**
51
+ * Knowledge-base enrichment and file ingestion workflows (T1 entity
52
+ * extraction, T2 file ingestion).
53
+ */
54
+ KNOWLEDGE_BASE = 'knowledge-base',
55
+ }
56
+
57
+ /** Prefix shared by every internal-workflow task queue. */
58
+ export const PLATFORM_TASK_QUEUE_PREFIX = 'xema-platform.';
59
+
60
+ /**
61
+ * The Temporal task queue for an internal-workflow domain —
62
+ * `xema-platform.<domain>`. Single source of truth: callers derive the queue
63
+ * from the domain enum, never hard-code the string.
64
+ */
65
+ export function platformTaskQueue(domain: PlatformWorkflowDomain): string {
66
+ return `${PLATFORM_TASK_QUEUE_PREFIX}${domain}`;
67
+ }
68
+
69
+ /**
70
+ * Inverse of `platformTaskQueue` — the domain a `xema-platform.*` queue
71
+ * serves, or `null` if the string is not an internal-workflow queue.
72
+ */
73
+ export function platformWorkflowDomainOfQueue(
74
+ taskQueue: string,
75
+ ): PlatformWorkflowDomain | null {
76
+ if (!taskQueue.startsWith(PLATFORM_TASK_QUEUE_PREFIX)) {
77
+ return null;
78
+ }
79
+ const domain = taskQueue.slice(PLATFORM_TASK_QUEUE_PREFIX.length);
80
+ return (Object.values(PlatformWorkflowDomain) as string[]).includes(domain)
81
+ ? (domain as PlatformWorkflowDomain)
82
+ : null;
83
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Public surface of the review-subject narrower. Consumers import from
3
+ * `@xemahq/workflow-contracts`; the FE consumes the synced mirror.
4
+ *
5
+ * Re-exports:
6
+ * • `ReviewSubjectKind` — closed-set discriminator (`ARTIFACT_REF` | `STRING`)
7
+ * • `narrowReviewableContent` + `ReviewableSubject` — orchestrator + union
8
+ * • Per-producer subject interfaces (for FE switch typing)
9
+ */
10
+
11
+ export { ReviewSubjectKind } from './kinds';
12
+ export { narrowReviewableContent, type ReviewableSubject } from './narrow';
13
+
14
+ export { type ArtifactRefReviewSubject } from './producers/artifact-ref';
15
+ export { type StringReviewSubject } from './producers/string';
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Closed set of review-subject kinds under the unified
3
+ * outputs/deliverables/artifacts model.
4
+ *
5
+ * After the unification refactor every reviewable byte flows through
6
+ * artifact-store, so the framework only needs two kinds: a pointer to an
7
+ * artifact (the universal review path) and a literal string (used when the
8
+ * workflow author wrote `subject: "..."` directly). Anything that doesn't
9
+ * match either shape is a bug — the narrower throws (fail-fast).
10
+ *
11
+ * Lives in its own file so producer modules and the FE renderer can both
12
+ * import the enum without pulling in the full narrower orchestration.
13
+ */
14
+ export enum ReviewSubjectKind {
15
+ /**
16
+ * Universal review path: the subject IS an `ArtifactRef` (one artifact at
17
+ * a specific version). The FE renders via `OutputCard` with full review
18
+ * tooling — anchors, comments, version compare, per-OutputKind renderer.
19
+ *
20
+ * Every activity output that carries reviewable content is promoted to an
21
+ * `ArtifactRef` by the kernel's `finalizeOutputs` wrapper; downstream
22
+ * review steps receive refs, not raw envelopes.
23
+ */
24
+ ARTIFACT_REF = 'artifact-ref',
25
+ /**
26
+ * Bare string subject — the workflow author wrote `subject: "..."` as a
27
+ * literal or an expression that resolved to a primitive string. Rendered
28
+ * as inline literal text on the FE.
29
+ */
30
+ STRING = 'string',
31
+ }
@@ -0,0 +1,123 @@
1
+ // ═══════════════════════════════════════════════════════════════════════════
2
+ // ── Review subject — framework-aware narrowing of `subject:` content ──
3
+ //
4
+ // `xema/review@v3` resolves `subject:` to whatever the workflow author wrote.
5
+ // Under the unified outputs/deliverables/artifacts model the only two
6
+ // reviewable shapes are `ArtifactRef` (every activity output is one) and a
7
+ // literal `string` (used when the author hard-coded a value). Anything else
8
+ // is a bug — the narrower throws so the offending step fails fast instead of
9
+ // silently degrading.
10
+ //
11
+ // `narrowReviewableContent` is the single deterministic boundary that tags
12
+ // the value with a closed `ReviewSubjectKind` so both producer
13
+ // (review.workflow) and consumer (FE renderer) dispatch on the same
14
+ // discriminator.
15
+ //
16
+ // Synchronous by contract — many callers (workflow code, FE) cannot await.
17
+ // ═══════════════════════════════════════════════════════════════════════════
18
+
19
+ import {
20
+ type ArtifactRefReviewSubject,
21
+ looksLikeArtifactRef,
22
+ narrowArtifactRef,
23
+ } from './producers/artifact-ref';
24
+ import type { ArtifactRef } from '../artifact-ref';
25
+ import { ReviewSubjectKind } from './kinds';
26
+ import { type StringReviewSubject, narrowString } from './producers/string';
27
+
28
+ export type ReviewableSubject =
29
+ | ArtifactRefReviewSubject
30
+ | StringReviewSubject;
31
+
32
+ /**
33
+ * Convert a raw `subject:` value resolved by the workflow engine into a
34
+ * tagged `ReviewableSubject`. Deterministic — strings become `STRING`,
35
+ * values matching the `ArtifactRef` shape become `ARTIFACT_REF`, and
36
+ * anything else throws. No silent fallback (`feedback_failfast_no_workarounds`).
37
+ */
38
+ export function narrowReviewableContent(subject: unknown): ReviewableSubject {
39
+ if (typeof subject === 'string') {
40
+ return narrowString(subject);
41
+ }
42
+ if (looksLikeArtifactRef(subject)) {
43
+ return narrowArtifactRef(subject);
44
+ }
45
+ if (looksLikeArtifactRefReviewSubject(subject)) {
46
+ return narrowArtifactRef(coerceWrappedArtifactRef(subject.ref));
47
+ }
48
+ if (looksLikeStringReviewSubject(subject)) {
49
+ return narrowString(subject.value);
50
+ }
51
+ throw new Error(
52
+ `narrowReviewableContent: unrecognized subject shape (expected string or ArtifactRef). ` +
53
+ `Activities must promote reviewable content to an artifact via finalizeOutputs before review. ` +
54
+ `Received: ${describeSubject(subject)}`,
55
+ );
56
+ }
57
+
58
+ function looksLikeArtifactRefReviewSubject(
59
+ value: unknown,
60
+ ): value is ArtifactRefReviewSubject {
61
+ if (value === null || typeof value !== 'object') {
62
+ return false;
63
+ }
64
+ const rec = value as Record<string, unknown>;
65
+ return (
66
+ rec.kind === ReviewSubjectKind.ARTIFACT_REF &&
67
+ (looksLikeArtifactRef(rec.ref) || looksLikePinnedSubjectArtifact(rec.ref))
68
+ );
69
+ }
70
+
71
+ function looksLikePinnedSubjectArtifact(value: unknown): boolean {
72
+ if (value === null || typeof value !== 'object') {
73
+ return false;
74
+ }
75
+ const rec = value as Record<string, unknown>;
76
+ return (
77
+ typeof rec.artifactId === 'string' &&
78
+ typeof rec.versionId === 'string' &&
79
+ typeof rec.version === 'number' &&
80
+ Number.isInteger(rec.version) &&
81
+ typeof rec.hash === 'string'
82
+ );
83
+ }
84
+
85
+ function coerceWrappedArtifactRef(value: unknown): ArtifactRef {
86
+ if (looksLikeArtifactRef(value)) {
87
+ return value;
88
+ }
89
+ if (looksLikePinnedSubjectArtifact(value)) {
90
+ const rec = value as Record<string, unknown>;
91
+ return {
92
+ artifactId: rec.artifactId as string,
93
+ versionId: rec.versionId as string,
94
+ version: rec.version as number,
95
+ hash: rec.hash as string,
96
+ type: 'unknown',
97
+ };
98
+ }
99
+ throw new Error(
100
+ `narrowReviewableContent: wrapped artifact-ref subject contains invalid ref shape. Received: ${describeSubject(value)}`,
101
+ );
102
+ }
103
+
104
+ function looksLikeStringReviewSubject(value: unknown): value is StringReviewSubject {
105
+ if (value === null || typeof value !== 'object') {
106
+ return false;
107
+ }
108
+ const rec = value as Record<string, unknown>;
109
+ return (
110
+ rec.kind === ReviewSubjectKind.STRING && typeof rec.value === 'string'
111
+ );
112
+ }
113
+
114
+ function describeSubject(subject: unknown): string {
115
+ if (subject === null) return 'null';
116
+ if (subject === undefined) return 'undefined';
117
+ if (Array.isArray(subject)) return `Array(${subject.length})`;
118
+ if (typeof subject === 'object') {
119
+ const keys = Object.keys(subject).slice(0, 8);
120
+ return `object{${keys.join(',')}}`;
121
+ }
122
+ return typeof subject;
123
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Producer narrower for the unified `ArtifactRef` review path.
3
+ *
4
+ * Under the unified outputs/deliverables/artifacts model, every named
5
+ * activity output is an `ArtifactRef` — the bytes live in artifact-store,
6
+ * the envelope carries pointers. Review subjects that match the
7
+ * `ArtifactRef` shape route through this producer and render via
8
+ * `OutputCard` on the FE, getting the full review tooling (anchors,
9
+ * comments, version compare, per-OutputKind renderer) for free.
10
+ *
11
+ * Probe is intentionally strict — all five identity fields must be
12
+ * present (artifactId/versionId/version/hash/type). This is the same
13
+ * shape `isArtifactRef` checks in `../../artifact-ref.ts`.
14
+ */
15
+
16
+ import { isArtifactRef, type ArtifactRef } from '../../artifact-ref';
17
+ import { ReviewSubjectKind } from '../kinds';
18
+
19
+ export interface ArtifactRefReviewSubject {
20
+ readonly kind: ReviewSubjectKind.ARTIFACT_REF;
21
+ readonly ref: ArtifactRef;
22
+ }
23
+
24
+ export function looksLikeArtifactRef(value: unknown): value is ArtifactRef {
25
+ return isArtifactRef(value);
26
+ }
27
+
28
+ export function narrowArtifactRef(ref: ArtifactRef): ArtifactRefReviewSubject {
29
+ return {
30
+ kind: ReviewSubjectKind.ARTIFACT_REF,
31
+ ref,
32
+ };
33
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Producer narrower for bare string subjects — the workflow author wrote
3
+ * `subject: "..."` or an expression that resolved to a primitive string.
4
+ *
5
+ * Under the unified review model strings render as inline literal text on
6
+ * the FE; per-format dispatch (markdown/yaml/json/url/code/plain-text) has
7
+ * retired alongside the legacy per-shape kinds. If a workflow needs richer
8
+ * rendering, it must promote the content to an artifact via
9
+ * `finalizeOutputs` and pass an `ArtifactRef` instead.
10
+ */
11
+
12
+ import { ReviewSubjectKind } from '../kinds';
13
+
14
+ export interface StringReviewSubject {
15
+ readonly kind: ReviewSubjectKind.STRING;
16
+ readonly value: string;
17
+ }
18
+
19
+ export function narrowString(value: string): StringReviewSubject {
20
+ return {
21
+ kind: ReviewSubjectKind.STRING,
22
+ value,
23
+ };
24
+ }
@@ -0,0 +1,80 @@
1
+ // ═══════════════════════════════════════════════════════════════════════════
2
+ // ── RoleCapabilityProfile types + closed-domain enums ──
3
+ //
4
+ // The DATA (one profile per `AgentRunRole`) lives in biome contributions
5
+ // at `biomes/kernel/runtime/role-capabilities/<role>.role-capability.yaml`.
6
+ // llm-registry-api's `RoleCapabilityRegistryService` loads + serves them
7
+ // in-process, exposes them via `GET /role-capabilities/:role`, and writes
8
+ // the resolved `allowedXemaTools` array into each invocation's
9
+ // `context.json` (`authority.allowedXemaTools`).
10
+ //
11
+ // This module exports ONLY the closed-domain enum values + the typed
12
+ // shape every consumer agrees on. Adding a new role = (1) append to
13
+ // `AGENT_RUN_ROLES`, (2) drop a new YAML in the kernel runtime biome.
14
+ // No platform code change is required.
15
+ // ═══════════════════════════════════════════════════════════════════════════
16
+
17
+ import type { AgentRunRole } from './agent-role';
18
+
19
+ /**
20
+ * Closed surface taxonomy. The renderer's surface-vs-role guard rejects
21
+ * role/surface combinations that don't match the declared profile.
22
+ */
23
+ export const INVOCATION_SURFACES = [
24
+ 'pipeline-run',
25
+ 'agent-session',
26
+ 'design-system-builder',
27
+ 'gate-review',
28
+ ] as const;
29
+ export type InvocationSurface = (typeof INVOCATION_SURFACES)[number];
30
+
31
+ /**
32
+ * Closed write-policy taxonomy.
33
+ *
34
+ * - `read-only`: the role does not mutate the workspace; output flows
35
+ * out-of-band via a dedicated activity (e.g. `xema/review@v3`).
36
+ * - `own-pages-only`: the role may only write the deliverable files
37
+ * declared on `outputContract.files[]` / `outputContract.multiPage`.
38
+ * - `full-write`: the role may write anywhere `mayWriteWorkspace`
39
+ * permits (typically `/workspace/deliverables/`).
40
+ */
41
+ export const WRITE_POLICIES = [
42
+ 'read-only',
43
+ 'own-pages-only',
44
+ 'full-write',
45
+ ] as const;
46
+ export type WritePolicy = (typeof WRITE_POLICIES)[number];
47
+
48
+ /**
49
+ * Universal read-only Xema-namespaced tools every role gets. Adding a
50
+ * tool here grants it to every role implicitly — gate-keep with care.
51
+ *
52
+ * Kept as an exported constant so biome authors can compose role YAMLs
53
+ * (`allowedXemaTools: [...XEMA_TOOL_READ_ONLY]`) without re-typing the
54
+ * literal. Loaded role profiles are still validated against this list
55
+ * at boot to catch typos.
56
+ */
57
+ export const XEMA_TOOL_READ_ONLY = [
58
+ 'xema_memory_get',
59
+ ] as const;
60
+
61
+ /**
62
+ * Memory-write capability. Granted to most roles; withheld from
63
+ * read-only roles whose output is delivered out-of-band.
64
+ */
65
+ export const XEMA_TOOL_MEMORY_WRITE = ['xema_memory_set'] as const;
66
+
67
+ export interface RoleCapabilityProfile {
68
+ readonly role: AgentRunRole;
69
+ readonly surface: InvocationSurface;
70
+ readonly writePolicy: WritePolicy;
71
+ /**
72
+ * `'never'` = blanket deny repo writes.
73
+ * `'when-granted'` = repo writes are allowed iff the dispatch supplied
74
+ * `workflowInputs.repoSlugs[]`. Today only the `engineer` role is
75
+ * `'when-granted'`.
76
+ */
77
+ readonly mayEditRepos: 'never' | 'when-granted';
78
+ readonly mayWriteKnowledgeBase: boolean;
79
+ readonly allowedXemaTools: readonly string[];
80
+ }
@@ -0,0 +1,254 @@
1
+ // ═══════════════════════════════════════════════════════════════════════════
2
+ // ── Run Progress Contracts ──
3
+ //
4
+ // Shared shapes for the in-flight progress + milestone surface. The
5
+ // runtime worker emits these; the engine fans micro-progress out via the
6
+ // per-run SSE channel and milestones via the unified realtime stream.
7
+ //
8
+ // Contracts here are activity-agnostic: every activity that wants to
9
+ // contribute to the run-detail UI publishes the same DTOs. Adding a new
10
+ // activity does not introduce new wire shapes — extend the closed enums
11
+ // instead.
12
+ // ═══════════════════════════════════════════════════════════════════════════
13
+
14
+ /**
15
+ * What the agent (or activity) is doing right now. Closed enum so the
16
+ * frontend has a deterministic icon/label set and producers cannot leak
17
+ * free-form strings.
18
+ */
19
+ export enum RunStepKind {
20
+ THINKING = 'thinking',
21
+ EDITING_FILE = 'editing_file',
22
+ RUNNING_COMMAND = 'running_command',
23
+ READING_FILE = 'reading_file',
24
+ SEARCHING = 'searching',
25
+ FETCHING = 'fetching',
26
+ VALIDATING = 'validating',
27
+ WAITING_INPUT = 'waiting_input',
28
+ SUMMARIZING = 'summarizing',
29
+ POSTING_REVIEW = 'posting_review',
30
+ PUBLISHING = 'publishing',
31
+ OTHER = 'other',
32
+ }
33
+
34
+ /**
35
+ * Coarse activity bucket used for milestones — what kind of work the
36
+ * job is doing at the activity level, not the step level. Stays stable
37
+ * across the closed list of runtime activities.
38
+ */
39
+ export enum RunActivityKind {
40
+ AGENT_WORK = 'agent_work',
41
+ DELIVERABLE_VALIDATION = 'deliverable_validation',
42
+ REVIEW_POSTING = 'review_posting',
43
+ SCM_MERGE = 'scm_merge',
44
+ SCM_CHECKOUT = 'scm_checkout',
45
+ KB_PUBLISH = 'kb_publish',
46
+ WEBHOOK = 'webhook',
47
+ HTTP = 'http',
48
+ DISPATCH = 'dispatch',
49
+ ARTIFACT_EMIT = 'artifact_emit',
50
+ RECONCILE = 'reconcile',
51
+ ENDPOINT_FETCH = 'endpoint_fetch',
52
+ SCHEDULED_DISPATCH = 'scheduled_dispatch',
53
+ REVIEW = 'review',
54
+ BACKLOG_SYNC = 'backlog_sync',
55
+ /**
56
+ * Org-database migration dispatched via `xema/run-migrations@v1`
57
+ * (Phase G of the org-managed-databases plan). The activity calls
58
+ * org-database-pool-api to start a migration workflow and polls
59
+ * the per-database migration listing until the run reaches a
60
+ * terminal state.
61
+ */
62
+ RUN_MIGRATIONS = 'run_migrations',
63
+ /**
64
+ * Child-workflow execution dispatched from the root run via Temporal
65
+ * `executeChild` (e.g. `xema/decision-gate`, `xema/wait`). Emitted by
66
+ * `rootRunWorkflow` around each `executeChild` call so the JobRun
67
+ * lifecycle reflects child completion / failure / cancellation —
68
+ * activities-only milestones miss these jobs entirely.
69
+ */
70
+ CHILD_WORKFLOW = 'child_workflow',
71
+ }
72
+
73
+ /** Phase of a milestone's lifecycle. */
74
+ export enum RunMilestonePhase {
75
+ STARTED = 'started',
76
+ PROGRESSING = 'progressing',
77
+ COMPLETED = 'completed',
78
+ AWAITING_INPUT = 'awaiting_input',
79
+ FAILED = 'failed',
80
+ }
81
+
82
+ /**
83
+ * Display profile of the agent that owns a step. Resolved by the engine
84
+ * from the agent registry; producers (worker activities) only carry the
85
+ * slug and the engine enriches.
86
+ */
87
+ export interface RunStepAgentProfile {
88
+ readonly slug: string;
89
+ readonly displayName: string;
90
+ readonly avatarSeed: string;
91
+ readonly avatarStyle: string;
92
+ }
93
+
94
+ /**
95
+ * Lifecycle status of a tool invocation, mirrored end-to-end from the
96
+ * agent runtime to the FE timeline. `started` ⇒ tool was invoked, args
97
+ * may still be partially streamed; `completed` ⇒ args complete and tool
98
+ * has run; `error` ⇒ tool failed. Non-tool steps leave this undefined.
99
+ */
100
+ export type RunStepToolStatus = 'started' | 'completed' | 'error';
101
+
102
+ /**
103
+ * Tool-related enrichment carried on every step that originates from a
104
+ * `SessionFrame` `tool-call` or `tool-result`. Optional because pure
105
+ * THINKING / WAITING_INPUT / etc. steps don't have tool context.
106
+ *
107
+ * Consumers — notably the FE timeline — collapse step rows by
108
+ * `toolCallId` so a single tool invocation surfaces as one row that
109
+ * transitions through the lifecycle instead of three sequential rows.
110
+ */
111
+ export interface RunStepToolDetails {
112
+ readonly status?: RunStepToolStatus;
113
+ /** Raw tool name (e.g. `read`, `bash`, `task`). */
114
+ readonly tool?: string;
115
+ /** Stable correlation id across started/completed/result events. */
116
+ readonly toolCallId?: string;
117
+ /** Tool input as produced by the model. */
118
+ readonly args?: unknown;
119
+ /** Tool output (tool-result frames only). */
120
+ readonly output?: unknown;
121
+ /** Failure message (mutually exclusive with `output`). */
122
+ readonly errorMessage?: string;
123
+ }
124
+
125
+ /** Body the worker POSTs for a single micro-progress event. */
126
+ export interface RunStepProgressInput extends RunStepToolDetails {
127
+ readonly jobKey: string;
128
+ readonly jobRunId: string;
129
+ readonly agentSlug?: string;
130
+ readonly kind: RunStepKind;
131
+ readonly summary: string;
132
+ readonly target?: string;
133
+ readonly at: string;
134
+ }
135
+
136
+ /** Wire shape the engine SSE / clients consume. `runId` and `seq` are added by the engine on receive. */
137
+ export interface RunStepProgress extends RunStepToolDetails {
138
+ readonly runId: string;
139
+ readonly jobKey: string;
140
+ readonly jobRunId: string;
141
+ readonly agent: RunStepAgentProfile | null;
142
+ readonly kind: RunStepKind;
143
+ readonly summary: string;
144
+ readonly target: string | null;
145
+ readonly at: string;
146
+ /** Monotonic per `(runId, jobRunId)`; assigned by the engine on receive. */
147
+ readonly seq: number;
148
+ }
149
+
150
+ /** Body the worker POSTs for a milestone. */
151
+ export interface RunMilestoneInput {
152
+ readonly jobKey: string;
153
+ readonly jobRunId: string;
154
+ readonly activity: RunActivityKind;
155
+ readonly phase: RunMilestonePhase;
156
+ readonly summary: string;
157
+ readonly at: string;
158
+ readonly agentSlug?: string;
159
+ }
160
+
161
+ /** CloudEvent payload shape the engine publishes for `xema.workflow.run.milestone`. */
162
+ export interface RunMilestone {
163
+ readonly runId: string;
164
+ readonly jobKey: string;
165
+ readonly jobRunId: string;
166
+ readonly agent: RunStepAgentProfile | null;
167
+ readonly activity: RunActivityKind;
168
+ readonly phase: RunMilestonePhase;
169
+ readonly summary: string;
170
+ readonly at: string;
171
+ }
172
+
173
+ // ─── SessionFrame → RunStepKind mapping ────────────────────────────────────
174
+
175
+ /**
176
+ * Discriminator the worker passes to the mapper. Mirrors the kinds
177
+ * surfaced by `@xemahq/agent-session-runtime`'s `SessionFrame` — kept
178
+ * as a string literal union here so this contracts package stays free
179
+ * of a runtime dependency on the session runtime.
180
+ */
181
+ export type AgentSessionFrameKind =
182
+ | 'token'
183
+ | 'tool-call'
184
+ | 'tool-result'
185
+ | 'progress'
186
+ | 'error'
187
+ | 'question'
188
+ | 'done';
189
+
190
+ /**
191
+ * Coarse mapping from agent-session frame kind to public `RunStepKind`.
192
+ * Tool-name-specific refinement (e.g. `edit` → `EDITING_FILE`) happens
193
+ * via {@link mapToolNameToStepKind} below; this function is the
194
+ * activity-kind-agnostic default.
195
+ */
196
+ export function mapSessionFrameKindToStepKind(kind: AgentSessionFrameKind): RunStepKind {
197
+ switch (kind) {
198
+ case 'token':
199
+ return RunStepKind.SUMMARIZING;
200
+ case 'tool-call':
201
+ return RunStepKind.OTHER;
202
+ case 'tool-result':
203
+ return RunStepKind.OTHER;
204
+ case 'progress':
205
+ return RunStepKind.THINKING;
206
+ case 'question':
207
+ return RunStepKind.WAITING_INPUT;
208
+ case 'error':
209
+ return RunStepKind.OTHER;
210
+ case 'done':
211
+ return RunStepKind.SUMMARIZING;
212
+ default:
213
+ return assertNever(kind);
214
+ }
215
+ }
216
+
217
+ /**
218
+ * Maps a raw OpenCode tool name (the worker sees these on `tool-call`
219
+ * frames) to a `RunStepKind`. Unknown tool names fall through to
220
+ * `OTHER` rather than throwing — the tool surface is open-ended at the
221
+ * OpenCode layer (biomes can introduce tools), so the mapper is
222
+ * intentionally lenient where the wire shape stays closed.
223
+ */
224
+ export function mapToolNameToStepKind(toolName: string): RunStepKind {
225
+ const normalized = toolName.toLowerCase();
226
+ if (normalized === 'edit' || normalized === 'write' || normalized === 'multiedit') {
227
+ return RunStepKind.EDITING_FILE;
228
+ }
229
+ if (normalized === 'bash' || normalized === 'shell') {
230
+ return RunStepKind.RUNNING_COMMAND;
231
+ }
232
+ if (normalized === 'read' || normalized === 'view' || normalized === 'cat') {
233
+ return RunStepKind.READING_FILE;
234
+ }
235
+ if (normalized === 'grep' || normalized === 'glob' || normalized === 'search' || normalized === 'find') {
236
+ return RunStepKind.SEARCHING;
237
+ }
238
+ if (normalized === 'webfetch' || normalized === 'fetch' || normalized === 'http') {
239
+ return RunStepKind.FETCHING;
240
+ }
241
+ if (normalized === 'structuredoutput' || normalized === 'summarize') {
242
+ return RunStepKind.SUMMARIZING;
243
+ }
244
+ return RunStepKind.OTHER;
245
+ }
246
+
247
+ function assertNever(value: never): never {
248
+ throw new Error(`Unhandled AgentSessionFrameKind: ${String(value)}`);
249
+ }
250
+
251
+ /** Maximum length the engine accepts for a `summary` field; producers should clamp before send. */
252
+ export const RUN_STEP_SUMMARY_MAX = 140;
253
+ /** Maximum length the engine accepts for a `target` field; producers should clamp before send. */
254
+ export const RUN_STEP_TARGET_MAX = 240;