chainlesschain 0.145.0 → 0.156.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 (184) hide show
  1. package/README.md +52 -3
  2. package/package.json +1 -1
  3. package/src/commands/a2a.js +201 -0
  4. package/src/commands/activitypub.js +207 -0
  5. package/src/commands/agent-network.js +217 -0
  6. package/src/commands/agent.js +1250 -0
  7. package/src/commands/automation.js +201 -0
  8. package/src/commands/bi.js +203 -0
  9. package/src/commands/browse.js +213 -0
  10. package/src/commands/chat.js +605 -0
  11. package/src/commands/cli-anything.js +426 -0
  12. package/src/commands/codegen.js +207 -0
  13. package/src/commands/collab.js +211 -0
  14. package/src/commands/compliance.js +822 -0
  15. package/src/commands/config.js +213 -0
  16. package/src/commands/cowork.js +1666 -0
  17. package/src/commands/crosschain.js +203 -0
  18. package/src/commands/dao.js +203 -0
  19. package/src/commands/dbevo.js +227 -0
  20. package/src/commands/dev.js +207 -0
  21. package/src/commands/did-v2.js +217 -0
  22. package/src/commands/did.js +221 -0
  23. package/src/commands/dlp.js +213 -0
  24. package/src/commands/economy.js +199 -0
  25. package/src/commands/encrypt.js +201 -0
  26. package/src/commands/evolution.js +199 -0
  27. package/src/commands/evomap.js +830 -0
  28. package/src/commands/export.js +213 -0
  29. package/src/commands/federation.js +209 -0
  30. package/src/commands/fusion.js +205 -0
  31. package/src/commands/governance.js +209 -0
  32. package/src/commands/hmemory.js +203 -0
  33. package/src/commands/hook.js +209 -0
  34. package/src/commands/import.js +209 -0
  35. package/src/commands/inference.js +207 -0
  36. package/src/commands/infra.js +203 -0
  37. package/src/commands/instinct.js +209 -0
  38. package/src/commands/ipfs.js +207 -0
  39. package/src/commands/kg.js +195 -0
  40. package/src/commands/llm.js +426 -0
  41. package/src/commands/matrix.js +207 -0
  42. package/src/commands/mcp.js +217 -0
  43. package/src/commands/memory.js +412 -0
  44. package/src/commands/multimodal.js +203 -0
  45. package/src/commands/nlprog.js +225 -0
  46. package/src/commands/nostr.js +209 -0
  47. package/src/commands/note.js +205 -0
  48. package/src/commands/ops.js +219 -0
  49. package/src/commands/orchestrate.js +406 -0
  50. package/src/commands/org.js +209 -0
  51. package/src/commands/p2p.js +209 -0
  52. package/src/commands/perception.js +209 -0
  53. package/src/commands/permmem.js +203 -0
  54. package/src/commands/pipeline.js +199 -0
  55. package/src/commands/planmode.js +426 -0
  56. package/src/commands/plugin-ecosystem.js +209 -0
  57. package/src/commands/plugin.js +209 -0
  58. package/src/commands/pqc.js +213 -0
  59. package/src/commands/quantization.js +207 -0
  60. package/src/commands/rcache.js +205 -0
  61. package/src/commands/recommend.js +233 -0
  62. package/src/commands/runtime.js +205 -0
  63. package/src/commands/scim.js +209 -0
  64. package/src/commands/services.js +207 -0
  65. package/src/commands/session.js +209 -0
  66. package/src/commands/setup.js +205 -0
  67. package/src/commands/skill.js +414 -0
  68. package/src/commands/social.js +201 -0
  69. package/src/commands/sso.js +209 -0
  70. package/src/commands/start.js +209 -0
  71. package/src/commands/stream.js +213 -0
  72. package/src/commands/sync.js +209 -0
  73. package/src/commands/tech.js +209 -0
  74. package/src/commands/tenant.js +217 -0
  75. package/src/commands/tokens.js +209 -0
  76. package/src/commands/trust.js +217 -0
  77. package/src/commands/ui.js +225 -0
  78. package/src/commands/wallet.js +209 -0
  79. package/src/commands/workflow.js +412 -0
  80. package/src/index.js +252 -0
  81. package/src/lib/a2a-protocol.js +332 -0
  82. package/src/lib/activitypub-bridge.js +334 -0
  83. package/src/lib/agent-coordinator.js +334 -0
  84. package/src/lib/agent-economy.js +334 -0
  85. package/src/lib/agent-network.js +341 -0
  86. package/src/lib/agent-router.js +333 -0
  87. package/src/lib/aiops.js +346 -0
  88. package/src/lib/automation-engine.js +335 -0
  89. package/src/lib/autonomous-agent.js +332 -0
  90. package/src/lib/autonomous-developer.js +332 -0
  91. package/src/lib/bi-engine.js +333 -0
  92. package/src/lib/browser-automation.js +334 -0
  93. package/src/lib/chat-core.js +335 -0
  94. package/src/lib/cli-anything-bridge.js +341 -0
  95. package/src/lib/cli-context-engineering.js +351 -0
  96. package/src/lib/code-agent.js +339 -0
  97. package/src/lib/collaboration-governance.js +334 -0
  98. package/src/lib/community-governance.js +346 -0
  99. package/src/lib/compliance-manager.js +334 -0
  100. package/src/lib/content-recommendation.js +351 -0
  101. package/src/lib/cowork-adapter.js +336 -0
  102. package/src/lib/cowork-evomap-adapter.js +341 -0
  103. package/src/lib/cowork-mcp-tools.js +341 -0
  104. package/src/lib/cowork-observe-html.js +341 -0
  105. package/src/lib/cowork-observe.js +341 -0
  106. package/src/lib/cowork-share.js +338 -0
  107. package/src/lib/cowork-task-templates.js +342 -1
  108. package/src/lib/cowork-template-marketplace.js +340 -0
  109. package/src/lib/cross-chain.js +339 -0
  110. package/src/lib/crypto-manager.js +334 -0
  111. package/src/lib/dao-governance.js +339 -0
  112. package/src/lib/dbevo.js +351 -0
  113. package/src/lib/decentral-infra.js +330 -0
  114. package/src/lib/did-manager.js +341 -0
  115. package/src/lib/did-v2-manager.js +341 -0
  116. package/src/lib/dlp-engine.js +339 -0
  117. package/src/lib/downloader.js +334 -0
  118. package/src/lib/evolution-system.js +334 -0
  119. package/src/lib/evomap-client.js +342 -0
  120. package/src/lib/evomap-federation.js +338 -0
  121. package/src/lib/evomap-governance.js +334 -0
  122. package/src/lib/evomap-manager.js +330 -0
  123. package/src/lib/execution-backend.js +330 -0
  124. package/src/lib/federation-hardening.js +340 -0
  125. package/src/lib/hashline.js +338 -0
  126. package/src/lib/hierarchical-memory.js +334 -0
  127. package/src/lib/hook-manager.js +341 -0
  128. package/src/lib/inference-network.js +341 -0
  129. package/src/lib/instinct-manager.js +346 -0
  130. package/src/lib/interaction-adapter.js +330 -0
  131. package/src/lib/interactive-planner.js +354 -0
  132. package/src/lib/ipfs-storage.js +334 -0
  133. package/src/lib/knowledge-exporter.js +341 -0
  134. package/src/lib/knowledge-graph.js +331 -0
  135. package/src/lib/knowledge-importer.js +341 -0
  136. package/src/lib/llm-providers.js +346 -0
  137. package/src/lib/matrix-bridge.js +339 -0
  138. package/src/lib/mcp-registry.js +346 -0
  139. package/src/lib/memory-manager.js +336 -0
  140. package/src/lib/multimodal.js +330 -0
  141. package/src/lib/nl-programming.js +341 -0
  142. package/src/lib/nostr-bridge.js +336 -0
  143. package/src/lib/note-versioning.js +339 -0
  144. package/src/lib/org-manager.js +336 -0
  145. package/src/lib/p2p-manager.js +341 -0
  146. package/src/lib/perception.js +346 -0
  147. package/src/lib/permanent-memory.js +327 -0
  148. package/src/lib/pipeline-orchestrator.js +332 -0
  149. package/src/lib/plan-mode.js +336 -0
  150. package/src/lib/plugin-autodiscovery.js +334 -0
  151. package/src/lib/plugin-ecosystem.js +346 -0
  152. package/src/lib/pqc-manager.js +346 -0
  153. package/src/lib/process-manager.js +336 -0
  154. package/src/lib/protocol-fusion.js +338 -0
  155. package/src/lib/provider-options.js +346 -0
  156. package/src/lib/provider-stream.js +348 -0
  157. package/src/lib/quantization.js +337 -0
  158. package/src/lib/response-cache.js +333 -0
  159. package/src/lib/scim-manager.js +346 -0
  160. package/src/lib/service-manager.js +337 -0
  161. package/src/lib/session-core-singletons.js +341 -0
  162. package/src/lib/session-manager.js +334 -0
  163. package/src/lib/skill-loader.js +334 -0
  164. package/src/lib/skill-mcp.js +336 -0
  165. package/src/lib/social-manager.js +330 -0
  166. package/src/lib/sso-manager.js +340 -0
  167. package/src/lib/stix-parser.js +346 -0
  168. package/src/lib/sub-agent-context.js +343 -0
  169. package/src/lib/sub-agent-profiles.js +335 -0
  170. package/src/lib/sub-agent-registry.js +336 -0
  171. package/src/lib/sync-manager.js +336 -0
  172. package/src/lib/tech-learning-engine.js +341 -0
  173. package/src/lib/tenant-saas.js +341 -0
  174. package/src/lib/threat-intel.js +330 -0
  175. package/src/lib/todo-manager.js +336 -0
  176. package/src/lib/token-tracker.js +336 -0
  177. package/src/lib/trust-security.js +343 -0
  178. package/src/lib/ueba.js +340 -0
  179. package/src/lib/universal-runtime.js +330 -0
  180. package/src/lib/wallet-manager.js +336 -0
  181. package/src/lib/web-ui-server.js +348 -0
  182. package/src/lib/workflow-engine.js +330 -0
  183. package/src/lib/workflow-expr.js +346 -0
  184. package/src/lib/ws-chat-handler.js +337 -0
