chainlesschain 0.166.22 → 0.166.25

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 (298) hide show
  1. package/README.md +46 -3
  2. package/package.json +4 -3
  3. package/src/assets/web-panel/assets/{AIOps-oJ7USzMC.js → AIOps-RaxL_QQD.js} +1 -1
  4. package/src/assets/web-panel/assets/{ActionButton-BlgnZe_C.js → ActionButton-DD3ieFO-.js} +1 -1
  5. package/src/assets/web-panel/assets/{Analytics-D2rRbTLu.js → Analytics-CATDJukS.js} +3 -3
  6. package/src/assets/web-panel/assets/{AppLayout-FwS3f0B2.js → AppLayout-BHGsnRDS.js} +5 -5
  7. package/src/assets/web-panel/assets/{Artifacts-iF-_08Hi.js → Artifacts-BL6NunjN.js} +1 -1
  8. package/src/assets/web-panel/assets/{Audit-D24p0zQw.js → Audit-D0nEWfbA.js} +1 -1
  9. package/src/assets/web-panel/assets/{BackgroundAgents-Cg3mRVi9.js → BackgroundAgents-BAP1MUol.js} +1 -1
  10. package/src/assets/web-panel/assets/{Backup-EOqht3H-.js → Backup-R4y2OeSi.js} +1 -1
  11. package/src/assets/web-panel/assets/{BaseInput-9XWYq2hj.js → BaseInput-ByQZ2z6S.js} +1 -1
  12. package/src/assets/web-panel/assets/{Chat-Dq5yardA.js → Chat-32uV--xF.js} +4 -4
  13. package/src/assets/web-panel/assets/ChatBubbleRenderer-t1enanwz.js +1 -0
  14. package/src/assets/web-panel/assets/{Checkbox-CuyCBoBf.js → Checkbox-D1CB-7bq.js} +1 -1
  15. package/src/assets/web-panel/assets/{Codegen-DjWtYHNe.js → Codegen-BPx3dQ2q.js} +1 -1
  16. package/src/assets/web-panel/assets/{Col-CrVr_iuG.js → Col-DkPTQ2Gl.js} +1 -1
  17. package/src/assets/web-panel/assets/{Community-C6QxpfGc.js → Community-ZriaxRlr.js} +1 -1
  18. package/src/assets/web-panel/assets/{Compact-B-v5r6Pa.js → Compact-C_qJ0P7F.js} +1 -1
  19. package/src/assets/web-panel/assets/{Compliance-zNiLiFgD.js → Compliance-Bgoy-saS.js} +1 -1
  20. package/src/assets/web-panel/assets/{Cowork-D9K7lMOu.js → Cowork-B5i9y6XK.js} +2 -2
  21. package/src/assets/web-panel/assets/{Cron-DAjO36z4.js → Cron-D7vBJ5-J.js} +2 -2
  22. package/src/assets/web-panel/assets/{Crosschain-Bxqn0aqB.js → Crosschain-D4kvoGI_.js} +1 -1
  23. package/src/assets/web-panel/assets/{DID-DfRmLUe-.js → DID-BLOeBd-r.js} +2 -2
  24. package/src/assets/web-panel/assets/{Dashboard-Cz8KF3fr.js → Dashboard-mecJaonC.js} +2 -2
  25. package/src/assets/web-panel/assets/{Dropdown-C4oVfkP0.js → Dropdown-GPKwaFer.js} +1 -1
  26. package/src/assets/web-panel/assets/{EmailListRenderer-ivyZKN8k.js → EmailListRenderer-BML9m7Dd.js} +1 -1
  27. package/src/assets/web-panel/assets/{FamilyGuardDashboard-DoxY1CPW.js → FamilyGuardDashboard-DN5bAtJC.js} +1 -1
  28. package/src/assets/web-panel/assets/{Federation-C93gZxnb.js → Federation-DmD6Gecd.js} +1 -1
  29. package/src/assets/web-panel/assets/{FormItemContext-D_lEjYJE.js → FormItemContext-6wwplN_K.js} +1 -1
  30. package/src/assets/web-panel/assets/{GenericCardRenderer-BNFN9YjN.js → GenericCardRenderer-DUhpLkDL.js} +1 -1
  31. package/src/assets/web-panel/assets/{Git-mUu2HcLI.js → Git-eJfyXkwf.js} +2 -2
  32. package/src/assets/web-panel/assets/{Governance-CNuosrge.js → Governance-swAUW59x.js} +1 -1
  33. package/src/assets/web-panel/assets/{Inference-DwY5pbCB.js → Inference-CbdwJPDJ.js} +1 -1
  34. package/src/assets/web-panel/assets/{KnowledgeGraph-aRUxhACD.js → KnowledgeGraph-UuYpg1nm.js} +1 -1
  35. package/src/assets/web-panel/assets/{Logs-DFfsWYy_.js → Logs-CS0G057y.js} +2 -2
  36. package/src/assets/web-panel/assets/MarkdownRenderer-BxIIB4k3.js +1 -0
  37. package/src/assets/web-panel/assets/{Marketplace-COI-ciM-.js → Marketplace-CZRjuvvI.js} +1 -1
  38. package/src/assets/web-panel/assets/{McpTools-BJJwaIpe.js → McpTools-BOJ9A_Rf.js} +3 -3
  39. package/src/assets/web-panel/assets/{Memory-CDO6SGDZ.js → Memory-BnkrR-Ok.js} +2 -2
  40. package/src/assets/web-panel/assets/{MobileBridge-BlZ5tFf4.js → MobileBridge-Do4mPi13.js} +1 -1
  41. package/src/assets/web-panel/assets/{MobileProjects-DuoxbgWz.js → MobileProjects-2JxWa6-p.js} +1 -1
  42. package/src/assets/web-panel/assets/{Mtc-6ec9j70b.js → Mtc-CS_mnpGd.js} +2 -2
  43. package/src/assets/web-panel/assets/{MtcAudit-BuL7HkC7.js → MtcAudit-DZ4J_351.js} +5 -5
  44. package/src/assets/web-panel/assets/{Multisig-CJxR85lk.js → Multisig-Jh74zKXu.js} +3 -3
  45. package/src/assets/web-panel/assets/{NLProgramming-B71O1S4l.js → NLProgramming-_4n2BfnS.js} +1 -1
  46. package/src/assets/web-panel/assets/{Notes-Bsw5zbpV.js → Notes-CtENcKHv.js} +3 -3
  47. package/src/assets/web-panel/assets/{NotificationSettings-BnAhXuK_.js → NotificationSettings-dgDCvpK9.js} +1 -1
  48. package/src/assets/web-panel/assets/{OrderTableRenderer-BJ0R5GGz.js → OrderTableRenderer-D5VxCrmG.js} +1 -1
  49. package/src/assets/web-panel/assets/{Organization-B7wwNxoP.js → Organization-CpIF8Xkd.js} +2 -2
  50. package/src/assets/web-panel/assets/{Overflow-CfAGr0gM.js → Overflow-aHnBZaez.js} +1 -1
  51. package/src/assets/web-panel/assets/{P2P-KhMg22Fz.js → P2P-8ppzog2V.js} +2 -2
  52. package/src/assets/web-panel/assets/{PdhVaultBrowser-NdAXI9ft.js → PdhVaultBrowser-D3p1BXkp.js} +3 -3
  53. package/src/assets/web-panel/assets/{Permissions-CIYjqyT7.js → Permissions-D7vflD5q.js} +4 -4
  54. package/src/assets/web-panel/assets/{PersonalDataHub-D2ht3P_R.js → PersonalDataHub-D2hY-Ek2.js} +4 -4
  55. package/src/assets/web-panel/assets/{Pipeline-i6flZW1m.js → Pipeline-qK2VqhJC.js} +1 -1
  56. package/src/assets/web-panel/assets/{Privacy-DE0lhYVc.js → Privacy-DHJr4uu0.js} +1 -1
  57. package/src/assets/web-panel/assets/{ProjectInit-BL3YbyxS.js → ProjectInit-DMBS6trm.js} +2 -2
  58. package/src/assets/web-panel/assets/{ProjectSettings-CEtdg7ni.js → ProjectSettings-D3Ng74BT.js} +2 -2
  59. package/src/assets/web-panel/assets/{Projects-CvtU5peJ.js → Projects-BfJFZiIW.js} +1 -1
  60. package/src/assets/web-panel/assets/{Providers-DKt_Cg-j.js → Providers-DlNA95G0.js} +1 -1
  61. package/src/assets/web-panel/assets/{QrScannerModal-DA61jNSx.js → QrScannerModal-CMOIYxIm.js} +1 -1
  62. package/src/assets/web-panel/assets/{QuickAsk-fS9ryUmq.js → QuickAsk-D6MyGp5I.js} +1 -1
  63. package/src/assets/web-panel/assets/{Recommend-CR9dZU5Y.js → Recommend-W6WcShtf.js} +1 -1
  64. package/src/assets/web-panel/assets/{RemoteSession-BV0BR2Dz.js → RemoteSession-Dm_MjlV_.js} +2 -2
  65. package/src/assets/web-panel/assets/{Reputation-BIeGUvYD.js → Reputation-Ctvij6eX.js} +1 -1
  66. package/src/assets/web-panel/assets/{Row-DHDT1aro.js → Row-DivbeDE-.js} +1 -1
  67. package/src/assets/web-panel/assets/{RssFeed-Cq6YKb1h.js → RssFeed-D4famoAw.js} +3 -3
  68. package/src/assets/web-panel/assets/{Search-DEF6vsy6.js → Search-6gOAh3zG.js} +1 -1
  69. package/src/assets/web-panel/assets/{Security-CHtYiKY9.js → Security-DApb9kK8.js} +4 -4
  70. package/src/assets/web-panel/assets/{Services-u16lvBJN.js → Services-B8OomyE2.js} +2 -2
  71. package/src/assets/web-panel/assets/{Skeleton-CGbizyDj.js → Skeleton-BTJ2g2E3.js} +1 -1
  72. package/src/assets/web-panel/assets/{Skills-BZMQcAa7.js → Skills-NIRr4DD1.js} +1 -1
  73. package/src/assets/web-panel/assets/{Sla-Bm-CycVi.js → Sla-BQHP_6px.js} +1 -1
  74. package/src/assets/web-panel/assets/{SpeechSettings-BudpA5kr.js → SpeechSettings-BVQTDSVS.js} +1 -1
  75. package/src/assets/web-panel/assets/{SyncSettings-B8q1C1eC.js → SyncSettings-BOD4Mar6.js} +2 -2
  76. package/src/assets/web-panel/assets/{Tasks-SU1pBWc-.js → Tasks-Ciu7H2-y.js} +1 -1
  77. package/src/assets/web-panel/assets/{Templates-CyOfJzmt.js → Templates-CtlwavRU.js} +1 -1
  78. package/src/assets/web-panel/assets/{Tenant-xqWSm2GP.js → Tenant-QLWYJdL6.js} +1 -1
  79. package/src/assets/web-panel/assets/{Terminal-D1Ttgjsi.js → Terminal-B3q10mjm.js} +2 -2
  80. package/src/assets/web-panel/assets/{TimelineRenderer-Da2lYs5D.js → TimelineRenderer-CqltBA_8.js} +1 -1
  81. package/src/assets/web-panel/assets/{Tokens-B34-SduO.js → Tokens-CJOKrj4y.js} +1 -1
  82. package/src/assets/web-panel/assets/{Trigger-C8zyYm4R.js → Trigger-CPMGgfdM.js} +1 -1
  83. package/src/assets/web-panel/assets/{Trust-D1Pvqems.js → Trust-DiJms7Bl.js} +1 -1
  84. package/src/assets/web-panel/assets/{UkeySign-Do3VVnAy.js → UkeySign-rakR8eel.js} +1 -1
  85. package/src/assets/web-panel/assets/{VideoEditing-Dz7egVIA.js → VideoEditing-DAWZUM5o.js} +1 -1
  86. package/src/assets/web-panel/assets/{Wallet-Dcuw-OxR.js → Wallet-DqUPnl7K.js} +3 -3
  87. package/src/assets/web-panel/assets/{WebAuthn-DPlw-QsB.js → WebAuthn-BnVUwvMm.js} +3 -3
  88. package/src/assets/web-panel/assets/{WorkflowEditor-h4OsnU5q.js → WorkflowEditor-B1CAwxgs.js} +1 -1
  89. package/src/assets/web-panel/assets/{chat-eO9wEwrW.js → chat-k2-0Jzfy.js} +1 -1
  90. package/src/assets/web-panel/assets/{colors-34lSmOXw.js → colors-BAu8xBmW.js} +1 -1
  91. package/src/assets/web-panel/assets/{compact-item-CK4kEWJ4.js → compact-item-DMlqcdfI.js} +1 -1
  92. package/src/assets/web-panel/assets/{createContext-E0A57xed.js → createContext-BU9kfiSw.js} +1 -1
  93. package/src/assets/web-panel/assets/devWarning-DuGrUMAS.js +1 -0
  94. package/src/assets/web-panel/assets/{hasIn-BD9ZMGAl.js → hasIn-2vacgdcl.js} +1 -1
  95. package/src/assets/web-panel/assets/{index--N0u6kTG.js → index-B-C-Ruft.js} +1 -1
  96. package/src/assets/web-panel/assets/{index-DzXjP44T.js → index-B7wDjYUd.js} +1 -1
  97. package/src/assets/web-panel/assets/{index-CZBaqe3d.js → index-BMq0frKK.js} +1 -1
  98. package/src/assets/web-panel/assets/{index-DrOalGut.js → index-BUX4W-2v.js} +1 -1
  99. package/src/assets/web-panel/assets/{index-CT1_eRL-.js → index-BZz2eB33.js} +1 -1
  100. package/src/assets/web-panel/assets/{index-DrsDA_md.js → index-BblNQlaA.js} +1 -1
  101. package/src/assets/web-panel/assets/{index-DP-UZAQN.js → index-BdfKoqsK.js} +1 -1
  102. package/src/assets/web-panel/assets/{index-DiT_REby.js → index-Bf8YofPE.js} +1 -1
  103. package/src/assets/web-panel/assets/{index-Cx3Jn1r0.js → index-Bn8tARil.js} +1 -1
  104. package/src/assets/web-panel/assets/{index-B0rkHxKK.js → index-Bpe2CJd-.js} +1 -1
  105. package/src/assets/web-panel/assets/{index-B_G_ElKO.js → index-BxctzdYQ.js} +1 -1
  106. package/src/assets/web-panel/assets/{index-MIg5Z8qe.js → index-C24NoPpy.js} +1 -1
  107. package/src/assets/web-panel/assets/{index-BmNbU2Z6.js → index-C5C4kSi8.js} +1 -1
  108. package/src/assets/web-panel/assets/{index-BsGmo6v1.js → index-C6ICn9Y6.js} +1 -1
  109. package/src/assets/web-panel/assets/{index-CsrKJJcX.js → index-C8ldqZi6.js} +1 -1
  110. package/src/assets/web-panel/assets/{index-BbX_Dted.js → index-C9WsM29I.js} +1 -1
  111. package/src/assets/web-panel/assets/{index-Ch175NUw.js → index-CONPVaxw.js} +1 -1
  112. package/src/assets/web-panel/assets/{index-DONOUtlz.js → index-CPyYXKFB.js} +1 -1
  113. package/src/assets/web-panel/assets/{index-DFLE2qO9.js → index-CSvSf9px.js} +1 -1
  114. package/src/assets/web-panel/assets/{index-o8pYehRq.js → index-CXmpR6N3.js} +3 -3
  115. package/src/assets/web-panel/assets/{index-Cz3unNfL.js → index-Chybe7Ge.js} +1 -1
  116. package/src/assets/web-panel/assets/{index-yAGBu2E0.js → index-CyXmP3PW.js} +1 -1
  117. package/src/assets/web-panel/assets/{index-CuSau5ya.js → index-DCusBOqR.js} +1 -1
  118. package/src/assets/web-panel/assets/{index-DcE1BspQ.js → index-DH01oIaj.js} +1 -1
  119. package/src/assets/web-panel/assets/{index-DrSAAuJj.js → index-DHg3LMNP.js} +1 -1
  120. package/src/assets/web-panel/assets/{index-CZkFMeWL.js → index-DWLTSIka.js} +1 -1
  121. package/src/assets/web-panel/assets/{index-DvKcroix.js → index-DaUGdvtU.js} +1 -1
  122. package/src/assets/web-panel/assets/{index-Bjs90Eh9.js → index-DcA-tEQd.js} +1 -1
  123. package/src/assets/web-panel/assets/{index-DGRxt5wj.js → index-DfWvcu4p.js} +1 -1
  124. package/src/assets/web-panel/assets/{index-DCn-ECvK.js → index-DmZNnZz7.js} +1 -1
  125. package/src/assets/web-panel/assets/index-DvFfMAux.js +1 -0
  126. package/src/assets/web-panel/assets/{index-8qMA1DWQ.js → index-JsyGqKmD.js} +1 -1
  127. package/src/assets/web-panel/assets/{index-D4bB_x_v.js → index-TtrpHmYx.js} +1 -1
  128. package/src/assets/web-panel/assets/{index-Brqc9Emx.js → index-Ygh0wmKz.js} +1 -1
  129. package/src/assets/web-panel/assets/{index-Da5fmOHB.js → index-dIYqw3f0.js} +1 -1
  130. package/src/assets/web-panel/assets/{index-DpfisY1g.js → index-hDHHJYno.js} +1 -1
  131. package/src/assets/web-panel/assets/index-n6p-1A77.js +1 -0
  132. package/src/assets/web-panel/assets/{index-DeXNCyQJ.js → index-oElehY4F.js} +1 -1
  133. package/src/assets/web-panel/assets/{index-DcbgVLOH.js → index-z4_YwZDW.js} +1 -1
  134. package/src/assets/web-panel/assets/{initDefaultProps-DMTkAomF.js → initDefaultProps-B9OXWu2e.js} +1 -1
  135. package/src/assets/web-panel/assets/{motion-Cnti1F5g.js → motion-IQ47MCDQ.js} +1 -1
  136. package/src/assets/web-panel/assets/{move-CGxmHUga.js → move-CLCU4kjV.js} +1 -1
  137. package/src/assets/web-panel/assets/{mtc-parser-CuwwLoq7.js → mtc-parser-CXnVlSPq.js} +1 -1
  138. package/src/assets/web-panel/assets/{omit-BpdlTkPM.js → omit-BJjLXB0f.js} +1 -1
  139. package/src/assets/web-panel/assets/{pickAttrs-D7nWrThp.js → pickAttrs-BHdtvdy6.js} +1 -1
  140. package/src/assets/web-panel/assets/{placementArrow-Bhx0TV8F.js → placementArrow-oq8X_Bwc.js} +1 -1
  141. package/src/assets/web-panel/assets/{responsiveObserve-CZ1KesZh.js → responsiveObserve-DTD02LAO.js} +1 -1
  142. package/src/assets/web-panel/assets/{slide-CnldF8J6.js → slide-DbEeq8to.js} +1 -1
  143. package/src/assets/web-panel/assets/{statusUtils-CZfo_GOA.js → statusUtils-Do2fy1CJ.js} +1 -1
  144. package/src/assets/web-panel/assets/{styleChecker-B2QCcAv5.js → styleChecker-CFWD63T-.js} +1 -1
  145. package/src/assets/web-panel/assets/{useFlexGapSupport-DzzjIS4J.js → useFlexGapSupport-BeozAWOo.js} +1 -1
  146. package/src/assets/web-panel/assets/{useFs-B_atg9M0.js → useFs-0-rIgnBL.js} +1 -1
  147. package/src/assets/web-panel/assets/{usePersonalDataHub-DhZs3QYN.js → usePersonalDataHub-CeiNoI31.js} +1 -1
  148. package/src/assets/web-panel/assets/{vnode-DcePTYAm.js → vnode-Dj0ReRNg.js} +1 -1
  149. package/src/assets/web-panel/assets/{zoom-BYmlnjRk.js → zoom-DD7MC4Dy.js} +1 -1
  150. package/src/assets/web-panel/index.html +1 -1
  151. package/src/command-help-index.json +3 -3
  152. package/src/commands/agent.js +18 -1
  153. package/src/commands/evolution-benchmark.js +72 -0
  154. package/src/commands/evolution-knowledge.js +40 -1
  155. package/src/commands/evolution.js +2 -0
  156. package/src/commands/governed-skill-marketplace.js +142 -0
  157. package/src/commands/marketplace.js +4 -1
  158. package/src/commands/serve.js +21 -0
  159. package/src/commands/skill.js +3 -0
  160. package/src/data/changelog.json +39 -0
  161. package/src/gateways/ws/ws-agent-handler.js +59 -2
  162. package/src/gateways/ws/ws-server.js +2 -0
  163. package/src/generated/cc-agent-protocol.schema.json +3 -1
  164. package/src/harness/golden-transcript.js +1 -0
  165. package/src/harness/prompt-compressor.js +51 -5
  166. package/src/harness/provider-backed-compaction.js +28 -1
  167. package/src/harness/remote-session-registry.js +15 -3
  168. package/src/index.js +20 -2
  169. package/src/lazy-dispatch.js +6 -0
  170. package/src/lib/advisor-runtime.js +55 -2
  171. package/src/lib/app-server/cli-agent-kernel-adapter.js +4 -0
  172. package/src/lib/app-server/graph-runtime.js +32 -0
  173. package/src/lib/app-server/server.js +94 -1
  174. package/src/lib/app-server/websocket-transport.js +15 -0
  175. package/src/lib/autonomous-agent.js +63 -13
  176. package/src/lib/cowork/ab-comparator-cli.js +4 -3
  177. package/src/lib/cowork/debate-review-cli.js +4 -3
  178. package/src/lib/cowork/decision-kb-cli.js +5 -0
  179. package/src/lib/cowork-adapter.js +38 -16
  180. package/src/lib/evolution/agent-evolution-ingress.js +95 -15
  181. package/src/lib/evolution/agent-evolution-runtime-composition.js +82 -0
  182. package/src/lib/evolution/agent-evolution-session-lifecycle.js +46 -0
  183. package/src/lib/evolution/agent-model-projection.js +437 -0
  184. package/src/lib/evolution/bounded-descriptor-read.js +29 -0
  185. package/src/lib/evolution/controlled-skill-pilot-ledger-adapter.js +551 -0
  186. package/src/lib/evolution/controlled-skill-production-pilot.js +308 -18
  187. package/src/lib/evolution/evidence-backed-wiki-maintainer.js +32 -10
  188. package/src/lib/evolution/evidence-json-text.js +236 -0
  189. package/src/lib/evolution/evolution-artifact-ports.js +196 -21
  190. package/src/lib/evolution/evolution-deployment-loader.js +240 -2
  191. package/src/lib/evolution/evolution-eval-child-evidence-ledger-adapter.js +373 -0
  192. package/src/lib/evolution/evolution-eval-gate.js +14 -1
  193. package/src/lib/evolution/evolution-eval-process-supervisor-worker.mjs +14 -0
  194. package/src/lib/evolution/evolution-eval-process-supervisor.js +607 -0
  195. package/src/lib/evolution/evolution-evidence-artifact-adapter.js +14 -1
  196. package/src/lib/evolution/evolution-evidence-projector.js +271 -37
  197. package/src/lib/evolution/evolution-file-witness.js +153 -30
  198. package/src/lib/evolution/evolution-ledger-ports.js +1219 -66
  199. package/src/lib/evolution/evolution-ledger.js +66 -2
  200. package/src/lib/evolution/evolution-raw-crypto-shred.js +29 -15
  201. package/src/lib/evolution/evolution-raw-deletion-ledger-adapter.js +865 -0
  202. package/src/lib/evolution/evolution-release-train-domain-stages.js +769 -0
  203. package/src/lib/evolution/evolution-release-train-stage-output-ledger-adapter.js +333 -0
  204. package/src/lib/evolution/evolution-release-train.js +54 -6
  205. package/src/lib/evolution/evolution-workbench-batch-executor.js +101 -144
  206. package/src/lib/evolution/evolution-workbench-control-ports.js +203 -0
  207. package/src/lib/evolution/evolution-workbench-file-resources.js +403 -0
  208. package/src/lib/evolution/evolution-workbench-projection.js +134 -26
  209. package/src/lib/evolution/evolution-workbench-registry-source.js +482 -0
  210. package/src/lib/evolution/evolution-workbench-review-ledger-adapter.js +823 -0
  211. package/src/lib/evolution/evolution-workbench-review-protocol.js +157 -0
  212. package/src/lib/evolution/evolution-workbench-rollback-authorization.js +57 -0
  213. package/src/lib/evolution/evolution-workbench-rollback-ledger-adapter.js +1016 -0
  214. package/src/lib/evolution/evolution-workbench-runtime.js +133 -0
  215. package/src/lib/evolution/evolution-workbench-version-control.js +70 -36
  216. package/src/lib/evolution/evolvable-artifact-ledger-adapter.js +48 -0
  217. package/src/lib/evolution/governed-knowledge-candidate-rejection.js +343 -0
  218. package/src/lib/evolution/governed-knowledge-dependency-authority.js +227 -44
  219. package/src/lib/evolution/governed-knowledge-dependency-inventory.js +392 -0
  220. package/src/lib/evolution/governed-knowledge-dependency-ledger-executor.js +217 -82
  221. package/src/lib/evolution/governed-knowledge-quarantine-release.js +1013 -0
  222. package/src/lib/evolution/governed-knowledge-record.js +148 -0
  223. package/src/lib/evolution/governed-knowledge-revocation-host.js +59 -0
  224. package/src/lib/evolution/governed-knowledge-revocation-record.js +135 -0
  225. package/src/lib/evolution/governed-knowledge-skill-rollback.js +510 -0
  226. package/src/lib/evolution/governed-knowledge-sync.js +181 -95
  227. package/src/lib/evolution/governed-knowledge-wiki-tombstone.js +516 -0
  228. package/src/lib/evolution/governed-skill-marketplace-badge.js +208 -0
  229. package/src/lib/evolution/governed-skill-marketplace-candidate.js +330 -0
  230. package/src/lib/evolution/governed-skill-marketplace-cli-host.js +308 -0
  231. package/src/lib/evolution/governed-skill-marketplace-ledger-adapter.js +420 -0
  232. package/src/lib/evolution/governed-skill-marketplace.js +288 -5
  233. package/src/lib/evolution/governed-wiki-pruning-journal.js +302 -0
  234. package/src/lib/evolution/governed-wiki-pruning-ledger-adapter.js +459 -0
  235. package/src/lib/evolution/governed-wiki-pruning-maintenance.js +576 -0
  236. package/src/lib/evolution/governed-wiki-pruning-plan-authority.js +169 -0
  237. package/src/lib/evolution/governed-wiki-pruning-raw-shred.js +207 -0
  238. package/src/lib/evolution/governed-wiki-pruning-retrieval.js +587 -0
  239. package/src/lib/evolution/governed-wiki-pruning-runtime.js +153 -0
  240. package/src/lib/evolution/governed-wiki-pruning-skill-rollback.js +360 -0
  241. package/src/lib/evolution/governed-wiki-pruning.js +322 -143
  242. package/src/lib/evolution/independent-skill-revocation-source.js +231 -0
  243. package/src/lib/evolution/knowledge-wiki-source-admission.js +283 -0
  244. package/src/lib/evolution/knowledge-wiki-source-provenance.js +360 -0
  245. package/src/lib/evolution/progressive-canary-external-watchdog.js +578 -0
  246. package/src/lib/evolution/progressive-canary-traffic-worker.js +628 -0
  247. package/src/lib/evolution/progressive-canary-watchdog-file-store.js +285 -0
  248. package/src/lib/evolution/progressive-canary-watchdog-node-pki.js +265 -0
  249. package/src/lib/evolution/skill-candidate-registry.js +43 -3
  250. package/src/lib/evolution/skill-promotion-controller.js +25 -0
  251. package/src/lib/evolution/skill-promotion-review-ledger-adapter.js +100 -0
  252. package/src/lib/evolution/skill-registry-transition-ledger-adapter.js +131 -2
  253. package/src/lib/evolution/skill-release-registry.js +168 -4
  254. package/src/lib/evolution/skill-retrieval-revocation-authority.js +361 -0
  255. package/src/lib/evolution/skill-retrieval-revocation-ledger-adapter.js +346 -0
  256. package/src/lib/evolution/skill-revocation-propagation.js +467 -0
  257. package/src/lib/evolution/skill-target-matrix-eval.js +162 -11
  258. package/src/lib/evolution/skill-wiki-reconciliation.js +985 -0
  259. package/src/lib/evolution/skill-writer-inventory-manifest.js +8 -6
  260. package/src/lib/evolution/statistical-progressive-canary.js +165 -3
  261. package/src/lib/evolution/structured-memory-agent-control-plane.js +120 -0
  262. package/src/lib/evolution/structured-memory-authority-ledger-adapter.js +5 -1
  263. package/src/lib/evolution/structured-memory-promotion-receipt-writer.js +126 -0
  264. package/src/lib/evolution/wiki-informed-skill-proposer.js +127 -21
  265. package/src/lib/evolution/wiki-maintainer-ledger-adapter.js +822 -101
  266. package/src/lib/evolution/wiki-revision-protocol.js +120 -0
  267. package/src/lib/evolution/wiki-skill-proposal-ledger-adapter.js +307 -0
  268. package/src/lib/evolution/wiki-target-tombstone-revision.js +109 -0
  269. package/src/lib/evolution/wikiskill-benchmark-cli-host.js +178 -0
  270. package/src/lib/evolution/wikiskill-benchmark-execution-host.js +702 -0
  271. package/src/lib/evolution/wikiskill-benchmark-ledger-adapter.js +613 -0
  272. package/src/lib/evolution/wikiskill-benchmark.js +80 -16
  273. package/src/lib/goal-assess.js +17 -10
  274. package/src/lib/interactive-planner.js +9 -1
  275. package/src/lib/iteration-budget.js +16 -2
  276. package/src/lib/micro-compact.js +4 -1
  277. package/src/lib/model-failure-policy.js +21 -0
  278. package/src/lib/process-execution-broker/index.js +1 -0
  279. package/src/lib/process-execution-broker/windows-sandbox-helper.dll +0 -0
  280. package/src/lib/process-execution-broker/windows-sandbox-helper.exe +0 -0
  281. package/src/lib/process-execution-broker/windows-sandbox.cs +33 -15
  282. package/src/lib/read-file-loop-guard.js +113 -0
  283. package/src/lib/read-file-page.js +191 -0
  284. package/src/lib/runnable-provider.js +2 -1
  285. package/src/lib/skill-retrieval-router.js +22 -1
  286. package/src/repl/agent-repl.js +133 -34
  287. package/src/runtime/agent-core.js +196 -74
  288. package/src/runtime/agent-runtime.js +43 -0
  289. package/src/runtime/coding-agent-contract-shared.cjs +7 -1
  290. package/src/runtime/fallback-model.js +143 -62
  291. package/src/runtime/headless-runner.js +54 -10
  292. package/src/runtime/headless-stream.js +50 -6
  293. package/src/runtime/runtime-factory.js +41 -2
  294. package/src/assets/web-panel/assets/ChatBubbleRenderer-Ds3pA-ET.js +0 -1
  295. package/src/assets/web-panel/assets/MarkdownRenderer-DqTx7_u1.js +0 -1
  296. package/src/assets/web-panel/assets/devWarning-CF3xafX2.js +0 -1
  297. package/src/assets/web-panel/assets/index-C907rPwd.js +0 -1
  298. package/src/assets/web-panel/assets/index-wueRSK2d.js +0 -1
