@makaio/framework 1.0.0-dev-1788978977154 → 1.0.0-dev-1789000242829

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 (210) hide show
  1. package/dist/.makaio-build.json +2 -2
  2. package/dist/{2020-CpDjcHDh.mjs → 2020-DvDj4r_K.mjs} +1 -1
  3. package/dist/{account-identity-D00LLclm.mjs → account-identity-CNdiLYaM.mjs} +1 -1
  4. package/dist/{adapter-D92pfm_b.mjs → adapter-BdMny6vw.mjs} +1 -1
  5. package/dist/adapters/claude/index.d.mts +24 -24
  6. package/dist/adapters/index.mjs +1 -1
  7. package/dist/artifact-Cxm5ZX7L.mjs +1 -0
  8. package/dist/{auth-CB4an9bh.mjs → auth-BIgwGHp-.mjs} +1 -1
  9. package/dist/{authority-state-bootstrap-B8jG1zI1.mjs → authority-state-bootstrap-DVFYemDL.mjs} +1 -1
  10. package/dist/{automation-trigger-xNDX0Am_.mjs → automation-trigger-CQNQpzkA.mjs} +1 -1
  11. package/dist/bus/index.mjs +8 -1
  12. package/dist/{caller-owned-adapter-stub-oM1G1KvC.mjs → caller-owned-adapter-stub-NiR7KT2N.mjs} +1 -1
  13. package/dist/{canonical-model-D7Cg0l2R.mjs → canonical-model-BMnzRhG_.mjs} +1 -1
  14. package/dist/{capabilities-D2ggcMem.mjs → capabilities-CEwSeTB3.mjs} +1 -1
  15. package/dist/{client-CpUVfDxa.mjs → client-C0HcPzvw.mjs} +1 -1
  16. package/dist/{code-execution-CMqsHnGg.mjs → code-execution-BhUo84eg.mjs} +1 -1
  17. package/dist/{compression-Civ-rf-O.mjs → compression-DvPXSBWS.mjs} +1 -1
  18. package/dist/{config-namespace-CQnsvr77.mjs → config-namespace-CE3KasJn.mjs} +1 -1
  19. package/dist/contracts/adapter/index.mjs +1 -1
  20. package/dist/contracts/artifact/index.d.mts +3 -3
  21. package/dist/contracts/artifact/index.mjs +1 -1
  22. package/dist/contracts/auth/index.mjs +1 -1
  23. package/dist/contracts/automation-trigger/index.mjs +1 -1
  24. package/dist/contracts/canonical-model/index.mjs +1 -1
  25. package/dist/contracts/capabilities/index.d.mts +1 -1
  26. package/dist/contracts/capabilities/index.mjs +1 -1
  27. package/dist/contracts/client/index.d.mts +1 -1
  28. package/dist/contracts/client/index.mjs +1 -1
  29. package/dist/contracts/code-execution/index.mjs +1 -1
  30. package/dist/contracts/common/index.mjs +1 -1
  31. package/dist/contracts/config/index.mjs +1 -1
  32. package/dist/contracts/extension/index.d.mts +3 -3
  33. package/dist/contracts/extension/index.mjs +1 -1
  34. package/dist/contracts/facet/index.mjs +1 -1
  35. package/dist/contracts/harness/index.mjs +1 -1
  36. package/dist/contracts/host/index.mjs +1 -1
  37. package/dist/contracts/index.d.mts +22 -22
  38. package/dist/contracts/index.mjs +1 -1
  39. package/dist/contracts/materialization/index.d.mts +1 -1
  40. package/dist/contracts/materialization/index.mjs +1 -1
  41. package/dist/contracts/model-registry/index.mjs +1 -1
  42. package/dist/contracts/native-session-supervisor/index.mjs +1 -1
  43. package/dist/contracts/platform/index.mjs +1 -1
  44. package/dist/contracts/provider/index.mjs +1 -1
  45. package/dist/contracts/reaction/index.mjs +1 -1
  46. package/dist/contracts/session/index.d.mts +2 -2
  47. package/dist/contracts/session/index.mjs +1 -1
  48. package/dist/contracts/shared/index.d.mts +1 -1
  49. package/dist/contracts/shared/index.mjs +1 -1
  50. package/dist/contracts/skill/index.mjs +1 -1
  51. package/dist/contracts/telemetry/index.mjs +1 -1
  52. package/dist/contracts/timeout/index.mjs +1 -1
  53. package/dist/contracts/toast/index.mjs +1 -1
  54. package/dist/contracts/variant/index.d.mts +1 -1
  55. package/dist/contracts/variant/index.mjs +1 -1
  56. package/dist/contracts/worker/index.d.mts +1 -1
  57. package/dist/contracts/worker/index.mjs +1 -1
  58. package/dist/contracts/workflow/index.d.mts +2 -2
  59. package/dist/contracts/workflow/index.mjs +1 -1
  60. package/dist/{definition-Dqw0YJdi.mjs → definition-o5Dfg5j-.mjs} +1 -1
  61. package/dist/{dist-DeI9zYMP.mjs → dist-DMIaE8sg.mjs} +1 -1
  62. package/dist/{execution-target-_oVNW6Zm.mjs → execution-target-Ba7b_UmX.mjs} +1 -1
  63. package/dist/{extension-CAi7bbyv.mjs → extension-D9D8tJQY.mjs} +1 -1
  64. package/dist/{extension-CrghVa93.mjs → extension-GQEL-NCV.mjs} +1 -1
  65. package/dist/{framework-packages-BOPhhtK7.mjs → framework-packages-DdCJ4JsE.mjs} +1 -1
  66. package/dist/{handlers-YPTyZDhF.mjs → handlers-CqL2TWbk.mjs} +1 -1
  67. package/dist/{harness-Ds1I4smU.mjs → harness-CYzkReGi.mjs} +1 -1
  68. package/dist/{index-2ww5IWeo.d.mts → index-BTluq4-E.d.mts} +85 -42
  69. package/dist/{index-CQ8MVY5G.d.mts → index-BxJRljy-.d.mts} +77 -77
  70. package/dist/{index-CWuPfOzU.d.mts → index-CCNCo440.d.mts} +5 -5
  71. package/dist/{index-OQeNNbiX2.d.mts → index-CRM23ToM2.d.mts} +2 -2
  72. package/dist/{index-D_oDoazF.d.mts → index-D7IZQNhD.d.mts} +1 -1
  73. package/dist/{index-h7_ddTvG2.d.mts → index-DR308wUB2.d.mts} +3 -3
  74. package/dist/{index-VLZJ3Scz.d.mts → index-DvoitgXV.d.mts} +5 -5
  75. package/dist/{index-CWq-9Mpk.d.mts → index-GTCM4lXx.d.mts} +1 -1
  76. package/dist/{index-CVBlYxKV2.d.mts → index-hm8NV4CJ2.d.mts} +4 -4
  77. package/dist/kernel/cli/index.mjs +1 -1
  78. package/dist/kernel/cli/register.mjs +1 -1
  79. package/dist/kernel/cli/schemas.mjs +1 -1
  80. package/dist/kernel/extension/index.mjs +1 -1
  81. package/dist/kernel/index.mjs +1 -1
  82. package/dist/kernel/namespace/index.mjs +1 -1
  83. package/dist/kernel/observability/index.mjs +1 -1
  84. package/dist/kernel/providers/index.mjs +1 -1
  85. package/dist/kernel/window/index.mjs +1 -1
  86. package/dist/kind-registration-BanX_UAF.mjs +1 -0
  87. package/dist/{materialization-BwC7pVg2.mjs → materialization--bg6ZwQd.mjs} +1 -1
  88. package/dist/mcp-http-server/index.mjs +1 -1
  89. package/dist/model-Dya0clsM.mjs +1 -0
  90. package/dist/{namespace-CnRcpgJ8.mjs → namespace-CD9mJGhU.mjs} +1 -1
  91. package/dist/{namespace-B1sjokHd.d.mts → namespace-CfA0C0JR.d.mts} +2 -2
  92. package/dist/namespace-D53UGrP6.mjs +1 -0
  93. package/dist/{namespace-Cy62a3YP.d.mts → namespace-Dmbm2JzV.d.mts} +2 -2
  94. package/dist/{native-session-supervisor-B0rziwHI.mjs → native-session-supervisor-i3PeijHn.mjs} +1 -1
  95. package/dist/{orchestrator-shared-CmS8iU9_.mjs → orchestrator-shared-DMldWEah.mjs} +1 -1
  96. package/dist/{ownership-memory-handler-DMirNILL.mjs → ownership-memory-handler-LXaweX6V.mjs} +1 -1
  97. package/dist/{package-Co36_pRw.mjs → package-BFto8lbP.mjs} +1 -1
  98. package/dist/{package-BDaNGoBY.mjs → package-BT94BLu4.mjs} +1 -1
  99. package/dist/{package-DQgqWIcX.d.mts → package-BaTrCWZl.d.mts} +1 -1
  100. package/dist/package.json +1 -1
  101. package/dist/packages-DAw3Z011.mjs +1 -0
  102. package/dist/{profile-C9RV7ao-.mjs → profile-Cjq4QnUQ.mjs} +1 -1
  103. package/dist/{provider-context-BPITm0cn.mjs → provider-context-BpabfMlj.mjs} +1 -1
  104. package/dist/{provider-context-CyGvwXPz.mjs → provider-context-CYUUoI6x.mjs} +1 -1
  105. package/dist/{resolved-M6PyrgFr.mjs → resolved-XQTiHgrA.mjs} +1 -1
  106. package/dist/runtime-node/index.mjs +1 -1
  107. package/dist/runtime-node/workflow-execution-bus-access.mjs +1 -1
  108. package/dist/{schema-DrHrto2J.mjs → schema-BVbkNHVQ.mjs} +1 -1
  109. package/dist/{schemas-DGKWi7mk.d.mts → schemas-CQe4xCRn.d.mts} +2 -2
  110. package/dist/{schemas-DRho446W.mjs → schemas-NKlV5jqJ.mjs} +1 -1
  111. package/dist/{schemas-DyZNwquY.mjs → schemas-QEr2LI43.mjs} +1 -1
  112. package/dist/{schemas-uWyTgMWm.d.mts → schemas-bcDK-fK3.d.mts} +17 -8
  113. package/dist/{schemas-CQKfd2Xd.mjs → schemas-pHboaOxJ.mjs} +1 -1
  114. package/dist/{schemas-C_kxk6gr.d.mts → schemas-yXs929kr.d.mts} +7 -7
  115. package/dist/{selection-BDs7K53w.mjs → selection-D7V0wyHX.mjs} +1 -1
  116. package/dist/services/adapter-runtime/index.mjs +1 -1
  117. package/dist/services/adapter-subsystem/index.mjs +1 -1
  118. package/dist/services/adapter-subsystem/namespace.mjs +1 -1
  119. package/dist/services/agent-runtime/index.d.mts +2 -2
  120. package/dist/services/agent-runtime/namespace.d.mts +1 -1
  121. package/dist/services/agent-runtime/schemas.d.mts +1 -1
  122. package/dist/services/execution-target/index.mjs +1 -1
  123. package/dist/services/execution-target/namespace.mjs +1 -1
  124. package/dist/services/execution-target/schemas.mjs +1 -1
  125. package/dist/services/filesystem/namespace.d.mts +6 -6
  126. package/dist/services/filesystem/schemas.d.mts +3 -3
  127. package/dist/services/index.d.mts +10 -10
  128. package/dist/services/index.mjs +1 -1
  129. package/dist/services/materialization/index.mjs +1 -1
  130. package/dist/services/provider-context/index.mjs +1 -1
  131. package/dist/services/session/handlers/index.mjs +1 -1
  132. package/dist/services/session/index.mjs +1 -1
  133. package/dist/services/session/messages/namespace.mjs +1 -1
  134. package/dist/services/session/orchestrator-testing/index.mjs +1 -1
  135. package/dist/services/session/session-events/namespace.mjs +1 -1
  136. package/dist/services/session/testing/index.mjs +1 -1
  137. package/dist/services/session/testing/orchestrator-shared.mjs +1 -1
  138. package/dist/services/session/turns/namespace.mjs +1 -1
  139. package/dist/services/session-editor/index.mjs +1 -1
  140. package/dist/services/settings/index.mjs +1 -1
  141. package/dist/services/settings/namespace.d.mts +4 -4
  142. package/dist/services/settings/storage/clients-namespace.mjs +1 -1
  143. package/dist/services/settings/storage/index.mjs +1 -1
  144. package/dist/services/settings/storage/providers-namespace.mjs +1 -1
  145. package/dist/services/subagent/index.mjs +1 -1
  146. package/dist/services/subagent-template/index.d.mts +2 -2
  147. package/dist/services/subagent-template/namespace.d.mts +1 -1
  148. package/dist/services/subagent-template/schemas.d.mts +1 -1
  149. package/dist/services/tool-approval/index.mjs +1 -1
  150. package/dist/services/tools/index.mjs +1 -1
  151. package/dist/services/workflow-transitions/index.mjs +1 -1
  152. package/dist/{session-Cn8z1hxD.mjs → session-CAKfa5o8.mjs} +1 -1
  153. package/dist/{session-9C42TPQq.mjs → session-CODDwsGa.mjs} +1 -1
  154. package/dist/{shared-DqvfJVYk.mjs → shared-CkCrHz66.mjs} +1 -1
  155. package/dist/{skill-BmRp8GhW.mjs → skill-91kZNQnF.mjs} +1 -1
  156. package/dist/{tool-approval-service-DchkAdAr.mjs → tool-approval-service-BV3WxxX6.mjs} +1 -1
  157. package/dist/{tools-r50UBPJ9.mjs → tools-CElCajoS.mjs} +1 -1
  158. package/dist/{transition-h6UZHLGq.d.mts → transition-bYkXnLY2.d.mts} +1 -1
  159. package/dist/{types-Bcsp_FCp.d.mts → types-BNKqcHfP.d.mts} +1 -1
  160. package/dist/{version-sDSWOMn_.mjs → version-DdGhNoY5.mjs} +1 -1
  161. package/dist/{view-builder-BMmmF-Mf.d.mts → view-builder-CA5qUx85.d.mts} +2 -2
  162. package/dist/{visibility-syKffo3e.mjs → visibility-cMXbf9nY.mjs} +1 -1
  163. package/dist/{worker-DRQGyWAS.mjs → worker-B0xwfo9-.mjs} +1 -1
  164. package/dist/{worker-DzbPk2YI.mjs → worker-Cx1JDOB9.mjs} +1 -1
  165. package/dist/{workflow-D-yrAZW8.mjs → workflow-5yHn_Knq.mjs} +1 -1
  166. package/dist/workflow-engine/index.d.mts +48 -48
  167. package/dist/workflow-engine/index.mjs +1 -1
  168. package/dist/workflow-engine/package.d.mts +1 -1
  169. package/dist/workflow-engine/package.mjs +1 -1
  170. package/dist/workflow-engine/workflow-orchestrator.mjs +1 -1
  171. package/dist/{workflow-transitions-D5RvMSnf.mjs → workflow-transitions-DH246j6E.mjs} +1 -1
  172. package/package.json +1 -1
  173. package/dist/artifact-_pN73_7c.mjs +0 -1
  174. package/dist/kind-registration-DggkrLkv.mjs +0 -1
  175. package/dist/model-Cn1IFEP8.mjs +0 -1
  176. package/dist/namespace-DFc1nkal.mjs +0 -1
  177. package/dist/packages-COqPg5TI.mjs +0 -1
  178. /package/dist/{ajv-IlnfOGAj.mjs → ajv-Dz-0DD7m.mjs} +0 -0
  179. /package/dist/{attach-error-DOlUtquX.mjs → attach-error-D5BWfaBO.mjs} +0 -0
  180. /package/dist/{capability-BQHyskJB.mjs → capability-BnQx1BWc.mjs} +0 -0
  181. /package/dist/{common-CylczUIW.mjs → common-Bta2ivrd.mjs} +0 -0
  182. /package/dist/{definitions-2T95Q-y6.mjs → definitions-CyFaNG_c.mjs} +0 -0
  183. /package/dist/{extension-namespace-CWfV3IiR.mjs → extension-namespace-AaHKv6tQ.mjs} +0 -0
  184. /package/dist/{facet-6tnSbjXc.mjs → facet-De-2AP_o.mjs} +0 -0
  185. /package/dist/{host-D7v3YlDG.mjs → host-CbaJg6D4.mjs} +0 -0
  186. /package/dist/{identity-CxMRRAXx.mjs → identity-B6RqbCn7.mjs} +0 -0
  187. /package/dist/{model-registry-BTjKBCCw.mjs → model-registry-DVTFd0RF.mjs} +0 -0
  188. /package/dist/{modes-Bo9Vv5c9.mjs → modes-Dc9_sSbr.mjs} +0 -0
  189. /package/dist/{namespace-DX3QsYpv.mjs → namespace-BZ7UQmW4.mjs} +0 -0
  190. /package/dist/{namespace-Dyxpur8_.mjs → namespace-BnNBM94X.mjs} +0 -0
  191. /package/dist/{namespace-DORNUF0_.mjs → namespace-DGi7tw_W.mjs} +0 -0
  192. /package/dist/{namespace-BCSJz417.mjs → namespace-KYIbWPvl.mjs} +0 -0
  193. /package/dist/{ownership-recovery-guard-CYA5CsiO.mjs → ownership-recovery-guard-BIB5uqgz.mjs} +0 -0
  194. /package/dist/{platform-BdLHWgVc.mjs → platform-BObC-WJA.mjs} +0 -0
  195. /package/dist/{providers-DGTA-lki.mjs → providers-BysYiNMO.mjs} +0 -0
  196. /package/dist/{reaction-aQJGWUWl.mjs → reaction-Cev6JNcb.mjs} +0 -0
  197. /package/dist/{schema-mXXJcaQT.mjs → schema-bfw9nz8B.mjs} +0 -0
  198. /package/dist/{schema-introspection-BsWP1vGC.mjs → schema-introspection-BTS7FZT_.mjs} +0 -0
  199. /package/dist/{schemas-HffXbw8C.mjs → schemas-A2hlgeNu.mjs} +0 -0
  200. /package/dist/{schemas-NYUz8K9Q.mjs → schemas-B3UNnzKG.mjs} +0 -0
  201. /package/dist/{schemas-7fHmNUQc.mjs → schemas-BEDq3Psz.mjs} +0 -0
  202. /package/dist/{schemas-MIYusvwn.mjs → schemas-mLjTSUvJ.mjs} +0 -0
  203. /package/dist/{semver-_h8-BJ8k.mjs → semver-ByPlHR3P.mjs} +0 -0
  204. /package/dist/{shared-schemas-CaL1iEk6.mjs → shared-schemas-CKsgVsGX.mjs} +0 -0
  205. /package/dist/{storage-namespace-definition-4UYuij1r.mjs → storage-namespace-definition-Ct9ohqU0.mjs} +0 -0
  206. /package/dist/{telemetry-BLYrkonr.mjs → telemetry-Be3u4I7b.mjs} +0 -0
  207. /package/dist/{timeout-d0dzIY3V.mjs → timeout-Bscg1B-y.mjs} +0 -0
  208. /package/dist/{ui-config-CsH94fwa.mjs → ui-config-Bl2Wbkr-.mjs} +0 -0
  209. /package/dist/{variant-BZ9UcJBi.mjs → variant-B5j5wR2p.mjs} +0 -0
  210. /package/dist/{window-registry-DQkv5wM9.mjs → window-registry-DWHz8TA5.mjs} +0 -0
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-DTipWd-i.mjs";import{t}from"./ajv-IlnfOGAj.mjs";import{t as n}from"./2020-CpDjcHDh.mjs";import{t as r}from"./dist-DeI9zYMP.mjs";import{canonicalStringify as i}from"@makaio/framework/utils";import{ArtifactKindRegistrationSchema as a,ArtifactSubjects as o,ArtifactViewModelSchema as s,ArtifactViewResolveRequestSchema as c,MaterializationSubjects as l,dep as u,extensionToken as d}from"@makaio/framework/contracts";import{BaseService as f}from"@makaio/framework/service-base";import{ARTIFACT_VALUE_TYPE_KEYWORD as p,readArtifactTitle as m}from"@makaio/framework/contracts/artifact";import{MaterializationSubjects as h}from"@makaio/framework/contracts/materialization";var g=e(t(),1),_=e(n(),1),v=e(r(),1);function y(e){try{let t={allErrors:!0,strict:!1,strictSchema:!0},n=e.dataSchema.$schema===`https://json-schema.org/draft/2020-12/schema`?new _.default(t):new g.default(t);(0,v.default)(n),n.addKeyword({keyword:p,schemaType:`string`,valid:!0}),n.compile(e.dataSchema)}catch(t){throw Error(`Invalid data schema for artifact kind '${e.kind}' version '${e.schemaVersion}': ${t instanceof Error?t.message:String(t)}`,{cause:t})}}const b=[{type:`supersedes`,symmetry:`asymmetric`},{type:`contradicts`,symmetry:`symmetric`},{type:`derives_from`,symmetry:`asymmetric`},{type:`responds_to`,symmetry:`asymmetric`},{type:`contains`,symmetry:`asymmetric`},{type:`refines`,symmetry:`asymmetric`},{type:`scopes`,symmetry:`asymmetric`},{type:`references`,symmetry:`asymmetric`},{type:`evidenced_by`,symmetry:`asymmetric`}],x={extension:0,"factory-repo":1,"target-repo":2},S={source:`extension`,ownerKey:`extension:bus`};function C(e){return`${e.source}:${e.ownerKey}`}function w(e,t){return e.source===t.source&&e.ownerKey===t.ownerKey}function T(e){return structuredClone(e)}function E(e,t){return`${e}@${t}`}var D=class extends f{kinds=new Map;kindContributions=new Map;nextKindContributionOrder=0;relationTypes=new Map;constructor(e){super(e)}async onInit(){for(let e of b)this.relationTypes.set(e.type,e);this.registerHandler(o.kind.register,e=>{this.registerKind(e.payload),e.setResult({registered:!0})}),this.registerHandler(o.kind.list,e=>{let{kind:t}=e.payload,n=[...this.kinds.values()].filter(e=>!t||e.kind===t).map(T);e.setResult({kinds:n})}),this.registerHandler(o[`relation-type`].register,e=>{this.storeRelationType(e.payload),e.setResult({registered:!0})}),this.registerHandler(o[`relation-type`].list,e=>{let{type:t}=e.payload,n=[...this.relationTypes.values()].filter(e=>!t||e.type===t).map(T);e.setResult({relationTypes:n})})}compareKindContributions(e,t){let n=x[e.owner.source]-x[t.owner.source];return n===0?e.owner.source===`extension`?t.order-e.order:e.order-t.order:n}findSameTierRepoConflict(e,t,n){return[...e.values()].find(e=>!w(e.owner,t)&&e.owner.source===t.source&&t.source!==`extension`&&e.order<=n)}recomputeKindWinner(e){let t=this.kindContributions.get(e),n=this.kinds.get(e);if(t===void 0||t.size===0){this.kindContributions.delete(e),this.kinds.delete(e),this.emitKindChangedFromKey(e,n);return}let r;for(let e of t.values())(r===void 0||this.compareKindContributions(e,r)<0)&&(r=e);let i=r;this.kinds.set(e,T(i.registration)),JSON.stringify(n)!==JSON.stringify(i.registration)&&this.bus.emit(o.kind.changed,{kind:i.registration.kind,schemaVersion:i.registration.schemaVersion})}emitKindChangedFromKey(e,t){t!==void 0&&this.bus.emit(o.kind.changed,{kind:t.kind,schemaVersion:t.schemaVersion})}registerKind(e,t=S){e=a.parse(e),y(e);let n=E(e.kind,e.schemaVersion),r=this.kindContributions.get(n)??new Map,i=C(t),o=r.get(i),s=t.source===`extension`?this.nextKindContributionOrder:o?.order??this.nextKindContributionOrder,c=this.findSameTierRepoConflict(r,t,s);if(c!==void 0){console.warn(`[ArtifactSchemaRegistry] Artifact kind '${n}' is already registered by '${c.owner.ownerKey}' at the same priority; keeping the existing owner.`);return}r.set(i,{owner:t,registration:T(e),order:t.source===`extension`||o===void 0?this.nextKindContributionOrder++:o.order}),this.kindContributions.set(n,r),this.recomputeKindWinner(n)}deregisterKind(e,t,n=S){let r=E(e,t),i=this.kindContributions.get(r);i!==void 0&&(i.delete(C(n)),this.recomputeKindWinner(r))}replaceKindRegistrationsForOwner(e,t){let n=t.map(e=>a.parse(e));for(let e of n)y(e);let r=new Set,i=C(e),o=new Map;for(let[e,t]of this.kindContributions.entries()){let n=t.get(i);n!==void 0&&(o.set(e,n.order),t.delete(i),r.add(e))}for(let t of n){let n=E(t.kind,t.schemaVersion),a=this.kindContributions.get(n)??new Map,s=e.source===`extension`?void 0:o.get(n),c=s??this.nextKindContributionOrder,l=this.findSameTierRepoConflict(a,e,c);if(l!==void 0){console.warn(`[ArtifactSchemaRegistry] Artifact kind '${n}' is already registered by '${l.owner.ownerKey}' at the same priority; keeping the existing owner.`);continue}a.set(i,{owner:e,registration:T(t),order:s??this.nextKindContributionOrder++}),this.kindContributions.set(n,a),r.add(n)}for(let e of r)this.recomputeKindWinner(e)}storeRelationType(e){let t=this.relationTypes.get(e.type);if(t){if(t.symmetry!==e.symmetry)throw Error(`Relation type '${e.type}' is already registered with different symmetry (existing: '${t.symmetry}', new: '${e.symmetry}')`);return}this.relationTypes.set(e.type,T(e))}getKind(e,t){let n=this.kinds.get(E(e,t));return n?T(n):void 0}getRelationType(e){let t=this.relationTypes.get(e);return t?T(t):void 0}onDestroy(){this.kinds.clear(),this.kindContributions.clear(),this.relationTypes.clear(),this.nextKindContributionOrder=0}};const O=d(`artifact-schema-registry`),k={name:O.name,displayName:`Artifact Schema Registry`,version:`0.1.0`,critical:!0,create:e=>new D(e.bus)};function A(e,t){return JSON.stringify([e,t])}function j(e){return Object.freeze({kind:e.kind,schemaVersion:e.schemaVersion,version:e.version,build:e.build})}var M=class extends Error{key;incomingOwner;existingOwner;constructor(e,t,n){let r=t===n?`Duplicate builder key '${e}' within owner '${t}'`:`Builder key '${e}' from owner '${t}' collides with owner '${n}'`;super(r),this.key=e,this.incomingOwner=t,this.existingOwner=n,this.name=`ArtifactViewBuilderCollisionError`}},N=class{owners=new Map;globalIndex=new Map;getBuilder(e,t){return this.globalIndex.get(A(e,t))?.builder}replaceBuildersForOwner(e,t){for(let n of t)if(!Number.isInteger(n.version)||n.version<1)throw Error(`Builder for '${A(n.kind,n.schemaVersion)}' from owner '${e}' has non-positive version ${String(n.version)}`);let n=new Map;for(let r of t){let t=A(r.kind,r.schemaVersion);if(n.has(t))throw new M(t,e,e);n.set(t,j(r))}for(let t of n.keys()){let n=this.globalIndex.get(t);if(n&&n.owner!==e)throw new M(t,e,n.owner)}n.size===0?this.owners.delete(e):this.owners.set(e,[...n.values()]),this.rebuildGlobalIndex()}removeBuildersForOwner(e){this.owners.has(e)&&(this.owners.delete(e),this.rebuildGlobalIndex())}getBuildersForOwner(e){let t=this.owners.get(e);if(t)return[...t]}clear(){this.owners.clear(),this.globalIndex.clear()}destroy(){this.clear()}rebuildGlobalIndex(){let e=new Map;for(let[t,n]of this.owners)for(let r of n){let n=A(r.kind,r.schemaVersion);e.set(n,{owner:t,builder:r})}this.globalIndex=e}};const P=5;function F(e){if(e.target.refClass===`artifact`)return{artifactId:e.target.id,label:`[${e.target.kind}] ${e.target.id}`}}function I(e){let t=new Map;for(let n of e){let e=F(n);if(!e)continue;let r=t.get(n.type)??[];r.push(e),t.set(n.type,r)}if(t.size!==0)return{type:`relations`,title:`Relations`,groups:[...t.entries()].map(([e,t])=>({type:e,items:t}))}}function L(e){let t=[],n=new Set;for(let r of e){let e=F(r);!e||n.has(e.artifactId)||(n.add(e.artifactId),t.push(e))}return{breadcrumbs:[],related:t}}function R(e){if(!e.confidence?.basis)return;let t=[];for(let n of e.confidence.basis){let e=n.evidenceRef;e?.refClass===`evidence`&&t.push({kind:e.kind,id:e.id,...e.locator?{locator:e.locator}:{}})}if(t.length!==0)return{type:`evidence`,title:`Evidence`,items:t}}function z(e,t,n){let r=[];if(n===`full`){let t=I(e.relations);t&&r.push(t);let n=R(e);n&&r.push(n)}return{title:m(e.data,t.titlePath),artifact:{id:e.id,kind:e.kind,revision:e.revision},navigation:L(e.relations),sections:r,links:{}}}var B=class extends f{schemaRegistry;builderRegistry;constructor(e,t,n){super(e),this.schemaRegistry=t,this.builderRegistry=n}async onInit(){this.registerHandler(l.artifact.view.resolve,async e=>{let{ref:t,level:n,affordance:r,params:i}=c.parse(e.payload),a=await this.resolve(t,n,r,i);e.setResult(a)})}async resolve(e,t,n,r){let i=await this.bus.requestOptional(o.resolve,{ref:e});if(!i.handled||i.data.artifact===null)return{status:`artifact-not-found`,view:null};let a=i.data.artifact,c=this.schemaRegistry.getKind(a.kind,a.schemaVersion);if(c===void 0)return{status:`not-rendered`,view:null};let l=this.builderRegistry.getBuilder(a.kind,a.schemaVersion);if(l===void 0)return{status:`not-rendered`,view:null};let u=z(a,c,t),d=u.sections,f=u.navigation,p=l.version,m=await l.build({artifact:a,level:t,affordance:n,params:r,genericSections:u.sections,genericNavigation:u.navigation,relations:a.relations});if(m!==void 0){if(`render`in m&&m.render===!1)return{status:`not-rendered`,view:null};`sections`in m&&(d=m.sections??d),`navigation`in m&&(f=m.navigation??f)}let h={title:u.title,artifact:u.artifact,navigation:f,sections:[...d],links:u.links};return{status:`ok`,view:s.parse(h),builderVersion:p,sourceRevision:e.revision}}};function V(e){return structuredClone(e)}var H=class extends f{bindings=new Map;constructor(e){super(e)}async onInit(){this.registerHandler(h.surfaceBinding.register,e=>{this.registerBinding(e.payload),e.setResult({registered:!0})}),this.registerHandler(h.surfaceBinding.list,e=>{let{id:t,provider:n,namespace:r}=e.payload,i=[...this.bindings.values()].filter(e=>(!t||e.id===t)&&(!n||e.provider===n)&&(!r||e.namespace===r)).map(V);e.setResult({bindings:i})})}registerBinding(e){let t=this.bindings.get(e.id);if(t){if(i(t)!==i(e))throw Error(`Surface binding '${e.id}' is already registered with a different definition`);return}this.bindings.set(e.id,V(e)),this.bus.emit(h.surfaceBinding.changed,{id:e.id,provider:e.provider})}deregisterBinding(e){let t=this.bindings.get(e);t&&(this.bindings.delete(e),this.bus.emit(h.surfaceBinding.changed,{id:e,provider:t.provider}))}getBinding(e){let t=this.bindings.get(e);return t?V(t):void 0}onDestroy(){this.bindings.clear()}},U=class{queues=new Map;activeLeases=new Map;pendingAcquisitions=new Set;authorizedRequests=new Map;consumedAuthorizedRequestIds=new Set;acceptingAcquisitions=!0;destroyPromise;destroy(){return this.acceptingAcquisitions=!1,this.destroyPromise??=this.drain(),this.destroyPromise}acquire(e){if(!this.acceptingAcquisitions)return Promise.reject(Error(`Materialization operation coordinator is destroyed`));let t=this.acquireAdmitted(e);return this.pendingAcquisitions.add(t),t.then(()=>this.pendingAcquisitions.delete(t),()=>this.pendingAcquisitions.delete(t)),t}async acquireAdmitted(e){let t=W(e),n=new Set,r=[];for(let e of G(t))r.push(await this.acquireKey(e)),n.add(e);let i={id:crypto.randomUUID(),scope:t},a,o=new Promise(e=>{a=e});return this.activeLeases.set(i.id,{lease:i,heldKeys:n,releases:r,settled:o,settle:a,released:!1}),i}release(e){let t=this.requireActiveLease(e);t.released=!0,this.activeLeases.delete(e.id);for(let e of t.releases.reverse())e();t.settle()}async extend(e,t){let n=this.requireActiveLease(e),r=W(t);if(r.artifactId!==e.scope.artifactId)throw Error(`A materialization operation lease cannot be extended to another artifact`);let i=G(r).filter(e=>!n.heldKeys.has(e)),a=[...n.heldKeys].filter(e=>e.startsWith(`provider:`)).at(-1);if(a&&i.some(e=>q(e,a)<0))throw Error(`Materialization operation lease extension violates lock ordering`);for(let e of i)n.releases.push(await this.acquireKey(e)),n.heldKeys.add(e)}async runExclusive(e,t,n,r){let i=W(e);if(n){if(this.consumedAuthorizedRequestIds.has(n))throw Error(`Materialization operation authorization has already been consumed`);let e=this.authorizedRequests.get(n);if(e){this.authorizedRequests.delete(n),this.consumedAuthorizedRequestIds.add(n);let a=this.activeLeases.get(e.leaseId);if(!r?.local||!a||e.scopeKey!==J(i))throw Error(`Materialization operation authorization does not match this scope`);return t(a.lease)}}let a=await this.acquire(i);try{return await t(a)}finally{this.release(a)}}async runAuthorizedRequest(e,t,n){let r=this.requireActiveLease(e),i=W(t);if(!G(i).every(e=>r.heldKeys.has(e)))throw Error(`Materialization operation authorization requires a lease for the full scope`);let a=crypto.randomUUID();this.authorizedRequests.set(a,{leaseId:e.id,scopeKey:J(i)});try{return await n(a)}finally{this.authorizedRequests.delete(a),this.consumedAuthorizedRequestIds.delete(a)}}requireActiveLease(e){let t=this.activeLeases.get(e.id);if(!t||t.released||t.lease!==e)throw Error(`Materialization operation lease is no longer active`);return t}async acquireKey(e){let t=this.queues.get(e)??Promise.resolve(),n,r=new Promise(e=>{n=e}),i=t.then(()=>r);return this.queues.set(e,i),await t,()=>{n(),this.queues.get(e)===i&&this.queues.delete(e)}}async drain(){for(;this.pendingAcquisitions.size>0||this.activeLeases.size>0;)await Promise.allSettled([...this.pendingAcquisitions,...[...this.activeLeases.values()].map(e=>e.settled)])}};function W(e){if(!e.artifactId)throw Error(`Materialization operation scope requires an artifactId`);let t=[...new Map((e.providerObjects??[]).map(e=>[K(e),e])).values()].sort((e,t)=>q(K(e),K(t)));return t.length>0?{artifactId:e.artifactId,providerObjects:t}:{artifactId:e.artifactId}}function G(e){return[`artifact:${e.artifactId}`,...(e.providerObjects??[]).map(K)]}function K(e){if(!e.provider||!e.externalId)throw Error(`Materialization provider objects require provider and externalId`);return`provider:${JSON.stringify([e.provider,e.externalId])}`}function q(e,t){return e===t?0:e<t?-1:1}function J(e){return JSON.stringify(G(e))}const Y=d(`surface-binding-registry`),X=d(`artifact-view-builder-registry`),Z=d(`artifact-view-service`),Q=d(`materialization-operation-coordinator`),$={name:Q.name,displayName:`Materialization Operation Coordinator`,version:`0.1.0`,critical:!0,create:()=>new U},ee={name:Y.name,displayName:`Surface Binding Registry`,version:`0.1.0`,critical:!0,create:e=>new H(e.bus)},te={name:X.name,displayName:`Artifact View Builder Registry`,version:`0.1.0`,critical:!0,create:()=>new N},ne={name:Z.name,displayName:`Artifact View Service`,version:`0.1.0`,critical:!0,dependencies:[u(O.name),u(X.name)],create:e=>{let t=e.getService(O),n=e.getService(X);if(t===void 0)throw Error(`ArtifactSchemaRegistry is not available for ArtifactViewService`);if(n===void 0)throw Error(`ArtifactViewBuilderRegistry is not available for ArtifactViewService`);return new B(e.bus,t,n)}};export{k as _,te as a,ee as c,B as d,P as f,O as g,N as h,Y as i,U as l,M as m,Z as n,ne as o,z as p,Q as r,$ as s,X as t,H as u,D as v};
File without changes
File without changes
File without changes
File without changes