chainlesschain 0.143.0 → 0.152.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 (227) hide show
  1. package/package.json +1 -1
  2. package/src/commands/a2a.js +196 -28
  3. package/src/commands/activitypub.js +364 -27
  4. package/src/commands/agent-network.js +217 -0
  5. package/src/commands/agent.js +587 -103
  6. package/src/commands/audit.js +206 -0
  7. package/src/commands/automation.js +201 -0
  8. package/src/commands/bi.js +355 -27
  9. package/src/commands/bm25.js +111 -27
  10. package/src/commands/browse.js +403 -29
  11. package/src/commands/ccron.js +128 -28
  12. package/src/commands/chat.js +207 -0
  13. package/src/commands/codegen.js +207 -0
  14. package/src/commands/collab.js +211 -0
  15. package/src/commands/compliance.js +824 -34
  16. package/src/commands/compt.js +127 -29
  17. package/src/commands/consol.js +8 -2
  18. package/src/commands/cowork.js +783 -34
  19. package/src/commands/crosschain.js +182 -28
  20. package/src/commands/dao.js +182 -28
  21. package/src/commands/dbevo.js +227 -0
  22. package/src/commands/dev.js +207 -0
  23. package/src/commands/did-v2.js +217 -0
  24. package/src/commands/did.js +221 -0
  25. package/src/commands/dlp.js +385 -27
  26. package/src/commands/economy.js +205 -50
  27. package/src/commands/evolution.js +203 -50
  28. package/src/commands/evomap.js +387 -27
  29. package/src/commands/export.js +213 -0
  30. package/src/commands/federation.js +209 -0
  31. package/src/commands/fflag.js +74 -22
  32. package/src/commands/fusion.js +205 -0
  33. package/src/commands/git.js +177 -37
  34. package/src/commands/governance.js +209 -0
  35. package/src/commands/hardening.js +209 -0
  36. package/src/commands/hmemory.js +204 -50
  37. package/src/commands/hook.js +209 -0
  38. package/src/commands/import.js +209 -0
  39. package/src/commands/incentive.js +209 -0
  40. package/src/commands/inference.js +170 -34
  41. package/src/commands/infra.js +203 -0
  42. package/src/commands/instinct.js +209 -0
  43. package/src/commands/ipfs.js +207 -0
  44. package/src/commands/itbudget.js +149 -33
  45. package/src/commands/kg.js +206 -0
  46. package/src/commands/llm.js +217 -0
  47. package/src/commands/lowcode.js +195 -38
  48. package/src/commands/marketplace.js +206 -0
  49. package/src/commands/matrix.js +386 -27
  50. package/src/commands/mcp.js +217 -0
  51. package/src/commands/mcpscaf.js +145 -33
  52. package/src/commands/meminj.js +145 -33
  53. package/src/commands/memory.js +209 -0
  54. package/src/commands/multimodal.js +203 -0
  55. package/src/commands/nlprog.js +225 -0
  56. package/src/commands/nostr.js +387 -27
  57. package/src/commands/note.js +205 -0
  58. package/src/commands/ops.js +219 -0
  59. package/src/commands/orchestrate.js +217 -0
  60. package/src/commands/orchgov.js +144 -33
  61. package/src/commands/org.js +209 -0
  62. package/src/commands/p2p.js +209 -0
  63. package/src/commands/pdfp.js +109 -27
  64. package/src/commands/perception.js +209 -0
  65. package/src/commands/perf.js +169 -32
  66. package/src/commands/perm.js +144 -33
  67. package/src/commands/permmem.js +203 -0
  68. package/src/commands/pipeline.js +207 -52
  69. package/src/commands/planmode.js +141 -32
  70. package/src/commands/plugin-ecosystem.js +209 -0
  71. package/src/commands/pqc.js +213 -0
  72. package/src/commands/privacy.js +203 -0
  73. package/src/commands/promcomp.js +111 -27
  74. package/src/commands/quantization.js +207 -0
  75. package/src/commands/rcache.js +205 -0
  76. package/src/commands/recommend.js +410 -34
  77. package/src/commands/reputation.js +208 -0
  78. package/src/commands/runtime.js +205 -0
  79. package/src/commands/sandbox.js +206 -0
  80. package/src/commands/scim.js +209 -0
  81. package/src/commands/seshhook.js +145 -33
  82. package/src/commands/seshsearch.js +141 -33
  83. package/src/commands/seshtail.js +144 -33
  84. package/src/commands/seshu.js +152 -33
  85. package/src/commands/session.js +209 -0
  86. package/src/commands/sganal.js +123 -29
  87. package/src/commands/siem.js +201 -34
  88. package/src/commands/skill.js +207 -0
  89. package/src/commands/sla.js +212 -0
  90. package/src/commands/slotfill.js +146 -33
  91. package/src/commands/social.js +358 -32
  92. package/src/commands/sso.js +209 -0
  93. package/src/commands/stress.js +206 -0
  94. package/src/commands/svccont.js +145 -33
  95. package/src/commands/sync.js +209 -0
  96. package/src/commands/tech.js +209 -0
  97. package/src/commands/tenant.js +217 -0
  98. package/src/commands/terraform.js +206 -0
  99. package/src/commands/tms.js +171 -33
  100. package/src/commands/tokens.js +209 -0
  101. package/src/commands/topiccls.js +146 -33
  102. package/src/commands/trust.js +217 -0
  103. package/src/commands/uprof.js +141 -32
  104. package/src/commands/vcheck.js +122 -28
  105. package/src/commands/wallet.js +209 -0
  106. package/src/commands/webfetch.js +141 -32
  107. package/src/commands/workflow.js +203 -0
  108. package/src/commands/zkp.js +184 -28
  109. package/src/index.js +180 -0
  110. package/src/lib/a2a-protocol.js +319 -51
  111. package/src/lib/activitypub-bridge.js +622 -50
  112. package/src/lib/agent-economy.js +304 -51
  113. package/src/lib/agent-network.js +341 -0
  114. package/src/lib/aiops.js +346 -0
  115. package/src/lib/app-builder.js +279 -46
  116. package/src/lib/audit-logger.js +321 -0
  117. package/src/lib/automation-engine.js +335 -0
  118. package/src/lib/autonomous-agent.js +284 -48
  119. package/src/lib/autonomous-developer.js +332 -0
  120. package/src/lib/bi-engine.js +616 -49
  121. package/src/lib/bm25-search.js +301 -49
  122. package/src/lib/browser-automation.js +630 -49
  123. package/src/lib/chat-core.js +336 -0
  124. package/src/lib/claude-code-bridge.js +341 -0
  125. package/src/lib/code-agent.js +339 -0
  126. package/src/lib/collaboration-governance.js +334 -0
  127. package/src/lib/community-governance.js +346 -0
  128. package/src/lib/compliance-framework-reporter.js +305 -51
  129. package/src/lib/compliance-manager.js +330 -0
  130. package/src/lib/compression-telemetry.js +301 -49
  131. package/src/lib/content-recommendation.js +351 -0
  132. package/src/lib/content-recommender.js +317 -52
  133. package/src/lib/cowork-cron.js +298 -49
  134. package/src/lib/cowork-learning.js +333 -0
  135. package/src/lib/cowork-share.js +338 -0
  136. package/src/lib/cowork-task-runner.js +308 -51
  137. package/src/lib/cowork-workflow.js +327 -0
  138. package/src/lib/cross-chain.js +311 -51
  139. package/src/lib/dao-governance.js +280 -46
  140. package/src/lib/dbevo.js +351 -0
  141. package/src/lib/decentral-infra.js +330 -0
  142. package/src/lib/did-manager.js +341 -0
  143. package/src/lib/did-v2-manager.js +341 -0
  144. package/src/lib/dlp-engine.js +626 -49
  145. package/src/lib/evolution-system.js +278 -47
  146. package/src/lib/evomap-governance.js +334 -0
  147. package/src/lib/evomap-manager.js +280 -46
  148. package/src/lib/execution-backend.js +294 -48
  149. package/src/lib/feature-flags.js +294 -49
  150. package/src/lib/federation-hardening.js +340 -0
  151. package/src/lib/git-integration.js +285 -47
  152. package/src/lib/hardening-manager.js +341 -0
  153. package/src/lib/hierarchical-memory.js +284 -48
  154. package/src/lib/hook-manager.js +341 -0
  155. package/src/lib/inference-network.js +308 -51
  156. package/src/lib/instinct-manager.js +346 -0
  157. package/src/lib/ipfs-storage.js +334 -0
  158. package/src/lib/iteration-budget.js +302 -50
  159. package/src/lib/knowledge-exporter.js +341 -0
  160. package/src/lib/knowledge-graph.js +333 -0
  161. package/src/lib/knowledge-importer.js +341 -0
  162. package/src/lib/llm-providers.js +346 -0
  163. package/src/lib/matrix-bridge.js +620 -47
  164. package/src/lib/mcp-registry.js +346 -0
  165. package/src/lib/mcp-scaffold.js +318 -54
  166. package/src/lib/memory-injection.js +288 -49
  167. package/src/lib/memory-manager.js +336 -0
  168. package/src/lib/multimodal.js +330 -0
  169. package/src/lib/nl-programming.js +341 -0
  170. package/src/lib/nostr-bridge.js +622 -49
  171. package/src/lib/note-versioning.js +339 -0
  172. package/src/lib/orchestrator.js +293 -48
  173. package/src/lib/org-manager.js +336 -0
  174. package/src/lib/p2p-manager.js +341 -0
  175. package/src/lib/pdf-parser.js +298 -49
  176. package/src/lib/perception.js +346 -0
  177. package/src/lib/perf-tuning.js +309 -50
  178. package/src/lib/permanent-memory.js +327 -0
  179. package/src/lib/permission-engine.js +287 -49
  180. package/src/lib/pipeline-orchestrator.js +289 -49
  181. package/src/lib/plan-mode.js +298 -51
  182. package/src/lib/plugin-ecosystem.js +346 -0
  183. package/src/lib/pqc-manager.js +346 -0
  184. package/src/lib/privacy-computing.js +335 -0
  185. package/src/lib/protocol-fusion.js +338 -0
  186. package/src/lib/quantization.js +337 -0
  187. package/src/lib/reputation-optimizer.js +340 -0
  188. package/src/lib/response-cache.js +333 -0
  189. package/src/lib/sandbox-v2.js +327 -0
  190. package/src/lib/scim-manager.js +346 -0
  191. package/src/lib/service-container.js +313 -52
  192. package/src/lib/session-consolidator.js +296 -49
  193. package/src/lib/session-hooks.js +312 -53
  194. package/src/lib/session-manager.js +334 -0
  195. package/src/lib/session-search.js +304 -51
  196. package/src/lib/session-tail.js +288 -49
  197. package/src/lib/session-usage.js +298 -52
  198. package/src/lib/siem-exporter.js +298 -51
  199. package/src/lib/skill-loader.js +334 -0
  200. package/src/lib/skill-marketplace.js +345 -0
  201. package/src/lib/sla-manager.js +341 -0
  202. package/src/lib/slot-filler.js +303 -51
  203. package/src/lib/social-graph-analytics.js +295 -49
  204. package/src/lib/social-graph.js +272 -49
  205. package/src/lib/social-manager.js +330 -0
  206. package/src/lib/sso-manager.js +340 -0
  207. package/src/lib/stress-tester.js +342 -0
  208. package/src/lib/sub-agent-registry.js +302 -53
  209. package/src/lib/sync-manager.js +336 -0
  210. package/src/lib/task-model-selector.js +302 -50
  211. package/src/lib/tech-learning-engine.js +341 -0
  212. package/src/lib/tenant-saas.js +341 -0
  213. package/src/lib/terraform-manager.js +333 -0
  214. package/src/lib/threat-intel.js +330 -0
  215. package/src/lib/todo-manager.js +281 -47
  216. package/src/lib/token-incentive.js +341 -0
  217. package/src/lib/token-tracker.js +336 -0
  218. package/src/lib/topic-classifier.js +297 -49
  219. package/src/lib/trust-security.js +343 -0
  220. package/src/lib/ueba.js +340 -0
  221. package/src/lib/universal-runtime.js +330 -0
  222. package/src/lib/user-profile.js +294 -50
  223. package/src/lib/version-checker.js +304 -50
  224. package/src/lib/wallet-manager.js +336 -0
  225. package/src/lib/web-fetch.js +292 -51
  226. package/src/lib/workflow-engine.js +330 -0
  227. package/src/lib/zkp-engine.js +286 -49