@@ -14,36 +14,37 @@ import {
14
14
  GOVERNED_KNOWLEDGE_DEPENDENCY_RESULT_SCHEMA,
15
15
  digestGovernedKnowledgeDependencyResult,
16
16
  isGovernedKnowledgeDependencyAuthority,
17
+ captureGovernedKnowledgeDependencyReverifier,
17
18
  } from "./governed-knowledge-dependency-authority.js";
18
19
  import {
19
20
  isGovernedKnowledgeExecutionRecord,
20
21
  verifyGovernedKnowledgeRecord,
21
22
  } from "./governed-knowledge-sync.js";
22
23
 
23
- export const GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_SCHEMA =
24
- "chainlesschain.governed-knowledge-dependencies-prepared/v1";
24
+ import {
25
+ GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_SCHEMA,
26
+ GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_EVENT_TYPE,
27
+ GOVERNED_KNOWLEDGE_DEPENDENCY_LEDGER_CORRUPT_CODE,
28
+ digestGovernedKnowledgeDependencyOperation,
29
+ verifyGovernedKnowledgeDependencyPrepared,
30
+ } from "./governed-knowledge-revocation-record.js";
31
+ export {
32
+ GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_SCHEMA,
33
+ GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_EVENT_TYPE,
34
+ GOVERNED_KNOWLEDGE_DEPENDENCY_LEDGER_CORRUPT_CODE,
35
+ digestGovernedKnowledgeDependencyOperation,
36
+ verifyGovernedKnowledgeDependencyPrepared,
37
+ } from "./governed-knowledge-revocation-record.js";
38
+
25
39
  export const GOVERNED_KNOWLEDGE_DEPENDENCY_SETTLED_SCHEMA =
