qlogicagent 2.13.5 → 2.13.6

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 (1277) hide show
  1. package/dist/cli.js +303 -304
  2. package/dist/index.js +1268 -15
  3. package/dist/permissions.js +1 -1
  4. package/dist/pet-contracts.js +1 -1
  5. package/dist/types/cli/community-skill-installer.d.ts +2 -0
  6. package/dist/types/cli/handlers/community-handler.d.ts +6 -0
  7. package/dist/types/cli/runtime-dependency-catalog.d.ts +38 -12
  8. package/dist/types/cli/skills-query-service.d.ts +4 -0
  9. package/dist/types/config/cn-mirror.d.ts +23 -0
  10. package/dist/types/index.d.ts +1 -0
  11. package/dist/types/protocol/methods.d.ts +27 -3
  12. package/dist/types/runtime/community/community-consent-client.d.ts +58 -1
  13. package/dist/types/runtime/community/community-telemetry-types.d.ts +1 -1
  14. package/dist/types/runtime/community/package-materialize.d.ts +19 -0
  15. package/dist/types/runtime/community/ranged-download.d.ts +15 -0
  16. package/dist/types/runtime/community/registry-signature.d.ts +41 -0
  17. package/dist/types/runtime/infra/llmrouter-catalog.d.ts +3 -3
  18. package/dist/types/runtime/infra/model-registry.d.ts +17 -2
  19. package/dist/types/runtime/pet/pet-community-assets.d.ts +14 -1
  20. package/package.json +110 -110
  21. package/dist/agent/agent.d.ts +0 -48
  22. package/dist/agent/agent.js +0 -197
  23. package/dist/agent/memory-recall-context.d.ts +0 -18
  24. package/dist/agent/memory-recall-context.js +0 -139
  25. package/dist/agent/memory-recall-context.test.d.ts +0 -1
  26. package/dist/agent/memory-recall-context.test.js +0 -58
  27. package/dist/agent/memory-recall-injection.d.ts +0 -34
  28. package/dist/agent/memory-recall-injection.js +0 -66
  29. package/dist/agent/runtime-vars.d.ts +0 -48
  30. package/dist/agent/runtime-vars.js +0 -54
  31. package/dist/agent/tool-access.d.ts +0 -1
  32. package/dist/agent/tool-access.js +0 -1
  33. package/dist/agent/tool-loop/artifact-events.d.ts +0 -17
  34. package/dist/agent/tool-loop/artifact-events.js +0 -75
  35. package/dist/agent/tool-loop/budget-continuation-policy.d.ts +0 -22
  36. package/dist/agent/tool-loop/budget-continuation-policy.js +0 -44
  37. package/dist/agent/tool-loop/completion-action-policy.d.ts +0 -19
  38. package/dist/agent/tool-loop/completion-action-policy.js +0 -68
  39. package/dist/agent/tool-loop/completion-action-policy.test.d.ts +0 -1
  40. package/dist/agent/tool-loop/completion-action-policy.test.js +0 -77
  41. package/dist/agent/tool-loop/completion-stop-policy.d.ts +0 -19
  42. package/dist/agent/tool-loop/completion-stop-policy.js +0 -31
  43. package/dist/agent/tool-loop/compression-pipeline.d.ts +0 -44
  44. package/dist/agent/tool-loop/compression-pipeline.js +0 -68
  45. package/dist/agent/tool-loop/loop-helpers.d.ts +0 -15
  46. package/dist/agent/tool-loop/loop-helpers.js +0 -86
  47. package/dist/agent/tool-loop/recovery-helpers.d.ts +0 -18
  48. package/dist/agent/tool-loop/recovery-helpers.js +0 -42
  49. package/dist/agent/tool-loop/single-round.d.ts +0 -2
  50. package/dist/agent/tool-loop/single-round.js +0 -43
  51. package/dist/agent/tool-loop/skill-instruction-policy.d.ts +0 -7
  52. package/dist/agent/tool-loop/skill-instruction-policy.js +0 -18
  53. package/dist/agent/tool-loop/stream-error-recovery.d.ts +0 -59
  54. package/dist/agent/tool-loop/stream-error-recovery.js +0 -93
  55. package/dist/agent/tool-loop/tool-failure-policy.d.ts +0 -22
  56. package/dist/agent/tool-loop/tool-failure-policy.js +0 -46
  57. package/dist/agent/tool-loop/tool-result-events.d.ts +0 -11
  58. package/dist/agent/tool-loop/tool-result-events.js +0 -59
  59. package/dist/agent/tool-loop/tool-result-events.test.d.ts +0 -1
  60. package/dist/agent/tool-loop/tool-result-events.test.js +0 -30
  61. package/dist/agent/tool-loop.contract.test.d.ts +0 -1
  62. package/dist/agent/tool-loop.contract.test.js +0 -254
  63. package/dist/agent/tool-loop.d.ts +0 -121
  64. package/dist/agent/tool-loop.js +0 -1017
  65. package/dist/agent/tool-loop.policy-architecture.test.d.ts +0 -1
  66. package/dist/agent/tool-loop.policy-architecture.test.js +0 -21
  67. package/dist/agent/tool-loop.states.test.d.ts +0 -1
  68. package/dist/agent/tool-loop.states.test.js +0 -211
  69. package/dist/agent/tunable-defaults.d.ts +0 -1
  70. package/dist/agent/tunable-defaults.js +0 -1
  71. package/dist/agent/types.d.ts +0 -311
  72. package/dist/agent/types.js +0 -8
  73. package/dist/cli/acp-commands.d.ts +0 -32
  74. package/dist/cli/acp-commands.js +0 -145
  75. package/dist/cli/acp-commands.test.d.ts +0 -1
  76. package/dist/cli/acp-commands.test.js +0 -89
  77. package/dist/cli/acp-extended-handlers.d.ts +0 -69
  78. package/dist/cli/acp-extended-handlers.js +0 -484
  79. package/dist/cli/acp-extended-handlers.product-confirm.test.d.ts +0 -1
  80. package/dist/cli/acp-extended-handlers.product-confirm.test.js +0 -56
  81. package/dist/cli/acp-extended-handlers.product-project.test.d.ts +0 -1
  82. package/dist/cli/acp-extended-handlers.product-project.test.js +0 -66
  83. package/dist/cli/acp-extended-handlers.solo-project.test.d.ts +0 -1
  84. package/dist/cli/acp-extended-handlers.solo-project.test.js +0 -51
  85. package/dist/cli/acp-extended-handlers.specchat.test.d.ts +0 -1
  86. package/dist/cli/acp-extended-handlers.specchat.test.js +0 -62
  87. package/dist/cli/acp-extended-handlers.workflowchat.test.d.ts +0 -1
  88. package/dist/cli/acp-extended-handlers.workflowchat.test.js +0 -49
  89. package/dist/cli/acp-extended-host-adapter.d.ts +0 -29
  90. package/dist/cli/acp-extended-host-adapter.js +0 -40
  91. package/dist/cli/acp-extended-host-adapter.test.d.ts +0 -1
  92. package/dist/cli/acp-extended-host-adapter.test.js +0 -63
  93. package/dist/cli/acp-message-router.d.ts +0 -8
  94. package/dist/cli/acp-message-router.js +0 -40
  95. package/dist/cli/acp-message-router.test.d.ts +0 -1
  96. package/dist/cli/acp-message-router.test.js +0 -30
  97. package/dist/cli/acp-session-handlers.d.ts +0 -41
  98. package/dist/cli/acp-session-handlers.js +0 -304
  99. package/dist/cli/acp-session-handlers.test.d.ts +0 -1
  100. package/dist/cli/acp-session-handlers.test.js +0 -346
  101. package/dist/cli/acp-session-host.d.ts +0 -48
  102. package/dist/cli/acp-session-host.js +0 -1
  103. package/dist/cli/agent-config-coordinator.d.ts +0 -16
  104. package/dist/cli/agent-config-coordinator.js +0 -56
  105. package/dist/cli/agent-config-coordinator.test.d.ts +0 -1
  106. package/dist/cli/agent-config-coordinator.test.js +0 -51
  107. package/dist/cli/agent-config-runtime.d.ts +0 -11
  108. package/dist/cli/agent-config-runtime.js +0 -4
  109. package/dist/cli/agent-runner-factory.d.ts +0 -2
  110. package/dist/cli/agent-runner-factory.js +0 -11
  111. package/dist/cli/agent-runtime-bootstrap.d.ts +0 -67
  112. package/dist/cli/agent-runtime-bootstrap.js +0 -104
  113. package/dist/cli/agent-runtime-ports-adapter.d.ts +0 -2
  114. package/dist/cli/agent-runtime-ports-adapter.js +0 -22
  115. package/dist/cli/agent-runtime-session-state.d.ts +0 -24
  116. package/dist/cli/agent-runtime-session-state.js +0 -51
  117. package/dist/cli/agent-status-notifier.d.ts +0 -11
  118. package/dist/cli/agent-status-notifier.js +0 -26
  119. package/dist/cli/agent-status-notifier.test.d.ts +0 -1
  120. package/dist/cli/agent-status-notifier.test.js +0 -33
  121. package/dist/cli/base-tool-bootstrap.d.ts +0 -16
  122. package/dist/cli/base-tool-bootstrap.js +0 -20
  123. package/dist/cli/cli-acp-request-handler.d.ts +0 -11
  124. package/dist/cli/cli-acp-request-handler.js +0 -61
  125. package/dist/cli/cli-acp-request-handler.test.d.ts +0 -1
  126. package/dist/cli/cli-acp-request-handler.test.js +0 -58
  127. package/dist/cli/cli-agent-builder.d.ts +0 -35
  128. package/dist/cli/cli-agent-builder.js +0 -33
  129. package/dist/cli/community-resource-installer.d.ts +0 -30
  130. package/dist/cli/community-resource-installer.js +0 -66
  131. package/dist/cli/community-resource-installer.test.d.ts +0 -1
  132. package/dist/cli/community-resource-installer.test.js +0 -175
  133. package/dist/cli/community-skill-installer.d.ts +0 -12
  134. package/dist/cli/community-skill-installer.js +0 -220
  135. package/dist/cli/community-skill-installer.test.d.ts +0 -1
  136. package/dist/cli/community-skill-installer.test.js +0 -179
  137. package/dist/cli/community-workflow-installer.d.ts +0 -29
  138. package/dist/cli/community-workflow-installer.js +0 -69
  139. package/dist/cli/conversation-context.d.ts +0 -30
  140. package/dist/cli/conversation-context.js +0 -69
  141. package/dist/cli/conversation-context.test.d.ts +0 -1
  142. package/dist/cli/conversation-context.test.js +0 -61
  143. package/dist/cli/core-tool-coordinator.d.ts +0 -41
  144. package/dist/cli/core-tool-coordinator.js +0 -55
  145. package/dist/cli/core-tools/agent-tool-bootstrap.d.ts +0 -12
  146. package/dist/cli/core-tools/agent-tool-bootstrap.js +0 -5
  147. package/dist/cli/core-tools/agent-tool-service.background.test.d.ts +0 -1
  148. package/dist/cli/core-tools/agent-tool-service.background.test.js +0 -212
  149. package/dist/cli/core-tools/agent-tool-service.d.ts +0 -36
  150. package/dist/cli/core-tools/agent-tool-service.js +0 -152
  151. package/dist/cli/core-tools/checkpoint-tool-bootstrap.d.ts +0 -9
  152. package/dist/cli/core-tools/checkpoint-tool-bootstrap.js +0 -8
  153. package/dist/cli/core-tools/checkpoint-tool-service.d.ts +0 -7
  154. package/dist/cli/core-tools/checkpoint-tool-service.js +0 -5
  155. package/dist/cli/core-tools/config-tool-bootstrap.d.ts +0 -5
  156. package/dist/cli/core-tools/config-tool-bootstrap.js +0 -5
  157. package/dist/cli/core-tools/config-tool-service.d.ts +0 -11
  158. package/dist/cli/core-tools/config-tool-service.js +0 -86
  159. package/dist/cli/core-tools/config-tool-service.test.d.ts +0 -1
  160. package/dist/cli/core-tools/config-tool-service.test.js +0 -69
  161. package/dist/cli/core-tools/cron-tool-bootstrap.d.ts +0 -8
  162. package/dist/cli/core-tools/cron-tool-bootstrap.js +0 -8
  163. package/dist/cli/core-tools/cron-workflow-service.d.ts +0 -7
  164. package/dist/cli/core-tools/cron-workflow-service.js +0 -206
  165. package/dist/cli/core-tools/cron-workflow-service.test.d.ts +0 -1
  166. package/dist/cli/core-tools/cron-workflow-service.test.js +0 -78
  167. package/dist/cli/core-tools/fork-system-prompt.d.ts +0 -45
  168. package/dist/cli/core-tools/fork-system-prompt.js +0 -66
  169. package/dist/cli/core-tools/fork-system-prompt.test.d.ts +0 -1
  170. package/dist/cli/core-tools/fork-system-prompt.test.js +0 -77
  171. package/dist/cli/core-tools/monitor-tool-bootstrap.d.ts +0 -7
  172. package/dist/cli/core-tools/monitor-tool-bootstrap.js +0 -8
  173. package/dist/cli/core-tools/monitor-tool-service.d.ts +0 -6
  174. package/dist/cli/core-tools/monitor-tool-service.js +0 -74
  175. package/dist/cli/core-tools/registry.d.ts +0 -8
  176. package/dist/cli/core-tools/registry.js +0 -60
  177. package/dist/cli/core-tools/session-tool-manifest.d.ts +0 -12
  178. package/dist/cli/core-tools/session-tool-manifest.js +0 -19
  179. package/dist/cli/core-tools/team-registry.d.ts +0 -62
  180. package/dist/cli/core-tools/team-registry.js +0 -85
  181. package/dist/cli/core-tools/team-registry.test.d.ts +0 -1
  182. package/dist/cli/core-tools/team-registry.test.js +0 -79
  183. package/dist/cli/core-tools/team-tool-bootstrap.d.ts +0 -11
  184. package/dist/cli/core-tools/team-tool-bootstrap.js +0 -8
  185. package/dist/cli/core-tools/team-tool-service.d.ts +0 -43
  186. package/dist/cli/core-tools/team-tool-service.js +0 -326
  187. package/dist/cli/core-tools/team-tool-service.test.d.ts +0 -1
  188. package/dist/cli/core-tools/team-tool-service.test.js +0 -48
  189. package/dist/cli/credential-vault.d.ts +0 -62
  190. package/dist/cli/credential-vault.js +0 -190
  191. package/dist/cli/credential-vault.test.d.ts +0 -6
  192. package/dist/cli/credential-vault.test.js +0 -130
  193. package/dist/cli/default-project-bootstrap.d.ts +0 -8
  194. package/dist/cli/default-project-bootstrap.js +0 -39
  195. package/dist/cli/dev-tool-bootstrap.d.ts +0 -8
  196. package/dist/cli/dev-tool-bootstrap.js +0 -19
  197. package/dist/cli/dev-tools/dev-tool-bootstrap-service.d.ts +0 -6
  198. package/dist/cli/dev-tools/dev-tool-bootstrap-service.js +0 -6
  199. package/dist/cli/dev-tools/dev-tool-registry.d.ts +0 -6
  200. package/dist/cli/dev-tools/dev-tool-registry.js +0 -7
  201. package/dist/cli/dev-tools/lsp-tool-service.d.ts +0 -5
  202. package/dist/cli/dev-tools/lsp-tool-service.js +0 -30
  203. package/dist/cli/dev-tools/lsp-tool-service.test.d.ts +0 -1
  204. package/dist/cli/dev-tools/lsp-tool-service.test.js +0 -14
  205. package/dist/cli/dream-host-adapter.d.ts +0 -23
  206. package/dist/cli/dream-host-adapter.js +0 -33
  207. package/dist/cli/gateway-rpc-connection.d.ts +0 -50
  208. package/dist/cli/gateway-rpc-connection.js +0 -133
  209. package/dist/cli/handlers/agents-handler.d.ts +0 -51
  210. package/dist/cli/handlers/agents-handler.js +0 -769
  211. package/dist/cli/handlers/community-handler.d.ts +0 -39
  212. package/dist/cli/handlers/community-handler.js +0 -671
  213. package/dist/cli/handlers/community-handler.test.d.ts +0 -1
  214. package/dist/cli/handlers/community-handler.test.js +0 -1602
  215. package/dist/cli/handlers/config-handler.d.ts +0 -28
  216. package/dist/cli/handlers/config-handler.js +0 -438
  217. package/dist/cli/handlers/config-handler.test.d.ts +0 -1
  218. package/dist/cli/handlers/config-handler.test.js +0 -140
  219. package/dist/cli/handlers/config-handler.tools-list.test.d.ts +0 -1
  220. package/dist/cli/handlers/config-handler.tools-list.test.js +0 -93
  221. package/dist/cli/handlers/control-handler.d.ts +0 -23
  222. package/dist/cli/handlers/control-handler.js +0 -88
  223. package/dist/cli/handlers/dream-handler.d.ts +0 -31
  224. package/dist/cli/handlers/dream-handler.js +0 -235
  225. package/dist/cli/handlers/files-handler.d.ts +0 -22
  226. package/dist/cli/handlers/files-handler.instructions.test.d.ts +0 -1
  227. package/dist/cli/handlers/files-handler.instructions.test.js +0 -127
  228. package/dist/cli/handlers/files-handler.js +0 -593
  229. package/dist/cli/handlers/media-handler.d.ts +0 -19
  230. package/dist/cli/handlers/media-handler.js +0 -212
  231. package/dist/cli/handlers/media-handler.test.d.ts +0 -1
  232. package/dist/cli/handlers/media-handler.test.js +0 -107
  233. package/dist/cli/handlers/memory-handler.d.ts +0 -61
  234. package/dist/cli/handlers/memory-handler.js +0 -792
  235. package/dist/cli/handlers/pet-confirm-handler.d.ts +0 -7
  236. package/dist/cli/handlers/pet-confirm-handler.js +0 -6
  237. package/dist/cli/handlers/pet-handler.d.ts +0 -47
  238. package/dist/cli/handlers/pet-handler.js +0 -455
  239. package/dist/cli/handlers/pet-handler.test.d.ts +0 -1
  240. package/dist/cli/handlers/pet-handler.test.js +0 -620
  241. package/dist/cli/handlers/product-handler.d.ts +0 -37
  242. package/dist/cli/handlers/product-handler.js +0 -393
  243. package/dist/cli/handlers/project-handler.d.ts +0 -28
  244. package/dist/cli/handlers/project-handler.js +0 -421
  245. package/dist/cli/handlers/session-handler.channel.test.d.ts +0 -1
  246. package/dist/cli/handlers/session-handler.channel.test.js +0 -157
  247. package/dist/cli/handlers/session-handler.d.ts +0 -58
  248. package/dist/cli/handlers/session-handler.delete.test.d.ts +0 -1
  249. package/dist/cli/handlers/session-handler.delete.test.js +0 -38
  250. package/dist/cli/handlers/session-handler.js +0 -833
  251. package/dist/cli/handlers/session-handler.resume.test.d.ts +0 -1
  252. package/dist/cli/handlers/session-handler.resume.test.js +0 -66
  253. package/dist/cli/handlers/settings-handler.d.ts +0 -19
  254. package/dist/cli/handlers/settings-handler.js +0 -710
  255. package/dist/cli/handlers/settings-handler.remote-catalog.test.d.ts +0 -1
  256. package/dist/cli/handlers/settings-handler.remote-catalog.test.js +0 -1247
  257. package/dist/cli/handlers/skills-handler.d.ts +0 -29
  258. package/dist/cli/handlers/skills-handler.js +0 -368
  259. package/dist/cli/handlers/skills-handler.profile.test.d.ts +0 -1
  260. package/dist/cli/handlers/skills-handler.profile.test.js +0 -70
  261. package/dist/cli/handlers/solo-handler.d.ts +0 -38
  262. package/dist/cli/handlers/solo-handler.js +0 -351
  263. package/dist/cli/handlers/turn-handler.d.ts +0 -52
  264. package/dist/cli/handlers/turn-handler.js +0 -574
  265. package/dist/cli/handlers/turn-handler.test.d.ts +0 -1
  266. package/dist/cli/handlers/turn-handler.test.js +0 -22
  267. package/dist/cli/handlers/workflow-handler.d.ts +0 -181
  268. package/dist/cli/handlers/workflow-handler.events.test.d.ts +0 -1
  269. package/dist/cli/handlers/workflow-handler.events.test.js +0 -113
  270. package/dist/cli/handlers/workflow-handler.js +0 -1449
  271. package/dist/cli/handlers/workflow-handler.multiroot.test.d.ts +0 -12
  272. package/dist/cli/handlers/workflow-handler.multiroot.test.js +0 -745
  273. package/dist/cli/idle-dream-coordinator.d.ts +0 -47
  274. package/dist/cli/idle-dream-coordinator.js +0 -126
  275. package/dist/cli/idle-dream-coordinator.test.d.ts +0 -1
  276. package/dist/cli/idle-dream-coordinator.test.js +0 -125
  277. package/dist/cli/main.d.ts +0 -15
  278. package/dist/cli/main.js +0 -112
  279. package/dist/cli/mcp-bootstrap.d.ts +0 -20
  280. package/dist/cli/mcp-bootstrap.js +0 -66
  281. package/dist/cli/mcp-plugin-bootstrap.d.ts +0 -2
  282. package/dist/cli/mcp-plugin-bootstrap.js +0 -2
  283. package/dist/cli/mcp-plugin-bootstrap.test.d.ts +0 -1
  284. package/dist/cli/mcp-plugin-bootstrap.test.js +0 -38
  285. package/dist/cli/mcp-tool-proxy.d.ts +0 -7
  286. package/dist/cli/mcp-tool-proxy.js +0 -15
  287. package/dist/cli/media-capability-schema.d.ts +0 -49
  288. package/dist/cli/media-capability-schema.js +0 -384
  289. package/dist/cli/media-capability-schema.test.d.ts +0 -1
  290. package/dist/cli/media-capability-schema.test.js +0 -103
  291. package/dist/cli/media-file-api-service.d.ts +0 -73
  292. package/dist/cli/media-file-api-service.js +0 -143
  293. package/dist/cli/media-file-api-service.test.d.ts +0 -1
  294. package/dist/cli/media-file-api-service.test.js +0 -119
  295. package/dist/cli/media-file-tool-service.d.ts +0 -13
  296. package/dist/cli/media-file-tool-service.js +0 -63
  297. package/dist/cli/media-runtime-capability.test.d.ts +0 -1
  298. package/dist/cli/media-runtime-capability.test.js +0 -106
  299. package/dist/cli/media-runtime-facade.d.ts +0 -51
  300. package/dist/cli/media-runtime-facade.js +0 -389
  301. package/dist/cli/media-runtime-facade.test.d.ts +0 -1
  302. package/dist/cli/media-runtime-facade.test.js +0 -42
  303. package/dist/cli/memory-candidate-service.d.ts +0 -83
  304. package/dist/cli/memory-candidate-service.js +0 -341
  305. package/dist/cli/memory-coordinator.d.ts +0 -37
  306. package/dist/cli/memory-coordinator.js +0 -85
  307. package/dist/cli/memory-coordinator.test.d.ts +0 -1
  308. package/dist/cli/memory-coordinator.test.js +0 -78
  309. package/dist/cli/memory-multimodal.test.d.ts +0 -1
  310. package/dist/cli/memory-multimodal.test.js +0 -137
  311. package/dist/cli/model-client-resolver.d.ts +0 -31
  312. package/dist/cli/model-client-resolver.js +0 -173
  313. package/dist/cli/model-client-resolver.test.d.ts +0 -1
  314. package/dist/cli/model-client-resolver.test.js +0 -105
  315. package/dist/cli/multi-agent-handler-host.d.ts +0 -27
  316. package/dist/cli/multi-agent-handler-host.js +0 -55
  317. package/dist/cli/multi-agent-handler-host.test.d.ts +0 -1
  318. package/dist/cli/multi-agent-handler-host.test.js +0 -63
  319. package/dist/cli/multi-agent-state-coordinator.d.ts +0 -11
  320. package/dist/cli/multi-agent-state-coordinator.js +0 -7
  321. package/dist/cli/permission-approval-bridge.d.ts +0 -15
  322. package/dist/cli/permission-approval-bridge.js +0 -66
  323. package/dist/cli/permission-approval-bridge.test.d.ts +0 -1
  324. package/dist/cli/permission-approval-bridge.test.js +0 -100
  325. package/dist/cli/permission-bootstrap.d.ts +0 -40
  326. package/dist/cli/permission-bootstrap.js +0 -58
  327. package/dist/cli/permission-bootstrap.test.d.ts +0 -1
  328. package/dist/cli/permission-bootstrap.test.js +0 -129
  329. package/dist/cli/permission-runtime-service.d.ts +0 -9
  330. package/dist/cli/permission-runtime-service.js +0 -11
  331. package/dist/cli/permission-settings-store.d.ts +0 -1
  332. package/dist/cli/permission-settings-store.js +0 -3
  333. package/dist/cli/permission-settings-store.test.d.ts +0 -1
  334. package/dist/cli/permission-settings-store.test.js +0 -65
  335. package/dist/cli/pet-confirm-coordinator.d.ts +0 -20
  336. package/dist/cli/pet-confirm-coordinator.js +0 -32
  337. package/dist/cli/pet-confirm-coordinator.test.d.ts +0 -1
  338. package/dist/cli/pet-confirm-coordinator.test.js +0 -34
  339. package/dist/cli/pet-runtime.d.ts +0 -55
  340. package/dist/cli/pet-runtime.js +0 -220
  341. package/dist/cli/pet-runtime.test.d.ts +0 -1
  342. package/dist/cli/pet-runtime.test.js +0 -46
  343. package/dist/cli/plugin-bootstrap.d.ts +0 -15
  344. package/dist/cli/plugin-bootstrap.js +0 -63
  345. package/dist/cli/product-coordinator.d.ts +0 -34
  346. package/dist/cli/product-coordinator.js +0 -124
  347. package/dist/cli/product-coordinator.test.d.ts +0 -1
  348. package/dist/cli/product-coordinator.test.js +0 -51
  349. package/dist/cli/project-command-service.d.ts +0 -28
  350. package/dist/cli/project-command-service.js +0 -99
  351. package/dist/cli/project-context.d.ts +0 -1
  352. package/dist/cli/project-context.js +0 -4
  353. package/dist/cli/project-memory-store-factory.d.ts +0 -2
  354. package/dist/cli/project-memory-store-factory.js +0 -11
  355. package/dist/cli/project-template-seeder.d.ts +0 -5
  356. package/dist/cli/project-template-seeder.js +0 -43
  357. package/dist/cli/provider-core-facade.d.ts +0 -31
  358. package/dist/cli/provider-core-facade.js +0 -51
  359. package/dist/cli/provider-core-facade.test.d.ts +0 -1
  360. package/dist/cli/provider-core-facade.test.js +0 -9
  361. package/dist/cli/resolved-agent-cache.d.ts +0 -47
  362. package/dist/cli/resolved-agent-cache.js +0 -38
  363. package/dist/cli/rpc-registry.community.test.d.ts +0 -1
  364. package/dist/cli/rpc-registry.community.test.js +0 -45
  365. package/dist/cli/rpc-registry.d.ts +0 -62
  366. package/dist/cli/rpc-registry.js +0 -243
  367. package/dist/cli/runtime-dependency-catalog.d.ts +0 -56
  368. package/dist/cli/runtime-dependency-catalog.js +0 -110
  369. package/dist/cli/runtime-hook-bootstrap.d.ts +0 -38
  370. package/dist/cli/runtime-hook-bootstrap.js +0 -71
  371. package/dist/cli/runtime-watcher-bootstrap.d.ts +0 -15
  372. package/dist/cli/runtime-watcher-bootstrap.js +0 -30
  373. package/dist/cli/session-context.d.ts +0 -32
  374. package/dist/cli/session-context.js +0 -15
  375. package/dist/cli/session-coordinator.d.ts +0 -22
  376. package/dist/cli/session-coordinator.js +0 -47
  377. package/dist/cli/session-coordinator.test.d.ts +0 -1
  378. package/dist/cli/session-coordinator.test.js +0 -61
  379. package/dist/cli/session-history-coordinator.d.ts +0 -8
  380. package/dist/cli/session-history-coordinator.js +0 -57
  381. package/dist/cli/session-history-coordinator.test.d.ts +0 -1
  382. package/dist/cli/session-history-coordinator.test.js +0 -39
  383. package/dist/cli/session-query-service.d.ts +0 -24
  384. package/dist/cli/session-query-service.js +0 -57
  385. package/dist/cli/skill-meta-subturn-service.d.ts +0 -26
  386. package/dist/cli/skill-meta-subturn-service.js +0 -93
  387. package/dist/cli/skill-meta-tool-bootstrap.d.ts +0 -34
  388. package/dist/cli/skill-meta-tool-bootstrap.js +0 -295
  389. package/dist/cli/skill-meta-tool-bootstrap.test.d.ts +0 -1
  390. package/dist/cli/skill-meta-tool-bootstrap.test.js +0 -42
  391. package/dist/cli/skill-supporting-file.test.d.ts +0 -1
  392. package/dist/cli/skill-supporting-file.test.js +0 -97
  393. package/dist/cli/skills-query-service.d.ts +0 -29
  394. package/dist/cli/skills-query-service.js +0 -38
  395. package/dist/cli/stdio-acp-protocol-coordinator.d.ts +0 -18
  396. package/dist/cli/stdio-acp-protocol-coordinator.js +0 -33
  397. package/dist/cli/stdio-acp-request-host.d.ts +0 -28
  398. package/dist/cli/stdio-acp-request-host.js +0 -82
  399. package/dist/cli/stdio-acp-request-host.test.d.ts +0 -1
  400. package/dist/cli/stdio-acp-request-host.test.js +0 -61
  401. package/dist/cli/stdio-agent-session-bootstrap.d.ts +0 -80
  402. package/dist/cli/stdio-agent-session-bootstrap.js +0 -74
  403. package/dist/cli/stdio-rpc-handler-hosts.d.ts +0 -50
  404. package/dist/cli/stdio-rpc-handler-hosts.js +0 -135
  405. package/dist/cli/stdio-rpc-handler-hosts.test.d.ts +0 -1
  406. package/dist/cli/stdio-rpc-handler-hosts.test.js +0 -10
  407. package/dist/cli/stdio-runtime-bootstrap.d.ts +0 -16
  408. package/dist/cli/stdio-runtime-bootstrap.js +0 -17
  409. package/dist/cli/stdio-runtime-services.d.ts +0 -36
  410. package/dist/cli/stdio-runtime-services.js +0 -53
  411. package/dist/cli/stdio-server.architecture.test.d.ts +0 -1
  412. package/dist/cli/stdio-server.architecture.test.js +0 -18
  413. package/dist/cli/stdio-server.contract.test.d.ts +0 -1
  414. package/dist/cli/stdio-server.contract.test.js +0 -96
  415. package/dist/cli/stdio-server.d.ts +0 -211
  416. package/dist/cli/stdio-server.js +0 -731
  417. package/dist/cli/stdio-session-runtime-coordinator.d.ts +0 -19
  418. package/dist/cli/stdio-session-runtime-coordinator.js +0 -21
  419. package/dist/cli/test-support/tool-catalog-fixture.d.ts +0 -3
  420. package/dist/cli/test-support/tool-catalog-fixture.js +0 -98
  421. package/dist/cli/tool-bootstrap-core-registration.d.ts +0 -30
  422. package/dist/cli/tool-bootstrap-core-registration.js +0 -555
  423. package/dist/cli/tool-bootstrap-media-registration.d.ts +0 -8
  424. package/dist/cli/tool-bootstrap-media-registration.js +0 -348
  425. package/dist/cli/tool-bootstrap-paths.d.ts +0 -7
  426. package/dist/cli/tool-bootstrap-paths.js +0 -17
  427. package/dist/cli/tool-bootstrap-providers.d.ts +0 -3
  428. package/dist/cli/tool-bootstrap-providers.js +0 -10
  429. package/dist/cli/tool-bootstrap-web-registration.d.ts +0 -13
  430. package/dist/cli/tool-bootstrap-web-registration.js +0 -144
  431. package/dist/cli/tool-bootstrap-workflow-registration.d.ts +0 -7
  432. package/dist/cli/tool-bootstrap-workflow-registration.js +0 -65
  433. package/dist/cli/tool-bootstrap.background-exec.test.d.ts +0 -1
  434. package/dist/cli/tool-bootstrap.background-exec.test.js +0 -83
  435. package/dist/cli/tool-bootstrap.cwd.test.d.ts +0 -1
  436. package/dist/cli/tool-bootstrap.cwd.test.js +0 -37
  437. package/dist/cli/tool-bootstrap.d.ts +0 -63
  438. package/dist/cli/tool-bootstrap.instructions.test.d.ts +0 -1
  439. package/dist/cli/tool-bootstrap.instructions.test.js +0 -37
  440. package/dist/cli/tool-bootstrap.js +0 -255
  441. package/dist/cli/tool-bootstrap.media-provider-alias.test.d.ts +0 -1
  442. package/dist/cli/tool-bootstrap.media-provider-alias.test.js +0 -90
  443. package/dist/cli/tool-bootstrap.test.d.ts +0 -1
  444. package/dist/cli/tool-bootstrap.test.js +0 -94
  445. package/dist/cli/tool-catalog.d.ts +0 -4
  446. package/dist/cli/tool-catalog.js +0 -14
  447. package/dist/cli/tool-invoker-factory.d.ts +0 -12
  448. package/dist/cli/tool-invoker-factory.js +0 -45
  449. package/dist/cli/tool-registration-modules.contract.test.d.ts +0 -1
  450. package/dist/cli/tool-registration-modules.contract.test.js +0 -75
  451. package/dist/cli/tool-registry-adapter.d.ts +0 -5
  452. package/dist/cli/tool-registry-adapter.js +0 -27
  453. package/dist/cli/tool-result-processor.d.ts +0 -14
  454. package/dist/cli/tool-result-processor.js +0 -83
  455. package/dist/cli/tool-result-processor.test.d.ts +0 -1
  456. package/dist/cli/tool-result-processor.test.js +0 -69
  457. package/dist/cli/transport.d.ts +0 -30
  458. package/dist/cli/transport.js +0 -68
  459. package/dist/cli/tunable-store.d.ts +0 -26
  460. package/dist/cli/tunable-store.js +0 -105
  461. package/dist/cli/turn-ask-user-setup.d.ts +0 -24
  462. package/dist/cli/turn-ask-user-setup.js +0 -46
  463. package/dist/cli/turn-ask-user-setup.test.d.ts +0 -1
  464. package/dist/cli/turn-ask-user-setup.test.js +0 -39
  465. package/dist/cli/turn-core.d.ts +0 -57
  466. package/dist/cli/turn-core.js +0 -58
  467. package/dist/cli/turn-event-forwarder.d.ts +0 -10
  468. package/dist/cli/turn-event-forwarder.js +0 -136
  469. package/dist/cli/turn-lifecycle.d.ts +0 -19
  470. package/dist/cli/turn-lifecycle.js +0 -53
  471. package/dist/cli/turn-lifecycle.test.d.ts +0 -1
  472. package/dist/cli/turn-lifecycle.test.js +0 -32
  473. package/dist/cli/turn-media-setup.d.ts +0 -19
  474. package/dist/cli/turn-media-setup.js +0 -71
  475. package/dist/cli/turn-media-setup.test.d.ts +0 -1
  476. package/dist/cli/turn-media-setup.test.js +0 -280
  477. package/dist/cli/turn-permission-sync.d.ts +0 -6
  478. package/dist/cli/turn-permission-sync.js +0 -7
  479. package/dist/cli/turn-permission-sync.test.d.ts +0 -1
  480. package/dist/cli/turn-permission-sync.test.js +0 -20
  481. package/dist/cli/turn-project-router.d.ts +0 -22
  482. package/dist/cli/turn-project-router.js +0 -141
  483. package/dist/cli/turn-project-router.test.d.ts +0 -1
  484. package/dist/cli/turn-project-router.test.js +0 -79
  485. package/dist/cli/turn-skill-autopersist.d.ts +0 -47
  486. package/dist/cli/turn-skill-autopersist.js +0 -262
  487. package/dist/cli/turn-skill-autopersist.test.d.ts +0 -1
  488. package/dist/cli/turn-skill-autopersist.test.js +0 -222
  489. package/dist/cli/turn-suggestion-generator.d.ts +0 -15
  490. package/dist/cli/turn-suggestion-generator.js +0 -34
  491. package/dist/cli/workflow-host-adapter.d.ts +0 -29
  492. package/dist/cli/workflow-host-adapter.js +0 -15
  493. package/dist/cli/workflow-host-adapter.test.d.ts +0 -1
  494. package/dist/cli/workflow-host-adapter.test.js +0 -35
  495. package/dist/config/config.d.ts +0 -17
  496. package/dist/config/config.js +0 -21
  497. package/dist/contracts/fire-hook.d.ts +0 -14
  498. package/dist/contracts/fire-hook.js +0 -14
  499. package/dist/contracts/fire-hook.test.d.ts +0 -1
  500. package/dist/contracts/fire-hook.test.js +0 -34
  501. package/dist/contracts/hooks.d.ts +0 -186
  502. package/dist/contracts/hooks.js +0 -7
  503. package/dist/contracts/index.d.ts +0 -4
  504. package/dist/contracts/index.js +0 -4
  505. package/dist/index.d.ts +0 -15
  506. package/dist/orchestration/agent-instance.d.ts +0 -84
  507. package/dist/orchestration/agent-instance.js +0 -535
  508. package/dist/orchestration/context/context-collapse.d.ts +0 -58
  509. package/dist/orchestration/context/context-collapse.js +0 -134
  510. package/dist/orchestration/context/reactive-compact.d.ts +0 -73
  511. package/dist/orchestration/context/reactive-compact.js +0 -78
  512. package/dist/orchestration/context/turn-loop-guard.d.ts +0 -86
  513. package/dist/orchestration/context/turn-loop-guard.js +0 -100
  514. package/dist/orchestration/dag-scheduler.d.ts +0 -167
  515. package/dist/orchestration/dag-scheduler.js +0 -546
  516. package/dist/orchestration/error-handling/error-classification.d.ts +0 -3
  517. package/dist/orchestration/error-handling/error-classification.js +0 -35
  518. package/dist/orchestration/error-handling/failover-classification.d.ts +0 -8
  519. package/dist/orchestration/error-handling/failover-classification.js +0 -381
  520. package/dist/orchestration/error-handling/retry-loop.d.ts +0 -69
  521. package/dist/orchestration/error-handling/retry-loop.js +0 -96
  522. package/dist/orchestration/index.d.ts +0 -15
  523. package/dist/orchestration/index.js +0 -18
  524. package/dist/orchestration/product-budget.d.ts +0 -56
  525. package/dist/orchestration/product-budget.js +0 -112
  526. package/dist/orchestration/product-checkpoint.d.ts +0 -46
  527. package/dist/orchestration/product-checkpoint.js +0 -74
  528. package/dist/orchestration/product-dag-mutation-applier.d.ts +0 -10
  529. package/dist/orchestration/product-dag-mutation-applier.js +0 -91
  530. package/dist/orchestration/product-persistence.d.ts +0 -35
  531. package/dist/orchestration/product-persistence.js +0 -55
  532. package/dist/orchestration/product-planner.d.ts +0 -146
  533. package/dist/orchestration/product-planner.js +0 -379
  534. package/dist/orchestration/product-run-coordinator.d.ts +0 -31
  535. package/dist/orchestration/product-run-coordinator.js +0 -31
  536. package/dist/orchestration/product-worktree.d.ts +0 -12
  537. package/dist/orchestration/product-worktree.js +0 -69
  538. package/dist/orchestration/skill-improvement.d.ts +0 -129
  539. package/dist/orchestration/skill-improvement.js +0 -243
  540. package/dist/orchestration/solo-evaluator.d.ts +0 -124
  541. package/dist/orchestration/solo-evaluator.js +0 -611
  542. package/dist/orchestration/solo-persistence.d.ts +0 -48
  543. package/dist/orchestration/solo-persistence.js +0 -67
  544. package/dist/orchestration/solo-spec-builder.d.ts +0 -48
  545. package/dist/orchestration/solo-spec-builder.js +0 -139
  546. package/dist/orchestration/subagent/agent-registry.d.ts +0 -46
  547. package/dist/orchestration/subagent/agent-registry.js +0 -129
  548. package/dist/orchestration/subagent/fork-subagent.d.ts +0 -100
  549. package/dist/orchestration/subagent/fork-subagent.js +0 -101
  550. package/dist/orchestration/subagent/task-types.d.ts +0 -1
  551. package/dist/orchestration/subagent/task-types.js +0 -1
  552. package/dist/orchestration/tool-cascade.d.ts +0 -49
  553. package/dist/orchestration/tool-cascade.js +0 -86
  554. package/dist/orchestration/tool-loop/conversation-repair.d.ts +0 -61
  555. package/dist/orchestration/tool-loop/conversation-repair.js +0 -429
  556. package/dist/orchestration/tool-loop/tool-choice-policy.d.ts +0 -54
  557. package/dist/orchestration/tool-loop/tool-choice-policy.js +0 -164
  558. package/dist/orchestration/tool-loop/tool-loop-state.d.ts +0 -50
  559. package/dist/orchestration/tool-loop/tool-loop-state.js +0 -133
  560. package/dist/orchestration/tool-loop/tool-schema.d.ts +0 -46
  561. package/dist/orchestration/tool-loop/tool-schema.js +0 -208
  562. package/dist/orchestration/workflow/budget-permission-gate.d.ts +0 -85
  563. package/dist/orchestration/workflow/budget-permission-gate.js +0 -134
  564. package/dist/orchestration/workflow/builtin-executors.d.ts +0 -18
  565. package/dist/orchestration/workflow/builtin-executors.js +0 -191
  566. package/dist/orchestration/workflow/capability-catalog.d.ts +0 -64
  567. package/dist/orchestration/workflow/capability-catalog.js +0 -166
  568. package/dist/orchestration/workflow/cron-schedule.d.ts +0 -37
  569. package/dist/orchestration/workflow/cron-schedule.js +0 -199
  570. package/dist/orchestration/workflow/data-item.d.ts +0 -39
  571. package/dist/orchestration/workflow/data-item.js +0 -52
  572. package/dist/orchestration/workflow/expression.d.ts +0 -60
  573. package/dist/orchestration/workflow/expression.js +0 -474
  574. package/dist/orchestration/workflow/host-executors.d.ts +0 -15
  575. package/dist/orchestration/workflow/host-executors.js +0 -207
  576. package/dist/orchestration/workflow/n8n-expression.d.ts +0 -48
  577. package/dist/orchestration/workflow/n8n-expression.js +0 -95
  578. package/dist/orchestration/workflow/n8n-import.d.ts +0 -68
  579. package/dist/orchestration/workflow/n8n-import.js +0 -319
  580. package/dist/orchestration/workflow/node-registry.d.ts +0 -19
  581. package/dist/orchestration/workflow/node-registry.js +0 -45
  582. package/dist/orchestration/workflow/node-schema.d.ts +0 -232
  583. package/dist/orchestration/workflow/node-schema.js +0 -29
  584. package/dist/orchestration/workflow/qla-executor-host.d.ts +0 -77
  585. package/dist/orchestration/workflow/qla-executor-host.js +0 -124
  586. package/dist/orchestration/workflow/run-checkpoint-store.d.ts +0 -53
  587. package/dist/orchestration/workflow/run-checkpoint-store.js +0 -59
  588. package/dist/orchestration/workflow/run-history-store.d.ts +0 -65
  589. package/dist/orchestration/workflow/run-history-store.js +0 -104
  590. package/dist/orchestration/workflow/trigger-validation.d.ts +0 -22
  591. package/dist/orchestration/workflow/trigger-validation.js +0 -241
  592. package/dist/orchestration/workflow/workflow-audit-store.d.ts +0 -31
  593. package/dist/orchestration/workflow/workflow-audit-store.js +0 -55
  594. package/dist/orchestration/workflow/workflow-bundle.d.ts +0 -65
  595. package/dist/orchestration/workflow/workflow-bundle.js +0 -168
  596. package/dist/orchestration/workflow/workflow-controller.d.ts +0 -219
  597. package/dist/orchestration/workflow/workflow-controller.js +0 -522
  598. package/dist/orchestration/workflow/workflow-patch.d.ts +0 -116
  599. package/dist/orchestration/workflow/workflow-patch.js +0 -369
  600. package/dist/orchestration/workflow/workflow-render.d.ts +0 -41
  601. package/dist/orchestration/workflow/workflow-render.js +0 -108
  602. package/dist/orchestration/workflow/workflow-runtime.d.ts +0 -171
  603. package/dist/orchestration/workflow/workflow-runtime.js +0 -474
  604. package/dist/orchestration/workflow/workflow-scheduler.d.ts +0 -111
  605. package/dist/orchestration/workflow/workflow-scheduler.js +0 -230
  606. package/dist/orchestration/workflow/workflow-service.d.ts +0 -14
  607. package/dist/orchestration/workflow/workflow-service.js +0 -18
  608. package/dist/orchestration/workflow/workflow-store.d.ts +0 -81
  609. package/dist/orchestration/workflow/workflow-store.js +0 -123
  610. package/dist/orchestration/workflow/workflow-trigger.d.ts +0 -35
  611. package/dist/orchestration/workflow/workflow-trigger.js +0 -1
  612. package/dist/orchestration/workflow-chat-builder.d.ts +0 -57
  613. package/dist/orchestration/workflow-chat-builder.js +0 -202
  614. package/dist/permissions.d.ts +0 -2
  615. package/dist/permissions.public-api.test.d.ts +0 -1
  616. package/dist/permissions.public-api.test.js +0 -32
  617. package/dist/pet-contracts.d.ts +0 -1
  618. package/dist/protocol/index.d.ts +0 -7
  619. package/dist/protocol/index.js +0 -7
  620. package/dist/protocol/methods.d.ts +0 -1190
  621. package/dist/protocol/methods.js +0 -110
  622. package/dist/protocol/notifications.d.ts +0 -9
  623. package/dist/protocol/notifications.js +0 -9
  624. package/dist/protocol/wire/acp-agent-management.d.ts +0 -456
  625. package/dist/protocol/wire/acp-agent-management.js +0 -7
  626. package/dist/protocol/wire/acp-protocol.d.ts +0 -369
  627. package/dist/protocol/wire/acp-protocol.js +0 -120
  628. package/dist/protocol/wire/agent-events.d.ts +0 -32
  629. package/dist/protocol/wire/agent-events.js +0 -113
  630. package/dist/protocol/wire/agent-methods.d.ts +0 -564
  631. package/dist/protocol/wire/agent-methods.js +0 -11
  632. package/dist/protocol/wire/agent-rpc.d.ts +0 -100
  633. package/dist/protocol/wire/agent-rpc.js +0 -72
  634. package/dist/protocol/wire/capability-manifest.d.ts +0 -112
  635. package/dist/protocol/wire/capability-manifest.js +0 -149
  636. package/dist/protocol/wire/capability-transport.d.ts +0 -207
  637. package/dist/protocol/wire/capability-transport.js +0 -1
  638. package/dist/protocol/wire/channel-ingress.d.ts +0 -29
  639. package/dist/protocol/wire/channel-ingress.js +0 -1
  640. package/dist/protocol/wire/channel.d.ts +0 -89
  641. package/dist/protocol/wire/channel.js +0 -1
  642. package/dist/protocol/wire/chat-types.d.ts +0 -106
  643. package/dist/protocol/wire/chat-types.js +0 -7
  644. package/dist/protocol/wire/checkpoint-runtime.d.ts +0 -61
  645. package/dist/protocol/wire/checkpoint-runtime.js +0 -499
  646. package/dist/protocol/wire/checkpoint.d.ts +0 -72
  647. package/dist/protocol/wire/checkpoint.js +0 -12
  648. package/dist/protocol/wire/execution.d.ts +0 -391
  649. package/dist/protocol/wire/execution.js +0 -1
  650. package/dist/protocol/wire/gateway-contract.d.ts +0 -61
  651. package/dist/protocol/wire/gateway-contract.js +0 -236
  652. package/dist/protocol/wire/gateway-contract.test.d.ts +0 -1
  653. package/dist/protocol/wire/gateway-contract.test.js +0 -123
  654. package/dist/protocol/wire/gateway-rpc.d.ts +0 -652
  655. package/dist/protocol/wire/gateway-rpc.js +0 -58
  656. package/dist/protocol/wire/gateway.d.ts +0 -62
  657. package/dist/protocol/wire/gateway.js +0 -1
  658. package/dist/protocol/wire/hook-protocol.d.ts +0 -37
  659. package/dist/protocol/wire/hook-protocol.js +0 -2
  660. package/dist/protocol/wire/index.d.ts +0 -28
  661. package/dist/protocol/wire/index.js +0 -27
  662. package/dist/protocol/wire/memory-provider-lifecycle.d.ts +0 -82
  663. package/dist/protocol/wire/memory-provider-lifecycle.js +0 -24
  664. package/dist/protocol/wire/notification-payloads.d.ts +0 -918
  665. package/dist/protocol/wire/notification-payloads.js +0 -13
  666. package/dist/protocol/wire/pet-contracts.d.ts +0 -76
  667. package/dist/protocol/wire/pet-contracts.js +0 -23
  668. package/dist/protocol/wire/provider-runtime-contract.d.ts +0 -66
  669. package/dist/protocol/wire/provider-runtime-contract.js +0 -23
  670. package/dist/protocol/wire/provider-runtime-core.d.ts +0 -147
  671. package/dist/protocol/wire/provider-runtime-core.js +0 -488
  672. package/dist/protocol/wire/provider-runtime-io.d.ts +0 -20
  673. package/dist/protocol/wire/provider-runtime-io.js +0 -57
  674. package/dist/protocol/wire/resource-manifest.d.ts +0 -68
  675. package/dist/protocol/wire/resource-manifest.js +0 -174
  676. package/dist/protocol/wire/session.d.ts +0 -32
  677. package/dist/protocol/wire/session.js +0 -1
  678. package/dist/protocol/wire/thread-protocol.d.ts +0 -145
  679. package/dist/protocol/wire/thread-protocol.js +0 -13
  680. package/dist/protocol/wire/transport.d.ts +0 -57
  681. package/dist/protocol/wire/transport.js +0 -1
  682. package/dist/protocol/wire/turn.d.ts +0 -208
  683. package/dist/protocol/wire/turn.js +0 -1
  684. package/dist/protocol/wire/web-capability.d.ts +0 -54
  685. package/dist/protocol/wire/web-capability.js +0 -52
  686. package/dist/runtime/community/community-consent-client.d.ts +0 -142
  687. package/dist/runtime/community/community-consent-client.js +0 -381
  688. package/dist/runtime/community/community-consent-client.test.d.ts +0 -1
  689. package/dist/runtime/community/community-consent-client.test.js +0 -491
  690. package/dist/runtime/community/community-desensitization-red-team-cli.d.ts +0 -7
  691. package/dist/runtime/community/community-desensitization-red-team-cli.js +0 -43
  692. package/dist/runtime/community/community-desensitization-red-team-cli.test.d.ts +0 -1
  693. package/dist/runtime/community/community-desensitization-red-team-cli.test.js +0 -23
  694. package/dist/runtime/community/community-desensitization.d.ts +0 -29
  695. package/dist/runtime/community/community-desensitization.js +0 -81
  696. package/dist/runtime/community/community-desensitization.test.d.ts +0 -1
  697. package/dist/runtime/community/community-desensitization.test.js +0 -43
  698. package/dist/runtime/community/community-discovery-cache.d.ts +0 -24
  699. package/dist/runtime/community/community-discovery-cache.js +0 -52
  700. package/dist/runtime/community/community-discovery-coordinator.d.ts +0 -33
  701. package/dist/runtime/community/community-discovery-coordinator.js +0 -84
  702. package/dist/runtime/community/community-discovery-coordinator.test.d.ts +0 -1
  703. package/dist/runtime/community/community-discovery-coordinator.test.js +0 -97
  704. package/dist/runtime/community/community-pet-publisher.d.ts +0 -30
  705. package/dist/runtime/community/community-pet-publisher.js +0 -53
  706. package/dist/runtime/community/community-pet-publisher.test.d.ts +0 -1
  707. package/dist/runtime/community/community-pet-publisher.test.js +0 -53
  708. package/dist/runtime/community/community-signal-reporter.d.ts +0 -33
  709. package/dist/runtime/community/community-signal-reporter.js +0 -85
  710. package/dist/runtime/community/community-signal-reporter.test.d.ts +0 -1
  711. package/dist/runtime/community/community-signal-reporter.test.js +0 -100
  712. package/dist/runtime/community/community-telemetry-metadata.d.ts +0 -4
  713. package/dist/runtime/community/community-telemetry-metadata.js +0 -42
  714. package/dist/runtime/community/community-telemetry-recorder.d.ts +0 -6
  715. package/dist/runtime/community/community-telemetry-recorder.js +0 -31
  716. package/dist/runtime/community/community-telemetry-types.d.ts +0 -1
  717. package/dist/runtime/community/community-telemetry-types.js +0 -1
  718. package/dist/runtime/config/tunable-defaults.d.ts +0 -255
  719. package/dist/runtime/config/tunable-defaults.js +0 -293
  720. package/dist/runtime/context/context-compression-strategies.d.ts +0 -301
  721. package/dist/runtime/context/context-compression-strategies.js +0 -860
  722. package/dist/runtime/execution/dream-agent.d.ts +0 -260
  723. package/dist/runtime/execution/dream-agent.js +0 -974
  724. package/dist/runtime/execution/dream-category-context.d.ts +0 -47
  725. package/dist/runtime/execution/dream-category-context.js +0 -226
  726. package/dist/runtime/execution/dream-lock.test.d.ts +0 -1
  727. package/dist/runtime/execution/dream-lock.test.js +0 -54
  728. package/dist/runtime/execution/fork-context.d.ts +0 -14
  729. package/dist/runtime/execution/fork-context.js +0 -20
  730. package/dist/runtime/execution/fork-context.test.d.ts +0 -1
  731. package/dist/runtime/execution/fork-context.test.js +0 -101
  732. package/dist/runtime/execution/forked-agent.d.ts +0 -111
  733. package/dist/runtime/execution/forked-agent.js +0 -172
  734. package/dist/runtime/execution/index.d.ts +0 -7
  735. package/dist/runtime/execution/index.js +0 -8
  736. package/dist/runtime/execution/memory-decay.d.ts +0 -69
  737. package/dist/runtime/execution/memory-decay.js +0 -80
  738. package/dist/runtime/execution/progress-tracker.d.ts +0 -78
  739. package/dist/runtime/execution/progress-tracker.js +0 -107
  740. package/dist/runtime/execution/streaming-tool-executor.d.ts +0 -102
  741. package/dist/runtime/execution/streaming-tool-executor.js +0 -345
  742. package/dist/runtime/execution/streaming-tool-executor.test.d.ts +0 -1
  743. package/dist/runtime/execution/streaming-tool-executor.test.js +0 -49
  744. package/dist/runtime/execution/tool-eligibility.d.ts +0 -36
  745. package/dist/runtime/execution/tool-eligibility.js +0 -94
  746. package/dist/runtime/execution/tool-eligibility.test.d.ts +0 -1
  747. package/dist/runtime/execution/tool-eligibility.test.js +0 -96
  748. package/dist/runtime/execution/tool-result-storage.d.ts +0 -87
  749. package/dist/runtime/execution/tool-result-storage.js +0 -274
  750. package/dist/runtime/hooks/context-compression.d.ts +0 -61
  751. package/dist/runtime/hooks/context-compression.js +0 -334
  752. package/dist/runtime/hooks/hook-registry.d.ts +0 -12
  753. package/dist/runtime/hooks/hook-registry.js +0 -61
  754. package/dist/runtime/hooks/hook-registry.test.d.ts +0 -1
  755. package/dist/runtime/hooks/hook-registry.test.js +0 -51
  756. package/dist/runtime/hooks/index.d.ts +0 -4
  757. package/dist/runtime/hooks/index.js +0 -5
  758. package/dist/runtime/hooks/memory-hooks.d.ts +0 -75
  759. package/dist/runtime/hooks/memory-hooks.js +0 -356
  760. package/dist/runtime/hooks/skill-recall-hooks.d.ts +0 -37
  761. package/dist/runtime/hooks/skill-recall-hooks.js +0 -263
  762. package/dist/runtime/hooks/skill-recall-hooks.test.d.ts +0 -1
  763. package/dist/runtime/hooks/skill-recall-hooks.test.js +0 -52
  764. package/dist/runtime/index.d.ts +0 -5
  765. package/dist/runtime/index.js +0 -13
  766. package/dist/runtime/infra/acp-detector.d.ts +0 -133
  767. package/dist/runtime/infra/acp-detector.js +0 -862
  768. package/dist/runtime/infra/acp-detector.test.d.ts +0 -1
  769. package/dist/runtime/infra/acp-detector.test.js +0 -164
  770. package/dist/runtime/infra/acp-host-handler.d.ts +0 -31
  771. package/dist/runtime/infra/acp-host-handler.js +0 -123
  772. package/dist/runtime/infra/acp-host-handler.test.d.ts +0 -1
  773. package/dist/runtime/infra/acp-host-handler.test.js +0 -64
  774. package/dist/runtime/infra/acp-protocol-adapter.d.ts +0 -146
  775. package/dist/runtime/infra/acp-protocol-adapter.js +0 -382
  776. package/dist/runtime/infra/acp-protocol-adapter.test.d.ts +0 -1
  777. package/dist/runtime/infra/acp-protocol-adapter.test.js +0 -180
  778. package/dist/runtime/infra/acp-usage-tracker.d.ts +0 -46
  779. package/dist/runtime/infra/acp-usage-tracker.js +0 -92
  780. package/dist/runtime/infra/agent-catalog.test.d.ts +0 -1
  781. package/dist/runtime/infra/agent-catalog.test.js +0 -174
  782. package/dist/runtime/infra/agent-config-store.d.ts +0 -30
  783. package/dist/runtime/infra/agent-config-store.js +0 -115
  784. package/dist/runtime/infra/agent-install-runner.d.ts +0 -57
  785. package/dist/runtime/infra/agent-install-runner.js +0 -123
  786. package/dist/runtime/infra/agent-install-runner.test.d.ts +0 -1
  787. package/dist/runtime/infra/agent-install-runner.test.js +0 -103
  788. package/dist/runtime/infra/agent-paths.d.ts +0 -67
  789. package/dist/runtime/infra/agent-paths.js +0 -167
  790. package/dist/runtime/infra/agent-paths.test.d.ts +0 -1
  791. package/dist/runtime/infra/agent-paths.test.js +0 -49
  792. package/dist/runtime/infra/agent-process.d.ts +0 -299
  793. package/dist/runtime/infra/agent-process.js +0 -1318
  794. package/dist/runtime/infra/background-tasks.d.ts +0 -115
  795. package/dist/runtime/infra/background-tasks.js +0 -249
  796. package/dist/runtime/infra/background-tasks.test.d.ts +0 -1
  797. package/dist/runtime/infra/background-tasks.test.js +0 -242
  798. package/dist/runtime/infra/checkpoint-backend.d.ts +0 -8
  799. package/dist/runtime/infra/checkpoint-backend.js +0 -110
  800. package/dist/runtime/infra/cleanup-registry.d.ts +0 -23
  801. package/dist/runtime/infra/cleanup-registry.js +0 -34
  802. package/dist/runtime/infra/default-path-service.d.ts +0 -33
  803. package/dist/runtime/infra/default-path-service.js +0 -76
  804. package/dist/runtime/infra/default-path-service.test.d.ts +0 -1
  805. package/dist/runtime/infra/default-path-service.test.js +0 -31
  806. package/dist/runtime/infra/disk-storage.d.ts +0 -20
  807. package/dist/runtime/infra/disk-storage.js +0 -64
  808. package/dist/runtime/infra/external-agent-approvals.d.ts +0 -41
  809. package/dist/runtime/infra/external-agent-approvals.js +0 -101
  810. package/dist/runtime/infra/external-agent-approvals.test.d.ts +0 -1
  811. package/dist/runtime/infra/external-agent-approvals.test.js +0 -99
  812. package/dist/runtime/infra/external-agent-pool.d.ts +0 -54
  813. package/dist/runtime/infra/external-agent-pool.js +0 -0
  814. package/dist/runtime/infra/external-agent-pool.test.d.ts +0 -1
  815. package/dist/runtime/infra/external-agent-pool.test.js +0 -102
  816. package/dist/runtime/infra/file-watcher.d.ts +0 -72
  817. package/dist/runtime/infra/file-watcher.js +0 -154
  818. package/dist/runtime/infra/index.d.ts +0 -19
  819. package/dist/runtime/infra/index.js +0 -19
  820. package/dist/runtime/infra/key-injection.test.d.ts +0 -1
  821. package/dist/runtime/infra/key-injection.test.js +0 -88
  822. package/dist/runtime/infra/key-pool.d.ts +0 -122
  823. package/dist/runtime/infra/key-pool.js +0 -378
  824. package/dist/runtime/infra/key-pool.test.d.ts +0 -1
  825. package/dist/runtime/infra/key-pool.test.js +0 -36
  826. package/dist/runtime/infra/llmrouter-catalog.d.ts +0 -84
  827. package/dist/runtime/infra/llmrouter-catalog.js +0 -287
  828. package/dist/runtime/infra/llmrouter-catalog.test.d.ts +0 -1
  829. package/dist/runtime/infra/llmrouter-catalog.test.js +0 -80
  830. package/dist/runtime/infra/llmrouter-zero-config.test.d.ts +0 -1
  831. package/dist/runtime/infra/llmrouter-zero-config.test.js +0 -64
  832. package/dist/runtime/infra/mcp-bridge.d.ts +0 -166
  833. package/dist/runtime/infra/mcp-bridge.js +0 -161
  834. package/dist/runtime/infra/media-persistence.d.ts +0 -87
  835. package/dist/runtime/infra/media-persistence.js +0 -278
  836. package/dist/runtime/infra/migrate-project-skills.d.ts +0 -21
  837. package/dist/runtime/infra/migrate-project-skills.js +0 -131
  838. package/dist/runtime/infra/migrate-project-skills.test.d.ts +0 -1
  839. package/dist/runtime/infra/migrate-project-skills.test.js +0 -69
  840. package/dist/runtime/infra/model-id-translator.d.ts +0 -22
  841. package/dist/runtime/infra/model-id-translator.js +0 -74
  842. package/dist/runtime/infra/model-registry.d.ts +0 -148
  843. package/dist/runtime/infra/model-registry.js +0 -529
  844. package/dist/runtime/infra/model-registry.test.d.ts +0 -1
  845. package/dist/runtime/infra/model-registry.test.js +0 -253
  846. package/dist/runtime/infra/process-config-port.d.ts +0 -2
  847. package/dist/runtime/infra/process-config-port.js +0 -5
  848. package/dist/runtime/infra/profile-storage.test.d.ts +0 -1
  849. package/dist/runtime/infra/profile-storage.test.js +0 -41
  850. package/dist/runtime/infra/project-instructions-store.d.ts +0 -30
  851. package/dist/runtime/infra/project-instructions-store.js +0 -124
  852. package/dist/runtime/infra/project-skill-manifest.d.ts +0 -32
  853. package/dist/runtime/infra/project-skill-manifest.js +0 -160
  854. package/dist/runtime/infra/project-skill-manifest.test.d.ts +0 -1
  855. package/dist/runtime/infra/project-skill-manifest.test.js +0 -42
  856. package/dist/runtime/infra/project-store.d.ts +0 -48
  857. package/dist/runtime/infra/project-store.js +0 -284
  858. package/dist/runtime/infra/secure-storage.d.ts +0 -81
  859. package/dist/runtime/infra/secure-storage.js +0 -117
  860. package/dist/runtime/infra/skill-injector.d.ts +0 -59
  861. package/dist/runtime/infra/skill-injector.js +0 -155
  862. package/dist/runtime/infra/skill-injector.test.d.ts +0 -1
  863. package/dist/runtime/infra/skill-injector.test.js +0 -9
  864. package/dist/runtime/infra/skill-resolver.d.ts +0 -51
  865. package/dist/runtime/infra/skill-resolver.js +0 -109
  866. package/dist/runtime/infra/skill-resolver.test.d.ts +0 -1
  867. package/dist/runtime/infra/skill-resolver.test.js +0 -72
  868. package/dist/runtime/infra/task-runtime.d.ts +0 -71
  869. package/dist/runtime/infra/task-runtime.js +0 -181
  870. package/dist/runtime/infra/token-budget.d.ts +0 -92
  871. package/dist/runtime/infra/token-budget.js +0 -170
  872. package/dist/runtime/infra/worktree-backend.d.ts +0 -86
  873. package/dist/runtime/infra/worktree-backend.js +0 -522
  874. package/dist/runtime/memory/categories.d.ts +0 -5
  875. package/dist/runtime/memory/categories.js +0 -4
  876. package/dist/runtime/memory/find-relevant-memories.d.ts +0 -70
  877. package/dist/runtime/memory/find-relevant-memories.js +0 -270
  878. package/dist/runtime/memory/implicit-extraction.d.ts +0 -58
  879. package/dist/runtime/memory/implicit-extraction.js +0 -187
  880. package/dist/runtime/memory/recall-category-filter.d.ts +0 -54
  881. package/dist/runtime/memory/recall-category-filter.js +0 -215
  882. package/dist/runtime/permission-model.d.ts +0 -19
  883. package/dist/runtime/permission-model.js +0 -24
  884. package/dist/runtime/permission-model.test.d.ts +0 -1
  885. package/dist/runtime/permission-model.test.js +0 -32
  886. package/dist/runtime/pet/hatch-pet-runner.d.ts +0 -18
  887. package/dist/runtime/pet/hatch-pet-runner.js +0 -120
  888. package/dist/runtime/pet/hatch-pet-runner.test.d.ts +0 -1
  889. package/dist/runtime/pet/hatch-pet-runner.test.js +0 -28
  890. package/dist/runtime/pet/index.d.ts +0 -18
  891. package/dist/runtime/pet/index.js +0 -9
  892. package/dist/runtime/pet/pet-community-assets.d.ts +0 -13
  893. package/dist/runtime/pet/pet-community-assets.js +0 -106
  894. package/dist/runtime/pet/pet-file-loader.d.ts +0 -5
  895. package/dist/runtime/pet/pet-file-loader.js +0 -11
  896. package/dist/runtime/pet/pet-growth-engine.d.ts +0 -2
  897. package/dist/runtime/pet/pet-growth-engine.js +0 -1
  898. package/dist/runtime/pet/pet-profile-service.d.ts +0 -91
  899. package/dist/runtime/pet/pet-profile-service.js +0 -296
  900. package/dist/runtime/pet/pet-profile-service.test.d.ts +0 -1
  901. package/dist/runtime/pet/pet-profile-service.test.js +0 -171
  902. package/dist/runtime/pet/pet-reaction-engine.d.ts +0 -11
  903. package/dist/runtime/pet/pet-reaction-engine.js +0 -11
  904. package/dist/runtime/pet/pet-reaction-engine.test.d.ts +0 -1
  905. package/dist/runtime/pet/pet-reaction-engine.test.js +0 -12
  906. package/dist/runtime/pet/pet-soul-service.d.ts +0 -21
  907. package/dist/runtime/pet/pet-soul-service.js +0 -63
  908. package/dist/runtime/pet/pet-soul-service.test.d.ts +0 -1
  909. package/dist/runtime/pet/pet-soul-service.test.js +0 -115
  910. package/dist/runtime/pet/pet-types.d.ts +0 -1
  911. package/dist/runtime/pet/pet-types.js +0 -1
  912. package/dist/runtime/pet/petdex-asset.d.ts +0 -32
  913. package/dist/runtime/pet/petdex-asset.js +0 -242
  914. package/dist/runtime/pet/petdex-asset.test.d.ts +0 -1
  915. package/dist/runtime/pet/petdex-asset.test.js +0 -257
  916. package/dist/runtime/pet/petdex-forge-service.d.ts +0 -19
  917. package/dist/runtime/pet/petdex-forge-service.js +0 -820
  918. package/dist/runtime/pet/petdex-forge-service.test.d.ts +0 -1
  919. package/dist/runtime/pet/petdex-forge-service.test.js +0 -142
  920. package/dist/runtime/ports/agent-execution-contracts.d.ts +0 -182
  921. package/dist/runtime/ports/agent-execution-contracts.js +0 -1
  922. package/dist/runtime/ports/agent-runtime-ports.d.ts +0 -76
  923. package/dist/runtime/ports/agent-runtime-ports.js +0 -1
  924. package/dist/runtime/ports/checkpoint-contracts.d.ts +0 -19
  925. package/dist/runtime/ports/checkpoint-contracts.js +0 -1
  926. package/dist/runtime/ports/config-port.d.ts +0 -4
  927. package/dist/runtime/ports/config-port.js +0 -5
  928. package/dist/runtime/ports/index.d.ts +0 -19
  929. package/dist/runtime/ports/index.js +0 -5
  930. package/dist/runtime/ports/memory-provider.d.ts +0 -181
  931. package/dist/runtime/ports/memory-provider.js +0 -1
  932. package/dist/runtime/ports/memory-recall-source.d.ts +0 -3
  933. package/dist/runtime/ports/memory-recall-source.js +0 -1
  934. package/dist/runtime/ports/memory-writer.d.ts +0 -21
  935. package/dist/runtime/ports/memory-writer.js +0 -1
  936. package/dist/runtime/ports/model-transport-contracts.d.ts +0 -125
  937. package/dist/runtime/ports/model-transport-contracts.js +0 -9
  938. package/dist/runtime/ports/path-service.d.ts +0 -31
  939. package/dist/runtime/ports/path-service.js +0 -1
  940. package/dist/runtime/ports/permission-contracts.d.ts +0 -128
  941. package/dist/runtime/ports/permission-contracts.js +0 -5
  942. package/dist/runtime/ports/project-memory-store.d.ts +0 -44
  943. package/dist/runtime/ports/project-memory-store.js +0 -1
  944. package/dist/runtime/ports/source-provider.d.ts +0 -39
  945. package/dist/runtime/ports/source-provider.js +0 -4
  946. package/dist/runtime/ports/tool-call-contracts.d.ts +0 -16
  947. package/dist/runtime/ports/tool-call-contracts.js +0 -13
  948. package/dist/runtime/ports/tool-contracts.d.ts +0 -87
  949. package/dist/runtime/ports/tool-contracts.js +0 -3
  950. package/dist/runtime/ports/tool-risk.d.ts +0 -7
  951. package/dist/runtime/ports/tool-risk.js +0 -16
  952. package/dist/runtime/ports/web-search-contracts.d.ts +0 -21
  953. package/dist/runtime/ports/web-search-contracts.js +0 -1
  954. package/dist/runtime/ports/worktree-contracts.d.ts +0 -22
  955. package/dist/runtime/ports/worktree-contracts.js +0 -1
  956. package/dist/runtime/prompt/environment-context.d.ts +0 -60
  957. package/dist/runtime/prompt/environment-context.js +0 -410
  958. package/dist/runtime/prompt/environment-context.test.d.ts +0 -1
  959. package/dist/runtime/prompt/environment-context.test.js +0 -75
  960. package/dist/runtime/prompt/fresh-workspace-evidence.d.ts +0 -21
  961. package/dist/runtime/prompt/fresh-workspace-evidence.js +0 -224
  962. package/dist/runtime/prompt/fresh-workspace-evidence.test.d.ts +0 -1
  963. package/dist/runtime/prompt/fresh-workspace-evidence.test.js +0 -163
  964. package/dist/runtime/prompt/index.d.ts +0 -5
  965. package/dist/runtime/prompt/index.js +0 -6
  966. package/dist/runtime/prompt/instruction-loader.d.ts +0 -70
  967. package/dist/runtime/prompt/instruction-loader.js +0 -515
  968. package/dist/runtime/prompt/instruction-loader.test.d.ts +0 -1
  969. package/dist/runtime/prompt/instruction-loader.test.js +0 -64
  970. package/dist/runtime/prompt/prompt-policy.d.ts +0 -12
  971. package/dist/runtime/prompt/prompt-policy.js +0 -40
  972. package/dist/runtime/prompt/system-prompt-sections.d.ts +0 -65
  973. package/dist/runtime/prompt/system-prompt-sections.js +0 -93
  974. package/dist/runtime/prompt/task-domain.d.ts +0 -82
  975. package/dist/runtime/prompt/task-domain.js +0 -248
  976. package/dist/runtime/sandbox/index.d.ts +0 -2
  977. package/dist/runtime/sandbox/index.js +0 -2
  978. package/dist/runtime/sandbox/skill-sandbox.d.ts +0 -53
  979. package/dist/runtime/sandbox/skill-sandbox.js +0 -93
  980. package/dist/runtime/sandbox/skill-sandbox.test.d.ts +0 -1
  981. package/dist/runtime/sandbox/skill-sandbox.test.js +0 -172
  982. package/dist/runtime/sandbox/windows-skill-sandbox.d.ts +0 -78
  983. package/dist/runtime/sandbox/windows-skill-sandbox.js +0 -128
  984. package/dist/runtime/session/group-session-split.d.ts +0 -38
  985. package/dist/runtime/session/group-session-split.js +0 -99
  986. package/dist/runtime/session/index.d.ts +0 -4
  987. package/dist/runtime/session/index.js +0 -5
  988. package/dist/runtime/session/session-catalog.d.ts +0 -4
  989. package/dist/runtime/session/session-catalog.js +0 -59
  990. package/dist/runtime/session/session-locator.d.ts +0 -26
  991. package/dist/runtime/session/session-locator.js +0 -91
  992. package/dist/runtime/session/session-locator.test.d.ts +0 -1
  993. package/dist/runtime/session/session-locator.test.js +0 -59
  994. package/dist/runtime/session/session-metadata-store.d.ts +0 -8
  995. package/dist/runtime/session/session-metadata-store.js +0 -167
  996. package/dist/runtime/session/session-paths.d.ts +0 -9
  997. package/dist/runtime/session/session-paths.js +0 -27
  998. package/dist/runtime/session/session-persistence.d.ts +0 -16
  999. package/dist/runtime/session/session-persistence.js +0 -16
  1000. package/dist/runtime/session/session-persistence.test.d.ts +0 -1
  1001. package/dist/runtime/session/session-persistence.test.js +0 -237
  1002. package/dist/runtime/session/session-resume.d.ts +0 -4
  1003. package/dist/runtime/session/session-resume.js +0 -60
  1004. package/dist/runtime/session/session-schema.d.ts +0 -10
  1005. package/dist/runtime/session/session-schema.js +0 -35
  1006. package/dist/runtime/session/session-state.d.ts +0 -96
  1007. package/dist/runtime/session/session-state.js +0 -180
  1008. package/dist/runtime/session/session-summary.d.ts +0 -5
  1009. package/dist/runtime/session/session-summary.js +0 -67
  1010. package/dist/runtime/session/session-transcript-store.d.ts +0 -13
  1011. package/dist/runtime/session/session-transcript-store.js +0 -109
  1012. package/dist/runtime/session/session-types.d.ts +0 -77
  1013. package/dist/runtime/session/session-types.js +0 -1
  1014. package/dist/runtime/session/session-write-queue.d.ts +0 -2
  1015. package/dist/runtime/session/session-write-queue.js +0 -48
  1016. package/dist/runtime/tasks/task-types.d.ts +0 -166
  1017. package/dist/runtime/tasks/task-types.js +0 -64
  1018. package/dist/server/search-svc.d.ts +0 -1
  1019. package/dist/server/search-svc.js +0 -113
  1020. package/dist/skills/index.d.ts +0 -6
  1021. package/dist/skills/index.js +0 -5
  1022. package/dist/skills/mcp/index.d.ts +0 -1
  1023. package/dist/skills/mcp/index.js +0 -3
  1024. package/dist/skills/mcp/mcp-manager.d.ts +0 -75
  1025. package/dist/skills/mcp/mcp-manager.js +0 -358
  1026. package/dist/skills/mcp/mcp-tool-metadata.d.ts +0 -18
  1027. package/dist/skills/mcp/mcp-tool-metadata.js +0 -48
  1028. package/dist/skills/memory/categories.d.ts +0 -1
  1029. package/dist/skills/memory/categories.js +0 -1
  1030. package/dist/skills/memory/find-relevant-memories.d.ts +0 -1
  1031. package/dist/skills/memory/find-relevant-memories.js +0 -1
  1032. package/dist/skills/memory/implicit-extraction.d.ts +0 -1
  1033. package/dist/skills/memory/implicit-extraction.js +0 -1
  1034. package/dist/skills/memory/local-embedding.d.ts +0 -80
  1035. package/dist/skills/memory/local-embedding.js +0 -210
  1036. package/dist/skills/memory/local-memory-provider.d.ts +0 -257
  1037. package/dist/skills/memory/local-memory-provider.js +0 -486
  1038. package/dist/skills/memory/local-store-records.d.ts +0 -184
  1039. package/dist/skills/memory/local-store-records.js +0 -1
  1040. package/dist/skills/memory/local-store.d.ts +0 -479
  1041. package/dist/skills/memory/local-store.js +0 -1022
  1042. package/dist/skills/memory/memdir.d.ts +0 -93
  1043. package/dist/skills/memory/memdir.js +0 -530
  1044. package/dist/skills/memory/memory-attachment-store.d.ts +0 -62
  1045. package/dist/skills/memory/memory-attachment-store.js +0 -0
  1046. package/dist/skills/memory/memory-consolidation.d.ts +0 -43
  1047. package/dist/skills/memory/memory-consolidation.js +0 -462
  1048. package/dist/skills/memory/memory-db-path.d.ts +0 -13
  1049. package/dist/skills/memory/memory-db-path.js +0 -27
  1050. package/dist/skills/memory/memory-embedding-config.d.ts +0 -31
  1051. package/dist/skills/memory/memory-embedding-config.js +0 -66
  1052. package/dist/skills/memory/memory-provider-factory.d.ts +0 -33
  1053. package/dist/skills/memory/memory-provider-factory.js +0 -79
  1054. package/dist/skills/memory/memory-tool.d.ts +0 -85
  1055. package/dist/skills/memory/memory-tool.js +0 -326
  1056. package/dist/skills/memory/memory-vector-utils.d.ts +0 -2
  1057. package/dist/skills/memory/memory-vector-utils.js +0 -19
  1058. package/dist/skills/memory/recall-category-filter.d.ts +0 -1
  1059. package/dist/skills/memory/recall-category-filter.js +0 -1
  1060. package/dist/skills/memory/sqlite-memory-mappers.d.ts +0 -6
  1061. package/dist/skills/memory/sqlite-memory-mappers.js +0 -104
  1062. package/dist/skills/memory/sqlite-memory-schema.d.ts +0 -3
  1063. package/dist/skills/memory/sqlite-memory-schema.js +0 -152
  1064. package/dist/skills/permissions/bash-classifier.d.ts +0 -30
  1065. package/dist/skills/permissions/bash-classifier.js +0 -174
  1066. package/dist/skills/permissions/classifier-cache.d.ts +0 -51
  1067. package/dist/skills/permissions/classifier-cache.js +0 -103
  1068. package/dist/skills/permissions/community-sandbox-policy.d.ts +0 -3
  1069. package/dist/skills/permissions/community-sandbox-policy.js +0 -233
  1070. package/dist/skills/permissions/community-sandbox-red-team-cli.d.ts +0 -7
  1071. package/dist/skills/permissions/community-sandbox-red-team-cli.js +0 -43
  1072. package/dist/skills/permissions/community-sandbox-red-team.d.ts +0 -32
  1073. package/dist/skills/permissions/community-sandbox-red-team.js +0 -221
  1074. package/dist/skills/permissions/denial-audit-log.d.ts +0 -52
  1075. package/dist/skills/permissions/denial-audit-log.js +0 -80
  1076. package/dist/skills/permissions/denial-tracking.d.ts +0 -42
  1077. package/dist/skills/permissions/denial-tracking.js +0 -60
  1078. package/dist/skills/permissions/group-security-policy.d.ts +0 -15
  1079. package/dist/skills/permissions/group-security-policy.js +0 -60
  1080. package/dist/skills/permissions/hook-runner.d.ts +0 -120
  1081. package/dist/skills/permissions/hook-runner.js +0 -545
  1082. package/dist/skills/permissions/index.d.ts +0 -13
  1083. package/dist/skills/permissions/index.js +0 -8
  1084. package/dist/skills/permissions/operation-classifier.d.ts +0 -43
  1085. package/dist/skills/permissions/operation-classifier.js +0 -251
  1086. package/dist/skills/permissions/permission-classifier.d.ts +0 -41
  1087. package/dist/skills/permissions/permission-classifier.js +0 -186
  1088. package/dist/skills/permissions/rule-engine.d.ts +0 -49
  1089. package/dist/skills/permissions/rule-engine.js +0 -285
  1090. package/dist/skills/permissions/settings-watcher.d.ts +0 -19
  1091. package/dist/skills/permissions/settings-watcher.js +0 -121
  1092. package/dist/skills/permissions/types.d.ts +0 -2
  1093. package/dist/skills/permissions/types.js +0 -1
  1094. package/dist/skills/plugins/index.d.ts +0 -2
  1095. package/dist/skills/plugins/index.js +0 -3
  1096. package/dist/skills/plugins/plugin-api.d.ts +0 -38
  1097. package/dist/skills/plugins/plugin-api.js +0 -18
  1098. package/dist/skills/plugins/plugin-loader.d.ts +0 -57
  1099. package/dist/skills/plugins/plugin-loader.js +0 -254
  1100. package/dist/skills/plugins/plugin-marketplace.d.ts +0 -61
  1101. package/dist/skills/plugins/plugin-marketplace.js +0 -229
  1102. package/dist/skills/portable-tool.d.ts +0 -165
  1103. package/dist/skills/portable-tool.js +0 -34
  1104. package/dist/skills/skill-system/skill-frontmatter.d.ts +0 -19
  1105. package/dist/skills/skill-system/skill-frontmatter.js +0 -344
  1106. package/dist/skills/skill-system/skill-guard.d.ts +0 -23
  1107. package/dist/skills/skill-system/skill-guard.js +0 -229
  1108. package/dist/skills/skill-system/skill-lifecycle.d.ts +0 -93
  1109. package/dist/skills/skill-system/skill-lifecycle.js +0 -236
  1110. package/dist/skills/skill-system/skill-source.d.ts +0 -38
  1111. package/dist/skills/skill-system/skill-source.js +0 -75
  1112. package/dist/skills/skill-system/skill-types.d.ts +0 -140
  1113. package/dist/skills/skill-system/skill-types.js +0 -6
  1114. package/dist/skills/skill-system/skill-validation.d.ts +0 -29
  1115. package/dist/skills/skill-system/skill-validation.js +0 -154
  1116. package/dist/skills/tool-access.d.ts +0 -30
  1117. package/dist/skills/tool-access.js +0 -58
  1118. package/dist/skills/tools/agent-tool.d.ts +0 -102
  1119. package/dist/skills/tools/agent-tool.js +0 -159
  1120. package/dist/skills/tools/ask-user-tool.d.ts +0 -80
  1121. package/dist/skills/tools/ask-user-tool.js +0 -121
  1122. package/dist/skills/tools/brief-tool.d.ts +0 -74
  1123. package/dist/skills/tools/brief-tool.js +0 -95
  1124. package/dist/skills/tools/browser-tool.d.ts +0 -114
  1125. package/dist/skills/tools/browser-tool.js +0 -160
  1126. package/dist/skills/tools/checkpoint-tool.d.ts +0 -66
  1127. package/dist/skills/tools/checkpoint-tool.js +0 -102
  1128. package/dist/skills/tools/config-tool.d.ts +0 -61
  1129. package/dist/skills/tools/config-tool.js +0 -123
  1130. package/dist/skills/tools/cron-tool.d.ts +0 -96
  1131. package/dist/skills/tools/cron-tool.js +0 -165
  1132. package/dist/skills/tools/edit-tool.d.ts +0 -43
  1133. package/dist/skills/tools/edit-tool.js +0 -72
  1134. package/dist/skills/tools/exec-tool.d.ts +0 -117
  1135. package/dist/skills/tools/exec-tool.js +0 -354
  1136. package/dist/skills/tools/file-management-tool.d.ts +0 -90
  1137. package/dist/skills/tools/file-management-tool.js +0 -166
  1138. package/dist/skills/tools/image-generate-tool.d.ts +0 -74
  1139. package/dist/skills/tools/image-generate-tool.js +0 -91
  1140. package/dist/skills/tools/instructions-tool.d.ts +0 -65
  1141. package/dist/skills/tools/instructions-tool.js +0 -209
  1142. package/dist/skills/tools/lsp-tool.d.ts +0 -153
  1143. package/dist/skills/tools/lsp-tool.js +0 -230
  1144. package/dist/skills/tools/media-cancel-tool.d.ts +0 -30
  1145. package/dist/skills/tools/media-cancel-tool.js +0 -46
  1146. package/dist/skills/tools/monitor-tool.d.ts +0 -113
  1147. package/dist/skills/tools/monitor-tool.js +0 -129
  1148. package/dist/skills/tools/music-generate-tool.d.ts +0 -80
  1149. package/dist/skills/tools/music-generate-tool.js +0 -98
  1150. package/dist/skills/tools/notebook-edit-tool.d.ts +0 -15
  1151. package/dist/skills/tools/notebook-edit-tool.js +0 -206
  1152. package/dist/skills/tools/patch-tool.d.ts +0 -52
  1153. package/dist/skills/tools/patch-tool.js +0 -556
  1154. package/dist/skills/tools/petdex-create-tool.d.ts +0 -47
  1155. package/dist/skills/tools/petdex-create-tool.js +0 -95
  1156. package/dist/skills/tools/plan-mode-tool.d.ts +0 -98
  1157. package/dist/skills/tools/plan-mode-tool.js +0 -164
  1158. package/dist/skills/tools/read-tool.d.ts +0 -51
  1159. package/dist/skills/tools/read-tool.js +0 -88
  1160. package/dist/skills/tools/search-tool.d.ts +0 -112
  1161. package/dist/skills/tools/search-tool.js +0 -226
  1162. package/dist/skills/tools/shell/bash-provider.d.ts +0 -26
  1163. package/dist/skills/tools/shell/bash-provider.js +0 -125
  1164. package/dist/skills/tools/shell/command-classification.d.ts +0 -44
  1165. package/dist/skills/tools/shell/command-classification.js +0 -119
  1166. package/dist/skills/tools/shell/command-semantics.d.ts +0 -14
  1167. package/dist/skills/tools/shell/command-semantics.js +0 -87
  1168. package/dist/skills/tools/shell/destructive-command-warning.d.ts +0 -10
  1169. package/dist/skills/tools/shell/destructive-command-warning.js +0 -80
  1170. package/dist/skills/tools/shell/exec-permissions.d.ts +0 -52
  1171. package/dist/skills/tools/shell/exec-permissions.js +0 -277
  1172. package/dist/skills/tools/shell/index.d.ts +0 -18
  1173. package/dist/skills/tools/shell/index.js +0 -18
  1174. package/dist/skills/tools/shell/powershell-provider.d.ts +0 -15
  1175. package/dist/skills/tools/shell/powershell-provider.js +0 -80
  1176. package/dist/skills/tools/shell/sandbox/helper-resolver.d.ts +0 -7
  1177. package/dist/skills/tools/shell/sandbox/helper-resolver.js +0 -20
  1178. package/dist/skills/tools/shell/sandbox/landlock-argv.d.ts +0 -6
  1179. package/dist/skills/tools/shell/sandbox/landlock-argv.js +0 -13
  1180. package/dist/skills/tools/shell/sandbox/platform.d.ts +0 -3
  1181. package/dist/skills/tools/shell/sandbox/platform.js +0 -13
  1182. package/dist/skills/tools/shell/sandbox/sandbox-launcher.d.ts +0 -15
  1183. package/dist/skills/tools/shell/sandbox/sandbox-launcher.js +0 -59
  1184. package/dist/skills/tools/shell/sandbox/sandbox-scope.d.ts +0 -6
  1185. package/dist/skills/tools/shell/sandbox/sandbox-scope.js +0 -17
  1186. package/dist/skills/tools/shell/sandbox/sandbox-types.d.ts +0 -47
  1187. package/dist/skills/tools/shell/sandbox/sandbox-types.js +0 -1
  1188. package/dist/skills/tools/shell/sandbox/seatbelt-profile.d.ts +0 -6
  1189. package/dist/skills/tools/shell/sandbox/seatbelt-profile.js +0 -28
  1190. package/dist/skills/tools/shell/shell-command.d.ts +0 -54
  1191. package/dist/skills/tools/shell/shell-command.js +0 -347
  1192. package/dist/skills/tools/shell/shell-exec.d.ts +0 -38
  1193. package/dist/skills/tools/shell/shell-exec.js +0 -202
  1194. package/dist/skills/tools/shell/shell-provider.d.ts +0 -85
  1195. package/dist/skills/tools/shell/shell-provider.js +0 -38
  1196. package/dist/skills/tools/shell/subprocess-env.d.ts +0 -6
  1197. package/dist/skills/tools/shell/subprocess-env.js +0 -87
  1198. package/dist/skills/tools/shell/task-output.d.ts +0 -44
  1199. package/dist/skills/tools/shell/task-output.js +0 -137
  1200. package/dist/skills/tools/skill-tool.d.ts +0 -106
  1201. package/dist/skills/tools/skill-tool.js +0 -265
  1202. package/dist/skills/tools/sleep-tool.d.ts +0 -49
  1203. package/dist/skills/tools/sleep-tool.js +0 -81
  1204. package/dist/skills/tools/structured-output-tool.d.ts +0 -116
  1205. package/dist/skills/tools/structured-output-tool.js +0 -176
  1206. package/dist/skills/tools/stt-tool.d.ts +0 -33
  1207. package/dist/skills/tools/stt-tool.js +0 -58
  1208. package/dist/skills/tools/task-tool.d.ts +0 -125
  1209. package/dist/skills/tools/task-tool.js +0 -390
  1210. package/dist/skills/tools/team-tool.d.ts +0 -156
  1211. package/dist/skills/tools/team-tool.js +0 -173
  1212. package/dist/skills/tools/three-d-generate-tool.d.ts +0 -46
  1213. package/dist/skills/tools/three-d-generate-tool.js +0 -66
  1214. package/dist/skills/tools/tool-search-tool.d.ts +0 -62
  1215. package/dist/skills/tools/tool-search-tool.js +0 -187
  1216. package/dist/skills/tools/tts-tool.d.ts +0 -50
  1217. package/dist/skills/tools/tts-tool.js +0 -58
  1218. package/dist/skills/tools/video-edit-tool.d.ts +0 -72
  1219. package/dist/skills/tools/video-edit-tool.js +0 -84
  1220. package/dist/skills/tools/video-generate-tool.d.ts +0 -162
  1221. package/dist/skills/tools/video-generate-tool.js +0 -178
  1222. package/dist/skills/tools/video-merge-tool.d.ts +0 -105
  1223. package/dist/skills/tools/video-merge-tool.js +0 -95
  1224. package/dist/skills/tools/video-upscale-tool.d.ts +0 -45
  1225. package/dist/skills/tools/video-upscale-tool.js +0 -57
  1226. package/dist/skills/tools/voice-clone-tool.d.ts +0 -40
  1227. package/dist/skills/tools/voice-clone-tool.js +0 -58
  1228. package/dist/skills/tools/web-answer-tool.d.ts +0 -27
  1229. package/dist/skills/tools/web-answer-tool.js +0 -124
  1230. package/dist/skills/tools/web-fetch-tool.d.ts +0 -80
  1231. package/dist/skills/tools/web-fetch-tool.js +0 -95
  1232. package/dist/skills/tools/web-research-tool.d.ts +0 -48
  1233. package/dist/skills/tools/web-research-tool.js +0 -254
  1234. package/dist/skills/tools/web-search-tool.d.ts +0 -46
  1235. package/dist/skills/tools/web-search-tool.js +0 -95
  1236. package/dist/skills/tools/workflow-tool.d.ts +0 -45
  1237. package/dist/skills/tools/workflow-tool.js +0 -113
  1238. package/dist/skills/tools/worktree-tool.d.ts +0 -69
  1239. package/dist/skills/tools/worktree-tool.js +0 -147
  1240. package/dist/skills/tools/write-tool.d.ts +0 -45
  1241. package/dist/skills/tools/write-tool.js +0 -83
  1242. package/dist/skills/tools.d.ts +0 -45
  1243. package/dist/skills/tools.js +0 -165
  1244. package/dist/skills/web-search/brave-source.d.ts +0 -2
  1245. package/dist/skills/web-search/brave-source.js +0 -36
  1246. package/dist/skills/web-search/crawl4ai-extractor.d.ts +0 -15
  1247. package/dist/skills/web-search/crawl4ai-extractor.js +0 -92
  1248. package/dist/skills/web-search/embedding-rerank.d.ts +0 -13
  1249. package/dist/skills/web-search/embedding-rerank.js +0 -44
  1250. package/dist/skills/web-search/exa-source.d.ts +0 -2
  1251. package/dist/skills/web-search/exa-source.js +0 -43
  1252. package/dist/skills/web-search/multi-source-backend.d.ts +0 -23
  1253. package/dist/skills/web-search/multi-source-backend.js +0 -99
  1254. package/dist/skills/web-search/redis-source-cache.d.ts +0 -6
  1255. package/dist/skills/web-search/redis-source-cache.js +0 -44
  1256. package/dist/skills/web-search/search-svc-source.d.ts +0 -4
  1257. package/dist/skills/web-search/search-svc-source.js +0 -64
  1258. package/dist/skills/web-search/searxng-source.d.ts +0 -2
  1259. package/dist/skills/web-search/searxng-source.js +0 -91
  1260. package/dist/skills/web-search/serper-source.d.ts +0 -2
  1261. package/dist/skills/web-search/serper-source.js +0 -33
  1262. package/dist/skills/web-search/source-factory.d.ts +0 -5
  1263. package/dist/skills/web-search/source-factory.js +0 -15
  1264. package/dist/skills/web-search/stability.d.ts +0 -26
  1265. package/dist/skills/web-search/stability.js +0 -57
  1266. package/dist/transport/acp-event-emitter.d.ts +0 -21
  1267. package/dist/transport/acp-event-emitter.js +0 -142
  1268. package/dist/transport/acp-event-emitter.test.d.ts +0 -1
  1269. package/dist/transport/acp-event-emitter.test.js +0 -87
  1270. package/dist/transport/acp-server.d.ts +0 -169
  1271. package/dist/transport/acp-server.js +0 -480
  1272. package/dist/transport/acp-server.test.d.ts +0 -1
  1273. package/dist/transport/acp-server.test.js +0 -230
  1274. package/dist/transport/index.d.ts +0 -7
  1275. package/dist/transport/index.js +0 -5
  1276. package/dist/transport/io-transport.d.ts +0 -19
  1277. package/dist/transport/io-transport.js +0 -8
