@zhin.js/agent 1.1.7 → 1.1.9

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 (590) hide show
  1. package/README.md +15 -23
  2. package/lib/activity-feedback/adapter-integration.d.ts +1 -2
  3. package/lib/activity-feedback/adapter-integration.d.ts.map +1 -1
  4. package/lib/activity-feedback/adapter-integration.js +43 -13
  5. package/lib/activity-feedback/adapter-integration.js.map +1 -1
  6. package/lib/assistant/index.d.ts +1 -1
  7. package/lib/assistant/index.d.ts.map +1 -1
  8. package/lib/assistant/index.js +1 -1
  9. package/lib/assistant/index.js.map +1 -1
  10. package/lib/assistant/job-creator.d.ts +0 -7
  11. package/lib/assistant/job-creator.d.ts.map +1 -1
  12. package/lib/assistant/job-creator.js +1 -12
  13. package/lib/assistant/job-creator.js.map +1 -1
  14. package/lib/builtin/five-agent/index.d.ts +6 -3
  15. package/lib/builtin/five-agent/index.d.ts.map +1 -1
  16. package/lib/builtin/five-agent/index.js +6 -4
  17. package/lib/builtin/five-agent/index.js.map +1 -1
  18. package/lib/builtin/five-agent/prompts.d.ts +3 -3
  19. package/lib/builtin/five-agent/prompts.d.ts.map +1 -1
  20. package/lib/builtin/five-agent/prompts.js +3 -3
  21. package/lib/builtin/five-agent/prompts.js.map +1 -1
  22. package/lib/builtin/five-agent/role-capability-policy.d.ts +9 -0
  23. package/lib/builtin/five-agent/role-capability-policy.d.ts.map +1 -0
  24. package/lib/builtin/five-agent/role-capability-policy.js +22 -0
  25. package/lib/builtin/five-agent/role-capability-policy.js.map +1 -0
  26. package/lib/builtin/five-agent/roles.d.ts +5 -0
  27. package/lib/builtin/five-agent/roles.d.ts.map +1 -0
  28. package/lib/builtin/five-agent/roles.js +12 -0
  29. package/lib/builtin/five-agent/roles.js.map +1 -0
  30. package/lib/builtin/orchestration-tools.d.ts.map +1 -1
  31. package/lib/builtin/orchestration-tools.js +12 -38
  32. package/lib/builtin/orchestration-tools.js.map +1 -1
  33. package/lib/builtin/spawn-task-tool.js +2 -2
  34. package/lib/builtin/spawn-task-tool.js.map +1 -1
  35. package/lib/config/agent-interfaces.d.ts +2 -2
  36. package/lib/config/agent-interfaces.d.ts.map +1 -1
  37. package/lib/config/fix-ai-config.d.ts.map +1 -1
  38. package/lib/config/fix-ai-config.js +1 -38
  39. package/lib/config/fix-ai-config.js.map +1 -1
  40. package/lib/config/index.d.ts +1 -1
  41. package/lib/config/index.d.ts.map +1 -1
  42. package/lib/config/index.js +1 -1
  43. package/lib/config/index.js.map +1 -1
  44. package/lib/config/resolve-five-agent-binding.d.ts +10 -0
  45. package/lib/config/resolve-five-agent-binding.d.ts.map +1 -0
  46. package/lib/config/resolve-five-agent-binding.js +31 -0
  47. package/lib/config/resolve-five-agent-binding.js.map +1 -0
  48. package/lib/context/context-system.d.ts +2 -2
  49. package/lib/context/context-system.d.ts.map +1 -1
  50. package/lib/context/context-system.js +2 -3
  51. package/lib/context/context-system.js.map +1 -1
  52. package/lib/context/context-tail-limit.d.ts +0 -2
  53. package/lib/context/context-tail-limit.d.ts.map +1 -1
  54. package/lib/context/context-tail-limit.js +1 -3
  55. package/lib/context/context-tail-limit.js.map +1 -1
  56. package/lib/context/default-builders.d.ts +0 -4
  57. package/lib/context/default-builders.d.ts.map +1 -1
  58. package/lib/context/default-builders.js +0 -14
  59. package/lib/context/default-builders.js.map +1 -1
  60. package/lib/context/envelope-parts.d.ts +0 -1
  61. package/lib/context/envelope-parts.d.ts.map +1 -1
  62. package/lib/context/index.d.ts +2 -2
  63. package/lib/context/index.d.ts.map +1 -1
  64. package/lib/context/index.js +2 -2
  65. package/lib/context/index.js.map +1 -1
  66. package/lib/context/turn-envelope.d.ts +0 -1
  67. package/lib/context/turn-envelope.d.ts.map +1 -1
  68. package/lib/context/turn-envelope.js +0 -2
  69. package/lib/context/turn-envelope.js.map +1 -1
  70. package/lib/core/agent-loop-standalone.d.ts +2 -1
  71. package/lib/core/agent-loop-standalone.d.ts.map +1 -1
  72. package/lib/core/agent-loop-standalone.js.map +1 -1
  73. package/lib/event/agent-stream-bus.d.ts +0 -1
  74. package/lib/event/agent-stream-bus.d.ts.map +1 -1
  75. package/lib/event/agent-stream-bus.js.map +1 -1
  76. package/lib/event/publish-agent-stream.js +2 -2
  77. package/lib/event/publish-agent-stream.js.map +1 -1
  78. package/lib/event/turn-event.d.ts +11 -1
  79. package/lib/event/turn-event.d.ts.map +1 -1
  80. package/lib/event/turn-event.js.map +1 -1
  81. package/lib/index.d.ts +13 -21
  82. package/lib/index.d.ts.map +1 -1
  83. package/lib/index.js +6 -15
  84. package/lib/index.js.map +1 -1
  85. package/lib/init/activate-ai-database-storage.d.ts +2 -2
  86. package/lib/init/activate-ai-database-storage.d.ts.map +1 -1
  87. package/lib/init/activate-ai-database-storage.js +1 -3
  88. package/lib/init/activate-ai-database-storage.js.map +1 -1
  89. package/lib/init/define-ai-database-models.d.ts +1 -1
  90. package/lib/init/define-ai-database-models.d.ts.map +1 -1
  91. package/lib/init/define-ai-database-models.js +1 -9
  92. package/lib/init/define-ai-database-models.js.map +1 -1
  93. package/lib/init/runtime-management-commands.d.ts +2 -3
  94. package/lib/init/runtime-management-commands.d.ts.map +1 -1
  95. package/lib/init/runtime-management-commands.js +6 -6
  96. package/lib/init/runtime-management-commands.js.map +1 -1
  97. package/lib/internal/agent-host.d.ts +2 -3
  98. package/lib/internal/agent-host.d.ts.map +1 -1
  99. package/lib/internal/host-types.d.ts +0 -28
  100. package/lib/internal/host-types.d.ts.map +1 -1
  101. package/lib/memory/context-repository-store.js +1 -1
  102. package/lib/memory/context-repository-store.js.map +1 -1
  103. package/lib/memory/memory-system.d.ts +1 -2
  104. package/lib/memory/memory-system.d.ts.map +1 -1
  105. package/lib/memory/memory-system.js +1 -3
  106. package/lib/memory/memory-system.js.map +1 -1
  107. package/lib/orchestrator/bootstrap-executors.d.ts +0 -4
  108. package/lib/orchestrator/bootstrap-executors.d.ts.map +1 -1
  109. package/lib/orchestrator/bootstrap-executors.js +11 -137
  110. package/lib/orchestrator/bootstrap-executors.js.map +1 -1
  111. package/lib/orchestrator/orchestration-mappers.d.ts +1 -1
  112. package/lib/orchestrator/orchestration-mappers.d.ts.map +1 -1
  113. package/lib/orchestrator/orchestration-mappers.js +4 -49
  114. package/lib/orchestrator/orchestration-mappers.js.map +1 -1
  115. package/lib/orchestrator/orchestration-service.d.ts.map +1 -1
  116. package/lib/orchestrator/orchestration-service.js +2 -5
  117. package/lib/orchestrator/orchestration-service.js.map +1 -1
  118. package/lib/orchestrator/orchestration-source.d.ts +5 -0
  119. package/lib/orchestrator/orchestration-source.d.ts.map +1 -0
  120. package/lib/orchestrator/orchestration-source.js +22 -0
  121. package/lib/orchestrator/orchestration-source.js.map +1 -0
  122. package/lib/outbound/send-proactive.d.ts +3 -13
  123. package/lib/outbound/send-proactive.d.ts.map +1 -1
  124. package/lib/outbound/send-proactive.js +1 -53
  125. package/lib/outbound/send-proactive.js.map +1 -1
  126. package/lib/plugin-runtime/agent-host-port.d.ts +12 -3
  127. package/lib/plugin-runtime/agent-host-port.d.ts.map +1 -1
  128. package/lib/plugin-runtime/agent-host-port.js +1 -1
  129. package/lib/plugin-runtime/agent-host-port.js.map +1 -1
  130. package/lib/plugin-runtime/agent-runtime.d.ts +7 -4
  131. package/lib/plugin-runtime/agent-runtime.d.ts.map +1 -1
  132. package/lib/plugin-runtime/agent-runtime.js +3 -2
  133. package/lib/plugin-runtime/agent-runtime.js.map +1 -1
  134. package/lib/plugin-runtime/capability-tools.d.ts.map +1 -1
  135. package/lib/plugin-runtime/capability-tools.js +3 -0
  136. package/lib/plugin-runtime/capability-tools.js.map +1 -1
  137. package/lib/plugin-runtime/deferred-capability-plan.d.ts +1 -0
  138. package/lib/plugin-runtime/deferred-capability-plan.d.ts.map +1 -1
  139. package/lib/plugin-runtime/deferred-capability-plan.js +1 -1
  140. package/lib/plugin-runtime/deferred-capability-plan.js.map +1 -1
  141. package/lib/plugin-runtime/full-agent-turn-engine.d.ts.map +1 -1
  142. package/lib/plugin-runtime/full-agent-turn-engine.js +102 -0
  143. package/lib/plugin-runtime/full-agent-turn-engine.js.map +1 -1
  144. package/lib/plugin-runtime/host-mcp-projection.d.ts.map +1 -1
  145. package/lib/plugin-runtime/host-mcp-projection.js +17 -2
  146. package/lib/plugin-runtime/host-mcp-projection.js.map +1 -1
  147. package/lib/plugin-runtime/schedule-capability-plan.d.ts +20 -0
  148. package/lib/plugin-runtime/schedule-capability-plan.d.ts.map +1 -0
  149. package/lib/plugin-runtime/schedule-capability-plan.js +88 -0
  150. package/lib/plugin-runtime/schedule-capability-plan.js.map +1 -0
  151. package/lib/prompt/assembly.d.ts.map +1 -1
  152. package/lib/prompt/assembly.js +2 -0
  153. package/lib/prompt/assembly.js.map +1 -1
  154. package/lib/prompt/index.d.ts +5 -1
  155. package/lib/prompt/index.d.ts.map +1 -1
  156. package/lib/prompt/index.js +3 -1
  157. package/lib/prompt/index.js.map +1 -1
  158. package/lib/prompt/prompt-assembly-registry.d.ts +25 -0
  159. package/lib/prompt/prompt-assembly-registry.d.ts.map +1 -0
  160. package/lib/prompt/prompt-assembly-registry.js +43 -0
  161. package/lib/prompt/prompt-assembly-registry.js.map +1 -0
  162. package/lib/prompt/prompt-budget.d.ts +9 -0
  163. package/lib/prompt/prompt-budget.d.ts.map +1 -0
  164. package/lib/prompt/prompt-budget.js +28 -0
  165. package/lib/prompt/prompt-budget.js.map +1 -0
  166. package/lib/prompt/prompt-builder.js +1 -1
  167. package/lib/prompt/prompt-builder.js.map +1 -1
  168. package/lib/prompt/system-prompt.d.ts +5 -8
  169. package/lib/prompt/system-prompt.d.ts.map +1 -1
  170. package/lib/prompt/system-prompt.js +159 -78
  171. package/lib/prompt/system-prompt.js.map +1 -1
  172. package/lib/prompt/tokens.d.ts +8 -0
  173. package/lib/prompt/tokens.d.ts.map +1 -0
  174. package/lib/prompt/tokens.js +2 -0
  175. package/lib/prompt/tokens.js.map +1 -0
  176. package/lib/prompt/turn-prompt-profile.d.ts +1 -2
  177. package/lib/prompt/turn-prompt-profile.d.ts.map +1 -1
  178. package/lib/schedule-domain/audit-logger.d.ts +2 -2
  179. package/lib/schedule-domain/audit-logger.d.ts.map +1 -1
  180. package/lib/schedule-domain/execution-domain.d.ts +21 -17
  181. package/lib/schedule-domain/execution-domain.d.ts.map +1 -1
  182. package/lib/schedule-domain/execution-domain.js +41 -23
  183. package/lib/schedule-domain/execution-domain.js.map +1 -1
  184. package/lib/schedule-domain/index.d.ts +0 -1
  185. package/lib/schedule-domain/index.d.ts.map +1 -1
  186. package/lib/schedule-domain/index.js +0 -1
  187. package/lib/schedule-domain/index.js.map +1 -1
  188. package/lib/schedule-domain/prompt-assembler.d.ts +3 -4
  189. package/lib/schedule-domain/prompt-assembler.d.ts.map +1 -1
  190. package/lib/schedule-domain/prompt-assembler.js +0 -16
  191. package/lib/schedule-domain/prompt-assembler.js.map +1 -1
  192. package/lib/schedule-domain/security-harness.d.ts +10 -15
  193. package/lib/schedule-domain/security-harness.d.ts.map +1 -1
  194. package/lib/schedule-domain/security-harness.js +5 -78
  195. package/lib/schedule-domain/security-harness.js.map +1 -1
  196. package/lib/security/exec-policy.d.ts +2 -0
  197. package/lib/security/exec-policy.d.ts.map +1 -1
  198. package/lib/security/exec-policy.js +21 -0
  199. package/lib/security/exec-policy.js.map +1 -1
  200. package/lib/security/owner-approve-always-store.d.ts +8 -3
  201. package/lib/security/owner-approve-always-store.d.ts.map +1 -1
  202. package/lib/security/owner-approve-always-store.js +160 -173
  203. package/lib/security/owner-approve-always-store.js.map +1 -1
  204. package/lib/security/policy-facade.d.ts.map +1 -1
  205. package/lib/security/policy-facade.js +11 -1
  206. package/lib/security/policy-facade.js.map +1 -1
  207. package/lib/service.d.ts.map +1 -1
  208. package/lib/service.js +0 -7
  209. package/lib/service.js.map +1 -1
  210. package/lib/session/index.d.ts +3 -3
  211. package/lib/session/index.d.ts.map +1 -1
  212. package/lib/session/index.js +3 -3
  213. package/lib/session/index.js.map +1 -1
  214. package/lib/session/passive-group-session.js +1 -1
  215. package/lib/session/session-key.d.ts +4 -0
  216. package/lib/session/session-key.d.ts.map +1 -0
  217. package/lib/session/session-key.js +6 -0
  218. package/lib/session/session-key.js.map +1 -0
  219. package/lib/session/session-system.d.ts.map +1 -1
  220. package/lib/session/session-system.js +4 -4
  221. package/lib/session/session-system.js.map +1 -1
  222. package/lib/session/session-tree-commands.d.ts +2 -3
  223. package/lib/session/session-tree-commands.d.ts.map +1 -1
  224. package/lib/session/session-tree-commands.js +2 -5
  225. package/lib/session/session-tree-commands.js.map +1 -1
  226. package/lib/session/strategies.d.ts +1 -1
  227. package/lib/session/strategies.d.ts.map +1 -1
  228. package/lib/session/strategies.js +2 -2
  229. package/lib/session/strategies.js.map +1 -1
  230. package/lib/subagent/im-result-sink.d.ts.map +1 -1
  231. package/lib/subagent/im-result-sink.js +0 -1
  232. package/lib/subagent/im-result-sink.js.map +1 -1
  233. package/lib/subagent-goal-notify.d.ts +0 -9
  234. package/lib/subagent-goal-notify.d.ts.map +1 -1
  235. package/lib/subagent-goal-notify.js +0 -13
  236. package/lib/subagent-goal-notify.js.map +1 -1
  237. package/lib/task-executor.d.ts +14 -3
  238. package/lib/task-executor.d.ts.map +1 -1
  239. package/lib/task-executor.js +48 -61
  240. package/lib/task-executor.js.map +1 -1
  241. package/lib/tool/classic-tool-execution-authority.d.ts.map +1 -1
  242. package/lib/tool/classic-tool-execution-authority.js +4 -3
  243. package/lib/tool/classic-tool-execution-authority.js.map +1 -1
  244. package/lib/tool/prepare-turn-tools.d.ts +0 -2
  245. package/lib/tool/prepare-turn-tools.d.ts.map +1 -1
  246. package/lib/tool/prepare-turn-tools.js +1 -55
  247. package/lib/tool/prepare-turn-tools.js.map +1 -1
  248. package/lib/tool/tool-runtime.d.ts +1 -1
  249. package/lib/tool/tool-runtime.d.ts.map +1 -1
  250. package/lib/turn/auto-continue.js +1 -1
  251. package/lib/turn/auto-continue.js.map +1 -1
  252. package/lib/turn/persist-deferred-context.js +1 -1
  253. package/lib/turn/persist-deferred-context.js.map +1 -1
  254. package/lib/turn/persist-subagent-context.js +1 -1
  255. package/lib/turn/persist-subagent-context.js.map +1 -1
  256. package/lib/turn/process-stream.d.ts.map +1 -1
  257. package/lib/turn/process-stream.js +0 -2
  258. package/lib/turn/process-stream.js.map +1 -1
  259. package/lib/turn/turn-ingress.d.ts +21 -1
  260. package/lib/turn/turn-ingress.d.ts.map +1 -1
  261. package/lib/turn/turn-ingress.js +29 -0
  262. package/lib/turn/turn-ingress.js.map +1 -1
  263. package/lib/turn/turn-pipeline.d.ts +0 -5
  264. package/lib/turn/turn-pipeline.d.ts.map +1 -1
  265. package/lib/turn/turn-pipeline.js +12 -32
  266. package/lib/turn/turn-pipeline.js.map +1 -1
  267. package/lib/typing-indicator/adapter-integration.d.ts +1 -2
  268. package/lib/typing-indicator/adapter-integration.d.ts.map +1 -1
  269. package/lib/typing-indicator/adapter-integration.js.map +1 -1
  270. package/lib/typing-indicator/integration.d.ts +2 -3
  271. package/lib/typing-indicator/integration.d.ts.map +1 -1
  272. package/lib/typing-indicator/integration.js +48 -11
  273. package/lib/typing-indicator/integration.js.map +1 -1
  274. package/lib/zhin-agent/index.d.ts +5 -8
  275. package/lib/zhin-agent/index.d.ts.map +1 -1
  276. package/lib/zhin-agent/index.js +13 -15
  277. package/lib/zhin-agent/index.js.map +1 -1
  278. package/package.json +9 -9
  279. package/lib/aop/index.d.ts +0 -11
  280. package/lib/aop/index.d.ts.map +0 -1
  281. package/lib/aop/index.js +0 -11
  282. package/lib/aop/index.js.map +0 -1
  283. package/lib/aop/pipeline/index.d.ts +0 -12
  284. package/lib/aop/pipeline/index.d.ts.map +0 -1
  285. package/lib/aop/pipeline/index.js +0 -12
  286. package/lib/aop/pipeline/index.js.map +0 -1
  287. package/lib/aop/pipeline/pipeline-flow.d.ts +0 -25
  288. package/lib/aop/pipeline/pipeline-flow.d.ts.map +0 -1
  289. package/lib/aop/pipeline/pipeline-flow.js +0 -115
  290. package/lib/aop/pipeline/pipeline-flow.js.map +0 -1
  291. package/lib/aop/pipeline/pipeline-mode.d.ts +0 -10
  292. package/lib/aop/pipeline/pipeline-mode.d.ts.map +0 -1
  293. package/lib/aop/pipeline/pipeline-mode.js +0 -16
  294. package/lib/aop/pipeline/pipeline-mode.js.map +0 -1
  295. package/lib/aop/pipeline/pipeline-service.d.ts +0 -123
  296. package/lib/aop/pipeline/pipeline-service.d.ts.map +0 -1
  297. package/lib/aop/pipeline/pipeline-service.js +0 -238
  298. package/lib/aop/pipeline/pipeline-service.js.map +0 -1
  299. package/lib/aop/pipeline/pipeline-transitions.d.ts +0 -14
  300. package/lib/aop/pipeline/pipeline-transitions.d.ts.map +0 -1
  301. package/lib/aop/pipeline/pipeline-transitions.js +0 -31
  302. package/lib/aop/pipeline/pipeline-transitions.js.map +0 -1
  303. package/lib/aop/pipeline/ports.d.ts +0 -16
  304. package/lib/aop/pipeline/ports.d.ts.map +0 -1
  305. package/lib/aop/pipeline/ports.js +0 -2
  306. package/lib/aop/pipeline/ports.js.map +0 -1
  307. package/lib/aop/pipeline/role-capability-policy.d.ts +0 -16
  308. package/lib/aop/pipeline/role-capability-policy.d.ts.map +0 -1
  309. package/lib/aop/pipeline/role-capability-policy.js +0 -29
  310. package/lib/aop/pipeline/role-capability-policy.js.map +0 -1
  311. package/lib/aop/runtime/index.d.ts +0 -9
  312. package/lib/aop/runtime/index.d.ts.map +0 -1
  313. package/lib/aop/runtime/index.js +0 -9
  314. package/lib/aop/runtime/index.js.map +0 -1
  315. package/lib/collaboration/collab-admin-gate.d.ts +0 -21
  316. package/lib/collaboration/collab-admin-gate.d.ts.map +0 -1
  317. package/lib/collaboration/collab-admin-gate.js +0 -74
  318. package/lib/collaboration/collab-admin-gate.js.map +0 -1
  319. package/lib/collaboration/collab-utils.d.ts +0 -15
  320. package/lib/collaboration/collab-utils.d.ts.map +0 -1
  321. package/lib/collaboration/collab-utils.js +0 -37
  322. package/lib/collaboration/collab-utils.js.map +0 -1
  323. package/lib/collaboration/collaboration-artifact-repository.d.ts +0 -48
  324. package/lib/collaboration/collaboration-artifact-repository.d.ts.map +0 -1
  325. package/lib/collaboration/collaboration-artifact-repository.js +0 -114
  326. package/lib/collaboration/collaboration-artifact-repository.js.map +0 -1
  327. package/lib/collaboration/collaboration-commands.d.ts +0 -38
  328. package/lib/collaboration/collaboration-commands.d.ts.map +0 -1
  329. package/lib/collaboration/collaboration-commands.js +0 -373
  330. package/lib/collaboration/collaboration-commands.js.map +0 -1
  331. package/lib/collaboration/collaboration-config.d.ts +0 -30
  332. package/lib/collaboration/collaboration-config.d.ts.map +0 -1
  333. package/lib/collaboration/collaboration-config.js +0 -170
  334. package/lib/collaboration/collaboration-config.js.map +0 -1
  335. package/lib/collaboration/collaboration-context.d.ts +0 -15
  336. package/lib/collaboration/collaboration-context.d.ts.map +0 -1
  337. package/lib/collaboration/collaboration-context.js +0 -101
  338. package/lib/collaboration/collaboration-context.js.map +0 -1
  339. package/lib/collaboration/collaboration-db-model.d.ts +0 -350
  340. package/lib/collaboration/collaboration-db-model.d.ts.map +0 -1
  341. package/lib/collaboration/collaboration-db-model.js +0 -112
  342. package/lib/collaboration/collaboration-db-model.js.map +0 -1
  343. package/lib/collaboration/collaboration-delegation.d.ts +0 -21
  344. package/lib/collaboration/collaboration-delegation.d.ts.map +0 -1
  345. package/lib/collaboration/collaboration-delegation.js +0 -221
  346. package/lib/collaboration/collaboration-delegation.js.map +0 -1
  347. package/lib/collaboration/collaboration-dispatch.d.ts +0 -32
  348. package/lib/collaboration/collaboration-dispatch.d.ts.map +0 -1
  349. package/lib/collaboration/collaboration-dispatch.js +0 -93
  350. package/lib/collaboration/collaboration-dispatch.js.map +0 -1
  351. package/lib/collaboration/collaboration-kernel-bridge.d.ts +0 -23
  352. package/lib/collaboration/collaboration-kernel-bridge.d.ts.map +0 -1
  353. package/lib/collaboration/collaboration-kernel-bridge.js +0 -105
  354. package/lib/collaboration/collaboration-kernel-bridge.js.map +0 -1
  355. package/lib/collaboration/collaboration-outbound.d.ts +0 -64
  356. package/lib/collaboration/collaboration-outbound.d.ts.map +0 -1
  357. package/lib/collaboration/collaboration-outbound.js +0 -312
  358. package/lib/collaboration/collaboration-outbound.js.map +0 -1
  359. package/lib/collaboration/collaboration-scene-repository.d.ts +0 -154
  360. package/lib/collaboration/collaboration-scene-repository.d.ts.map +0 -1
  361. package/lib/collaboration/collaboration-scene-repository.js +0 -451
  362. package/lib/collaboration/collaboration-scene-repository.js.map +0 -1
  363. package/lib/collaboration/collaboration-turn-snapshot.d.ts +0 -18
  364. package/lib/collaboration/collaboration-turn-snapshot.d.ts.map +0 -1
  365. package/lib/collaboration/collaboration-turn-snapshot.js +0 -35
  366. package/lib/collaboration/collaboration-turn-snapshot.js.map +0 -1
  367. package/lib/collaboration/delegation-state.d.ts +0 -30
  368. package/lib/collaboration/delegation-state.d.ts.map +0 -1
  369. package/lib/collaboration/delegation-state.js +0 -86
  370. package/lib/collaboration/delegation-state.js.map +0 -1
  371. package/lib/collaboration/endpoint-identity.d.ts +0 -28
  372. package/lib/collaboration/endpoint-identity.d.ts.map +0 -1
  373. package/lib/collaboration/endpoint-identity.js +0 -80
  374. package/lib/collaboration/endpoint-identity.js.map +0 -1
  375. package/lib/collaboration/group-feed.d.ts +0 -30
  376. package/lib/collaboration/group-feed.d.ts.map +0 -1
  377. package/lib/collaboration/group-feed.js +0 -150
  378. package/lib/collaboration/group-feed.js.map +0 -1
  379. package/lib/collaboration/group-message.d.ts +0 -53
  380. package/lib/collaboration/group-message.d.ts.map +0 -1
  381. package/lib/collaboration/group-message.js +0 -101
  382. package/lib/collaboration/group-message.js.map +0 -1
  383. package/lib/collaboration/im-mention-delegate.d.ts +0 -22
  384. package/lib/collaboration/im-mention-delegate.d.ts.map +0 -1
  385. package/lib/collaboration/im-mention-delegate.js +0 -15
  386. package/lib/collaboration/im-mention-delegate.js.map +0 -1
  387. package/lib/collaboration/inbound-peer-handback.d.ts +0 -18
  388. package/lib/collaboration/inbound-peer-handback.d.ts.map +0 -1
  389. package/lib/collaboration/inbound-peer-handback.js +0 -65
  390. package/lib/collaboration/inbound-peer-handback.js.map +0 -1
  391. package/lib/collaboration/inbound-spawn-task.d.ts +0 -29
  392. package/lib/collaboration/inbound-spawn-task.d.ts.map +0 -1
  393. package/lib/collaboration/inbound-spawn-task.js +0 -96
  394. package/lib/collaboration/inbound-spawn-task.js.map +0 -1
  395. package/lib/collaboration/inbound-turn-endpoint.d.ts +0 -16
  396. package/lib/collaboration/inbound-turn-endpoint.d.ts.map +0 -1
  397. package/lib/collaboration/inbound-turn-endpoint.js +0 -26
  398. package/lib/collaboration/inbound-turn-endpoint.js.map +0 -1
  399. package/lib/collaboration/inbound-turn-tools.d.ts +0 -13
  400. package/lib/collaboration/inbound-turn-tools.d.ts.map +0 -1
  401. package/lib/collaboration/inbound-turn-tools.js +0 -24
  402. package/lib/collaboration/inbound-turn-tools.js.map +0 -1
  403. package/lib/collaboration/index.d.ts +0 -21
  404. package/lib/collaboration/index.d.ts.map +0 -1
  405. package/lib/collaboration/index.js +0 -19
  406. package/lib/collaboration/index.js.map +0 -1
  407. package/lib/collaboration/init-observe-hook.d.ts +0 -56
  408. package/lib/collaboration/init-observe-hook.d.ts.map +0 -1
  409. package/lib/collaboration/init-observe-hook.js +0 -168
  410. package/lib/collaboration/init-observe-hook.js.map +0 -1
  411. package/lib/collaboration/init-wizard-service.d.ts +0 -57
  412. package/lib/collaboration/init-wizard-service.d.ts.map +0 -1
  413. package/lib/collaboration/init-wizard-service.js +0 -187
  414. package/lib/collaboration/init-wizard-service.js.map +0 -1
  415. package/lib/collaboration/outbound-resolver.d.ts +0 -37
  416. package/lib/collaboration/outbound-resolver.d.ts.map +0 -1
  417. package/lib/collaboration/outbound-resolver.js +0 -189
  418. package/lib/collaboration/outbound-resolver.js.map +0 -1
  419. package/lib/collaboration/peer-policy.d.ts +0 -29
  420. package/lib/collaboration/peer-policy.d.ts.map +0 -1
  421. package/lib/collaboration/peer-policy.js +0 -118
  422. package/lib/collaboration/peer-policy.js.map +0 -1
  423. package/lib/collaboration/resolve-agent-session-key.d.ts +0 -21
  424. package/lib/collaboration/resolve-agent-session-key.d.ts.map +0 -1
  425. package/lib/collaboration/resolve-agent-session-key.js +0 -61
  426. package/lib/collaboration/resolve-agent-session-key.js.map +0 -1
  427. package/lib/collaboration/runtime-inbound-gate.d.ts +0 -35
  428. package/lib/collaboration/runtime-inbound-gate.d.ts.map +0 -1
  429. package/lib/collaboration/runtime-inbound-gate.js +0 -105
  430. package/lib/collaboration/runtime-inbound-gate.js.map +0 -1
  431. package/lib/collaboration/scene-context.d.ts +0 -17
  432. package/lib/collaboration/scene-context.d.ts.map +0 -1
  433. package/lib/collaboration/scene-context.js +0 -22
  434. package/lib/collaboration/scene-context.js.map +0 -1
  435. package/lib/collaboration/scene-identity-service.d.ts +0 -169
  436. package/lib/collaboration/scene-identity-service.d.ts.map +0 -1
  437. package/lib/collaboration/scene-identity-service.js +0 -479
  438. package/lib/collaboration/scene-identity-service.js.map +0 -1
  439. package/lib/collaboration/scene-service.d.ts +0 -67
  440. package/lib/collaboration/scene-service.d.ts.map +0 -1
  441. package/lib/collaboration/scene-service.js +0 -157
  442. package/lib/collaboration/scene-service.js.map +0 -1
  443. package/lib/collaboration/structured-ai-outbound.d.ts +0 -25
  444. package/lib/collaboration/structured-ai-outbound.d.ts.map +0 -1
  445. package/lib/collaboration/structured-ai-outbound.js +0 -179
  446. package/lib/collaboration/structured-ai-outbound.js.map +0 -1
  447. package/lib/collaboration/turn-plan-resolver.d.ts +0 -17
  448. package/lib/collaboration/turn-plan-resolver.d.ts.map +0 -1
  449. package/lib/collaboration/turn-plan-resolver.js +0 -63
  450. package/lib/collaboration/turn-plan-resolver.js.map +0 -1
  451. package/lib/collaboration/types.d.ts +0 -147
  452. package/lib/collaboration/types.d.ts.map +0 -1
  453. package/lib/collaboration/types.js +0 -16
  454. package/lib/collaboration/types.js.map +0 -1
  455. package/lib/collaboration/wire-collaboration-storage.d.ts +0 -4
  456. package/lib/collaboration/wire-collaboration-storage.d.ts.map +0 -1
  457. package/lib/collaboration/wire-collaboration-storage.js +0 -26
  458. package/lib/collaboration/wire-collaboration-storage.js.map +0 -1
  459. package/lib/config/resolve-pipeline-binding.d.ts +0 -16
  460. package/lib/config/resolve-pipeline-binding.d.ts.map +0 -1
  461. package/lib/config/resolve-pipeline-binding.js +0 -35
  462. package/lib/config/resolve-pipeline-binding.js.map +0 -1
  463. package/lib/discovery/register-agent-surface.d.ts +0 -33
  464. package/lib/discovery/register-agent-surface.d.ts.map +0 -1
  465. package/lib/discovery/register-agent-surface.js +0 -170
  466. package/lib/discovery/register-agent-surface.js.map +0 -1
  467. package/lib/init/create-zhin-agent.d.ts +0 -3
  468. package/lib/init/create-zhin-agent.d.ts.map +0 -1
  469. package/lib/init/create-zhin-agent.js +0 -401
  470. package/lib/init/create-zhin-agent.js.map +0 -1
  471. package/lib/init/register-ai-service.d.ts +0 -7
  472. package/lib/init/register-ai-service.d.ts.map +0 -1
  473. package/lib/init/register-ai-service.js +0 -45
  474. package/lib/init/register-ai-service.js.map +0 -1
  475. package/lib/init/register-builtin-tools.d.ts +0 -3
  476. package/lib/init/register-builtin-tools.d.ts.map +0 -1
  477. package/lib/init/register-builtin-tools.js +0 -411
  478. package/lib/init/register-builtin-tools.js.map +0 -1
  479. package/lib/init/register-capability-features.d.ts +0 -2
  480. package/lib/init/register-capability-features.d.ts.map +0 -1
  481. package/lib/init/register-capability-features.js +0 -28
  482. package/lib/init/register-capability-features.js.map +0 -1
  483. package/lib/init/register-collaboration-commands.d.ts +0 -2
  484. package/lib/init/register-collaboration-commands.d.ts.map +0 -1
  485. package/lib/init/register-collaboration-commands.js +0 -110
  486. package/lib/init/register-collaboration-commands.js.map +0 -1
  487. package/lib/init/register-db-models.d.ts +0 -2
  488. package/lib/init/register-db-models.d.ts.map +0 -1
  489. package/lib/init/register-db-models.js +0 -18
  490. package/lib/init/register-db-models.js.map +0 -1
  491. package/lib/init/register-db-upgrade.d.ts +0 -7
  492. package/lib/init/register-db-upgrade.d.ts.map +0 -1
  493. package/lib/init/register-db-upgrade.js +0 -79
  494. package/lib/init/register-db-upgrade.js.map +0 -1
  495. package/lib/init/register-group-session-passive.d.ts +0 -3
  496. package/lib/init/register-group-session-passive.d.ts.map +0 -1
  497. package/lib/init/register-group-session-passive.js +0 -61
  498. package/lib/init/register-group-session-passive.js.map +0 -1
  499. package/lib/init/register-im-segment-filter.d.ts +0 -2
  500. package/lib/init/register-im-segment-filter.d.ts.map +0 -1
  501. package/lib/init/register-im-segment-filter.js +0 -23
  502. package/lib/init/register-im-segment-filter.js.map +0 -1
  503. package/lib/init/register-init-wizard-guardrail.d.ts +0 -2
  504. package/lib/init/register-init-wizard-guardrail.d.ts.map +0 -1
  505. package/lib/init/register-init-wizard-guardrail.js +0 -41
  506. package/lib/init/register-init-wizard-guardrail.js.map +0 -1
  507. package/lib/init/register-introspection-commands.d.ts +0 -3
  508. package/lib/init/register-introspection-commands.d.ts.map +0 -1
  509. package/lib/init/register-introspection-commands.js +0 -107
  510. package/lib/init/register-introspection-commands.js.map +0 -1
  511. package/lib/init/register-management-tools.d.ts +0 -10
  512. package/lib/init/register-management-tools.d.ts.map +0 -1
  513. package/lib/init/register-management-tools.js +0 -42
  514. package/lib/init/register-management-tools.js.map +0 -1
  515. package/lib/init/register-mcp-from-config.d.ts +0 -2
  516. package/lib/init/register-mcp-from-config.d.ts.map +0 -1
  517. package/lib/init/register-mcp-from-config.js +0 -87
  518. package/lib/init/register-mcp-from-config.js.map +0 -1
  519. package/lib/init/register-orchestrator.d.ts +0 -2
  520. package/lib/init/register-orchestrator.d.ts.map +0 -1
  521. package/lib/init/register-orchestrator.js +0 -15
  522. package/lib/init/register-orchestrator.js.map +0 -1
  523. package/lib/init/register-tool-service.d.ts +0 -2
  524. package/lib/init/register-tool-service.d.ts.map +0 -1
  525. package/lib/init/register-tool-service.js +0 -9
  526. package/lib/init/register-tool-service.js.map +0 -1
  527. package/lib/init/shared-refs.d.ts +0 -14
  528. package/lib/init/shared-refs.d.ts.map +0 -1
  529. package/lib/init/shared-refs.js +0 -7
  530. package/lib/init/shared-refs.js.map +0 -1
  531. package/lib/init/types.d.ts +0 -26
  532. package/lib/init/types.d.ts.map +0 -1
  533. package/lib/init/types.js +0 -7
  534. package/lib/init/types.js.map +0 -1
  535. package/lib/init.d.ts +0 -7
  536. package/lib/init.d.ts.map +0 -1
  537. package/lib/init.js +0 -11
  538. package/lib/init.js.map +0 -1
  539. package/lib/schedule-domain/tool-resolver.d.ts +0 -20
  540. package/lib/schedule-domain/tool-resolver.d.ts.map +0 -1
  541. package/lib/schedule-domain/tool-resolver.js +0 -80
  542. package/lib/schedule-domain/tool-resolver.js.map +0 -1
  543. package/lib/schedule-domain/turn-context.d.ts +0 -9
  544. package/lib/schedule-domain/turn-context.d.ts.map +0 -1
  545. package/lib/schedule-domain/turn-context.js +0 -36
  546. package/lib/schedule-domain/turn-context.js.map +0 -1
  547. package/lib/session/agent-session-host-port.d.ts +0 -23
  548. package/lib/session/agent-session-host-port.d.ts.map +0 -1
  549. package/lib/session/agent-session-host-port.js +0 -61
  550. package/lib/session/agent-session-host-port.js.map +0 -1
  551. package/lib/session/http-agent-session-store.d.ts +0 -76
  552. package/lib/session/http-agent-session-store.d.ts.map +0 -1
  553. package/lib/session/http-agent-session-store.js +0 -211
  554. package/lib/session/http-agent-session-store.js.map +0 -1
  555. package/lib/session/http-approval-adapter.d.ts +0 -11
  556. package/lib/session/http-approval-adapter.d.ts.map +0 -1
  557. package/lib/session/http-approval-adapter.js +0 -19
  558. package/lib/session/http-approval-adapter.js.map +0 -1
  559. package/lib/session/http-approval-waiter.d.ts +0 -11
  560. package/lib/session/http-approval-waiter.d.ts.map +0 -1
  561. package/lib/session/http-approval-waiter.js +0 -61
  562. package/lib/session/http-approval-waiter.js.map +0 -1
  563. package/lib/session/http-session-persistence.d.ts +0 -28
  564. package/lib/session/http-session-persistence.d.ts.map +0 -1
  565. package/lib/session/http-session-persistence.js +0 -60
  566. package/lib/session/http-session-persistence.js.map +0 -1
  567. package/lib/session/http-session-sink.d.ts +0 -11
  568. package/lib/session/http-session-sink.d.ts.map +0 -1
  569. package/lib/session/http-session-sink.js +0 -32
  570. package/lib/session/http-session-sink.js.map +0 -1
  571. package/lib/session/http-step-projector.d.ts +0 -16
  572. package/lib/session/http-step-projector.d.ts.map +0 -1
  573. package/lib/session/http-step-projector.js +0 -118
  574. package/lib/session/http-step-projector.js.map +0 -1
  575. package/lib/session/http-turn-runner.d.ts +0 -16
  576. package/lib/session/http-turn-runner.d.ts.map +0 -1
  577. package/lib/session/http-turn-runner.js +0 -57
  578. package/lib/session/http-turn-runner.js.map +0 -1
  579. package/lib/session/park-controller.d.ts +0 -24
  580. package/lib/session/park-controller.d.ts.map +0 -1
  581. package/lib/session/park-controller.js +0 -58
  582. package/lib/session/park-controller.js.map +0 -1
  583. package/lib/session/resolve-approval-port.d.ts +0 -7
  584. package/lib/session/resolve-approval-port.d.ts.map +0 -1
  585. package/lib/session/resolve-approval-port.js +0 -13
  586. package/lib/session/resolve-approval-port.js.map +0 -1
  587. package/lib/session/session-event-log.d.ts +0 -17
  588. package/lib/session/session-event-log.d.ts.map +0 -1
  589. package/lib/session/session-event-log.js +0 -56
  590. package/lib/session/session-event-log.js.map +0 -1