26
40
  "chainlesschain.governed-knowledge-dependencies-settled/v1";
27
- export const GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_EVENT_TYPE =
28
- "knowledge.revocation-dependencies.prepared";
29
41
  export const GOVERNED_KNOWLEDGE_DEPENDENCY_SETTLED_EVENT_TYPE =
30
42
  "knowledge.revocation-dependencies.settled";
31
- export const GOVERNED_KNOWLEDGE_DEPENDENCY_LEDGER_CORRUPT_CODE =
32
- "CC_GOVERNED_KNOWLEDGE_DEPENDENCY_LEDGER_CORRUPT";
33
-
34
43
  const EXECUTORS = new WeakSet();
44
+ const EXECUTION_REQUESTS = new WeakMap();
35
45
  const ARTIFACT_TYPE = "governed-knowledge-dependency-operation";
36
46
  const DIGEST = /^sha256:[a-f0-9]{64}$/u;
37
47
  const ID = /^[A-Za-z0-9][A-Za-z0-9._:@/-]{0,255}$/u;
38
- const PREPARED_KEYS = new Set([
39
- "deviceId",
40
- "knowledge",
41
- "operationDigest",
42
- "preparedAt",
43
- "recordDigest",
44
- "schema",
45
- "tenantId",
46
- ]);
47
48
  const SETTLED_KEYS = new Set([
48
49
  "deviceId",
49
50
  "operationDigest",
@@ -138,16 +139,34 @@ function identifier(value, label) {
138
139
  return value;
139
140
  }
140
141
 
142
+ function portableKnowledge(value, tenantId) {
143
+ const knowledge = verifyGovernedKnowledgeRecord(value, { tenantId });
144
+ const portable = clone(knowledge);
145
+ delete portable.dependencies;
146
+ return portable;
147
+ }
148
+
141
149
  function capture(owner, method, label) {
150
+ if (!owner || typeof owner !== "object" || utilTypes.isProxy(owner)) {
151
+ throw new TypeError(`${label}.${method}() is required`);
152
+ }
153
+ const implementation = owner[method];
142
154
  if (
143
- !owner ||
144
- typeof owner !== "object" ||
145
- utilTypes.isProxy(owner) ||
146
- typeof owner[method] !== "function"
155
+ typeof implementation !== "function" ||
156
+ utilTypes.isProxy(implementation)
147
157
  ) {
148
- throw new TypeError(`${label}.${method}() is required`);
158
+ throw new TypeError(`${label}.${method}() must be a non-proxy function`);
149
159
  }
150
- return (...args) => Reflect.apply(owner[method], owner, args);
160
+ return (...args) => Reflect.apply(implementation, owner, args);
161
+ }
162
+
163
+ export function isGovernedKnowledgeDependencyExecutionRequest(
164
+ value,
165
+ authority,
166
+ ) {
167
+ return (
168
+ EXECUTION_REQUESTS.has(value) && EXECUTION_REQUESTS.get(value) === authority
169
+ );
151
170
  }
152
171
 
153
172
  function descriptor(input) {
@@ -161,29 +180,6 @@ function descriptor(input) {
161
180
  });
162
181
  }
163
182
 
164
- export function digestGovernedKnowledgeDependencyOperation({
165
- tenantId,
166
- deviceId,
167
- knowledge,
168
- }) {
169
- return hash(GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_SCHEMA, {
170
- tenantId,
171
- deviceId,
172
- knowledge,
173
- });
174
- }
175
-
176
- function preparedCore(value) {
177
- return {
178
- schema: value.schema,
179
- tenantId: value.tenantId,
180
- deviceId: value.deviceId,
181
- operationDigest: value.operationDigest,
182
- knowledge: value.knowledge,
183
- preparedAt: value.preparedAt,
184
- };
185
- }
186
-
187
183
  function settledCore(value) {
188
184
  return {
189
185
  schema: value.schema,
@@ -243,31 +239,6 @@ function validateResult(
243
239
  return freeze(clone(value));
244
240
  }
245
241
 
246
- function validatePrepared(value, descriptorValue) {
247
- exact(value, PREPARED_KEYS, "dependency prepared record");
248
- const knowledge = verifyGovernedKnowledgeRecord(value.knowledge, {
249
- tenantId: descriptorValue.tenantId,
250
- });
251
- const operationDigest = digestGovernedKnowledgeDependencyOperation({
252
- tenantId: descriptorValue.tenantId,
253
- deviceId: descriptorValue.deviceId,
254
- knowledge,
255
- });
256
- if (
257
- value.schema !== GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_SCHEMA ||
258
- value.tenantId !== descriptorValue.tenantId ||
259
- value.deviceId !== descriptorValue.deviceId ||
260
- !["tombstone", "revoke"].includes(knowledge.action) ||
261
- value.operationDigest !== operationDigest ||
262
- !Number.isFinite(Date.parse(value.preparedAt)) ||
263
- value.recordDigest !==
264
- hash(GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_SCHEMA, preparedCore(value))
265
- ) {
266
- corrupt("dependency prepared record is invalid");
267
- }
268
- return freeze(clone(value));
269
- }
270
-
271
242
  function validateSettled(value, prepared, descriptorValue) {
272
243
  exact(value, SETTLED_KEYS, "dependency settled record");
273
244
  const { knowledge, operationDigest } = prepared;
@@ -305,6 +276,9 @@ export class GovernedKnowledgeDependencyLedgerExecutor {
305
276
  dependencyAuthority,
306
277
  now = Date.now,
307
278
  } = {}) {
279
+ if (new.target !== GovernedKnowledgeDependencyLedgerExecutor) {
280
+ throw new TypeError("dependency executors cannot be subclassed");
281
+ }
308
282
  this.descriptor = descriptor(descriptorInput);
309
283
  this._put = capture(artifactPorts, "putCanonical", "artifactPorts");
310
284
  this._read = capture(ledger, "read", "ledger");
@@ -331,6 +305,9 @@ export class GovernedKnowledgeDependencyLedgerExecutor {
331
305
  }
332
306
  this._resolveArtifact = ledgerArtifactResolver;
333
307
  this._apply = capture(dependencyAuthority, "apply", "dependencyAuthority");
308
+ this._reverify =
309
+ captureGovernedKnowledgeDependencyReverifier(dependencyAuthority);
310
+ this._dependencyAuthority = dependencyAuthority;
334
311
  this._now = now;
335
312
  Object.freeze(this);
336
313
  EXECUTORS.add(this);
@@ -401,7 +378,10 @@ export class GovernedKnowledgeDependencyLedgerExecutor {
401
378
  GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_EVENT_TYPE,
402
379
  );
403
380
  if (!event) return null;
404
- const record = validatePrepared(this._resolve(event), this.descriptor);
381
+ const record = verifyGovernedKnowledgeDependencyPrepared(
382
+ this._resolve(event),
383
+ this.descriptor,
384
+ );
405
385
  if (
406
386
  record.operationDigest !== operationDigest ||
407
387
  event.decision !== "prepared" ||
@@ -528,7 +508,7 @@ export class GovernedKnowledgeDependencyLedgerExecutor {
528
508
  return this._prepared(operationDigest);
529
509
  }
530
510
 
531
- async _settle(prepared, results) {
511
+ async _settle(prepared, results, verifiedHead) {
532
512
  const existing = this._settled(prepared);
533
513
  if (existing) return existing;
534
514
  const settledAt = this._timestamp();
@@ -547,6 +527,13 @@ export class GovernedKnowledgeDependencyLedgerExecutor {
547
527
  const preparedEntry = this._prepared(prepared.operationDigest);
548
528
  if (!preparedEntry) corrupt("cannot settle unprepared dependencies");
549
529
  const head = this._verifyLedger();
530
+ if (
531
+ !verifiedHead ||
532
+ ["epoch", "ledgerId", "identityDigest", "sequence", "headDigest"].some(
533
+ (key) => verifiedHead[key] !== head[key],
534
+ )
535
+ )
536
+ corrupt("dependency effects changed before settlement authorization");
550
537
  const ref = this._publishArtifact(record);
551
538
  const eventId = `${GOVERNED_KNOWLEDGE_DEPENDENCY_SETTLED_EVENT_TYPE}.${prepared.operationDigest.slice(7)}`;
552
539
  try {
@@ -585,6 +572,9 @@ export class GovernedKnowledgeDependencyLedgerExecutor {
585
572
  }
586
573
 
587
574
  async execute(knowledgeInput) {
575
+ if (!EXECUTORS.has(this)) {
576
+ throw new TypeError("dependency execution requires its branded executor");
577
+ }
588
578
  const knowledge = verifyGovernedKnowledgeRecord(knowledgeInput, {
589
579
  tenantId: this.descriptor.tenantId,
590
580
  });
@@ -599,24 +589,167 @@ export class GovernedKnowledgeDependencyLedgerExecutor {
599
589
  const prepared = this._prepared(operationDigest);
600
590
  const completed = prepared ? this._settled(prepared.record) : null;
601
591
  if (completed) return this._result(completed.record, knowledge, true);
602
- await this._prepare(knowledgeInput, knowledge, operationDigest);
592
+ const durablePrepare = await this._prepare(
593
+ knowledgeInput,
594
+ knowledge,
595
+ operationDigest,
596
+ );
597
+ if (
598
+ !durablePrepare ||
599
+ durablePrepare.record.operationDigest !== operationDigest ||
600
+ canonical(durablePrepare.record.knowledge) !== canonical(knowledge)
601
+ ) {
602
+ corrupt("dependency prepare was not durably read back");
603
+ }
603
604
  const results = [];
605
+ const requests = [];
604
606
  for (const dependency of knowledge.dependencies) {
605
- results.push(
606
- await this._apply({
607
- tenantId: this.descriptor.tenantId,
608
- deviceId: this.descriptor.deviceId,
607
+ const request = freeze({
608
+ tenantId: this.descriptor.tenantId,
609
+ deviceId: this.descriptor.deviceId,
610
+ operationDigest,
611
+ knowledge,
612
+ dependency,
613
+ });
614
+ EXECUTION_REQUESTS.set(request, this._dependencyAuthority);
615
+ requests.push(request);
616
+ results.push(await this._apply(request));
617
+ }
618
+ // All effects must still hold together at one authenticated head. Earlier
619
+ // per-effect checks may predate later dependencies or a concurrent writer.
620
+ // This path only rereads/verifies; it never repeats provider side effects.
621
+ const verifiedHead = this._verifyLedger();
622
+ const verifiedResults = [];
623
+ for (const [index, request] of requests.entries())
624
+ verifiedResults.push(await this._reverify(request, results[index]));
625
+ const settled = await this._settle(
626
+ { operationDigest, knowledge },
627
+ verifiedResults,
628
+ verifiedHead,
629
+ );
630
+ return this._result(settled.record, knowledge, prepared !== null);
631
+ }
632
+
633
+ async prepare(knowledgeInput) {
634
+ if (!EXECUTORS.has(this)) {
635
+ throw new TypeError(
636
+ "dependency preparation requires its branded executor",
637
+ );
638
+ }
639
+ const knowledge = verifyGovernedKnowledgeRecord(knowledgeInput, {
640
+ tenantId: this.descriptor.tenantId,
641
+ });
642
+ if (
643
+ !["tombstone", "revoke"].includes(knowledge.action) ||
644
+ !isGovernedKnowledgeExecutionRecord(knowledgeInput)
645
+ ) {
646
+ throw new TypeError(
647
+ "dependency preparation requires a governed revocation record",
648
+ );
649
+ }
650
+ const operationDigest = digestGovernedKnowledgeDependencyOperation({
651
+ tenantId: this.descriptor.tenantId,
652
+ deviceId: this.descriptor.deviceId,
653
+ knowledge,
654
+ });
655
+ const prepared = await this._prepare(
656
+ knowledgeInput,
657
+ knowledge,
658
+ operationDigest,
659
+ );
660
+ if (
661
+ !prepared ||
662
+ canonical(prepared.record.knowledge) !== canonical(knowledge)
663
+ ) {
664
+ corrupt("dependency prepare was not durably read back");
665
+ }
666
+ return freeze({
667
+ authenticated: true,
668
+ durable: true,
669
+ operationDigest,
670
+ knowledge: clone(prepared.record.knowledge),
671
+ });
672
+ }
673
+
674
+ readPrepared({ operationDigest } = {}) {
675
+ if (!EXECUTORS.has(this) || !DIGEST.test(operationDigest ?? "")) {
676
+ throw new TypeError("prepared dependency operation identity is invalid");
677
+ }
678
+ const prepared = this._prepared(operationDigest);
679
+ return prepared === null
680
+ ? null
681
+ : freeze({
682
+ authenticated: true,
683
+ durable: true,
609
684
  operationDigest,
610
- knowledge,
611
- dependency,
612
- }),
685
+ preparedRecordDigest: prepared.record.recordDigest,
686
+ knowledge: clone(prepared.record.knowledge),
687
+ });
688
+ }
689
+
690
+ readPreparedForKnowledge(knowledgeInput) {
691
+ if (!EXECUTORS.has(this)) {
692
+ throw new TypeError(
693
+ "prepared dependency lookup requires its branded executor",
613
694
  );
614
695
  }
615
- const settled = await this._settle({ operationDigest, knowledge }, results);
616
- return this._result(settled.record, knowledge, prepared !== null);
696
+ const target = portableKnowledge(knowledgeInput, this.descriptor.tenantId);
697
+ const matches = [];
698
+ for (const event of this._events(
699
+ GOVERNED_KNOWLEDGE_DEPENDENCY_PREPARED_EVENT_TYPE,
700
+ )) {
701
+ const record = verifyGovernedKnowledgeDependencyPrepared(
702
+ this._resolve(event),
703
+ this.descriptor,
704
+ );
705
+ if (
706
+ canonical(
707
+ portableKnowledge(record.knowledge, this.descriptor.tenantId),
708
+ ) !== canonical(target)
709
+ ) {
710
+ continue;
711
+ }
712
+ const prepared = this._prepared(record.operationDigest);
713
+ if (!prepared || prepared.event.eventDigest !== event.eventDigest) {
714
+ corrupt("prepared dependency lookup event binding differs");
715
+ }
716
+ matches.push(prepared.record);
717
+ }
718
+ if (matches.length > 1) {
719
+ corrupt("prepared dependency lookup is ambiguous");
720
+ }
721
+ return matches.length === 0
722
+ ? null
723
+ : freeze({
724
+ authenticated: true,
725
+ durable: true,
726
+ operationDigest: matches[0].operationDigest,
727
+ preparedRecordDigest: matches[0].recordDigest,
728
+ knowledge: clone(matches[0].knowledge),
729
+ });
730
+ }
731
+
732
+ readSettlement({ operationDigest } = {}) {
733
+ if (!EXECUTORS.has(this) || !DIGEST.test(operationDigest ?? "")) {
734
+ throw new TypeError("dependency settlement identity is invalid");
735
+ }
736
+ const prepared = this._prepared(operationDigest);
737
+ if (!prepared) return null;
738
+ const settled = this._settled(prepared.record);
739
+ return settled === null
740
+ ? null
741
+ : freeze({
742
+ authenticated: true,
743
+ durable: true,
744
+ operationDigest,
745
+ record: clone(settled.record),
746
+ });
617
747
  }
618
748
 
619
749
  async resume({ operationDigest } = {}) {
750
+ if (!EXECUTORS.has(this)) {
751
+ throw new TypeError("dependency recovery requires its branded executor");
752
+ }
620
753
  if (!DIGEST.test(operationDigest ?? "")) {
621
754
  throw new TypeError("operationDigest is invalid");
622
755
  }
@@ -641,6 +774,8 @@ export class GovernedKnowledgeDependencyLedgerExecutor {
641
774
  }
642
775
  }
643
776
 
777
+ Object.freeze(GovernedKnowledgeDependencyLedgerExecutor.prototype);
778
+
644
779
  export function isGovernedKnowledgeDependencyExecutor(value) {
645
780
  return EXECUTORS.has(value);
646
781
  }