@@ -1,745 +0,0 @@
1
- /**
2
- * IT-1 multi-root + portable-bundle coverage (spec D21/D23):
3
- * - workflow.* routes by projectId to that project's root; aggregate list spans
4
- * the active root + every automation project, tagging records with projectId.
5
- * - workflow.export sanitizes credential-shaped params and derives requires.
6
- * - workflow.import / workflow.duplicate land a copy (graph + trigger) in a target project.
7
- * - createProject(type:"automation") seeds the primary workflow without stealing the
8
- * active project (项目名=工作流名, spec D21).
9
- *
10
- * Real stores on a temp QLOGICAGENT_HOME — no mocks of the engine itself (§1.5).
11
- */
12
- import fs from "node:fs";
13
- import os from "node:os";
14
- import path from "node:path";
15
- import { afterEach, describe, expect, it, vi } from "vitest";
16
- import * as projectStore from "../../runtime/infra/project-store.js";
17
- import { createProject as createProjectCommand } from "../project-command-service.js";
18
- import { STRIPPED_CREDENTIAL_PLACEHOLDER } from "../../orchestration/workflow/workflow-bundle.js";
19
- import { handleWorkflowApprovals, handleWorkflowApprove, handleWorkflowAudit, handleWorkflowCapabilities, handleWorkflowCreate, handleWorkflowDuplicate, handleWorkflowExport, handleWorkflowImport, handleWorkflowIntentIndex, handleWorkflowList, handleWorkflowOnForm, handleWorkflowOnIntent, handleWorkflowOnWebhook, handleWorkflowPatch, handleWorkflowPublishHub, handleWorkflowRun, handleWorkflowSetPermissionScope, } from "./workflow-handler.js";
20
- const tmpDirs = [];
21
- function makeTempDir(prefix) {
22
- const dir = fs.mkdtempSync(path.join(os.tmpdir(), prefix));
23
- tmpDirs.push(dir);
24
- return dir;
25
- }
26
- afterEach(() => {
27
- vi.unstubAllEnvs();
28
- for (const dir of tmpDirs.splice(0)) {
29
- fs.rmSync(dir, { recursive: true, force: true });
30
- }
31
- });
32
- function request(method, params, id) {
33
- return { jsonrpc: "2.0", id, method, params };
34
- }
35
- function createHost(activeCwd) {
36
- return {
37
- notifications: [],
38
- responses: [],
39
- acpDetector: { buildExternalDescriptor: () => undefined, list: () => [] },
40
- getActiveProjectRoot: () => activeCwd,
41
- handleMcpToolCall: async () => ({}),
42
- toolCatalog: {
43
- findTool: () => undefined,
44
- getToolManifest: () => [],
45
- getToolNames: () => [],
46
- setTools: () => { },
47
- addTool: () => { },
48
- addTools: () => { },
49
- removeTool: () => false,
50
- activateTool: () => false,
51
- clearActivatedTools: () => { },
52
- },
53
- sendNotification(method, params) {
54
- this.notifications.push({ method, params });
55
- },
56
- sendResponse(id, result, error) {
57
- this.responses.push({ id, result, error });
58
- },
59
- workflowRoots: null,
60
- };
61
- }
62
- function stopAllSchedulers(host) {
63
- for (const bundle of host.workflowRoots?.values() ?? [])
64
- bundle.scheduler.stop();
65
- }
66
- function isolateHome() {
67
- const home = makeTempDir("wf-multiroot-home-");
68
- vi.stubEnv("QLOGICAGENT_HOME", home);
69
- vi.stubEnv("QLOGIC_LLMROUTER_USER_ID", "user/tester");
70
- return home;
71
- }
72
- const SIMPLE_DEF = (id) => ({
73
- id,
74
- nodes: [{ id: "n1", kind: "set", params: { json: { ok: true } } }],
75
- edges: [],
76
- });
77
- describe("workflow multi-root routing (D21)", () => {
78
- it("routes create/list by projectId and aggregates across automation projects", async () => {
79
- isolateHome();
80
- const activeCwd = makeTempDir("wf-active-");
81
- const autoCwd = makeTempDir("wf-auto-");
82
- const autoProject = projectStore.createProject({
83
- name: "晨报",
84
- workspaceDir: autoCwd,
85
- type: "automation",
86
- skipAutoSwitch: true,
87
- });
88
- const host = createHost(activeCwd);
89
- // One workflow in the active root, one in the automation project's root.
90
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-active", name: "active-flow", def: SIMPLE_DEF("wf-active") }, 1));
91
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-auto", name: "auto-flow", def: SIMPLE_DEF("wf-auto"), projectId: autoProject.id }, 2));
92
- // Physically project-scoped on disk.
93
- expect(fs.existsSync(path.join(autoCwd, ".qlogicagent", "workflows", "wf-auto", "workflow.json"))).toBe(true);
94
- expect(fs.existsSync(path.join(activeCwd, ".qlogicagent", "workflows", "wf-active", "workflow.json"))).toBe(true);
95
- // Scoped list: only that project's workflows.
96
- await handleWorkflowList.call(host, request("workflow.list", { projectId: autoProject.id }, 3));
97
- const scoped = host.responses.at(-1).result;
98
- expect(scoped.workflows.map(w => w.id)).toEqual(["wf-auto"]);
99
- expect(scoped.workflows[0].projectId).toBe(autoProject.id);
100
- // Aggregate list: spans the active root AND the automation project, each tagged.
101
- await handleWorkflowList.call(host, request("workflow.list", {}, 4));
102
- const aggregate = host.responses.at(-1).result;
103
- const ids = aggregate.workflows.map(w => w.id);
104
- expect(ids).toContain("wf-active");
105
- expect(ids).toContain("wf-auto");
106
- expect(aggregate.workflows.find(w => w.id === "wf-auto")?.projectId).toBe(autoProject.id);
107
- // Unknown projectId fails loud (INVALID_PARAMS), not silently against the active root.
108
- await handleWorkflowList.call(host, request("workflow.list", { projectId: "nope" }, 5));
109
- expect(host.responses.at(-1).error?.message).toContain("unknown projectId");
110
- stopAllSchedulers(host);
111
- });
112
- });
113
- describe("portable bundle export/import/duplicate (D23)", () => {
114
- it("export strips credential-shaped params and derives requires", async () => {
115
- isolateHome();
116
- const activeCwd = makeTempDir("wf-export-");
117
- const host = createHost(activeCwd);
118
- const def = {
119
- id: "wf-exp",
120
- nodes: [
121
- { id: "t", kind: "trigger" },
122
- { id: "h", kind: "http", name: "拉数据", params: { url: "https://api.example.com", headers: { Authorization: "Bearer s3cret" } } },
123
- { id: "c", kind: "channel", name: "发飞书", params: { channel: "feishu", payload: "hi", token: "abc123" } },
124
- ],
125
- edges: [
126
- { from: "t", to: "h" },
127
- { from: "h", to: "c" },
128
- ],
129
- };
130
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-exp", name: "出口流", def }, 1));
131
- await handleWorkflowExport.call(host, request("workflow.export", { id: "wf-exp" }, 2));
132
- const { bundle } = host.responses.at(-1).result;
133
- expect(bundle.schemaVersion).toBe(2);
134
- expect(bundle.name).toBe("出口流");
135
- const httpNode = bundle.def.nodes.find(n => n.id === "h");
136
- expect(httpNode.params.headers.Authorization).toBe(STRIPPED_CREDENTIAL_PLACEHOLDER);
137
- const channelNode = bundle.def.nodes.find(n => n.id === "c");
138
- expect(channelNode.params.token).toBe(STRIPPED_CREDENTIAL_PLACEHOLDER);
139
- // No secret value survives anywhere in the serialized bundle (§1.5 hard guarantee).
140
- expect(JSON.stringify(bundle)).not.toContain("s3cret");
141
- expect(JSON.stringify(bundle)).not.toContain("abc123");
142
- expect(bundle.credentialsRequired.length).toBe(2);
143
- expect(bundle.requires).toEqual(expect.arrayContaining([
144
- expect.objectContaining({ category: "channel", ref: "feishu", nodeIds: ["c"] }),
145
- ]));
146
- stopAllSchedulers(host);
147
- });
148
- it("import lands a bundle (graph + trigger) into a target project; duplicate copies across roots", async () => {
149
- isolateHome();
150
- const activeCwd = makeTempDir("wf-imp-active-");
151
- const targetCwd = makeTempDir("wf-imp-target-");
152
- const target = projectStore.createProject({
153
- name: "目标",
154
- workspaceDir: targetCwd,
155
- type: "automation",
156
- skipAutoSwitch: true,
157
- });
158
- const host = createHost(activeCwd);
159
- const def = {
160
- id: "wf-src",
161
- nodes: [
162
- { id: "t", kind: "trigger" },
163
- { id: "s", kind: "set", params: { json: { v: 1 } } },
164
- ],
165
- edges: [{ from: "t", to: "s" }],
166
- };
167
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-src", name: "源流", def }, 1));
168
- // Give the source a schedule trigger so import/duplicate must carry it.
169
- const bundlePayload = {
170
- schemaVersion: 2,
171
- name: "进口流",
172
- def: { ...def, id: "ignored" },
173
- trigger: { type: "schedule", cron: "0 9 * * *" },
174
- concurrency: "queue",
175
- requires: [],
176
- credentialsRequired: [],
177
- };
178
- await handleWorkflowImport.call(host, request("workflow.import", { projectId: target.id, payload: bundlePayload }, 2));
179
- const imported = host.responses.at(-1).result;
180
- expect(imported.projectId).toBe(target.id);
181
- expect(imported.trigger?.type).toBe("schedule");
182
- expect(fs.existsSync(path.join(targetCwd, ".qlogicagent", "workflows", imported.id, "workflow.json"))).toBe(true);
183
- // Duplicate the active-root workflow into the automation project (另存为).
184
- await handleWorkflowDuplicate.call(host, request("workflow.duplicate", { id: "wf-src", targetProjectId: target.id, name: "副本流" }, 3));
185
- const dup = host.responses.at(-1).result;
186
- expect(dup.name).toBe("副本流");
187
- expect(dup.projectId).toBe(target.id);
188
- expect(dup.id).not.toBe("wf-src");
189
- expect(fs.existsSync(path.join(targetCwd, ".qlogicagent", "workflows", dup.id, "workflow.json"))).toBe(true);
190
- // Malformed bundle fails loud.
191
- await handleWorkflowImport.call(host, request("workflow.import", { projectId: target.id, payload: { schemaVersion: 99 } }, 4));
192
- expect(host.responses.at(-1).error?.message).toContain("schemaVersion");
193
- stopAllSchedulers(host);
194
- });
195
- });
196
- describe("workflow.capabilities + memory nodes (IT-3, D24/D25)", () => {
197
- it("capabilities enumerates real tool manifest + agents + memory ops (channels stay gateway-side)", async () => {
198
- isolateHome();
199
- const activeCwd = makeTempDir("wf-cap-");
200
- const host = createHost(activeCwd);
201
- host.toolCatalog.getToolManifest = () => [
202
- { type: "function", function: { name: "web_search", description: "搜网页", parameters: {} } },
203
- { type: "function", function: { name: "mcp__gh__issues", description: "", parameters: {} } },
204
- ];
205
- await handleWorkflowCapabilities.call(host, request("workflow.capabilities", {}, 1));
206
- const { capabilities } = host.responses.at(-1).result;
207
- const ids = (c) => capabilities.filter((e) => e.category === c).map((e) => e.id);
208
- expect(ids("agent")).toContain("qlogicagent");
209
- expect(ids("tool")).toEqual(["web_search"]);
210
- expect(ids("mcp")).toEqual(["gh.issues"]);
211
- expect(ids("memory")).toEqual(["memory.read", "memory.write", "memory.search"]);
212
- expect(ids("channel")).toEqual([]);
213
- stopAllSchedulers(host);
214
- });
215
- it("memory write → read round-trips through a REAL run on the project's memdir", async () => {
216
- isolateHome();
217
- const activeCwd = makeTempDir("wf-mem-");
218
- const host = createHost(activeCwd);
219
- const def = {
220
- id: "wf-mem",
221
- nodes: [
222
- { id: "t", kind: "trigger" },
223
- { id: "w", kind: "memory", name: "写记忆", params: { op: "write", key: "probe", value: "记住这句话:多根已通" } },
224
- { id: "r", kind: "memory", name: "读记忆", params: { op: "read", key: "probe" } },
225
- ],
226
- edges: [
227
- { from: "t", to: "w" },
228
- { from: "w", to: "r" },
229
- ],
230
- };
231
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-mem", name: "记忆流", def }, 1));
232
- await handleWorkflowRun.call(host, request("workflow.run", { id: "wf-mem" }, 2));
233
- const outcome = host.responses.at(-1).result;
234
- expect(outcome.status).toBe("completed");
235
- // The topic file physically exists in the project's memdir and the content survived.
236
- const memFile = path.join(activeCwd, ".qlogicagent", "memory", "probe.md");
237
- expect(fs.existsSync(memFile)).toBe(true);
238
- expect(fs.readFileSync(memFile, "utf-8")).toContain("多根已通");
239
- stopAllSchedulers(host);
240
- });
241
- });
242
- describe("intent trigger (IT-2, D22)", () => {
243
- it("intentIndex lists active intent workflows across roots; onIntent runs with the utterance as $trigger", async () => {
244
- isolateHome();
245
- const activeCwd = makeTempDir("wf-intent-");
246
- const autoCwd = makeTempDir("wf-intent-auto-");
247
- const autoProject = projectStore.createProject({ name: "晨报", workspaceDir: autoCwd, type: "automation", skipAutoSwitch: true });
248
- const host = createHost(activeCwd);
249
- const def = {
250
- id: "wf-int",
251
- nodes: [
252
- { id: "t", kind: "trigger" },
253
- { id: "s", kind: "set", params: { json: { said: "{{ $trigger.text }}" } } },
254
- ],
255
- edges: [{ from: "t", to: "s" }],
256
- };
257
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-int", name: "口令流", def, projectId: autoProject.id }, 1));
258
- await handleWorkflowPatch.call(host, request("workflow.patch", {
259
- id: "wf-int", projectId: autoProject.id, baseRev: 1,
260
- patch: [{ op: "set_trigger", trigger: { type: "intent", phrases: ["启动晨报"], confirm: true } }],
261
- }, 2));
262
- // 未激活 → index 空、onIntent 拒(fail-loud)
263
- await handleWorkflowIntentIndex.call(host, request("workflow.intentIndex", {}, 3));
264
- expect(host.responses.at(-1).result.intents).toEqual([]);
265
- await handleWorkflowOnIntent.call(host, request("workflow.onIntent", { workflowId: "wf-int", projectId: autoProject.id, text: "启动晨报" }, 4));
266
- expect(host.responses.at(-1).error?.message).toContain("no active intent trigger");
267
- // 激活 → index 出现(带短语与归属);onIntent 真跑,载荷可被表达式引用
268
- // (D31:激活前须发布——触发面只跑已发布快照;intent 属 attended 跑草稿,但激活仍是注册门)
269
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "noise", name: "无关", def: { id: "noise", nodes: [{ id: "n", kind: "set", params: { json: {} } }], edges: [] } }, 5));
270
- const { handleWorkflowSetActive, handleWorkflowPublish } = await import("./workflow-handler.js");
271
- await handleWorkflowPublish.call(host, request("workflow.publish", { id: "wf-int", projectId: autoProject.id }, 60));
272
- await handleWorkflowSetActive.call(host, request("workflow.setActive", { id: "wf-int", projectId: autoProject.id, active: true }, 6));
273
- await handleWorkflowIntentIndex.call(host, request("workflow.intentIndex", {}, 7));
274
- const { intents } = host.responses.at(-1).result;
275
- expect(intents.length).toBe(1);
276
- expect(intents[0]).toMatchObject({ workflowId: "wf-int", projectId: autoProject.id });
277
- expect(intents[0].trigger.phrases).toEqual(["启动晨报"]);
278
- await handleWorkflowOnIntent.call(host, request("workflow.onIntent", { workflowId: "wf-int", projectId: autoProject.id, text: "启动晨报", surface: "welcome", matchedPhrase: "启动晨报" }, 8));
279
- const outcome = host.responses.at(-1).result;
280
- expect(outcome.status).toBe("completed");
281
- // runStarted 通知带 intent triggerType
282
- expect(host.notifications.some((n) => n.method === "workflow.runStarted" && n.params.triggerType === "intent")).toBe(true);
283
- stopAllSchedulers(host);
284
- });
285
- it("set_trigger rejects malformed intent configs (validation throws loud at the single mutation channel)", async () => {
286
- isolateHome();
287
- const activeCwd = makeTempDir("wf-intent-bad-");
288
- const host = createHost(activeCwd);
289
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-bad", name: "坏意图", def: SIMPLE_DEF("wf-bad") }, 1));
290
- await expect(handleWorkflowPatch.call(host, request("workflow.patch", {
291
- id: "wf-bad", baseRev: 1,
292
- patch: [{ op: "set_trigger", trigger: { type: "intent", phrases: [] } }],
293
- }, 2))).rejects.toThrow(/intent\.phrases/);
294
- stopAllSchedulers(host);
295
- });
296
- });
297
- describe("versioning draft/published (IT-8, D31)", () => {
298
- it("publish snapshots the draft; unattended runs use the snapshot while manual runs the draft; unpublished cannot activate", async () => {
299
- isolateHome();
300
- const activeCwd = makeTempDir("wf-ver-");
301
- const host = createHost(activeCwd);
302
- const { handleWorkflowSetActive, handleWorkflowPublish, handleWorkflowUpdate, handleWorkflowArchive } = await import("./workflow-handler.js");
303
- const defV1 = {
304
- id: "wf-ver",
305
- nodes: [
306
- { id: "t", kind: "trigger" },
307
- { id: "s", kind: "set", params: { json: { version: "v1" } } },
308
- ],
309
- edges: [{ from: "t", to: "s" }],
310
- };
311
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-ver", name: "版本流", def: defV1 }, 1));
312
- // 未发布:激活拒、无人值守 run 拒
313
- await handleWorkflowSetActive.call(host, request("workflow.setActive", { id: "wf-ver", active: true }, 2));
314
- expect(host.responses.at(-1).error?.message).toContain("no published version");
315
- await expect(handleWorkflowRun.call(host, request("workflow.run", { id: "wf-ver", trigger: { type: "schedule" } }, 3))).rejects.toThrow(/no published version/);
316
- // 发布 v1 → 改草稿成 v2 → schedule 跑 v1,manual 跑 v2
317
- await handleWorkflowPublish.call(host, request("workflow.publish", { id: "wf-ver" }, 4));
318
- const pub = host.responses.at(-1).result;
319
- expect(pub.status).toBe("paused");
320
- expect(pub.draftAhead).toBe(false);
321
- await handleWorkflowUpdate.call(host, request("workflow.update", {
322
- id: "wf-ver",
323
- def: { ...defV1, nodes: [defV1.nodes[0], { id: "s", kind: "set", params: { json: { version: "v2" } } }] },
324
- }, 5));
325
- await handleWorkflowRun.call(host, request("workflow.run", { id: "wf-ver", trigger: { type: "schedule" } }, 6));
326
- const schedOut = host.responses.at(-1).result;
327
- expect(schedOut.result.outputs.s.default[0].json.version).toBe("v1");
328
- await handleWorkflowRun.call(host, request("workflow.run", { id: "wf-ver" }, 7));
329
- const manualOut = host.responses.at(-1).result;
330
- expect(manualOut.result.outputs.s.default[0].json.version).toBe("v2");
331
- // 归档:run 拒 + 激活拒;恢复后可继续
332
- await handleWorkflowArchive.call(host, request("workflow.archive", { id: "wf-ver", archived: true }, 8));
333
- expect(host.responses.at(-1).result.status).toBe("archived");
334
- await expect(handleWorkflowRun.call(host, request("workflow.run", { id: "wf-ver" }, 9))).rejects.toThrow(/archived/);
335
- await handleWorkflowArchive.call(host, request("workflow.archive", { id: "wf-ver", archived: false }, 10));
336
- await handleWorkflowSetActive.call(host, request("workflow.setActive", { id: "wf-ver", active: true }, 11));
337
- expect(host.responses.at(-1).result.status).toBe("active");
338
- stopAllSchedulers(host);
339
- });
340
- });
341
- describe("observability (IT-9, D33/D36)", () => {
342
- it("run history carries the per-node trace (seq/duration/attempts); metrics aggregate; dryRun stays out of history", async () => {
343
- isolateHome();
344
- const activeCwd = makeTempDir("wf-obs-");
345
- const host = createHost(activeCwd);
346
- const { handleWorkflowRuns, handleWorkflowRunDetail, handleWorkflowMetrics, handleWorkflowDryRun } = await import("./workflow-handler.js");
347
- const def = {
348
- id: "wf-obs",
349
- nodes: [
350
- { id: "t", kind: "trigger" },
351
- { id: "a", kind: "set", params: { json: { step: 1 } } },
352
- { id: "b", kind: "set", params: { json: { step: 2 } } },
353
- ],
354
- edges: [{ from: "t", to: "a" }, { from: "a", to: "b" }],
355
- };
356
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "wf-obs", name: "观测流", def }, 1));
357
- await handleWorkflowRun.call(host, request("workflow.run", { id: "wf-obs" }, 2));
358
- await handleWorkflowRuns.call(host, request("workflow.runs", { id: "wf-obs" }, 3));
359
- const { runs } = host.responses.at(-1).result;
360
- expect(runs).toHaveLength(1);
361
- expect(typeof runs[0].durationMs).toBe("number");
362
- await handleWorkflowRunDetail.call(host, request("workflow.runDetail", { id: "wf-obs", runId: runs[0].runId }, 4));
363
- const { run } = host.responses.at(-1).result;
364
- // Trace: ordered seq, timing, attempts on every executed node (D33).
365
- expect(run.nodes.t.seq).toBe(1);
366
- expect(run.nodes.a.seq).toBe(2);
367
- expect(run.nodes.b.seq).toBe(3);
368
- expect(run.nodes.a.attempts).toBe(1);
369
- expect(typeof run.nodes.a.durationMs).toBe("number");
370
- expect(run.nodes.b.nodeStatus).toBe("completed");
371
- // Metrics aggregate the settled history (D33).
372
- await handleWorkflowMetrics.call(host, request("workflow.metrics", { id: "wf-obs" }, 5));
373
- const { metrics } = host.responses.at(-1).result;
374
- expect(metrics.totalRuns).toBe(1);
375
- expect(metrics.successRate).toBe(1);
376
- expect(typeof metrics.avgDurationMs).toBe("number");
377
- expect(metrics.consecutiveFailures).toBe(0);
378
- // dryRun: full outcome incl. trace, but the history window is untouched (D36).
379
- await handleWorkflowDryRun.call(host, request("workflow.dryRun", { id: "wf-obs", payload: { simulated: true } }, 6));
380
- const dry = host.responses.at(-1).result;
381
- expect(dry.dryRun).toBe(true);
382
- expect(dry.status).toBe("completed");
383
- expect(Object.keys(dry.result?.nodeStats ?? {}).length).toBeGreaterThan(0);
384
- await handleWorkflowRuns.call(host, request("workflow.runs", { id: "wf-obs" }, 7));
385
- expect(host.responses.at(-1).result.runs).toHaveLength(1);
386
- stopAllSchedulers(host);
387
- });
388
- });
389
- describe("createProject(type: automation) (D21)", () => {
390
- it("seeds the primary workflow, records primaryWorkflowId, and never steals the active project", async () => {
391
- const home = isolateHome();
392
- // A pre-existing personal project holds the active slot.
393
- const personal = projectStore.createProject({ name: "日常", workspaceDir: path.join(home, "daily") });
394
- expect(projectStore.getActiveProject()?.id).toBe(personal.id);
395
- const commandHost = {
396
- memdir: null,
397
- projectMemoryStoreFactory: { create: () => ({ ensureInitialized: () => { } }) },
398
- mediaPersistence: { setProjectDir: () => { } },
399
- setActiveWorkdir: vi.fn(),
400
- };
401
- const result = await createProjectCommand(commandHost, { name: "晨报自动化", type: "automation" });
402
- expect(result.autoSwitched).toBe(false);
403
- expect(result.isAgentTeamProject).toBe(false);
404
- expect(result.project.type).toBe("automation");
405
- expect(result.project.primaryWorkflowId).toBeTruthy();
406
- // The active project is untouched; the registry persisted primaryWorkflowId.
407
- expect(projectStore.getActiveProject()?.id).toBe(personal.id);
408
- const persisted = projectStore.getProjectById(result.project.id);
409
- expect(persisted?.primaryWorkflowId).toBe(result.project.primaryWorkflowId);
410
- // The primary workflow exists on disk, named after the project (项目名=工作流名).
411
- const wfPath = path.join(result.project.workspaceDir, ".qlogicagent", "workflows", result.project.primaryWorkflowId, "workflow.json");
412
- expect(fs.existsSync(wfPath)).toBe(true);
413
- const record = JSON.parse(fs.readFileSync(wfPath, "utf-8"));
414
- expect(record.name).toBe("晨报自动化");
415
- expect(record.def.nodes).toEqual([]);
416
- });
417
- });
418
- describe("advanced nodes via handler host (IT-10, D34)", () => {
419
- it("subworkflow runs another workflow as a step and guards cycles", async () => {
420
- isolateHome();
421
- const activeCwd = makeTempDir("wf-sub-");
422
- const host = createHost(activeCwd);
423
- await handleWorkflowCreate.call(host, request("workflow.create", {
424
- id: "child", name: "child",
425
- def: { id: "child", nodes: [{ id: "t", kind: "trigger" }, { id: "s", kind: "set", params: { json: { from: "child" } } }], edges: [{ from: "t", to: "s" }] },
426
- }, 1));
427
- await handleWorkflowCreate.call(host, request("workflow.create", {
428
- id: "parent", name: "parent",
429
- def: { id: "parent", nodes: [{ id: "t", kind: "trigger" }, { id: "sub", kind: "subworkflow", params: { workflowId: "child" } }], edges: [{ from: "t", to: "sub" }] },
430
- }, 2));
431
- await handleWorkflowRun.call(host, request("workflow.run", { id: "parent" }, 3));
432
- const outcome = host.responses.at(-1).result;
433
- expect(outcome.status).toBe("completed");
434
- const subOut = outcome.result?.outputs?.sub?.default?.[0]?.json;
435
- expect(subOut?.status).toBe("completed");
436
- expect(JSON.stringify(subOut?.outputs)).toContain("child");
437
- // Cycle: A↔B must fail loud, not recurse.
438
- await handleWorkflowCreate.call(host, request("workflow.create", {
439
- id: "a", name: "a",
440
- def: { id: "a", nodes: [{ id: "t", kind: "trigger" }, { id: "sub", kind: "subworkflow", params: { workflowId: "b" } }], edges: [{ from: "t", to: "sub" }] },
441
- }, 4));
442
- await handleWorkflowCreate.call(host, request("workflow.create", {
443
- id: "b", name: "b",
444
- def: { id: "b", nodes: [{ id: "t", kind: "trigger" }, { id: "sub", kind: "subworkflow", params: { workflowId: "a" } }], edges: [{ from: "t", to: "sub" }] },
445
- }, 5));
446
- await expect(handleWorkflowRun.call(host, request("workflow.run", { id: "a" }, 6))).rejects.toThrow(/cycle/i);
447
- stopAllSchedulers(host);
448
- });
449
- it("approval pauses the run, lists pending, approve releases it", async () => {
450
- isolateHome();
451
- const activeCwd = makeTempDir("wf-approve-");
452
- const host = createHost(activeCwd);
453
- await handleWorkflowCreate.call(host, request("workflow.create", {
454
- id: "appr", name: "appr",
455
- def: { id: "appr", nodes: [{ id: "t", kind: "trigger" }, { id: "gate", kind: "approval", params: { prompt: "继续?" } }], edges: [{ from: "t", to: "gate" }] },
456
- }, 1));
457
- const running = handleWorkflowRun.call(host, request("workflow.run", { id: "appr" }, 2));
458
- await vi.waitFor(() => {
459
- expect(host.notifications.some((n) => n.method === "workflow.approvalRequested")).toBe(true);
460
- });
461
- const reqNote = host.notifications.find((n) => n.method === "workflow.approvalRequested").params;
462
- expect(reqNote.workflowId).toBe("appr");
463
- expect(reqNote.prompt).toBe("继续?");
464
- // Pull-path recovery: pending approvals are listable.
465
- await handleWorkflowApprovals.call(host, request("workflow.approvals", {}, 3));
466
- const listed = host.responses.at(-1).result;
467
- expect(listed.approvals.map((a) => a.approvalId)).toContain(reqNote.approvalId);
468
- await handleWorkflowApprove.call(host, request("workflow.approve", { approvalId: reqNote.approvalId, approved: true }, 4));
469
- await running;
470
- const outcome = host.responses.find((r) => r.id === 2).result;
471
- expect(outcome.status).toBe("completed");
472
- // The pending entry is consumed; deciding twice fails loud.
473
- await handleWorkflowApprove.call(host, request("workflow.approve", { approvalId: reqNote.approvalId, approved: true }, 5));
474
- expect(host.responses.at(-1).error?.message).toContain("not found");
475
- stopAllSchedulers(host);
476
- });
477
- it("denied approval fails the run (default onError=stop)", async () => {
478
- isolateHome();
479
- const activeCwd = makeTempDir("wf-deny-");
480
- const host = createHost(activeCwd);
481
- await handleWorkflowCreate.call(host, request("workflow.create", {
482
- id: "deny", name: "deny",
483
- def: { id: "deny", nodes: [{ id: "t", kind: "trigger" }, { id: "gate", kind: "approval" }], edges: [{ from: "t", to: "gate" }] },
484
- }, 1));
485
- const running = handleWorkflowRun.call(host, request("workflow.run", { id: "deny" }, 2));
486
- await vi.waitFor(() => {
487
- expect(host.notifications.some((n) => n.method === "workflow.approvalRequested")).toBe(true);
488
- });
489
- const { approvalId } = host.notifications.find((n) => n.method === "workflow.approvalRequested").params;
490
- await handleWorkflowApprove.call(host, request("workflow.approve", { approvalId, approved: false, note: "不行" }, 3));
491
- await expect(running).rejects.toThrow(/denied|不行/);
492
- stopAllSchedulers(host);
493
- });
494
- it("workflow.onForm validates required fields then runs with $trigger values", async () => {
495
- isolateHome();
496
- const activeCwd = makeTempDir("wf-form-");
497
- const host = createHost(activeCwd);
498
- await handleWorkflowCreate.call(host, request("workflow.create", {
499
- id: "form", name: "form",
500
- def: { id: "form", nodes: [{ id: "t", kind: "trigger" }, { id: "s", kind: "set", params: { json: { city: "{{ $trigger.city }}" } } }], edges: [{ from: "t", to: "s" }] },
501
- }, 1));
502
- await handleWorkflowPatch.call(host, request("workflow.patch", {
503
- id: "form",
504
- patch: [{ op: "set_trigger", trigger: { type: "form", fields: [{ key: "city", label: "城市", required: true }] } }],
505
- }, 2));
506
- // Missing required field → caller-fixable INVALID_PARAMS, no run started.
507
- await handleWorkflowOnForm.call(host, request("workflow.onForm", { workflowId: "form", values: {} }, 3));
508
- expect(host.responses.at(-1).error?.message).toContain("城市");
509
- await handleWorkflowOnForm.call(host, request("workflow.onForm", { workflowId: "form", values: { city: "上海" } }, 4));
510
- const outcome = host.responses.at(-1).result;
511
- expect(outcome.status).toBe("completed");
512
- expect(outcome.result?.outputs?.s?.default?.[0]?.json).toEqual({ city: "上海" });
513
- stopAllSchedulers(host);
514
- });
515
- });
516
- describe("workflow.publishHub + community workflow install (IT-5, D35)", () => {
517
- it("derives the manifest from the record, gzips the sanitized bundle, honors consent", async () => {
518
- isolateHome();
519
- const activeCwd = makeTempDir("wf-hub-");
520
- const host = createHost(activeCwd);
521
- await handleWorkflowCreate.call(host, request("workflow.create", {
522
- id: "pub", name: "晨报推送",
523
- def: {
524
- id: "pub",
525
- nodes: [
526
- { id: "t", kind: "trigger" },
527
- { id: "h", kind: "http", params: { url: "https://api.example.com", headers: { Authorization: "Bearer sek-123" } } },
528
- { id: "a", kind: "agent", params: { prompt: "总结" } },
529
- ],
530
- edges: [{ from: "t", to: "h" }, { from: "h", to: "a" }],
531
- },
532
- }, 1));
533
- await handleWorkflowPatch.call(host, request("workflow.patch", {
534
- id: "pub", patch: [{ op: "set_trigger", trigger: { type: "schedule", cron: "0 9 * * *" } }],
535
- }, 2));
536
- // No consent → refused with the standard message, nothing published.
537
- host.resolveCommunityConsentStore = () => ({ read: async () => ({ enabled: false, methodSharingEnabled: false, signalsEnabled: false, encounterEnabled: false, remoteSynced: false }), write: async () => { } });
538
- await handleWorkflowPublishHub.call(host, request("workflow.publishHub", { id: "pub", slug: "morning-news", summary: "每天早报" }, 3));
539
- expect(host.responses.at(-1).error?.message).toContain("consent");
540
- // Consent on + mock client → captures the publish input for manifest assertions.
541
- const published = [];
542
- host.resolveCommunityConsentStore = () => ({ read: async () => ({ enabled: true, methodSharingEnabled: true, signalsEnabled: true, encounterEnabled: true, remoteSynced: true }), write: async () => { } });
543
- host.resolveCommunityConsentClient = (() => ({
544
- publishWorkflow: async (input) => {
545
- published.push(input);
546
- return { resource: { id: input.id, type: "workflow", title: input.title, summary: input.summary, visibility: "public", latestVersion: "1.0.0", withdrawn: false, withdrawnAt: null }, version: { version: "1.0.0", checksum: "x", sizeBytes: 1 } };
547
- },
548
- }));
549
- await handleWorkflowPublishHub.call(host, request("workflow.publishHub", {
550
- id: "pub", slug: "morning-news", summary: "每天早报", category: "automation", tags: ["news"],
551
- }, 4));
552
- const ok = host.responses.at(-1).result;
553
- expect(ok.ok).toBe(true);
554
- const input = published[0];
555
- expect(input.id).toBe("morning-news");
556
- expect(input.category).toBe("automation");
557
- const manifest = input.manifest;
558
- expect(manifest.name).toBe("晨报推送");
559
- expect(manifest.entry).toBe("bundle.json");
560
- expect(manifest.nodeCount).toBe(3);
561
- expect(manifest.declaredPermissions).toEqual(["agent", "http"]);
562
- expect(manifest.triggerSummary).toContain("0 9 * * *");
563
- expect(manifest.credentialsRequired?.length).toBe(1);
564
- // The gzip payload IS the sanitized bundle: secret stripped, requirement derived.
565
- const { gunzipSync } = await import("node:zlib");
566
- const bundle = JSON.parse(gunzipSync(Buffer.from(input.packageGzipBase64, "base64")).toString("utf8"));
567
- expect(JSON.stringify(bundle)).not.toContain("sek-123");
568
- expect(bundle.credentialsRequired.length).toBe(1);
569
- stopAllSchedulers(host);
570
- });
571
- it("installCommunityWorkflowResource downloads, verifies and parses the bundle (never writes disk)", async () => {
572
- const { createServer } = await import("node:http");
573
- const { gzipSync } = await import("node:zlib");
574
- const { createHash } = await import("node:crypto");
575
- const { installCommunityWorkflowResource } = await import("../community-workflow-installer.js");
576
- const bundle = { schemaVersion: 2, name: "模板", def: { id: "x", nodes: [{ id: "t", kind: "trigger" }], edges: [] }, requires: [], credentialsRequired: [] };
577
- const pkg = gzipSync(Buffer.from(JSON.stringify(bundle), "utf8"));
578
- const server = createServer((_req, res) => { res.writeHead(200); res.end(pkg); });
579
- await new Promise((r) => server.listen(0, "127.0.0.1", r));
580
- const port = server.address().port;
581
- try {
582
- const result = await installCommunityWorkflowResource({
583
- id: "tpl", type: "workflow", kind: "executable",
584
- sourceTier: "community", trustStage: "fresh", reviewStatus: "approved",
585
- resourceRiskTier: "R1", effectiveRiskTier: "R1",
586
- requires: [], dependencies: [], version: "1.0.0",
587
- checksum: createHash("sha256").update(pkg).digest("hex"),
588
- sizeBytes: pkg.length,
589
- downloadUrl: `http://127.0.0.1:${port}/pkg`,
590
- manifest: { name: "模板" },
591
- });
592
- expect(result.kind).toBe("workflow");
593
- expect(result.bundle.name).toBe("模板");
594
- // checksum mismatch fails loud
595
- await expect(installCommunityWorkflowResource({
596
- id: "tpl", type: "workflow", kind: "executable",
597
- sourceTier: "community", trustStage: "fresh", reviewStatus: "approved",
598
- resourceRiskTier: "R1", effectiveRiskTier: "R1",
599
- requires: [], dependencies: [], version: "1.0.0",
600
- checksum: "0".repeat(64), sizeBytes: pkg.length,
601
- downloadUrl: `http://127.0.0.1:${port}/pkg`,
602
- manifest: {},
603
- })).rejects.toThrow(/checksum/);
604
- }
605
- finally {
606
- server.close();
607
- }
608
- });
609
- });
610
- describe("owner + audit trail (IT-12, D38)", () => {
611
- it("stamps the active owner on create and records every lifecycle action", async () => {
612
- isolateHome();
613
- const activeCwd = makeTempDir("wf-audit-");
614
- const host = createHost(activeCwd);
615
- const { handleWorkflowSetActive, handleWorkflowPublish } = await import("./workflow-handler.js");
616
- await handleWorkflowCreate.call(host, request("workflow.create", { id: "au", name: "审计流", def: SIMPLE_DEF("au") }, 1));
617
- const created = host.responses.at(-1).result;
618
- expect(created.owner).toBe("user/tester"); // QLOGIC_LLMROUTER_USER_ID via resolveActiveOwnerUserId
619
- await handleWorkflowPatch.call(host, request("workflow.patch", {
620
- id: "au", patch: [{ op: "set_trigger", trigger: { type: "manual" } }],
621
- }, 2));
622
- await handleWorkflowPublish.call(host, request("workflow.publish", { id: "au" }, 3));
623
- await handleWorkflowSetActive.call(host, request("workflow.setActive", { id: "au", active: true }, 4));
624
- await handleWorkflowSetActive.call(host, request("workflow.setActive", { id: "au", active: false }, 5));
625
- await handleWorkflowAudit.call(host, request("workflow.audit", { id: "au" }, 6));
626
- const { entries } = host.responses.at(-1).result;
627
- const actions = entries.map((e) => e.action);
628
- // newest-first
629
- expect(actions).toEqual(["deactivated", "activated", "published", "patched", "created"]);
630
- expect(entries.every((e) => e.actor === "user/tester" && e.workflowId === "au")).toBe(true);
631
- // Unfiltered project-level listing also carries them.
632
- await handleWorkflowAudit.call(host, request("workflow.audit", {}, 7));
633
- const all = host.responses.at(-1).result;
634
- expect(all.entries.length).toBeGreaterThanOrEqual(5);
635
- stopAllSchedulers(host);
636
- });
637
- });
638
- describe("R2: fine-grained unattended audit + webhook wait + durable suspensions", () => {
639
- it("IT-7b: unattended runs refuse destructive tool calls; attended runs execute them", async () => {
640
- isolateHome();
641
- const activeCwd = makeTempDir("wf-audit7b-");
642
- const host = createHost(activeCwd);
643
- const { handleWorkflowPublish, handleWorkflowSetActive } = await import("./workflow-handler.js");
644
- let executed = 0;
645
- host.toolCatalog.findTool = ((name) => name === "execute_command" ? {
646
- function: { name: "execute_command" },
647
- execute: async () => { executed++; return { content: [{ type: "text", text: "ok" }] }; },
648
- } : undefined);
649
- await handleWorkflowCreate.call(host, request("workflow.create", {
650
- id: "danger", name: "危险工具",
651
- def: {
652
- id: "danger",
653
- nodes: [
654
- { id: "t", kind: "trigger" },
655
- { id: "x", kind: "tool", params: { tool: "execute_command", args: { command: "rm -rf /tmp/probe-target" } } },
656
- ],
657
- edges: [{ from: "t", to: "x" }],
658
- },
659
- }, 1));
660
- await handleWorkflowPatch.call(host, request("workflow.patch", {
661
- id: "danger", patch: [{ op: "set_trigger", trigger: { type: "webhook", path: "/danger" } }],
662
- }, 2));
663
- await handleWorkflowPublish.call(host, request("workflow.publish", { id: "danger" }, 3));
664
- await handleWorkflowSetActive.call(host, request("workflow.setActive", { id: "danger", active: true }, 4));
665
- // grant the KIND (tool) — the fine-grained audit must still refuse the destructive specific.
666
- await handleWorkflowSetPermissionScope.call(host, request("workflow.setPermissionScope", { id: "danger", allowUnattendedKinds: ["tool"] }, 5));
667
- // Unattended (webhook) → refused by the operation classifier (surfaces as a loud error
668
- // or a non-completed outcome depending on the scheduler's propagation); the tool NEVER runs.
669
- const hookErr = await handleWorkflowOnWebhook.call(host, request("workflow.onWebhook", { path: "/danger" }, 6))
670
- .then(() => null, (e) => e);
671
- if (hookErr) {
672
- expect(String(hookErr)).toContain("破坏性");
673
- }
674
- else {
675
- const hookRes = host.responses.at(-1).result;
676
- expect(hookRes.outcomes[0]?.status).not.toBe("completed");
677
- }
678
- expect(executed).toBe(0);
679
- // Attended (manual) → same graph runs the tool.
680
- await handleWorkflowRun.call(host, request("workflow.run", { id: "danger" }, 7));
681
- const manual = host.responses.at(-1).result;
682
- expect(manual.status).toBe("completed");
683
- expect(executed).toBe(1);
684
- stopAllSchedulers(host);
685
- });
686
- it("D34: wait(until=webhook) suspends until the path fires, payload flows downstream", async () => {
687
- isolateHome();
688
- const activeCwd = makeTempDir("wf-hookwait-");
689
- const host = createHost(activeCwd);
690
- await handleWorkflowCreate.call(host, request("workflow.create", {
691
- id: "hw", name: "等回调",
692
- def: {
693
- id: "hw",
694
- nodes: [
695
- { id: "t", kind: "trigger" },
696
- { id: "w", kind: "wait", params: { until: "webhook", path: "/callback-probe" } },
697
- ],
698
- edges: [{ from: "t", to: "w" }],
699
- },
700
- }, 1));
701
- const running = handleWorkflowRun.call(host, request("workflow.run", { id: "hw" }, 2));
702
- // 等待者登记后再打 webhook(轮询挂起持久文件作为登记完成信号)。
703
- const { readFileSync } = await import("node:fs");
704
- const suspFile = (await import("node:path")).default.join(activeCwd, ".qlogicagent", "workflows", "pending-suspensions.json");
705
- await vi.waitFor(() => {
706
- const list = JSON.parse(readFileSync(suspFile, "utf8"));
707
- expect(list.some((r) => r.kind === "webhook-wait")).toBe(true);
708
- });
709
- await handleWorkflowOnWebhook.call(host, request("workflow.onWebhook", { path: "/callback-probe", payload: { orderId: 42 } }, 3));
710
- const hookRes = host.responses.at(-1).result;
711
- expect(hookRes.wokenWaits).toBe(1);
712
- await running;
713
- const outcome = host.responses.find((r) => r.id === 2).result;
714
- expect(outcome.status).toBe("completed");
715
- expect(outcome.result?.outputs?.w?.default?.at(-1)?.json.webhook?.orderId).toBe(42);
716
- // settled → the durable registry is empty again
717
- const after = JSON.parse(readFileSync(suspFile, "utf8"));
718
- expect(after.length).toBe(0);
719
- stopAllSchedulers(host);
720
- });
721
- it("R2-E: leftover suspensions from a dead process alert the owner and audit, then clear", async () => {
722
- isolateHome();
723
- const activeCwd = makeTempDir("wf-lost-");
724
- // 模拟上个进程的遗留:先在磁盘上放一条挂起记录,再首次构根。
725
- const { mkdirSync, writeFileSync, readFileSync } = await import("node:fs");
726
- const path2 = (await import("node:path")).default;
727
- const wfDir = path2.join(activeCwd, ".qlogicagent", "workflows");
728
- mkdirSync(wfDir, { recursive: true });
729
- writeFileSync(path2.join(wfDir, "pending-suspensions.json"), JSON.stringify([{
730
- kind: "approval", approvalId: "ghost-1", workflowId: "wf-dead", nodeId: "gate",
731
- prompt: "继续?", requestedAt: new Date().toISOString(),
732
- }]), "utf8");
733
- const host = createHost(activeCwd);
734
- await handleWorkflowList.call(host, request("workflow.list", {}, 1)); // 触发 ensureWorkflowRoot
735
- const alert = host.notifications.find((n) => n.method === "workflow.alert" && n.params.kind === "suspension-lost-on-restart");
736
- expect(alert?.params.workflowId).toBe("wf-dead");
737
- const after = JSON.parse(readFileSync(path2.join(wfDir, "pending-suspensions.json"), "utf8"));
738
- expect(after.length).toBe(0);
739
- // 审计留痕
740
- await handleWorkflowAudit.call(host, request("workflow.audit", {}, 2));
741
- const { entries } = host.responses.at(-1).result;
742
- expect(entries.some((e) => e.action === "suspensionLostOnRestart")).toBe(true);
743
- stopAllSchedulers(host);
744
- });
745
- });