package/src/index.js CHANGED
@@ -229,6 +229,132 @@ import { registerPcgovV2Commands } from "./commands/privacy.js";
229
229
  import { registerIncgovV2Commands } from "./commands/incentive.js";
230
230
  import { registerHardgovV2Commands } from "./commands/hardening.js";
231
231
 
232
+ // Iter18 V2 governance overlays
233
+ import { registerAiopsgovV2Commands } from "./commands/ops.js";
234
+ import { registerMmgovV2Commands } from "./commands/multimodal.js";
235
+ import { registerInstgovV2Commands } from "./commands/instinct.js";
236
+ import { registerTnsgovV2Commands } from "./commands/tenant.js";
237
+ import { registerQntgovV2Commands } from "./commands/quantization.js";
238
+ import { registerTrustgovV2Commands } from "./commands/trust.js";
239
+ import { registerNlpgovV2Commands } from "./commands/nlprog.js";
240
+ import { registerPercgovV2Commands } from "./commands/perception.js";
241
+
242
+ // Iter19 V2 governance overlays
243
+ import { registerCdagovV2Commands } from "./commands/codegen.js";
244
+ import { registerCogovV2Commands } from "./commands/collab.js";
245
+ import { registerCommgovV2Commands } from "./commands/governance.js";
246
+ import { registerDidgovV2Commands } from "./commands/did.js";
247
+ import { registerSsogovV2Commands } from "./commands/sso.js";
248
+ import { registerOrggovV2Commands } from "./commands/org.js";
249
+ import { registerScimgovV2Commands } from "./commands/scim.js";
250
+ import { registerSyncgovV2Commands } from "./commands/sync.js";
251
+
252
+ // Iter20 V2 governance overlays
253
+ import { registerAnetgovV2Commands } from "./commands/agent-network.js";
254
+ import { registerBagovV2Commands } from "./commands/browse.js";
255
+ import { registerDlpgovV2Commands } from "./commands/dlp.js";
256
+ import { registerEvgovV2Commands } from "./commands/evomap.js";
257
+ import { registerFedgovV2Commands } from "./commands/federation.js";
258
+ import { registerIpfsgovV2Commands } from "./commands/ipfs.js";
259
+ import { registerP2pgovV2Commands } from "./commands/p2p.js";
260
+ import { registerWalgovV2Commands } from "./commands/wallet.js";
261
+
262
+ // Iter21 V2 governance overlays
263
+ import { registerApgovV2Commands } from "./commands/activitypub.js";
264
+ import { registerMatgovV2Commands } from "./commands/matrix.js";
265
+ import { registerNosgovV2Commands } from "./commands/nostr.js";
266
+ import { registerBigovV2Commands } from "./commands/bi.js";
267
+ import { registerMemgovV2Commands } from "./commands/memory.js";
268
+ import { registerSesgovV2Commands } from "./commands/session.js";
269
+ import { registerHookgovV2Commands } from "./commands/hook.js";
270
+ import { registerWfgovV2Commands } from "./commands/workflow.js";
271
+
272
+ // Iter22 V2 governance overlays
273
+ import { registerAugovV2Commands } from "./commands/automation.js";
274
+ import { registerShgovV2Commands } from "./commands/cowork.js";
275
+ import { registerDv2govV2Commands } from "./commands/did-v2.js";
276
+ import { registerKexpgovV2Commands } from "./commands/export.js";
277
+ import { registerKimpgovV2Commands } from "./commands/import.js";
278
+ import { registerLlmgovV2Commands } from "./commands/llm.js";
279
+ import { registerPqcgovV2Commands } from "./commands/pqc.js";
280
+ import { registerSmgovV2Commands } from "./commands/social.js";
281
+
282
+ // Iter23 V2 governance overlays
283
+ import { registerRcgovV2Commands } from "./commands/rcache.js";
284
+ import { registerTechgovV2Commands } from "./commands/tech.js";
285
+ import { registerRtgovV2Commands } from "./commands/runtime.js";
286
+ import { registerNtgovV2Commands } from "./commands/note.js";
287
+ import { registerPmgovV2Commands } from "./commands/permmem.js";
288
+ import { registerPfgovV2Commands } from "./commands/fusion.js";
289
+ import { registerDbevogovV2Commands } from "./commands/dbevo.js";
290
+ import { registerDigovV2Commands } from "./commands/infra.js";
291
+
292
+ // Iter24 V2 governance overlays
293
+ import { registerRcmdgovV2Commands } from "./commands/recommend.js";
294
+ import { registerMcpgovV2Commands } from "./commands/mcp.js";
295
+ import { registerEcogovV2Commands } from "./commands/plugin-ecosystem.js";
296
+ import { registerSklgovV2Commands } from "./commands/skill.js";
297
+ import { registerToktgovV2Commands } from "./commands/tokens.js";
298
+ import { registerDevgovV2Commands } from "./commands/dev.js";
299
+ import { registerTigovV2Commands } from "./commands/compliance.js";
300
+ import { registerUebgovV2Commands } from "./commands/compliance.js";
301
+
302
+ // Iter25 V2 governance overlays
303
+ import { registerCttgovV2Commands } from "./commands/cowork.js";
304
+ import { registerCtmgovV2Commands } from "./commands/cowork.js";
305
+ import { registerClibgovV2Commands } from "./commands/cli-anything.js";
306
+ import { registerArgovV2Commands } from "./commands/orchestrate.js";
307
+ import { registerSaregovV2Commands } from "./commands/agent.js";
308
+ import { registerTodogovV2Commands } from "./commands/agent.js";
309
+ import { registerEbgovV2Commands } from "./commands/agent.js";
310
+ import { registerEvfedgovV2Commands } from "./commands/evomap.js";
311
+
312
+ // Iter26 V2 governance overlays
313
+ import { registerPlannergovV2Commands } from "./commands/planmode.js";
314
+ import { registerCtxenggovV2Commands } from "./commands/cli-anything.js";
315
+ import { registerSactxgovV2Commands } from "./commands/agent.js";
316
+ import { registerIagovV2Commands } from "./commands/chat.js";
317
+ import { registerWfexgovV2Commands } from "./commands/workflow.js";
318
+ import { registerPadgovV2Commands } from "./commands/plugin.js";
319
+ import { registerHlgovV2Commands } from "./commands/memory.js";
320
+ import { registerWebuigovV2Commands } from "./commands/ui.js";
321
+
322
+ // Iter27 V2 governance overlays
323
+ import { registerDlgovV2Commands } from "./commands/setup.js";
324
+ import { registerSmcpgovV2Commands } from "./commands/skill.js";
325
+ import { registerCmcpgovV2Commands } from "./commands/cowork.js";
326
+ import { registerStixgovV2Commands } from "./commands/compliance.js";
327
+ import { registerSapgovV2Commands } from "./commands/agent.js";
328
+ import { registerCobsgovV2Commands } from "./commands/cowork.js";
329
+ import { registerPmgrgovV2Commands } from "./commands/start.js";
330
+ import { registerWscgovV2Commands } from "./commands/chat.js";
331
+ import { registerEvcligovV2Commands } from "./commands/evomap.js";
332
+ import { registerPoptgovV2Commands } from "./commands/llm.js";
333
+ import { registerScsgovV2Commands } from "./commands/config.js";
334
+ import { registerSmgrgovV2Commands } from "./commands/services.js";
335
+ import { registerCeadgovV2Commands } from "./commands/cowork.js";
336
+ import { registerPstrmgovV2Commands } from "./commands/stream.js";
337
+ import { registerCohtgovV2Commands } from "./commands/cowork.js";
338
+ import { registerCadpgovV2Commands } from "./commands/cowork.js";
339
+
340
+ // Iter28 V2 governance overlays
341
+ import { registerA2apV2Commands } from "./commands/a2a.js";
342
+ import { registerAcrdV2Commands } from "./commands/orchestrate.js";
343
+ import { registerAecoV2Commands } from "./commands/economy.js";
344
+ import { registerAutagV2Commands } from "./commands/agent.js";
345
+ import { registerCcoreV2Commands } from "./commands/chat.js";
346
+ import { registerCmpmV2Commands } from "./commands/compliance.js";
347
+ import { registerCrchV2Commands } from "./commands/crosschain.js";
348
+ import { registerCryV2Commands } from "./commands/encrypt.js";
349
+ import { registerDaomV2Commands } from "./commands/dao.js";
350
+ import { registerEsysV2Commands } from "./commands/evolution.js";
351
+ import { registerEmgrV2Commands } from "./commands/evomap.js";
352
+ import { registerHmemV2Commands } from "./commands/hmemory.js";
353
+ import { registerInfnetV2Commands } from "./commands/inference.js";
354
+ import { registerKgV2Commands } from "./commands/kg.js";
355
+ import { registerPmodeV2Commands } from "./commands/planmode.js";
356
+ import { registerPipoV2Commands } from "./commands/pipeline.js";
357
+
232
358
  export function createProgram() {
233
359
  const program = new Command();
234
360
 
@@ -468,5 +594,131 @@ export function createProgram() {
468
594
  registerIncgovV2Commands(program);
469
595
  registerHardgovV2Commands(program);
470
596
 
597
+ // Iter18 V2 governance overlays
598
+ registerAiopsgovV2Commands(program);
599
+ registerMmgovV2Commands(program);
600
+ registerInstgovV2Commands(program);
601
+ registerTnsgovV2Commands(program);
602
+ registerQntgovV2Commands(program);
603
+ registerTrustgovV2Commands(program);
604
+ registerNlpgovV2Commands(program);
605
+ registerPercgovV2Commands(program);
606
+
607
+ // Iter19 V2 governance overlays
608
+ registerCdagovV2Commands(program);
609
+ registerCogovV2Commands(program);
610
+ registerCommgovV2Commands(program);
611
+ registerDidgovV2Commands(program);
612
+ registerSsogovV2Commands(program);
613
+ registerOrggovV2Commands(program);
614
+ registerScimgovV2Commands(program);
615
+ registerSyncgovV2Commands(program);
616
+
617
+ // Iter20 V2 governance overlays
618
+ registerAnetgovV2Commands(program);
619
+ registerBagovV2Commands(program);
620
+ registerDlpgovV2Commands(program);
621
+ registerEvgovV2Commands(program);
622
+ registerFedgovV2Commands(program);
623
+ registerIpfsgovV2Commands(program);
624
+ registerP2pgovV2Commands(program);
625
+ registerWalgovV2Commands(program);
626
+
627
+ // Iter21 V2 governance overlays
628
+ registerApgovV2Commands(program);
629
+ registerMatgovV2Commands(program);
630
+ registerNosgovV2Commands(program);
631
+ registerBigovV2Commands(program);
632
+ registerMemgovV2Commands(program);
633
+ registerSesgovV2Commands(program);
634
+ registerHookgovV2Commands(program);
635
+ registerWfgovV2Commands(program);
636
+
637
+ // Iter22 V2 governance overlays
638
+ registerAugovV2Commands(program);
639
+ registerShgovV2Commands(program);
640
+ registerDv2govV2Commands(program);
641
+ registerKexpgovV2Commands(program);
642
+ registerKimpgovV2Commands(program);
643
+ registerLlmgovV2Commands(program);
644
+ registerPqcgovV2Commands(program);
645
+ registerSmgovV2Commands(program);
646
+
647
+ // Iter23 V2 governance overlays
648
+ registerRcgovV2Commands(program);
649
+ registerTechgovV2Commands(program);
650
+ registerRtgovV2Commands(program);
651
+ registerNtgovV2Commands(program);
652
+ registerPmgovV2Commands(program);
653
+ registerPfgovV2Commands(program);
654
+ registerDbevogovV2Commands(program);
655
+ registerDigovV2Commands(program);
656
+
657
+ // Iter24 V2 governance overlays
658
+ registerRcmdgovV2Commands(program);
659
+ registerMcpgovV2Commands(program);
660
+ registerEcogovV2Commands(program);
661
+ registerSklgovV2Commands(program);
662
+ registerToktgovV2Commands(program);
663
+ registerDevgovV2Commands(program);
664
+ registerTigovV2Commands(program);
665
+ registerUebgovV2Commands(program);
666
+
667
+ // Iter25 V2 governance overlays
668
+ registerCttgovV2Commands(program);
669
+ registerCtmgovV2Commands(program);
670
+ registerClibgovV2Commands(program);
671
+ registerArgovV2Commands(program);
672
+ registerSaregovV2Commands(program);
673
+ registerTodogovV2Commands(program);
674
+ registerEbgovV2Commands(program);
675
+ registerEvfedgovV2Commands(program);
676
+
677
+ // Iter26 V2 governance overlays
678
+ registerPlannergovV2Commands(program);
679
+ registerCtxenggovV2Commands(program);
680
+ registerSactxgovV2Commands(program);
681
+ registerIagovV2Commands(program);
682
+ registerWfexgovV2Commands(program);
683
+ registerPadgovV2Commands(program);
684
+ registerHlgovV2Commands(program);
685
+ registerWebuigovV2Commands(program);
686
+
687
+ // Iter27 V2 governance overlays
688
+ registerDlgovV2Commands(program);
689
+ registerSmcpgovV2Commands(program);
690
+ registerCmcpgovV2Commands(program);
691
+ registerStixgovV2Commands(program);
692
+ registerSapgovV2Commands(program);
693
+ registerCobsgovV2Commands(program);
694
+ registerPmgrgovV2Commands(program);
695
+ registerWscgovV2Commands(program);
696
+ registerEvcligovV2Commands(program);
697
+ registerPoptgovV2Commands(program);
698
+ registerScsgovV2Commands(program);
699
+ registerSmgrgovV2Commands(program);
700
+ registerCeadgovV2Commands(program);
701
+ registerPstrmgovV2Commands(program);
702
+ registerCohtgovV2Commands(program);
703
+ registerCadpgovV2Commands(program);
704
+
705
+ // Iter28 V2 governance overlays
706
+ registerA2apV2Commands(program);
707
+ registerAcrdV2Commands(program);
708
+ registerAecoV2Commands(program);
709
+ registerAutagV2Commands(program);
710
+ registerCcoreV2Commands(program);
711
+ registerCmpmV2Commands(program);
712
+ registerCrchV2Commands(program);
713
+ registerCryV2Commands(program);
714
+ registerDaomV2Commands(program);
715
+ registerEsysV2Commands(program);
716
+ registerEmgrV2Commands(program);
717
+ registerHmemV2Commands(program);
718
+ registerInfnetV2Commands(program);
719
+ registerKgV2Commands(program);
720
+ registerPmodeV2Commands(program);
721
+ registerPipoV2Commands(program);
722
+
471
723
  return program;
472
724
  }
@@ -1193,3 +1193,335 @@ export function getA2aProtocolGovStatsV2() {
1193
1193
  messagesByStatus,
1194
1194
  };
1195
1195
  }