@@ -952,7 +952,6 @@ export function registerEvoMapCommand(program) {
952
952
  registerEvoMapV2Command(evomap);
953
953
  }
954
954
 
955
-
956
955
  import {
957
956
  EVOMAP_MAP_MATURITY_V2,
958
957
  EVOMAP_EVOLUTION_LIFECYCLE_V2,
@@ -984,30 +983,391 @@ import {
984
983
  } from "../lib/evomap-manager.js";
985
984
 
986
985
  export function registerEvoMapV2Command(evomap) {
987
- evomap.command("enums-v2").description("Show V2 governance enums").action(() => { console.log(JSON.stringify({ EVOMAP_MAP_MATURITY_V2, EVOMAP_EVOLUTION_LIFECYCLE_V2 }, null, 2)); });
988
- evomap.command("register-map-v2").description("Register an evomap profile (pending)")
989
- .requiredOption("--id <id>").requiredOption("--owner <owner>").option("--name <name>")
990
- .action((o) => { console.log(JSON.stringify(registerEvoMapV2(o), null, 2)); });
991
- evomap.command("activate-map-v2 <id>").description("Activate map").action((id) => { console.log(JSON.stringify(activateEvoMapV2(id), null, 2)); });
992
- evomap.command("stale-map-v2 <id>").description("Mark map stale").action((id) => { console.log(JSON.stringify(staleEvoMapV2(id), null, 2)); });
993
- evomap.command("archive-map-v2 <id>").description("Archive map (terminal)").action((id) => { console.log(JSON.stringify(archiveEvoMapV2(id), null, 2)); });
994
- evomap.command("touch-map-v2 <id>").description("Refresh lastTouchedAt").action((id) => { console.log(JSON.stringify(touchEvoMapV2(id), null, 2)); });
995
- evomap.command("get-map-v2 <id>").description("Get map").action((id) => { console.log(JSON.stringify(getEvoMapV2(id), null, 2)); });
996
- evomap.command("list-maps-v2").description("List maps").action(() => { console.log(JSON.stringify(listEvoMapsV2(), null, 2)); });
997
- evomap.command("create-evolution-v2").description("Create an evolution (queued)")
998
- .requiredOption("--id <id>").requiredOption("--map-id <mapId>").option("--strategy <strategy>")
999
- .action((o) => { console.log(JSON.stringify(createEvoEvolutionV2({ id: o.id, mapId: o.mapId, strategy: o.strategy }), null, 2)); });
1000
- evomap.command("start-evolution-v2 <id>").description("Transition evolution to running").action((id) => { console.log(JSON.stringify(startEvoEvolutionV2(id), null, 2)); });
1001
- evomap.command("complete-evolution-v2 <id>").description("Transition evolution to completed").action((id) => { console.log(JSON.stringify(completeEvoEvolutionV2(id), null, 2)); });
1002
- evomap.command("fail-evolution-v2 <id>").description("Fail evolution").option("--reason <r>").action((id, o) => { console.log(JSON.stringify(failEvoEvolutionV2(id, o.reason), null, 2)); });
1003
- evomap.command("cancel-evolution-v2 <id>").description("Cancel evolution").option("--reason <r>").action((id, o) => { console.log(JSON.stringify(cancelEvoEvolutionV2(id, o.reason), null, 2)); });
1004
- evomap.command("get-evolution-v2 <id>").description("Get evolution").action((id) => { console.log(JSON.stringify(getEvoEvolutionV2(id), null, 2)); });
1005
- evomap.command("list-evolutions-v2").description("List evolutions").action(() => { console.log(JSON.stringify(listEvoEvolutionsV2(), null, 2)); });
1006
- evomap.command("set-max-active-maps-v2 <n>").description("Set per-owner active cap").action((n) => { setMaxActiveEvoMapsPerOwnerV2(Number(n)); console.log(JSON.stringify({ maxActiveEvoMapsPerOwner: getMaxActiveEvoMapsPerOwnerV2() }, null, 2)); });
1007
- evomap.command("set-max-pending-evolutions-v2 <n>").description("Set per-map pending cap").action((n) => { setMaxPendingEvoEvolutionsPerMapV2(Number(n)); console.log(JSON.stringify({ maxPendingEvoEvolutionsPerMap: getMaxPendingEvoEvolutionsPerMapV2() }, null, 2)); });
1008
- evomap.command("set-map-idle-ms-v2 <n>").description("Set idle threshold").action((n) => { setEvoMapIdleMsV2(Number(n)); console.log(JSON.stringify({ evoMapIdleMs: getEvoMapIdleMsV2() }, null, 2)); });
1009
- evomap.command("set-evolution-stuck-ms-v2 <n>").description("Set stuck threshold").action((n) => { setEvoEvolutionStuckMsV2(Number(n)); console.log(JSON.stringify({ evoEvolutionStuckMs: getEvoEvolutionStuckMsV2() }, null, 2)); });
1010
- evomap.command("auto-stale-idle-maps-v2").description("Auto-stale idle maps").action(() => { console.log(JSON.stringify(autoStaleIdleEvoMapsV2(), null, 2)); });
1011
- evomap.command("auto-fail-stuck-evolutions-v2").description("Auto-fail stuck running evolutions").action(() => { console.log(JSON.stringify(autoFailStuckEvoEvolutionsV2(), null, 2)); });
1012
- evomap.command("gov-stats-v2").description("V2 governance aggregate stats").action(() => { console.log(JSON.stringify(getEvoMapManagerStatsV2(), null, 2)); });
986
+ evomap
987
+ .command("enums-v2")
988
+ .description("Show V2 governance enums")
989
+ .action(() => {
990
+ console.log(
991
+ JSON.stringify(
992
+ { EVOMAP_MAP_MATURITY_V2, EVOMAP_EVOLUTION_LIFECYCLE_V2 },
993
+ null,
994
+ 2,
995
+ ),
996
+ );
997
+ });
998
+ evomap
999
+ .command("register-map-v2")
1000
+ .description("Register an evomap profile (pending)")
1001
+ .requiredOption("--id <id>")
1002
+ .requiredOption("--owner <owner>")
1003
+ .option("--name <name>")
1004
+ .action((o) => {
1005
+ console.log(JSON.stringify(registerEvoMapV2(o), null, 2));
1006
+ });
1007
+ evomap
1008
+ .command("activate-map-v2 <id>")
1009
+ .description("Activate map")
1010
+ .action((id) => {
1011
+ console.log(JSON.stringify(activateEvoMapV2(id), null, 2));
1012
+ });
1013
+ evomap
1014
+ .command("stale-map-v2 <id>")
1015
+ .description("Mark map stale")
1016
+ .action((id) => {
1017
+ console.log(JSON.stringify(staleEvoMapV2(id), null, 2));
1018
+ });
1019
+ evomap
1020
+ .command("archive-map-v2 <id>")
1021
+ .description("Archive map (terminal)")
1022
+ .action((id) => {
1023
+ console.log(JSON.stringify(archiveEvoMapV2(id), null, 2));
1024
+ });
1025
+ evomap
1026
+ .command("touch-map-v2 <id>")
1027
+ .description("Refresh lastTouchedAt")
1028
+ .action((id) => {
1029
+ console.log(JSON.stringify(touchEvoMapV2(id), null, 2));
1030
+ });
1031
+ evomap
1032
+ .command("get-map-v2 <id>")
1033
+ .description("Get map")
1034
+ .action((id) => {
1035
+ console.log(JSON.stringify(getEvoMapV2(id), null, 2));
1036
+ });
1037
+ evomap
1038
+ .command("list-maps-v2")
1039
+ .description("List maps")
1040
+ .action(() => {
1041
+ console.log(JSON.stringify(listEvoMapsV2(), null, 2));
1042
+ });
1043
+ evomap
1044
+ .command("create-evolution-v2")
1045
+ .description("Create an evolution (queued)")
1046
+ .requiredOption("--id <id>")
1047
+ .requiredOption("--map-id <mapId>")
1048
+ .option("--strategy <strategy>")
1049
+ .action((o) => {
1050
+ console.log(
1051
+ JSON.stringify(
1052
+ createEvoEvolutionV2({
1053
+ id: o.id,
1054
+ mapId: o.mapId,
1055
+ strategy: o.strategy,
1056
+ }),
1057
+ null,
1058
+ 2,
1059
+ ),
1060
+ );
1061
+ });
1062
+ evomap
1063
+ .command("start-evolution-v2 <id>")
1064
+ .description("Transition evolution to running")
1065
+ .action((id) => {
1066
+ console.log(JSON.stringify(startEvoEvolutionV2(id), null, 2));
1067
+ });
1068
+ evomap
1069
+ .command("complete-evolution-v2 <id>")
1070
+ .description("Transition evolution to completed")
1071
+ .action((id) => {
1072
+ console.log(JSON.stringify(completeEvoEvolutionV2(id), null, 2));
1073
+ });
1074
+ evomap
1075
+ .command("fail-evolution-v2 <id>")
1076
+ .description("Fail evolution")
1077
+ .option("--reason <r>")
1078
+ .action((id, o) => {
1079
+ console.log(JSON.stringify(failEvoEvolutionV2(id, o.reason), null, 2));
1080
+ });
1081
+ evomap
1082
+ .command("cancel-evolution-v2 <id>")
1083
+ .description("Cancel evolution")
1084
+ .option("--reason <r>")
1085
+ .action((id, o) => {
1086
+ console.log(JSON.stringify(cancelEvoEvolutionV2(id, o.reason), null, 2));
1087
+ });
1088
+ evomap
1089
+ .command("get-evolution-v2 <id>")
1090
+ .description("Get evolution")
1091
+ .action((id) => {
1092
+ console.log(JSON.stringify(getEvoEvolutionV2(id), null, 2));
1093
+ });
1094
+ evomap
1095
+ .command("list-evolutions-v2")
1096
+ .description("List evolutions")
1097
+ .action(() => {
1098
+ console.log(JSON.stringify(listEvoEvolutionsV2(), null, 2));
1099
+ });
1100
+ evomap
1101
+ .command("set-max-active-maps-v2 <n>")
1102
+ .description("Set per-owner active cap")
1103
+ .action((n) => {
1104
+ setMaxActiveEvoMapsPerOwnerV2(Number(n));
1105
+ console.log(
1106
+ JSON.stringify(
1107
+ { maxActiveEvoMapsPerOwner: getMaxActiveEvoMapsPerOwnerV2() },
1108
+ null,
1109
+ 2,
1110
+ ),
1111
+ );
1112
+ });
1113
+ evomap
1114
+ .command("set-max-pending-evolutions-v2 <n>")
1115
+ .description("Set per-map pending cap")
1116
+ .action((n) => {
1117
+ setMaxPendingEvoEvolutionsPerMapV2(Number(n));
1118
+ console.log(
1119
+ JSON.stringify(
1120
+ {
1121
+ maxPendingEvoEvolutionsPerMap: getMaxPendingEvoEvolutionsPerMapV2(),
1122
+ },
1123
+ null,
1124
+ 2,
1125
+ ),
1126
+ );
1127
+ });
1128
+ evomap
1129
+ .command("set-map-idle-ms-v2 <n>")
1130
+ .description("Set idle threshold")
1131
+ .action((n) => {
1132
+ setEvoMapIdleMsV2(Number(n));
1133
+ console.log(
1134
+ JSON.stringify({ evoMapIdleMs: getEvoMapIdleMsV2() }, null, 2),
1135
+ );
1136
+ });
1137
+ evomap
1138
+ .command("set-evolution-stuck-ms-v2 <n>")
1139
+ .description("Set stuck threshold")
1140
+ .action((n) => {
1141
+ setEvoEvolutionStuckMsV2(Number(n));
1142
+ console.log(
1143
+ JSON.stringify(
1144
+ { evoEvolutionStuckMs: getEvoEvolutionStuckMsV2() },
1145
+ null,
1146
+ 2,
1147
+ ),
1148
+ );
1149
+ });
1150
+ evomap
1151
+ .command("auto-stale-idle-maps-v2")
1152
+ .description("Auto-stale idle maps")
1153
+ .action(() => {
1154
+ console.log(JSON.stringify(autoStaleIdleEvoMapsV2(), null, 2));
1155
+ });
1156
+ evomap
1157
+ .command("auto-fail-stuck-evolutions-v2")
1158
+ .description("Auto-fail stuck running evolutions")
1159
+ .action(() => {
1160
+ console.log(JSON.stringify(autoFailStuckEvoEvolutionsV2(), null, 2));
1161
+ });
1162
+ evomap
1163
+ .command("gov-stats-v2")
1164
+ .description("V2 governance aggregate stats")
1165
+ .action(() => {
1166
+ console.log(JSON.stringify(getEvoMapManagerStatsV2(), null, 2));
1167
+ });
1168
+ }
1169
+
1170
+ // === Iter20 V2 governance overlay ===
1171
+ export function registerEvgovV2Commands(program) {
1172
+ const parent = program.commands.find((c) => c.name() === "evomap");
1173
+ if (!parent) return;
1174
+ const L = async () => await import("../lib/evomap-governance.js");
1175
+ parent
1176
+ .command("evgov-enums-v2")
1177
+ .description("Show V2 enums")
1178
+ .action(async () => {
1179
+ const m = await L();
1180
+ console.log(
1181
+ JSON.stringify(
1182
+ {
1183
+ profileMaturity: m.EVGOV_PROFILE_MATURITY_V2,
1184
+ proposalLifecycle: m.EVGOV_PROPOSAL_LIFECYCLE_V2,
1185
+ },
1186
+ null,
1187
+ 2,
1188
+ ),
1189
+ );
1190
+ });
1191
+ parent
1192
+ .command("evgov-config-v2")
1193
+ .description("Show V2 config")
1194
+ .action(async () => {
1195
+ const m = await L();
1196
+ console.log(
1197
+ JSON.stringify(
1198
+ {
1199
+ maxActive: m.getMaxActiveEvgovProfilesPerOwnerV2(),
1200
+ maxPending: m.getMaxPendingEvgovProposalsPerProfileV2(),
1201
+ idleMs: m.getEvgovProfileIdleMsV2(),
1202
+ stuckMs: m.getEvgovProposalStuckMsV2(),
1203
+ },
1204
+ null,
1205
+ 2,
1206
+ ),
1207
+ );
1208
+ });
1209
+ parent
1210
+ .command("evgov-set-max-active-v2 <n>")
1211
+ .description("Set max active")
1212
+ .action(async (n) => {
1213
+ (await L()).setMaxActiveEvgovProfilesPerOwnerV2(Number(n));
1214
+ console.log("ok");
1215
+ });
1216
+ parent
1217
+ .command("evgov-set-max-pending-v2 <n>")
1218
+ .description("Set max pending")
1219
+ .action(async (n) => {
1220
+ (await L()).setMaxPendingEvgovProposalsPerProfileV2(Number(n));
1221
+ console.log("ok");
1222
+ });
1223
+ parent
1224
+ .command("evgov-set-idle-ms-v2 <n>")
1225
+ .description("Set idle threshold ms")
1226
+ .action(async (n) => {
1227
+ (await L()).setEvgovProfileIdleMsV2(Number(n));
1228
+ console.log("ok");
1229
+ });
1230
+ parent
1231
+ .command("evgov-set-stuck-ms-v2 <n>")
1232
+ .description("Set stuck threshold ms")
1233
+ .action(async (n) => {
1234
+ (await L()).setEvgovProposalStuckMsV2(Number(n));
1235
+ console.log("ok");
1236
+ });
1237
+ parent
1238
+ .command("evgov-register-v2 <id> <owner>")
1239
+ .description("Register V2 profile")
1240
+ .option("--lane <v>", "lane")
1241
+ .action(async (id, owner, o) => {
1242
+ const m = await L();
1243
+ console.log(
1244
+ JSON.stringify(
1245
+ m.registerEvgovProfileV2({ id, owner, lane: o.lane }),
1246
+ null,
1247
+ 2,
1248
+ ),
1249
+ );
1250
+ });
1251
+ parent
1252
+ .command("evgov-activate-v2 <id>")
1253
+ .description("Activate profile")
1254
+ .action(async (id) => {
1255
+ console.log(
1256
+ JSON.stringify((await L()).activateEvgovProfileV2(id), null, 2),
1257
+ );
1258
+ });
1259
+ parent
1260
+ .command("evgov-pause-v2 <id>")
1261
+ .description("Pause profile")
1262
+ .action(async (id) => {
1263
+ console.log(JSON.stringify((await L()).pauseEvgovProfileV2(id), null, 2));
1264
+ });
1265
+ parent
1266
+ .command("evgov-archive-v2 <id>")
1267
+ .description("Archive profile")
1268
+ .action(async (id) => {
1269
+ console.log(
1270
+ JSON.stringify((await L()).archiveEvgovProfileV2(id), null, 2),
1271
+ );
1272
+ });
1273
+ parent
1274
+ .command("evgov-touch-v2 <id>")
1275
+ .description("Touch profile")
1276
+ .action(async (id) => {
1277
+ console.log(JSON.stringify((await L()).touchEvgovProfileV2(id), null, 2));
1278
+ });
1279
+ parent
1280
+ .command("evgov-get-v2 <id>")
1281
+ .description("Get profile")
1282
+ .action(async (id) => {
1283
+ console.log(JSON.stringify((await L()).getEvgovProfileV2(id), null, 2));
1284
+ });
1285
+ parent
1286
+ .command("evgov-list-v2")
1287
+ .description("List profiles")
1288
+ .action(async () => {
1289
+ console.log(JSON.stringify((await L()).listEvgovProfilesV2(), null, 2));
1290
+ });
1291
+ parent
1292
+ .command("evgov-create-proposal-v2 <id> <profileId>")
1293
+ .description("Create proposal")
1294
+ .option("--topic <v>", "topic")
1295
+ .action(async (id, profileId, o) => {
1296
+ const m = await L();
1297
+ console.log(
1298
+ JSON.stringify(
1299
+ m.createEvgovProposalV2({ id, profileId, topic: o.topic }),
1300
+ null,
1301
+ 2,
1302
+ ),
1303
+ );
1304
+ });
1305
+ parent
1306
+ .command("evgov-reviewing-proposal-v2 <id>")
1307
+ .description("Mark proposal as reviewing")
1308
+ .action(async (id) => {
1309
+ console.log(
1310
+ JSON.stringify((await L()).reviewingEvgovProposalV2(id), null, 2),
1311
+ );
1312
+ });
1313
+ parent
1314
+ .command("evgov-complete-proposal-v2 <id>")
1315
+ .description("Complete proposal")
1316
+ .action(async (id) => {
1317
+ console.log(
1318
+ JSON.stringify((await L()).completeProposalEvgovV2(id), null, 2),
1319
+ );
1320
+ });
1321
+ parent
1322
+ .command("evgov-fail-proposal-v2 <id> [reason]")
1323
+ .description("Fail proposal")
1324
+ .action(async (id, reason) => {
1325
+ console.log(
1326
+ JSON.stringify((await L()).failEvgovProposalV2(id, reason), null, 2),
1327
+ );
1328
+ });
1329
+ parent
1330
+ .command("evgov-cancel-proposal-v2 <id> [reason]")
1331
+ .description("Cancel proposal")
1332
+ .action(async (id, reason) => {
1333
+ console.log(
1334
+ JSON.stringify((await L()).cancelEvgovProposalV2(id, reason), null, 2),
1335
+ );
1336
+ });
1337
+ parent
1338
+ .command("evgov-get-proposal-v2 <id>")
1339
+ .description("Get proposal")
1340
+ .action(async (id) => {
1341
+ console.log(JSON.stringify((await L()).getEvgovProposalV2(id), null, 2));
1342
+ });
1343
+ parent
1344
+ .command("evgov-list-proposals-v2")
1345
+ .description("List proposals")
1346
+ .action(async () => {
1347
+ console.log(JSON.stringify((await L()).listEvgovProposalsV2(), null, 2));
1348
+ });
1349
+ parent
1350
+ .command("evgov-auto-pause-idle-v2")
1351
+ .description("Auto-pause idle")
1352
+ .action(async () => {
1353
+ console.log(
1354
+ JSON.stringify((await L()).autoPauseIdleEvgovProfilesV2(), null, 2),
1355
+ );
1356
+ });
1357
+ parent
1358
+ .command("evgov-auto-fail-stuck-v2")
1359
+ .description("Auto-fail stuck proposals")
1360
+ .action(async () => {
1361
+ console.log(
1362
+ JSON.stringify((await L()).autoFailStuckEvgovProposalsV2(), null, 2),
1363
+ );
1364
+ });
1365
+ parent
1366
+ .command("evgov-gov-stats-v2")
1367
+ .description("V2 gov stats")
1368
+ .action(async () => {
1369
+ console.log(
1370
+ JSON.stringify((await L()).getEvomapGovernanceGovStatsV2(), null, 2),
1371
+ );
1372
+ });
1013
1373
  }
@@ -378,3 +378,216 @@ export function registerExportCommand(program) {
378
378
  .description("Auto-fail stuck V2 export jobs")
379
379
  .action(() => out(autoFailStuckExportJobsV2()));
380
380
  }
381
+
382
+ // === Iter22 V2 governance overlay ===
383
+ export function registerKexpgovV2Commands(program) {
384
+ const parent = program.commands.find((c) => c.name() === "export");
385
+ if (!parent) return;
386
+ const L = async () => await import("../lib/knowledge-exporter.js");
387
+ parent
388
+ .command("kexpgov-enums-v2")
389
+ .description("Show V2 enums")
390
+ .action(async () => {
391
+ const m = await L();
392
+ console.log(
393
+ JSON.stringify(
394
+ {
395
+ profileMaturity: m.KEXPGOV_PROFILE_MATURITY_V2,
396
+ exportLifecycle: m.KEXPGOV_EXPORT_LIFECYCLE_V2,
397
+ },
398
+ null,
399
+ 2,
400
+ ),
401
+ );
402
+ });
403
+ parent
404
+ .command("kexpgov-config-v2")
405
+ .description("Show V2 config")
406
+ .action(async () => {
407
+ const m = await L();
408
+ console.log(
409
+ JSON.stringify(
410
+ {
411
+ maxActive: m.getMaxActiveKexpgovProfilesPerOwnerV2(),
412
+ maxPending: m.getMaxPendingKexpgovExportsPerProfileV2(),
413
+ idleMs: m.getKexpgovProfileIdleMsV2(),
414
+ stuckMs: m.getKexpgovExportStuckMsV2(),
415
+ },
416
+ null,
417
+ 2,
418
+ ),
419
+ );
420
+ });
421
+ parent
422
+ .command("kexpgov-set-max-active-v2 <n>")
423
+ .description("Set max active")
424
+ .action(async (n) => {
425
+ (await L()).setMaxActiveKexpgovProfilesPerOwnerV2(Number(n));
426
+ console.log("ok");
427
+ });
428
+ parent
429
+ .command("kexpgov-set-max-pending-v2 <n>")
430
+ .description("Set max pending")
431
+ .action(async (n) => {
432
+ (await L()).setMaxPendingKexpgovExportsPerProfileV2(Number(n));
433
+ console.log("ok");
434
+ });
435
+ parent
436
+ .command("kexpgov-set-idle-ms-v2 <n>")
437
+ .description("Set idle threshold ms")
438
+ .action(async (n) => {
439
+ (await L()).setKexpgovProfileIdleMsV2(Number(n));
440
+ console.log("ok");
441
+ });
442
+ parent
443
+ .command("kexpgov-set-stuck-ms-v2 <n>")
444
+ .description("Set stuck threshold ms")
445
+ .action(async (n) => {
446
+ (await L()).setKexpgovExportStuckMsV2(Number(n));
447
+ console.log("ok");
448
+ });
449
+ parent
450
+ .command("kexpgov-register-v2 <id> <owner>")
451
+ .description("Register V2 profile")
452
+ .option("--format <v>", "format")
453
+ .action(async (id, owner, o) => {
454
+ const m = await L();
455
+ console.log(
456
+ JSON.stringify(
457
+ m.registerKexpgovProfileV2({ id, owner, format: o.format }),
458
+ null,
459
+ 2,
460
+ ),
461
+ );
462
+ });
463
+ parent
464
+ .command("kexpgov-activate-v2 <id>")
465
+ .description("Activate profile")
466
+ .action(async (id) => {
467
+ console.log(
468
+ JSON.stringify((await L()).activateKexpgovProfileV2(id), null, 2),
469
+ );
470
+ });
471
+ parent
472
+ .command("kexpgov-stale-v2 <id>")
473
+ .description("Stale profile")
474
+ .action(async (id) => {
475
+ console.log(
476
+ JSON.stringify((await L()).staleKexpgovProfileV2(id), null, 2),
477
+ );
478
+ });
479
+ parent
480
+ .command("kexpgov-archive-v2 <id>")
481
+ .description("Archive profile")
482
+ .action(async (id) => {
483
+ console.log(
484
+ JSON.stringify((await L()).archiveKexpgovProfileV2(id), null, 2),
485
+ );
486
+ });
487
+ parent
488
+ .command("kexpgov-touch-v2 <id>")
489
+ .description("Touch profile")
490
+ .action(async (id) => {
491
+ console.log(
492
+ JSON.stringify((await L()).touchKexpgovProfileV2(id), null, 2),
493
+ );
494
+ });
495
+ parent
496
+ .command("kexpgov-get-v2 <id>")
497
+ .description("Get profile")
498
+ .action(async (id) => {
499
+ console.log(JSON.stringify((await L()).getKexpgovProfileV2(id), null, 2));
500
+ });
501
+ parent
502
+ .command("kexpgov-list-v2")
503
+ .description("List profiles")
504
+ .action(async () => {
505
+ console.log(JSON.stringify((await L()).listKexpgovProfilesV2(), null, 2));
506
+ });
507
+ parent
508
+ .command("kexpgov-create-export-v2 <id> <profileId>")
509
+ .description("Create export")
510
+ .option("--destination <v>", "destination")
511
+ .action(async (id, profileId, o) => {
512
+ const m = await L();
513
+ console.log(
514
+ JSON.stringify(
515
+ m.createKexpgovExportV2({
516
+ id,
517
+ profileId,
518
+ destination: o.destination,
519
+ }),
520
+ null,
521
+ 2,
522
+ ),
523
+ );
524
+ });
525
+ parent
526
+ .command("kexpgov-exporting-export-v2 <id>")
527
+ .description("Mark export as exporting")
528
+ .action(async (id) => {
529
+ console.log(
530
+ JSON.stringify((await L()).exportingKexpgovExportV2(id), null, 2),
531
+ );
532
+ });
533
+ parent
534
+ .command("kexpgov-complete-export-v2 <id>")
535
+ .description("Complete export")
536
+ .action(async (id) => {
537
+ console.log(
538
+ JSON.stringify((await L()).completeExportKexpgovV2(id), null, 2),
539
+ );
540
+ });
541
+ parent
542
+ .command("kexpgov-fail-export-v2 <id> [reason]")
543
+ .description("Fail export")
544
+ .action(async (id, reason) => {
545
+ console.log(
546
+ JSON.stringify((await L()).failKexpgovExportV2(id, reason), null, 2),
547
+ );
548
+ });
549
+ parent
550
+ .command("kexpgov-cancel-export-v2 <id> [reason]")
551
+ .description("Cancel export")
552
+ .action(async (id, reason) => {
553
+ console.log(
554
+ JSON.stringify((await L()).cancelKexpgovExportV2(id, reason), null, 2),
555
+ );
556
+ });
557
+ parent
558
+ .command("kexpgov-get-export-v2 <id>")
559
+ .description("Get export")
560
+ .action(async (id) => {
561
+ console.log(JSON.stringify((await L()).getKexpgovExportV2(id), null, 2));
562
+ });
563
+ parent
564
+ .command("kexpgov-list-exports-v2")
565
+ .description("List exports")
566
+ .action(async () => {
567
+ console.log(JSON.stringify((await L()).listKexpgovExportsV2(), null, 2));
568
+ });
569
+ parent
570
+ .command("kexpgov-auto-stale-idle-v2")
571
+ .description("Auto-stale idle")
572
+ .action(async () => {
573
+ console.log(
574
+ JSON.stringify((await L()).autoStaleIdleKexpgovProfilesV2(), null, 2),
575
+ );
576
+ });
577
+ parent
578
+ .command("kexpgov-auto-fail-stuck-v2")
579
+ .description("Auto-fail stuck exports")
580
+ .action(async () => {
581
+ console.log(
582
+ JSON.stringify((await L()).autoFailStuckKexpgovExportsV2(), null, 2),
583
+ );
584
+ });
585
+ parent
586
+ .command("kexpgov-gov-stats-v2")
587
+ .description("V2 gov stats")
588
+ .action(async () => {
589
+ console.log(
590
+ JSON.stringify((await L()).getKnowledgeExporterGovStatsV2(), null, 2),
591
+ );
592
+ });
593
+ }