@@ -1,105 +0,0 @@
1
- /**
2
- * Collaboration ↔ OrchestrationKernel 桥接(ADR 0027)。
3
- * Kernel 就绪时 Cell 不再写入 activeDelegations;handback 走 task 完成。
4
- */
5
- import { formatCompact } from '@zhin.js/logger';
6
- import { sceneRefFromMessage, resolveIMSessionIdFromMessage } from '@zhin.js/core';
7
- import { getOrchestrationService } from '../orchestrator/orchestration-service.js';
8
- import { normalizeExecutorKind } from '../orchestrator/orchestration-mappers.js';
9
- import { isSubstantiveGroupTaskReply, resolvePlannerEndpointKey, summarizeDelegateeReply, } from './collaboration-delegation.js';
10
- import { sendGroupPeerMention } from './im-mention-delegate.js';
11
- export function isOrchestrationKernelReady() {
12
- return getOrchestrationService() != null;
13
- }
14
- /** Legacy pipelineState.activeDelegations harness — kernel 就绪时停用。 */
15
- export function shouldUseLegacyCellDelegationHarness(cell) {
16
- if (isOrchestrationKernelReady())
17
- return false;
18
- return Boolean(cell?.pipelineState?.activeDelegations?.length);
19
- }
20
- const ACTIVE_GROUP_TASK_STATUSES = new Set([
21
- 'assigned',
22
- 'running',
23
- 'waiting_result',
24
- 'pending',
25
- ]);
26
- function flattenOutboundText(batches) {
27
- return batches
28
- .flat()
29
- .filter((seg) => seg.type === 'text' && seg.data?.text != null)
30
- .map((seg) => String(seg.data.text))
31
- .join(' ')
32
- .trim();
33
- }
34
- export function orchestrationSourceFromMessage(message, collaborationSceneId) {
35
- const scene = sceneRefFromMessage(message);
36
- if (!scene) {
37
- return { kind: 'manual', label: 'orchestration' };
38
- }
39
- const orchestrationScene = {
40
- platform: scene.platform,
41
- endpointKey: scene.endpointKey,
42
- sceneId: scene.sceneId,
43
- kind: scene.kind,
44
- ...(scene.senderId ? { senderId: scene.senderId } : {}),
45
- ...(scene.parent ? {
46
- parent: {
47
- kind: scene.parent.kind === 'guild' ? 'channel' : scene.parent.kind,
48
- sceneId: scene.parent.sceneId,
49
- },
50
- } : {}),
51
- };
52
- return {
53
- kind: 'im_scene',
54
- scene: orchestrationScene,
55
- ...(collaborationSceneId ? { collaborationSceneId } : {}),
56
- };
57
- }
58
- export function findActiveImProjectionTasksForEndpoint(tasks, endpointKey) {
59
- return tasks.filter((task) => normalizeExecutorKind(task.executor_kind) === 'im_projection'
60
- && task.assigned_to === endpointKey
61
- && ACTIVE_GROUP_TASK_STATUSES.has(task.status));
62
- }
63
- export async function listActiveImProjectionTasks(message, endpointKey) {
64
- const orch = getOrchestrationService();
65
- if (!orch)
66
- return [];
67
- const sessionKey = resolveIMSessionIdFromMessage(message);
68
- const runs = await orch.listRuns(sessionKey);
69
- return runs.flatMap((run) => findActiveImProjectionTasksForEndpoint(run.tasks, endpointKey));
70
- }
71
- /**
72
- * 被委派方 AI 出站后:实质公开回复 → completeTask + 可选 handback @Planner(含 #taskId)。
73
- * 仅适用于 im_projection 任务;internal_room 走 kernel 直完成。
74
- */
75
- export async function tryCompleteKernelImProjectionFromOutbound(input) {
76
- const orch = getOrchestrationService();
77
- if (!orch)
78
- return;
79
- const publicText = flattenOutboundText(input.outboundBatches);
80
- if (!isSubstantiveGroupTaskReply(publicText))
81
- return;
82
- const active = await listActiveImProjectionTasks(input.message, input.endpointKey);
83
- if (active.length !== 1)
84
- return;
85
- const task = active[0];
86
- const summary = summarizeDelegateeReply(publicText);
87
- if (!isSubstantiveGroupTaskReply(summary))
88
- return;
89
- await orch.completeTask(task.id, summary);
90
- input.logger.info(formatCompact({
91
- op: 'task_complete',
92
- task: task.id,
93
- endpoint: input.endpointKey,
94
- }));
95
- const plannerId = resolvePlannerEndpointKey(input.cell);
96
- if (!plannerId || plannerId === input.endpointKey)
97
- return;
98
- const handbackText = `#${task.id} 已完成:${summary}`;
99
- await sendGroupPeerMention({
100
- message: { ...input.message, $endpoint: input.endpointKey },
101
- targetEndpointKey: plannerId,
102
- text: handbackText,
103
- });
104
- }
105
- //# sourceMappingURL=collaboration-kernel-bridge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collaboration-kernel-bridge.js","sourceRoot":"","sources":["../../src/collaboration/collaboration-kernel-bridge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAqC,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAGtH,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,MAAM,UAAU,0BAA0B;IACxC,OAAO,uBAAuB,EAAE,IAAI,IAAI,CAAC;AAC3C,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,oCAAoC,CAAC,IAAyB;IAC5E,IAAI,0BAA0B,EAAE;QAAE,OAAO,KAAK,CAAC;IAC/C,OAAO,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IACzC,UAAU;IACV,SAAS;IACT,gBAAgB;IAChB,SAAS;CACV,CAAC,CAAC;AAEH,SAAS,mBAAmB,CAAC,OAA2B;IACtD,OAAO,OAAO;SACX,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC;SAC9D,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAK,CAAC,IAAI,CAAC,CAAC;SACpC,IAAI,CAAC,GAAG,CAAC;SACT,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,OAAgB,EAChB,oBAA6B;IAE7B,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,kBAAkB,GAA0B;QAChD,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACjB,MAAM,EAAE;gBACN,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI;gBAC5E,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;aAC9B;SACF,CAAC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IACF,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,kBAAkB;QACzB,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sCAAsC,CACpD,KAAgC,EAChC,WAAmB;IAEnB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3B,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,eAAe;WAC1D,IAAI,CAAC,WAAW,KAAK,WAAW;WAChC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAC/C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,OAAgB,EAChB,WAAmB;IAEnB,MAAM,IAAI,GAAG,uBAAuB,EAAE,CAAC;IACvC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,6BAA6B,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,sCAAsC,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,yCAAyC,CAAC,KAM/D;IACC,MAAM,IAAI,GAAG,uBAAuB,EAAE,CAAC;IACvC,IAAI,CAAC,IAAI;QAAE,OAAO;IAElB,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC9D,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC;QAAE,OAAO;IAErD,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACnF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEhC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;IACxB,MAAM,OAAO,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACpD,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC;QAAE,OAAO;IAElD,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1C,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QAC9B,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,IAAI,CAAC,EAAE;QACb,QAAQ,EAAE,KAAK,CAAC,WAAW;KAC5B,CAAC,CAAC,CAAC;IAEJ,MAAM,SAAS,GAAG,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,KAAK,CAAC,WAAW;QAAE,OAAO;IAE1D,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,EAAE,QAAQ,OAAO,EAAE,CAAC;IAClD,MAAM,oBAAoB,CAAC;QACzB,OAAO,EAAE,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,WAAW,EAAa;QACtE,iBAAiB,EAAE,SAAS;QAC5B,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;AACL,CAAC"}
@@ -1,64 +0,0 @@
1
- /**
2
- * 协作群出站解析 — 委托 core ZhinAiOutboundPayload;cell roster 语义保留在此。
3
- */
4
- import type { OutputElement } from '@zhin.js/ai';
5
- import { type Message, type MessageElement, type ZhinAiOutboundPayload } from '@zhin.js/core';
6
- import type { CollaborationScene } from './types.js';
7
- import { type GroupMessageAdapterView } from './group-message.js';
8
- import { type TryResolveStructuredAiOutboundOptions } from './structured-ai-outbound.js';
9
- /** @deprecated 使用 ZhinAiOutboundPayload */
10
- export type CollaborationReplyPayload = ZhinAiOutboundPayload & {
11
- text: string;
12
- };
13
- export declare const COLLABORATION_MENTION_JSON_EXAMPLE = "{\"mentions\":[\"researcher\",\"210723495\"],\"text\":\"\u6B63\u6587\"}";
14
- export declare const COLLABORATION_REPLY_JSON_HINT: string;
15
- export declare function resolveMentionEndpointKeys(cell: import('./types.js').CollaborationScene, mentions: string[] | undefined): {
16
- ok: true;
17
- endpointKeys: string[];
18
- } | {
19
- ok: false;
20
- error: string;
21
- };
22
- export declare function buildCollaborationMentionSegmentsFromPayload(message: Message, payload: ZhinAiOutboundPayload): MessageElement[] | null;
23
- /** 发送协作 JSON @ 消息(普通回复解析与 group_delegate 共用)。 */
24
- export declare function sendCollaborationMentionPayload(message: Message, payload: ZhinAiOutboundPayload): Promise<{
25
- ok: boolean;
26
- error?: string;
27
- endpointKeys?: string[];
28
- }>;
29
- /**
30
- * 剥离出站消息里对 Cell peer 的 @(假 @ 与 at segment)。
31
- * Pipeline harness 等场景下委派由 harness 代发,Planner 正文不应携带 peer @。
32
- */
33
- export declare function stripCellPeerMentionsFromSegments(segments: MessageElement[], cell: CollaborationScene, selfEndpointKey: string, adapter?: GroupMessageAdapterView): MessageElement[];
34
- /** 剥离出站里对自身的 @(模型误 @ 自己的 endpoint/QQ)。 */
35
- export declare function stripCellSelfMentionsFromSegments(segments: MessageElement[], cell: CollaborationScene, selfEndpointKey: string, adapter?: GroupMessageAdapterView): MessageElement[];
36
- /** Planner 公开正文:剥离 peer 假 @ 与 self @。 */
37
- export declare function stripPlannerPublicMentionsFromSegments(segments: MessageElement[], cell: CollaborationScene, selfEndpointKey: string, adapter?: GroupMessageAdapterView): MessageElement[];
38
- export declare function batchHasAtSegment(batch: MessageElement[]): boolean;
39
- /** 协作群内模型「不回应/内心独白」类出站 — 不应广播到 IM。 */
40
- export declare function isCollaborationNoOpReasoningOutbound(batches: MessageElement[][]): boolean;
41
- /** 出站 segments 是否包含对指定 endpoint 的真实 @ segment。 */
42
- export declare function segmentsMentionEndpoint(segments: MessageElement[], endpointKey: string, adapter?: GroupMessageAdapterView, cell?: CollaborationScene): boolean;
43
- /**
44
- * Pipeline 被委派方出站:只保留公开正文,剥离模型 JSON handback(post-turn harness 代发 @)。
45
- */
46
- export declare function sanitizeCellToolJsonInOutboundBatches(batches: MessageElement[][]): MessageElement[][];
47
- export declare function parseCollaborationReplyJson(raw: string): CollaborationReplyPayload | null;
48
- /** group_delegate 扩展 JSON(requireArtifact / artifactKinds / mode)。 */
49
- export interface GroupDelegatePayload extends CollaborationReplyPayload {
50
- requireArtifact: boolean;
51
- artifactKinds?: import('./types.js').PipelineArtifactKind[];
52
- mode?: string;
53
- }
54
- export declare function parseGroupDelegatePayload(raw: string): GroupDelegatePayload | null;
55
- /**
56
- * 兼容 LLM 工具调用:message=JSON 字符串 | message=对象 | 顶层扁平字段。
57
- */
58
- export declare function coerceGroupDelegateArgs(args: Record<string, unknown>): GroupDelegatePayload | null;
59
- /**
60
- * 将协作 JSON / 假 @ 回复转为带真实 @ segment 的 MessageElement[]。
61
- */
62
- export declare function tryBuildCollaborationMentionSegments(message: Message, elements: OutputElement[], options?: TryResolveStructuredAiOutboundOptions): Promise<MessageElement[] | null>;
63
- export { tryBuildCollaborationOutboundBatches } from './structured-ai-outbound.js';
64
- //# sourceMappingURL=collaboration-outbound.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collaboration-outbound.d.ts","sourceRoot":"","sources":["../../src/collaboration/collaboration-outbound.ts"],"names":[],"mappings":"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"}
@@ -1,312 +0,0 @@
1
- import { AI_OUTBOUND_JSON_EXAMPLE, buildAiOutboundPromptHint, parseAiOutboundJson, readMentionSegmentTarget } from '@zhin.js/core';
2
- import { resolvePeerEndpointInCell } from './collaboration-config.js';
3
- import { resolveCollaborationSceneForMessage } from './collaboration-context.js';
4
- import { isCellToolResultJson, removeEmbeddedCellToolJsonFromText } from './collaboration-delegation.js';
5
- import { buildAtMessageContent, sendGroupMessageContent, sendGroupMessageFromEndpoint, resolvePlatformAtId } from './group-message.js';
6
- import { tryResolveStructuredAiOutbound, } from './structured-ai-outbound.js';
7
- export const COLLABORATION_MENTION_JSON_EXAMPLE = AI_OUTBOUND_JSON_EXAMPLE;
8
- export const COLLABORATION_REPLY_JSON_HINT = buildAiOutboundPromptHint({
9
- forceJsonOnly: true,
10
- });
11
- export function resolveMentionEndpointKeys(cell, mentions) {
12
- if (!mentions?.length) {
13
- return { ok: false, error: 'mentions 不能为空' };
14
- }
15
- const endpointKeys = [];
16
- for (const ref of mentions) {
17
- const resolved = resolvePeerEndpointInCell(cell, ref);
18
- if (!resolved) {
19
- const roster = cell.members
20
- .map((m) => `${m.endpointKey}${m.pipelineRole ? `(${m.pipelineRole})` : ''}`)
21
- .join(', ');
22
- return { ok: false, error: `未知 peer "${ref}",可用 roster: ${roster}` };
23
- }
24
- if (!endpointKeys.includes(resolved))
25
- endpointKeys.push(resolved);
26
- }
27
- return { ok: true, endpointKeys };
28
- }
29
- export function buildCollaborationMentionSegmentsFromPayload(message, payload) {
30
- const cell = resolveCollaborationSceneForMessage(message);
31
- if (!cell)
32
- return null;
33
- const adapter = resolveAdapterView(message);
34
- if (!adapter)
35
- return null;
36
- if (!payload.mentions?.length) {
37
- const text = payload.text?.trim() ?? '';
38
- if (!text)
39
- return null;
40
- return [{ type: 'text', data: { text } }];
41
- }
42
- const resolved = resolveMentionEndpointKeys(cell, payload.mentions);
43
- if (!resolved.ok)
44
- return null;
45
- const text = payload.text?.trim() ?? '';
46
- if (!text)
47
- return null;
48
- return buildAtMessageContent(adapter, resolved.endpointKeys, text);
49
- }
50
- /** 发送协作 JSON @ 消息(普通回复解析与 group_delegate 共用)。 */
51
- export async function sendCollaborationMentionPayload(message, payload) {
52
- const cell = resolveCollaborationSceneForMessage(message);
53
- if (!cell)
54
- return { ok: false, error: '不在协作 Cell 群场景' };
55
- const text = payload.text?.trim() ?? '';
56
- if (!text)
57
- return { ok: false, error: '消息正文为空' };
58
- if (!payload.mentions?.length) {
59
- const sent = await sendGroupMessageFromEndpoint({ message, text });
60
- return sent.ok ? { ok: true, endpointKeys: [] } : sent;
61
- }
62
- const resolved = resolveMentionEndpointKeys(cell, payload.mentions);
63
- if (!resolved.ok)
64
- return { ok: false, error: resolved.error };
65
- const segments = buildCollaborationMentionSegmentsFromPayload(message, payload);
66
- if (!segments)
67
- return { ok: false, error: '无法构建 @ 消息段' };
68
- const sent = await sendGroupMessageContent({ message, content: segments });
69
- return sent.ok
70
- ? { ok: true, endpointKeys: resolved.endpointKeys }
71
- : sent;
72
- }
73
- function segmentAtUserId(seg) {
74
- return readMentionSegmentTarget(seg);
75
- }
76
- function collectPeerMentionTokens(cell, selfEndpointKey, adapter) {
77
- const tokens = new Set();
78
- for (const member of cell.members) {
79
- if (member.endpointKey === selfEndpointKey)
80
- continue;
81
- tokens.add(member.endpointKey);
82
- if (member.primary)
83
- tokens.add(member.primary);
84
- if (member.pipelineRole)
85
- tokens.add(member.pipelineRole);
86
- if (member.role)
87
- tokens.add(member.role);
88
- if (adapter) {
89
- tokens.add(resolvePlatformAtId(adapter, member.endpointKey));
90
- }
91
- }
92
- return tokens;
93
- }
94
- function stripPlainMentionTokens(text, tokens) {
95
- let out = text;
96
- for (const token of tokens) {
97
- const escaped = token.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
98
- out = out.replace(new RegExp(`@${escaped}(?=\\s|$|[,。!?,.!?])`, 'gi'), '');
99
- }
100
- return out.replace(/[ \t]{2,}/g, ' ').trim();
101
- }
102
- /**
103
- * 剥离出站消息里对 Cell peer 的 @(假 @ 与 at segment)。
104
- * Pipeline harness 等场景下委派由 harness 代发,Planner 正文不应携带 peer @。
105
- */
106
- export function stripCellPeerMentionsFromSegments(segments, cell, selfEndpointKey, adapter) {
107
- const peerTokens = collectPeerMentionTokens(cell, selfEndpointKey, adapter);
108
- const peerEndpointKeys = new Set(cell.members.filter((m) => m.endpointKey !== selfEndpointKey).map((m) => m.endpointKey));
109
- const out = [];
110
- for (const seg of segments) {
111
- if (seg.type === 'at' || seg.type === 'mention') {
112
- const uid = segmentAtUserId(seg);
113
- if (uid && (peerEndpointKeys.has(uid) || peerTokens.has(uid)))
114
- continue;
115
- out.push(seg);
116
- continue;
117
- }
118
- if (seg.type === 'text' && seg.data?.text != null) {
119
- const stripped = stripPlainMentionTokens(String(seg.data.text), peerTokens);
120
- if (!stripped)
121
- continue;
122
- out.push({
123
- type: 'text',
124
- data: { text: stripped.startsWith(' ') ? stripped : ` ${stripped}` },
125
- });
126
- continue;
127
- }
128
- out.push(seg);
129
- }
130
- return out;
131
- }
132
- function collectSelfMentionTokens(cell, selfEndpointKey, adapter) {
133
- const member = cell.members.find((m) => m.endpointKey === selfEndpointKey);
134
- if (!member)
135
- return new Set();
136
- const tokens = new Set([member.endpointKey]);
137
- if (member.primary)
138
- tokens.add(member.primary);
139
- if (member.pipelineRole)
140
- tokens.add(member.pipelineRole);
141
- if (member.role)
142
- tokens.add(member.role);
143
- if (adapter)
144
- tokens.add(resolvePlatformAtId(adapter, member.endpointKey));
145
- return tokens;
146
- }
147
- /** 剥离出站里对自身的 @(模型误 @ 自己的 endpoint/QQ)。 */
148
- export function stripCellSelfMentionsFromSegments(segments, cell, selfEndpointKey, adapter) {
149
- const selfTokens = collectSelfMentionTokens(cell, selfEndpointKey, adapter);
150
- const selfIds = new Set([selfEndpointKey]);
151
- const out = [];
152
- for (const seg of segments) {
153
- if (seg.type === 'at' || seg.type === 'mention') {
154
- const uid = segmentAtUserId(seg);
155
- if (uid && (selfIds.has(uid) || selfTokens.has(uid)))
156
- continue;
157
- out.push(seg);
158
- continue;
159
- }
160
- if (seg.type === 'text' && seg.data?.text != null) {
161
- const stripped = stripPlainMentionTokens(String(seg.data.text), selfTokens);
162
- if (!stripped)
163
- continue;
164
- out.push({
165
- type: 'text',
166
- data: { text: stripped.startsWith(' ') ? stripped : ` ${stripped}` },
167
- });
168
- continue;
169
- }
170
- out.push(seg);
171
- }
172
- return out;
173
- }
174
- /** Planner 公开正文:剥离 peer 假 @ 与 self @。 */
175
- export function stripPlannerPublicMentionsFromSegments(segments, cell, selfEndpointKey, adapter) {
176
- let out = stripCellPeerMentionsFromSegments(segments, cell, selfEndpointKey, adapter);
177
- out = stripCellSelfMentionsFromSegments(out, cell, selfEndpointKey, adapter);
178
- return out;
179
- }
180
- export function batchHasAtSegment(batch) {
181
- return batch.some((seg) => seg.type === 'at' || seg.type === 'mention');
182
- }
183
- /** 协作群内模型「不回应/内心独白」类出站 — 不应广播到 IM。 */
184
- export function isCollaborationNoOpReasoningOutbound(batches) {
185
- if (batches.some((batch) => batchHasAtSegment(batch)))
186
- return false;
187
- const text = batches
188
- .flat()
189
- .filter((seg) => seg.type === 'text' && seg.data?.text != null)
190
- .map((seg) => String(seg.data.text))
191
- .join(' ')
192
- .trim();
193
- if (!text)
194
- return true;
195
- return /should not respond|stay silent|not directed at me|i'?ll stay silent|这是.*回复.*不是.*我|不应.*回应|无需.*回复/i.test(text);
196
- }
197
- function collectEndpointMentionTokens(endpointKey, adapter, cell) {
198
- const tokens = new Set([endpointKey]);
199
- const member = cell?.members.find((m) => m.endpointKey === endpointKey);
200
- if (member?.primary)
201
- tokens.add(member.primary);
202
- if (member?.pipelineRole)
203
- tokens.add(member.pipelineRole);
204
- if (member?.role)
205
- tokens.add(member.role);
206
- if (adapter)
207
- tokens.add(resolvePlatformAtId(adapter, endpointKey));
208
- return tokens;
209
- }
210
- /** 出站 segments 是否包含对指定 endpoint 的真实 @ segment。 */
211
- export function segmentsMentionEndpoint(segments, endpointKey, adapter, cell) {
212
- const tokens = collectEndpointMentionTokens(endpointKey, adapter, cell);
213
- for (const seg of segments) {
214
- if (seg.type !== 'at' && seg.type !== 'mention')
215
- continue;
216
- const uid = segmentAtUserId(seg);
217
- if (uid && tokens.has(uid))
218
- return true;
219
- }
220
- return false;
221
- }
222
- /**
223
- * Pipeline 被委派方出站:只保留公开正文,剥离模型 JSON handback(post-turn harness 代发 @)。
224
- */
225
- export function sanitizeCellToolJsonInOutboundBatches(batches) {
226
- const kept = [];
227
- for (const batch of batches) {
228
- const cleaned = batch
229
- .map((seg) => {
230
- if (seg.type !== 'text' || seg.data?.text == null)
231
- return seg;
232
- const raw = String(seg.data.text);
233
- if (isCellToolResultJson(raw.trim()))
234
- return null;
235
- const text = removeEmbeddedCellToolJsonFromText(raw);
236
- if (!text.trim())
237
- return null;
238
- if (text === raw)
239
- return seg;
240
- return {
241
- type: 'text',
242
- data: { text: text.startsWith(' ') ? text : ` ${text}` },
243
- };
244
- })
245
- .filter((seg) => seg != null);
246
- if (cleaned.length)
247
- kept.push(cleaned);
248
- }
249
- return kept;
250
- }
251
- export function parseCollaborationReplyJson(raw) {
252
- const parsed = parseAiOutboundJson(raw);
253
- if (!parsed?.text?.trim())
254
- return null;
255
- return { ...parsed, text: parsed.text.trim() };
256
- }
257
- function parseGroupDelegateFields(obj) {
258
- const mentions = Array.isArray(obj.mentions)
259
- ? obj.mentions.filter((m) => typeof m === 'string' && m.trim().length > 0)
260
- : undefined;
261
- const text = typeof obj.text === 'string' ? obj.text.trim() : '';
262
- if (!text)
263
- return null;
264
- if (typeof obj.requireArtifact !== 'boolean')
265
- return null;
266
- const artifactKinds = Array.isArray(obj.artifactKinds)
267
- ? obj.artifactKinds.filter((k) => typeof k === 'string'
268
- && ['report', 'blueprint', 'deliverable', 'review', 'citations'].includes(k))
269
- : undefined;
270
- const mode = typeof obj.mode === 'string' && obj.mode.trim() ? obj.mode.trim() : undefined;
271
- return { mentions, text, requireArtifact: obj.requireArtifact, artifactKinds, mode };
272
- }
273
- export function parseGroupDelegatePayload(raw) {
274
- let obj;
275
- try {
276
- obj = JSON.parse(raw.trim());
277
- }
278
- catch {
279
- return null;
280
- }
281
- return parseGroupDelegateFields(obj);
282
- }
283
- /**
284
- * 兼容 LLM 工具调用:message=JSON 字符串 | message=对象 | 顶层扁平字段。
285
- */
286
- export function coerceGroupDelegateArgs(args) {
287
- const msg = args.message;
288
- if (msg && typeof msg === 'object' && !Array.isArray(msg)) {
289
- return parseGroupDelegateFields(msg);
290
- }
291
- const hasFlat = args.mentions != null
292
- || (typeof args.text === 'string' && args.text.trim().length > 0)
293
- || typeof args.requireArtifact === 'boolean';
294
- if (hasFlat) {
295
- return parseGroupDelegateFields(args);
296
- }
297
- if (typeof msg === 'string' && msg.trim()) {
298
- return parseGroupDelegatePayload(msg);
299
- }
300
- return null;
301
- }
302
- function resolveAdapterView(_message) {
303
- return undefined;
304
- }
305
- /**
306
- * 将协作 JSON / 假 @ 回复转为带真实 @ segment 的 MessageElement[]。
307
- */
308
- export async function tryBuildCollaborationMentionSegments(message, elements, options = {}) {
309
- return tryResolveStructuredAiOutbound(message, elements, options);
310
- }
311
- export { tryBuildCollaborationOutboundBatches } from './structured-ai-outbound.js';
312
- //# sourceMappingURL=collaboration-outbound.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collaboration-outbound.js","sourceRoot":"","sources":["../../src/collaboration/collaboration-outbound.ts"],"names":[],"mappings":"AAIA,OAAO,EAAqC,wBAAwB,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,wBAAwB,EAA8B,MAAM,eAAe,CAAC;AAClM,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,mCAAmC,EAAE,MAAM,4BAA4B,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,kCAAkC,EAAE,MAAM,+BAA+B,CAAC;AACzG,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,mBAAmB,EAAgC,MAAM,oBAAoB,CAAC;AACrK,OAAO,EACL,8BAA8B,GAE/B,MAAM,6BAA6B,CAAC;AAIrC,MAAM,CAAC,MAAM,kCAAkC,GAAG,wBAAwB,CAAC;AAE3E,MAAM,CAAC,MAAM,6BAA6B,GAAG,yBAAyB,CAAC;IACrE,aAAa,EAAE,IAAI;CACpB,CAAC,CAAC;AAEH,MAAM,UAAU,0BAA0B,CACxC,IAA6C,EAC7C,QAA8B;IAE9B,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IAC/C,CAAC;IACD,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO;iBACxB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;iBAC5E,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,GAAG,gBAAgB,MAAM,EAAE,EAAE,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,4CAA4C,CAC1D,OAAgB,EAChB,OAA8B;IAE9B,MAAM,IAAI,GAAG,mCAAmC,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,QAAQ,GAAG,0BAA0B,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpE,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAE9B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,OAAO,qBAAqB,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AACrE,CAAC;AAED,iDAAiD;AACjD,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,OAAgB,EAChB,OAA8B;IAE9B,MAAM,IAAI,GAAG,mCAAmC,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IAExD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAEjD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,4BAA4B,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC;IAED,MAAM,QAAQ,GAAG,0BAA0B,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpE,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;IAE9D,MAAM,QAAQ,GAAG,4CAA4C,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChF,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IAEzD,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3E,OAAO,IAAI,CAAC,EAAE;QACZ,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;QACnD,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,eAAe,CAAC,GAAqD;IAC5E,OAAO,wBAAwB,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,wBAAwB,CAC/B,IAAwB,EACxB,eAAuB,EACvB,OAAiC;IAEjC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,MAAM,CAAC,WAAW,KAAK,eAAe;YAAE,SAAS;QACrD,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,MAAM,CAAC,YAAY;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,MAAM,CAAC,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY,EAAE,MAAmB;IAChE,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAC7D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,OAAO,sBAAsB,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iCAAiC,CAC/C,QAA0B,EAC1B,IAAwB,EACxB,eAAuB,EACvB,OAAiC;IAEjC,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IAC5E,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CACxF,CAAC;IACF,MAAM,GAAG,GAAqB,EAAE,CAAC;IAEjC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,GAAG,GAAG,eAAe,CAAC,GAAuD,CAAC,CAAC;YACrF,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAAE,SAAS;YACxE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACd,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;YAClD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;YAC5E,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE;aACrE,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,wBAAwB,CAC/B,IAAwB,EACxB,eAAuB,EACvB,OAAiC;IAEjC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,eAAe,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IACrD,IAAI,MAAM,CAAC,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/C,IAAI,MAAM,CAAC,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACzD,IAAI,MAAM,CAAC,IAAI;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,iCAAiC,CAC/C,QAA0B,EAC1B,IAAwB,EACxB,eAAuB,EACvB,OAAiC;IAEjC,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,GAAG,GAAG,eAAe,CAAC,GAAuD,CAAC,CAAC;YACrF,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAAE,SAAS;YAC/D,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACd,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;YAClD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;YAC5E,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE;aACrE,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,yCAAyC;AACzC,MAAM,UAAU,sCAAsC,CACpD,QAA0B,EAC1B,IAAwB,EACxB,eAAuB,EACvB,OAAiC;IAEjC,IAAI,GAAG,GAAG,iCAAiC,CAAC,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IACtF,GAAG,GAAG,iCAAiC,CAAC,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IAC7E,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAuB;IACvD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;AAC1E,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,oCAAoC,CAAC,OAA2B;IAC9E,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACpE,MAAM,IAAI,GAAG,OAAO;SACjB,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC;SAC9D,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAK,CAAC,IAAI,CAAC,CAAC;SACpC,IAAI,CAAC,GAAG,CAAC;SACT,IAAI,EAAE,CAAC;IACV,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO,kGAAkG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvH,CAAC;AAED,SAAS,4BAA4B,CACnC,WAAmB,EACnB,OAAiC,EACjC,IAAyB;IAEzB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC;IACxE,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,MAAM,EAAE,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC1D,IAAI,MAAM,EAAE,IAAI;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;IACnE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,uBAAuB,CACrC,QAA0B,EAC1B,WAAmB,EACnB,OAAiC,EACjC,IAAyB;IAEzB,MAAM,MAAM,GAAG,4BAA4B,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACxE,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS;YAAE,SAAS;QAC1D,MAAM,GAAG,GAAG,eAAe,CAAC,GAAuD,CAAC,CAAC;QACrF,IAAI,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;IAC1C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qCAAqC,CACnD,OAA2B;IAE3B,MAAM,IAAI,GAAuB,EAAE,CAAC;IACpC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK;aAClB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACX,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI;gBAAE,OAAO,GAAG,CAAC;YAC9D,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAAE,OAAO,IAAI,CAAC;YAClD,MAAM,IAAI,GAAG,kCAAkC,CAAC,GAAG,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBAAE,OAAO,IAAI,CAAC;YAC9B,IAAI,IAAI,KAAK,GAAG;gBAAE,OAAO,GAAG,CAAC;YAC7B,OAAO;gBACL,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE;aACzD,CAAC;QACJ,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,GAAG,EAAyB,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QACvD,IAAI,OAAO,CAAC,MAAM;YAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,GAAW;IACrD,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;AACjD,CAAC;AASD,SAAS,wBAAwB,CAAC,GAA4B;IAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC1C,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QACvF,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,OAAO,GAAG,CAAC,eAAe,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC1D,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QACpD,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CACxB,CAAC,CAAC,EAAkD,EAAE,CACpD,OAAO,CAAC,KAAK,QAAQ;eAClB,CAAC,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAC/E;QACD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3F,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,CAAC,eAAe,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,GAAW;IACnD,IAAI,GAA4B,CAAC;IACjC,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,wBAAwB,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAA6B;IACnE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;IACzB,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,wBAAwB,CAAC,GAA8B,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI;WAChC,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;WAC9D,OAAO,IAAI,CAAC,eAAe,KAAK,SAAS,CAAC;IAC/C,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1C,OAAO,yBAAyB,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAiB;IAC3C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oCAAoC,CACxD,OAAgB,EAChB,QAAyB,EACzB,UAAiD,EAAE;IAEnD,OAAO,8BAA8B,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED,OAAO,EAAE,oCAAoC,EAAE,MAAM,6BAA6B,CAAC"}