1196
+
1197
+ // === Iter28 V2 governance overlay: A2apgov ===
1198
+ export const A2APGOV_PROFILE_MATURITY_V2 = Object.freeze({
1199
+ PENDING: "pending",
1200
+ ACTIVE: "active",
1201
+ STALE: "stale",
1202
+ ARCHIVED: "archived",
1203
+ });
1204
+ export const A2APGOV_MSG_LIFECYCLE_V2 = Object.freeze({
1205
+ QUEUED: "queued",
1206
+ DISPATCHING: "dispatching",
1207
+ DELIVERED: "delivered",
1208
+ FAILED: "failed",
1209
+ CANCELLED: "cancelled",
1210
+ });
1211
+ const _a2apgovPTrans = new Map([
1212
+ [
1213
+ A2APGOV_PROFILE_MATURITY_V2.PENDING,
1214
+ new Set([
1215
+ A2APGOV_PROFILE_MATURITY_V2.ACTIVE,
1216
+ A2APGOV_PROFILE_MATURITY_V2.ARCHIVED,
1217
+ ]),
1218
+ ],
1219
+ [
1220
+ A2APGOV_PROFILE_MATURITY_V2.ACTIVE,
1221
+ new Set([
1222
+ A2APGOV_PROFILE_MATURITY_V2.STALE,
1223
+ A2APGOV_PROFILE_MATURITY_V2.ARCHIVED,
1224
+ ]),
1225
+ ],
1226
+ [
1227
+ A2APGOV_PROFILE_MATURITY_V2.STALE,
1228
+ new Set([
1229
+ A2APGOV_PROFILE_MATURITY_V2.ACTIVE,
1230
+ A2APGOV_PROFILE_MATURITY_V2.ARCHIVED,
1231
+ ]),
1232
+ ],
1233
+ [A2APGOV_PROFILE_MATURITY_V2.ARCHIVED, new Set()],
1234
+ ]);
1235
+ const _a2apgovPTerminal = new Set([A2APGOV_PROFILE_MATURITY_V2.ARCHIVED]);
1236
+ const _a2apgovJTrans = new Map([
1237
+ [
1238
+ A2APGOV_MSG_LIFECYCLE_V2.QUEUED,
1239
+ new Set([
1240
+ A2APGOV_MSG_LIFECYCLE_V2.DISPATCHING,
1241
+ A2APGOV_MSG_LIFECYCLE_V2.CANCELLED,
1242
+ ]),
1243
+ ],
1244
+ [
1245
+ A2APGOV_MSG_LIFECYCLE_V2.DISPATCHING,
1246
+ new Set([
1247
+ A2APGOV_MSG_LIFECYCLE_V2.DELIVERED,
1248
+ A2APGOV_MSG_LIFECYCLE_V2.FAILED,
1249
+ A2APGOV_MSG_LIFECYCLE_V2.CANCELLED,
1250
+ ]),
1251
+ ],
1252
+ [A2APGOV_MSG_LIFECYCLE_V2.DELIVERED, new Set()],
1253
+ [A2APGOV_MSG_LIFECYCLE_V2.FAILED, new Set()],
1254
+ [A2APGOV_MSG_LIFECYCLE_V2.CANCELLED, new Set()],
1255
+ ]);
1256
+ const _a2apgovPsV2 = new Map();
1257
+ const _a2apgovJsV2 = new Map();
1258
+ let _a2apgovMaxActive = 8,
1259
+ _a2apgovMaxPending = 20,
1260
+ _a2apgovIdleMs = 2592000000,
1261
+ _a2apgovStuckMs = 60 * 1000;
1262
+ function _a2apgovPos(n, label) {
1263
+ const v = Math.floor(Number(n));
1264
+ if (!Number.isFinite(v) || v <= 0)
1265
+ throw new Error(`${label} must be positive integer`);
1266
+ return v;
1267
+ }
1268
+ function _a2apgovCheckP(from, to) {
1269
+ const a = _a2apgovPTrans.get(from);
1270
+ if (!a || !a.has(to))
1271
+ throw new Error(`invalid a2apgov profile transition ${from} → ${to}`);
1272
+ }
1273
+ function _a2apgovCheckJ(from, to) {
1274
+ const a = _a2apgovJTrans.get(from);
1275
+ if (!a || !a.has(to))
1276
+ throw new Error(`invalid a2apgov msg transition ${from} → ${to}`);
1277
+ }
1278
+ function _a2apgovCountActive(owner) {
1279
+ let c = 0;
1280
+ for (const p of _a2apgovPsV2.values())
1281
+ if (p.owner === owner && p.status === A2APGOV_PROFILE_MATURITY_V2.ACTIVE)
1282
+ c++;
1283
+ return c;
1284
+ }
1285
+ function _a2apgovCountPending(profileId) {
1286
+ let c = 0;
1287
+ for (const j of _a2apgovJsV2.values())
1288
+ if (
1289
+ j.profileId === profileId &&
1290
+ (j.status === A2APGOV_MSG_LIFECYCLE_V2.QUEUED ||
1291
+ j.status === A2APGOV_MSG_LIFECYCLE_V2.DISPATCHING)
1292
+ )
1293
+ c++;
1294
+ return c;
1295
+ }
1296
+ export function setMaxActiveA2apProfilesPerOwnerV2(n) {
1297
+ _a2apgovMaxActive = _a2apgovPos(n, "maxActiveA2apProfilesPerOwner");
1298
+ }
1299
+ export function getMaxActiveA2apProfilesPerOwnerV2() {
1300
+ return _a2apgovMaxActive;
1301
+ }
1302
+ export function setMaxPendingA2apMsgsPerProfileV2(n) {
1303
+ _a2apgovMaxPending = _a2apgovPos(n, "maxPendingA2apMsgsPerProfile");
1304
+ }
1305
+ export function getMaxPendingA2apMsgsPerProfileV2() {
1306
+ return _a2apgovMaxPending;
1307
+ }
1308
+ export function setA2apProfileIdleMsV2(n) {
1309
+ _a2apgovIdleMs = _a2apgovPos(n, "a2apgovProfileIdleMs");
1310
+ }
1311
+ export function getA2apProfileIdleMsV2() {
1312
+ return _a2apgovIdleMs;
1313
+ }
1314
+ export function setA2apMsgStuckMsV2(n) {
1315
+ _a2apgovStuckMs = _a2apgovPos(n, "a2apgovMsgStuckMs");
1316
+ }
1317
+ export function getA2apMsgStuckMsV2() {
1318
+ return _a2apgovStuckMs;
1319
+ }
1320
+ export function _resetStateA2apgovV2() {
1321
+ _a2apgovPsV2.clear();
1322
+ _a2apgovJsV2.clear();
1323
+ _a2apgovMaxActive = 8;
1324
+ _a2apgovMaxPending = 20;
1325
+ _a2apgovIdleMs = 2592000000;
1326
+ _a2apgovStuckMs = 60 * 1000;
1327
+ }
1328
+ export function registerA2apProfileV2({ id, owner, endpoint, metadata } = {}) {
1329
+ if (!id || !owner) throw new Error("id and owner required");
1330
+ if (_a2apgovPsV2.has(id))
1331
+ throw new Error(`a2apgov profile ${id} already exists`);
1332
+ const now = Date.now();
1333
+ const p = {
1334
+ id,
1335
+ owner,
1336
+ endpoint: endpoint || "default",
1337
+ status: A2APGOV_PROFILE_MATURITY_V2.PENDING,
1338
+ createdAt: now,
1339
+ updatedAt: now,
1340
+ lastTouchedAt: now,
1341
+ activatedAt: null,
1342
+ archivedAt: null,
1343
+ metadata: { ...(metadata || {}) },
1344
+ };
1345
+ _a2apgovPsV2.set(id, p);
1346
+ return { ...p, metadata: { ...p.metadata } };
1347
+ }
1348
+ export function activateA2apProfileV2(id) {
1349
+ const p = _a2apgovPsV2.get(id);
1350
+ if (!p) throw new Error(`a2apgov profile ${id} not found`);
1351
+ const isInitial = p.status === A2APGOV_PROFILE_MATURITY_V2.PENDING;
1352
+ _a2apgovCheckP(p.status, A2APGOV_PROFILE_MATURITY_V2.ACTIVE);
1353
+ if (isInitial && _a2apgovCountActive(p.owner) >= _a2apgovMaxActive)
1354
+ throw new Error(`max active a2apgov profiles for owner ${p.owner} reached`);
1355
+ const now = Date.now();
1356
+ p.status = A2APGOV_PROFILE_MATURITY_V2.ACTIVE;
1357
+ p.updatedAt = now;
1358
+ p.lastTouchedAt = now;
1359
+ if (!p.activatedAt) p.activatedAt = now;
1360
+ return { ...p, metadata: { ...p.metadata } };
1361
+ }
1362
+ export function staleA2apProfileV2(id) {
1363
+ const p = _a2apgovPsV2.get(id);
1364
+ if (!p) throw new Error(`a2apgov profile ${id} not found`);
1365
+ _a2apgovCheckP(p.status, A2APGOV_PROFILE_MATURITY_V2.STALE);
1366
+ p.status = A2APGOV_PROFILE_MATURITY_V2.STALE;
1367
+ p.updatedAt = Date.now();
1368
+ return { ...p, metadata: { ...p.metadata } };
1369
+ }
1370
+ export function archiveA2apProfileV2(id) {
1371
+ const p = _a2apgovPsV2.get(id);
1372
+ if (!p) throw new Error(`a2apgov profile ${id} not found`);
1373
+ _a2apgovCheckP(p.status, A2APGOV_PROFILE_MATURITY_V2.ARCHIVED);
1374
+ const now = Date.now();
1375
+ p.status = A2APGOV_PROFILE_MATURITY_V2.ARCHIVED;
1376
+ p.updatedAt = now;
1377
+ if (!p.archivedAt) p.archivedAt = now;
1378
+ return { ...p, metadata: { ...p.metadata } };
1379
+ }
1380
+ export function touchA2apProfileV2(id) {
1381
+ const p = _a2apgovPsV2.get(id);
1382
+ if (!p) throw new Error(`a2apgov profile ${id} not found`);
1383
+ if (_a2apgovPTerminal.has(p.status))
1384
+ throw new Error(`cannot touch terminal a2apgov profile ${id}`);
1385
+ const now = Date.now();
1386
+ p.lastTouchedAt = now;
1387
+ p.updatedAt = now;
1388
+ return { ...p, metadata: { ...p.metadata } };
1389
+ }
1390
+ export function getA2apProfileV2(id) {
1391
+ const p = _a2apgovPsV2.get(id);
1392
+ if (!p) return null;
1393
+ return { ...p, metadata: { ...p.metadata } };
1394
+ }
1395
+ export function listA2apProfilesV2() {
1396
+ return [..._a2apgovPsV2.values()].map((p) => ({
1397
+ ...p,
1398
+ metadata: { ...p.metadata },
1399
+ }));
1400
+ }
1401
+ export function createA2apMsgV2({ id, profileId, messageId, metadata } = {}) {
1402
+ if (!id || !profileId) throw new Error("id and profileId required");
1403
+ if (_a2apgovJsV2.has(id)) throw new Error(`a2apgov msg ${id} already exists`);
1404
+ if (!_a2apgovPsV2.has(profileId))
1405
+ throw new Error(`a2apgov profile ${profileId} not found`);
1406
+ if (_a2apgovCountPending(profileId) >= _a2apgovMaxPending)
1407
+ throw new Error(
1408
+ `max pending a2apgov msgs for profile ${profileId} reached`,
1409
+ );
1410
+ const now = Date.now();
1411
+ const j = {
1412
+ id,
1413
+ profileId,
1414
+ messageId: messageId || "",
1415
+ status: A2APGOV_MSG_LIFECYCLE_V2.QUEUED,
1416
+ createdAt: now,
1417
+ updatedAt: now,
1418
+ startedAt: null,
1419
+ settledAt: null,
1420
+ metadata: { ...(metadata || {}) },
1421
+ };
1422
+ _a2apgovJsV2.set(id, j);
1423
+ return { ...j, metadata: { ...j.metadata } };
1424
+ }
1425
+ export function dispatchingA2apMsgV2(id) {
1426
+ const j = _a2apgovJsV2.get(id);
1427
+ if (!j) throw new Error(`a2apgov msg ${id} not found`);
1428
+ _a2apgovCheckJ(j.status, A2APGOV_MSG_LIFECYCLE_V2.DISPATCHING);
1429
+ const now = Date.now();
1430
+ j.status = A2APGOV_MSG_LIFECYCLE_V2.DISPATCHING;
1431
+ j.updatedAt = now;
1432
+ if (!j.startedAt) j.startedAt = now;
1433
+ return { ...j, metadata: { ...j.metadata } };
1434
+ }
1435
+ export function completeMsgA2apV2(id) {
1436
+ const j = _a2apgovJsV2.get(id);
1437
+ if (!j) throw new Error(`a2apgov msg ${id} not found`);
1438
+ _a2apgovCheckJ(j.status, A2APGOV_MSG_LIFECYCLE_V2.DELIVERED);
1439
+ const now = Date.now();
1440
+ j.status = A2APGOV_MSG_LIFECYCLE_V2.DELIVERED;
1441
+ j.updatedAt = now;
1442
+ if (!j.settledAt) j.settledAt = now;
1443
+ return { ...j, metadata: { ...j.metadata } };
1444
+ }
1445
+ export function failA2apMsgV2(id, reason) {
1446
+ const j = _a2apgovJsV2.get(id);
1447
+ if (!j) throw new Error(`a2apgov msg ${id} not found`);
1448
+ _a2apgovCheckJ(j.status, A2APGOV_MSG_LIFECYCLE_V2.FAILED);
1449
+ const now = Date.now();
1450
+ j.status = A2APGOV_MSG_LIFECYCLE_V2.FAILED;
1451
+ j.updatedAt = now;
1452
+ if (!j.settledAt) j.settledAt = now;
1453
+ if (reason) j.metadata.failReason = String(reason);
1454
+ return { ...j, metadata: { ...j.metadata } };
1455
+ }
1456
+ export function cancelA2apMsgV2(id, reason) {
1457
+ const j = _a2apgovJsV2.get(id);
1458
+ if (!j) throw new Error(`a2apgov msg ${id} not found`);
1459
+ _a2apgovCheckJ(j.status, A2APGOV_MSG_LIFECYCLE_V2.CANCELLED);
1460
+ const now = Date.now();
1461
+ j.status = A2APGOV_MSG_LIFECYCLE_V2.CANCELLED;
1462
+ j.updatedAt = now;
1463
+ if (!j.settledAt) j.settledAt = now;
1464
+ if (reason) j.metadata.cancelReason = String(reason);
1465
+ return { ...j, metadata: { ...j.metadata } };
1466
+ }
1467
+ export function getA2apMsgV2(id) {
1468
+ const j = _a2apgovJsV2.get(id);
1469
+ if (!j) return null;
1470
+ return { ...j, metadata: { ...j.metadata } };
1471
+ }
1472
+ export function listA2apMsgsV2() {
1473
+ return [..._a2apgovJsV2.values()].map((j) => ({
1474
+ ...j,
1475
+ metadata: { ...j.metadata },
1476
+ }));
1477
+ }
1478
+ export function autoStaleIdleA2apProfilesV2({ now } = {}) {
1479
+ const t = now ?? Date.now();
1480
+ const flipped = [];
1481
+ for (const p of _a2apgovPsV2.values())
1482
+ if (
1483
+ p.status === A2APGOV_PROFILE_MATURITY_V2.ACTIVE &&
1484
+ t - p.lastTouchedAt >= _a2apgovIdleMs
1485
+ ) {
1486
+ p.status = A2APGOV_PROFILE_MATURITY_V2.STALE;
1487
+ p.updatedAt = t;
1488
+ flipped.push(p.id);
1489
+ }
1490
+ return { flipped, count: flipped.length };
1491
+ }
1492
+ export function autoFailStuckA2apMsgsV2({ now } = {}) {
1493
+ const t = now ?? Date.now();
1494
+ const flipped = [];
1495
+ for (const j of _a2apgovJsV2.values())
1496
+ if (
1497
+ j.status === A2APGOV_MSG_LIFECYCLE_V2.DISPATCHING &&
1498
+ j.startedAt != null &&
1499
+ t - j.startedAt >= _a2apgovStuckMs
1500
+ ) {
1501
+ j.status = A2APGOV_MSG_LIFECYCLE_V2.FAILED;
1502
+ j.updatedAt = t;
1503
+ if (!j.settledAt) j.settledAt = t;
1504
+ j.metadata.failReason = "auto-fail-stuck";
1505
+ flipped.push(j.id);
1506
+ }
1507
+ return { flipped, count: flipped.length };
1508
+ }
1509
+ export function getA2apgovStatsV2() {
1510
+ const profilesByStatus = {};
1511
+ for (const v of Object.values(A2APGOV_PROFILE_MATURITY_V2))
1512
+ profilesByStatus[v] = 0;
1513
+ for (const p of _a2apgovPsV2.values()) profilesByStatus[p.status]++;
1514
+ const msgsByStatus = {};
1515
+ for (const v of Object.values(A2APGOV_MSG_LIFECYCLE_V2)) msgsByStatus[v] = 0;
1516
+ for (const j of _a2apgovJsV2.values()) msgsByStatus[j.status]++;
1517
+ return {
1518
+ totalA2apProfilesV2: _a2apgovPsV2.size,
1519
+ totalA2apMsgsV2: _a2apgovJsV2.size,
1520
+ maxActiveA2apProfilesPerOwner: _a2apgovMaxActive,
1521
+ maxPendingA2apMsgsPerProfile: _a2apgovMaxPending,
1522
+ a2apgovProfileIdleMs: _a2apgovIdleMs,
1523
+ a2apgovMsgStuckMs: _a2apgovStuckMs,
1524
+ profilesByStatus,
1525
+ msgsByStatus,
1526
+ };
1527
+ }