agentworkshop 0.7.34 → 0.7.38

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 (985) hide show
  1. package/.output/.AgentWorkShop/aml-python/aml_eval.py +171 -0
  2. package/.output/.AgentWorkShop/aml-python/amlkit.py +120 -0
  3. package/.output/.AgentWorkShop/aml-python/requirements.txt +7 -0
  4. package/.output/.AgentWorkShop/aml-python/train-example.py +92 -0
  5. package/.output/.AgentWorkShop/schema.json +2 -1
  6. package/.output/nitro.json +1 -1
  7. package/.output/public/_nuxt/{DLljr7g0.js → 45zuyAso.js} +1 -1
  8. package/.output/public/_nuxt/4sIEbgcl.js +42 -0
  9. package/.output/public/_nuxt/8NMOXZOV.js +1 -0
  10. package/.output/public/_nuxt/BCGafdXT.js +2 -0
  11. package/.output/public/_nuxt/BDNMzG2s2.js +1 -0
  12. package/.output/public/_nuxt/{C-mDhyEd.js → BDmh31hl.js} +1 -1
  13. package/.output/public/_nuxt/BFkgkW8u.js +4 -0
  14. package/.output/public/_nuxt/BG8sCcwx.js +14 -0
  15. package/.output/public/_nuxt/{D8CqF0yy.js → BHA40aHa.js} +1 -1
  16. package/.output/public/_nuxt/BJHKLJJU.js +1 -0
  17. package/.output/public/_nuxt/{DoTdlVVe2.js → BN6iuJEg2.js} +1 -1
  18. package/.output/public/_nuxt/BNT8gYU92.js +4 -0
  19. package/.output/public/_nuxt/BU83-NnX.js +106 -0
  20. package/.output/public/_nuxt/BYhEUx8t.js +17 -0
  21. package/.output/public/_nuxt/BzHEilTt.js +1 -0
  22. package/.output/public/_nuxt/{Ct-WOVr4.js → C3J6FYKa.js} +1 -1
  23. package/.output/public/_nuxt/C3gwHTz0.js +1 -0
  24. package/.output/public/_nuxt/C4DWUZ6d2.js +1 -0
  25. package/.output/public/_nuxt/C5gUkRwn.js +1 -0
  26. package/.output/public/_nuxt/CClOy-Hz2.js +1 -0
  27. package/.output/public/_nuxt/{CUXCQXjG.js → CM12FuB42.js} +1 -1
  28. package/.output/public/_nuxt/{BSCpFtzG.js → CSkxz2NX.js} +1 -1
  29. package/.output/public/_nuxt/CWoJjWmZ.js +1 -0
  30. package/.output/public/_nuxt/CY9LbPCI.js +1 -0
  31. package/.output/public/_nuxt/CYWVXZTS.js +7 -0
  32. package/.output/public/_nuxt/CZiw7sEV.js +1 -0
  33. package/.output/public/_nuxt/C_OLzD09.js +1 -0
  34. package/.output/public/_nuxt/C__m4EhR.js +1 -0
  35. package/.output/public/_nuxt/Cbq-mryP.js +1 -0
  36. package/.output/public/_nuxt/{C4OAdbVK2.js → Cc_9VzD42.js} +1 -1
  37. package/.output/public/_nuxt/{BASN8nZ0.js → CdPzkOMV.js} +1 -1
  38. package/.output/public/_nuxt/Cec0Ua3F.js +1 -0
  39. package/.output/public/_nuxt/{DYKVPzN-.js → CoNpEq5X.js} +1 -1
  40. package/.output/public/_nuxt/CojCTLKD.js +1 -0
  41. package/.output/public/_nuxt/{B7wL3pDk.js → Crod5z2f.js} +1 -1
  42. package/.output/public/_nuxt/CzlMDL5H.js +13 -0
  43. package/.output/public/_nuxt/{G0qIw7Gq2.js → D0ZBQrN_2.js} +1 -1
  44. package/.output/public/_nuxt/{Lp7Ll94I.js → D1YDxZpZ.js} +1 -1
  45. package/.output/public/_nuxt/{Bc0AmjfT.js → D20Yamr4.js} +1 -1
  46. package/.output/public/_nuxt/D6uzXueg.js +2 -0
  47. package/.output/public/_nuxt/D9Oidm5I.js +1 -0
  48. package/.output/public/_nuxt/DAe0h2MB.js +1 -0
  49. package/.output/public/_nuxt/DBHNsT1Y.js +23 -0
  50. package/.output/public/_nuxt/DDShH71m.js +1 -0
  51. package/.output/public/_nuxt/DDgJcSET.js +19 -0
  52. package/.output/public/_nuxt/DHFrCUxA2.js +13 -0
  53. package/.output/public/_nuxt/{BcrN7QEl2.js → DIaZ2PTo2.js} +1 -1
  54. package/.output/public/_nuxt/DPnwL14Y.js +1 -0
  55. package/.output/public/_nuxt/DR12_WCA.js +3 -0
  56. package/.output/public/_nuxt/{B9nXmjSB.js → DUrecWPx.js} +4 -4
  57. package/.output/public/_nuxt/DVsjtsvZ2.js +1 -0
  58. package/.output/public/_nuxt/DYr1VMiQ.js +6 -0
  59. package/.output/public/_nuxt/DZtm4l-P2.js +1 -0
  60. package/.output/public/_nuxt/DdD9mCHM.js +1 -0
  61. package/.output/public/_nuxt/DeJykBFf.js +9 -0
  62. package/.output/public/_nuxt/{DoMxCWN52.js → DeyBFhKH2.js} +1 -1
  63. package/.output/public/_nuxt/DkGQ7lnb2.js +1 -0
  64. package/.output/public/_nuxt/DmqknNvV.js +18 -0
  65. package/.output/public/_nuxt/DnUuIR83.js +1 -0
  66. package/.output/public/_nuxt/DrYV5i68.js +1 -0
  67. package/.output/public/_nuxt/{B5S_UyaC.js → DtYHUi5Z.js} +1 -1
  68. package/.output/public/_nuxt/Dz_Q3Lpw2.js +1 -0
  69. package/.output/public/_nuxt/DzbFpZRk.js +3 -0
  70. package/.output/public/_nuxt/HBLJ-wei.js +1 -0
  71. package/.output/public/_nuxt/JCoYF4IJ.js +31 -0
  72. package/.output/public/_nuxt/JTLM-kqr2.js +1 -0
  73. package/.output/public/_nuxt/{BeIfu4N3.js → KZQX7xoM.js} +2 -2
  74. package/.output/public/_nuxt/S_fVQwJK.js +1 -0
  75. package/.output/public/_nuxt/TownView.0oLiQgTC.css +1 -0
  76. package/.output/public/_nuxt/YnQxK3eG.js +1 -0
  77. package/.output/public/_nuxt/_id_.D-SYuyZb.css +1 -0
  78. package/.output/public/_nuxt/_id_.hma_BU6T.css +1 -0
  79. package/.output/public/_nuxt/_wsId_.B12v3PhY.css +1 -0
  80. package/.output/public/_nuxt/aLLjF2K-2.js +1 -0
  81. package/.output/public/_nuxt/aWWIh8YL.js +24 -0
  82. package/.output/public/_nuxt/ahgEJu2R.js +1 -0
  83. package/.output/public/_nuxt/aml.COEKNNqK.css +1 -0
  84. package/.output/public/_nuxt/builds/latest.json +1 -1
  85. package/.output/public/_nuxt/builds/meta/44b66249-54d0-4c8a-9057-9755a32329e2.json +1 -0
  86. package/.output/public/_nuxt/daq.B3265ZDn.css +1 -0
  87. package/.output/public/_nuxt/dcw.DLYZqEhT.css +1 -0
  88. package/.output/public/_nuxt/default.DE_vT238.css +1 -0
  89. package/.output/public/_nuxt/entry.BB-Eeh-J.css +1 -0
  90. package/.output/public/_nuxt/jZsY8yYz.js +1 -0
  91. package/.output/public/_nuxt/logs.CqFyMrJw.css +1 -0
  92. package/.output/public/_nuxt/pages.ooEzrMm9.css +1 -0
  93. package/.output/public/_nuxt/pdk8jLGT.js +1 -0
  94. package/.output/public/_nuxt/plugins.5e5chZ67.css +1 -0
  95. package/.output/public/_nuxt/pz2JDAM7.js +2 -0
  96. package/.output/public/_nuxt/settings.Dm3M0RLy.css +1 -0
  97. package/.output/public/_nuxt/town.DKIAhKnx.css +1 -0
  98. package/.output/public/_nuxt/users.CXnP2E08.css +1 -0
  99. package/.output/public/_nuxt/vRTjoWqd.js +1 -0
  100. package/.output/public/_nuxt/workshop.Jk5HxWPE.css +1 -0
  101. package/.output/public/_nuxt/zIGh7R49.js +75 -0
  102. package/.output/public/_nuxt/zq5t1vyX.js +1 -0
  103. package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
  104. package/.output/server/chunks/_/entity.mjs +174 -0
  105. package/.output/server/chunks/_/entity.mjs.map +1 -0
  106. package/.output/server/chunks/_/env-manager.mjs +162 -0
  107. package/.output/server/chunks/_/env-manager.mjs.map +1 -0
  108. package/.output/server/chunks/_/host-bindings.mjs +1 -1
  109. package/.output/server/chunks/_/nitro.mjs +1657 -1162
  110. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  111. package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
  112. package/.output/server/chunks/build/{TownView-BdHnAilw.mjs → TownView-jVazYOjN.mjs} +141 -141
  113. package/.output/server/chunks/build/{TownView-BdHnAilw.mjs.map → TownView-jVazYOjN.mjs.map} +1 -1
  114. package/.output/server/chunks/build/{_id_-Cb845FHR.mjs → _id_-CfVosNg3.mjs} +136 -136
  115. package/.output/server/chunks/build/{_id_-Cb845FHR.mjs.map → _id_-CfVosNg3.mjs.map} +1 -1
  116. package/.output/server/chunks/build/{_id_-fadFPl2i.mjs → _id_-Hwr4rZpr.mjs} +32 -32
  117. package/.output/server/chunks/build/{_id_-fadFPl2i.mjs.map → _id_-Hwr4rZpr.mjs.map} +1 -1
  118. package/.output/server/chunks/build/{_wsId_-CTZswnm5.mjs → _wsId_-BVg3bB77.mjs} +175 -165
  119. package/.output/server/chunks/build/{_wsId_-CTZswnm5.mjs.map → _wsId_-BVg3bB77.mjs.map} +1 -1
  120. package/.output/server/chunks/build/aml-BCSJCdX7.mjs +588 -0
  121. package/.output/server/chunks/build/aml-BCSJCdX7.mjs.map +1 -0
  122. package/.output/server/chunks/build/{daq-BvihjQyW.mjs → daq-C03Uu5UE.mjs} +108 -106
  123. package/.output/server/chunks/build/daq-C03Uu5UE.mjs.map +1 -0
  124. package/.output/server/chunks/build/{dcw-Ks2vJ4PF.mjs → dcw-6vEYVeje.mjs} +44 -44
  125. package/.output/server/chunks/build/{dcw-Ks2vJ4PF.mjs.map → dcw-6vEYVeje.mjs.map} +1 -1
  126. package/.output/server/chunks/build/{default-GgHt4O2R.mjs → default-hseyOqBT.mjs} +30 -27
  127. package/.output/server/chunks/build/{default-GgHt4O2R.mjs.map → default-hseyOqBT.mjs.map} +1 -1
  128. package/.output/server/chunks/build/{logs-CYBhkQwh.mjs → logs-B-xhuqln.mjs} +35 -35
  129. package/.output/server/chunks/build/{logs-CYBhkQwh.mjs.map → logs-B-xhuqln.mjs.map} +1 -1
  130. package/.output/server/chunks/build/{pages-C-6BRtv8.mjs → pages-BO7yZsXA.mjs} +18 -27
  131. package/.output/server/chunks/build/pages-BO7yZsXA.mjs.map +1 -0
  132. package/.output/server/chunks/build/{plugins-dZRegC7m.mjs → plugins-CUWmMdyt.mjs} +17 -17
  133. package/.output/server/chunks/build/{plugins-dZRegC7m.mjs.map → plugins-CUWmMdyt.mjs.map} +1 -1
  134. package/.output/server/chunks/build/{settings-CgDLkP3s.mjs → settings-DoQ2Oq3P.mjs} +43 -43
  135. package/.output/server/chunks/build/{settings-CgDLkP3s.mjs.map → settings-DoQ2Oq3P.mjs.map} +1 -1
  136. package/.output/server/chunks/build/{town-DJ-V5G9U.mjs → town-BOl6hs9B.mjs} +7 -7
  137. package/.output/server/chunks/build/{town-DJ-V5G9U.mjs.map → town-BOl6hs9B.mjs.map} +1 -1
  138. package/.output/server/chunks/build/useDaqStream-CIBaiGAl.mjs +1 -1
  139. package/.output/server/chunks/build/useDcwStream-CBbiYnWe.mjs +1 -1
  140. package/.output/server/chunks/build/{useWorkshopWs-CprkZEdq.mjs → useWorkshopWs-C_I7q9As.mjs} +110 -32
  141. package/.output/server/chunks/build/{useWorkshopWs-CprkZEdq.mjs.map → useWorkshopWs-C_I7q9As.mjs.map} +1 -1
  142. package/.output/server/chunks/build/{users-4nzxTjFT.mjs → users-fohSmF-J.mjs} +6 -6
  143. package/.output/server/chunks/build/{users-4nzxTjFT.mjs.map → users-fohSmF-J.mjs.map} +1 -1
  144. package/.output/server/chunks/build/{workshop-81xhz368.mjs → workshop-DX5-ldc4.mjs} +15 -15
  145. package/.output/server/chunks/build/{workshop-81xhz368.mjs.map → workshop-DX5-ldc4.mjs.map} +1 -1
  146. package/.output/server/chunks/routes/api/workshop/agent-tools/index.post.mjs +21 -8
  147. package/.output/server/chunks/routes/api/workshop/agent-tools/index.post.mjs.map +1 -1
  148. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id/preview.get.mjs +1 -1
  149. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs +58 -0
  150. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs.map +1 -0
  151. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs +27 -6
  152. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs.map +1 -1
  153. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs +49 -0
  154. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs.map +1 -0
  155. package/.output/server/chunks/routes/api/workshop/aml/entities/prune.post.mjs +45 -0
  156. package/.output/server/chunks/routes/api/workshop/aml/entities/prune.post.mjs.map +1 -0
  157. package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs +30 -0
  158. package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs.map +1 -0
  159. package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs +40 -0
  160. package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs.map +1 -0
  161. package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs +42 -0
  162. package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs.map +1 -0
  163. package/.output/server/chunks/routes/api/workshop/aml/index.get.mjs +1 -1
  164. package/.output/server/chunks/routes/api/workshop/aml/index.post.mjs +1 -1
  165. package/.output/server/chunks/routes/api/workshop/aml/index2.get.mjs +4 -22
  166. package/.output/server/chunks/routes/api/workshop/aml/index2.get.mjs.map +1 -1
  167. package/.output/server/chunks/routes/api/workshop/aml/index2.post.mjs +1 -1
  168. package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs +4 -16
  169. package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs.map +1 -1
  170. package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs +19 -34
  171. package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs.map +1 -1
  172. package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs +41 -0
  173. package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs.map +1 -0
  174. package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs +62 -0
  175. package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs.map +1 -0
  176. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/cancel.post.mjs +1 -1
  177. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/logs.get.mjs +1 -1
  178. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/retry.post.mjs +1 -1
  179. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs +63 -0
  180. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs.map +1 -0
  181. package/.output/server/chunks/routes/api/workshop/aml/models/_id/predict.post.mjs +1 -1
  182. package/.output/server/chunks/routes/api/workshop/aml/models/_id/promote.post.mjs +1 -1
  183. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs +54 -0
  184. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs.map +1 -0
  185. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs +46 -0
  186. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs.map +1 -0
  187. package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +1 -1
  188. package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +1 -1
  189. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +2 -2
  190. package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +1 -1
  191. package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +1 -1
  192. package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs +1 -1
  193. package/.output/server/chunks/routes/api/workshop/channels/_id/index4.get.mjs +1 -1
  194. package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs +1 -1
  195. package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +1 -1
  196. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +4 -4
  197. package/.output/server/chunks/routes/api/workshop/daq/_id/bind.post.mjs +1 -1
  198. package/.output/server/chunks/routes/api/workshop/daq/_id/bindings.put.mjs +1 -1
  199. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +1 -1
  200. package/.output/server/chunks/routes/api/workshop/daq/_id/test.post.mjs +1 -1
  201. package/.output/server/chunks/routes/api/workshop/daq/_id_.delete.mjs +1 -1
  202. package/.output/server/chunks/routes/api/workshop/daq/_id_.patch.mjs +1 -1
  203. package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs +1 -1
  204. package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +1 -1
  205. package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +1 -1
  206. package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +1 -1
  207. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +1 -1
  208. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +1 -1
  209. package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +1 -1
  210. package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +1 -1
  211. package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs +1 -1
  212. package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +1 -1
  213. package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +1 -1
  214. package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +1 -1
  215. package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +1 -1
  216. package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +1 -1
  217. package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +1 -1
  218. package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +1 -1
  219. package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +1 -1
  220. package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +1 -1
  221. package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +1 -1
  222. package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +1 -1
  223. package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +1 -1
  224. package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +1 -1
  225. package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +1 -1
  226. package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +1 -1
  227. package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +1 -1
  228. package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +1 -1
  229. package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +1 -1
  230. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +1 -1
  231. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +1 -1
  232. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
  233. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +1 -1
  234. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +1 -1
  235. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +1 -1
  236. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +1 -1
  237. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +1 -1
  238. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +1 -1
  239. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +1 -1
  240. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +1 -1
  241. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +1 -1
  242. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs +1 -1
  243. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +1 -1
  244. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +1 -1
  245. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +1 -1
  246. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
  247. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
  248. package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +1 -1
  249. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +1 -1
  250. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs +1 -1
  251. package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
  252. package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
  253. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
  254. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
  255. package/.output/server/chunks/routes/api/workshop/index.put.mjs +1 -1
  256. package/.output/server/chunks/routes/api/workshop/index2.get.mjs +12 -1
  257. package/.output/server/chunks/routes/api/workshop/index2.get.mjs.map +1 -1
  258. package/.output/server/chunks/routes/api/workshop/index3.post.mjs +1 -1
  259. package/.output/server/chunks/routes/api/workshop/index4.post.mjs +1 -1
  260. package/.output/server/chunks/routes/api/workshop/index5.get.mjs +1 -1
  261. package/.output/server/chunks/routes/api/workshop/index5.post.mjs +1 -1
  262. package/.output/server/chunks/routes/api/workshop/index6.get.mjs +1 -1
  263. package/.output/server/chunks/routes/api/workshop/index6.post.mjs +1 -1
  264. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +1 -1
  265. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +1 -1
  266. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
  267. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
  268. package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +1 -1
  269. package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs +1 -1
  270. package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs +1 -1
  271. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +2 -2
  272. package/.output/server/chunks/routes/renderer.mjs +2 -2
  273. package/.output/server/chunks/virtual/entry.mjs +103 -17
  274. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  275. package/.output/server/package.json +1 -1
  276. package/README-zh.md +578 -507
  277. package/README.md +125 -51
  278. package/app/assets/css/main.css +329 -22
  279. package/app/components/AppHeader.vue +5 -4
  280. package/app/components/AppSidebar.vue +5 -4
  281. package/app/components/AwChart.vue +17 -0
  282. package/app/components/workshop/AgentLanesView.vue +2 -2
  283. package/app/components/workshop/ChannelSessionList.vue +3 -3
  284. package/app/components/workshop/CommandPalette.vue +1 -2
  285. package/app/components/workshop/Composer.vue +4 -4
  286. package/app/components/workshop/DaqNodeRow.vue +20 -1
  287. package/app/components/workshop/EventBlock.vue +3 -3
  288. package/app/components/workshop/MentionHoverCard.vue +1 -1
  289. package/app/components/workshop/MultiChannelView.vue +1 -1
  290. package/app/components/workshop/TaskBoardView.vue +5 -5
  291. package/app/components/workshop/TranscriptTimeline.vue +3 -3
  292. package/app/components/workshop/blocks/ClusterRoute.vue +3 -3
  293. package/app/components/workshop/blocks/ClusterStream.vue +1 -1
  294. package/app/components/workshop/blocks/ClusterTool.vue +1 -1
  295. package/app/components/workshop/lanes/LaneBlocks.vue +5 -2
  296. package/app/components/workshop/town/TownView.vue +0 -7
  297. package/app/composables/workshop/useClusteredBlocks.ts +22 -3
  298. package/app/composables/workshop/useEscClose.ts +44 -0
  299. package/app/config/index.ts +2 -1
  300. package/app/layouts/default.vue +25 -8
  301. package/app/pages/aml/index.vue +626 -4
  302. package/app/pages/daq/[id].vue +1 -1
  303. package/app/pages/daq/index.vue +10 -12
  304. package/app/pages/dcw/[id].vue +2 -2
  305. package/app/pages/dcw/index.vue +7 -11
  306. package/app/pages/index.vue +24 -6
  307. package/app/pages/logs/index.vue +2 -6
  308. package/app/pages/plugins/index.vue +1 -1
  309. package/app/pages/settings.vue +2 -2
  310. package/app/pages/town.vue +0 -2
  311. package/app/pages/users.vue +1 -1
  312. package/app/pages/workshop/index.vue +2 -2
  313. package/app/plugins/esc-close.client.ts +31 -0
  314. package/app/stores/workshop/events.ts +186 -36
  315. package/bin/aw.mjs +7 -2
  316. package/cli/aw.mjs +19 -34
  317. package/cli/commands/build.mjs +18 -1
  318. package/cli/commands/config.mjs +2 -0
  319. package/cli/commands/plugin.mjs +45 -18
  320. package/cli/commands/register.mjs +6 -2
  321. package/cli/commands/status.mjs +2 -1
  322. package/cli/commands/update.mjs +1 -1
  323. package/cli/commands/version.mjs +1 -1
  324. package/cli/core/args.mjs +76 -4
  325. package/cli/core/help.mjs +3 -1
  326. package/cli/core/meta.mjs +38 -0
  327. package/cli/core/post-build.mjs +96 -0
  328. package/cli/core/registry.mjs +6 -3
  329. package/config.yml +28 -26
  330. package/docs/aml.md +99 -0
  331. package/docs/cli.en.md +445 -0
  332. package/docs/cli.md +410 -220
  333. package/docs/full-test-plan.md +174 -0
  334. package/docs/multi-harness-architecture.md +248 -0
  335. package/docs/plugins.en.md +534 -0
  336. package/docs/plugins.md +531 -179
  337. package/docs/sdk.en.md +922 -0
  338. package/docs/sdk.md +725 -129
  339. package/i18n/dicts/aml.json +43 -1
  340. package/i18n/locales/en.ts +1928 -1885
  341. package/i18n/locales/zh-CN.ts +1928 -1885
  342. package/nuxt.config.ts +27 -2
  343. package/package.json +164 -153
  344. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.continue.json +1 -0
  345. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.json +1 -0
  346. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/054bb4bc4e4217a2ab0b0c6b663747214a9af464f5568ea60e784704e340bb0f.source +153 -0
  347. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/0554197c3d2bac203a1f5c48a5d52495d1336db1bd7aa4f4c19875810363e684.source +153 -0
  348. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/05c203d12a954fffba942e1d626e3f5fec05b18a5aef2bac003b7884a4b77406.source +431 -0
  349. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/145a6e6ba811af35aed31e0cc3211f53706a14980fa069ee9e3c1591139f96f0.source +180 -0
  350. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/1ae0fb281f97899c025e368ca73f41349b01fb5f85b19e08d7ebccff49095ed5.source +112 -0
  351. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/20ee9967aa0541c516db7575bdd4a1a745939bc7016bd10d7635903113edb8ec.source +227 -0
  352. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/233751843aeba9d4c5263f275b8102de00443c06f286918cbd23e0b6729e01aa.source +131 -0
  353. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/263c2e05b425e5c322e60c6475279f963bab3a873eb521b21df7fec935a46597.source +160 -0
  354. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/2ac5eaac28eaaee2178c4b32014df8e732f9dd432a285a872f5b7f31c1395fa4.source +157 -0
  355. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/33a0db0d2d95d2c11d0720090458e5fba1425376f5ceb5b422d1d3471be3226b.source +348 -0
  356. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/359e474ae83db35e4615d3728de6bf694b64d4dce9b536730a3b6518f9c0494a.source +296 -0
  357. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/37a4c3c31c4b70f6b719c53d1e9c4fcba603f31adfdd11bb6ef9f0d094923c56.source +285 -0
  358. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/461feca1c14a695eb8b0f17a6f95fe97eeceabc0510faaea4ba6d25bde147d8d.source +217 -0
  359. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/4cfadbda8591f29d5e1e230dc000e701b756e850441b3900fb596a4d2f6e98c2.source +301 -0
  360. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/50ca2810cf0b248c96948994c0c404531bbad6e553166b6816b3b03bfa0f75d2.source +151 -0
  361. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/52d9e8cb591a9ae86e238c3620a610cd386717bee222c0f37b25b2ac7e523dc4.source +135 -0
  362. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/6c87daafa4c006560a954636a97333f6123153c9d34d96203f7ee3a14e556357.source +156 -0
  363. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/77bc47854b577900621cacf1697f81fa2bc005af129d37614a97a3441c08f99f.source +72 -0
  364. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/7bbb789d3a527817118cf8399ed1861d6a962ade10878fd07223435d333a7089.source +469 -0
  365. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/86b7c1daafc8b60ba9982dde5bf1bcc74265709483c176e71f23ec6fc267451f.source +259 -0
  366. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/8df66d62bd41984d0970e8236882080c5085ac937d07a29779463d6a03b37c76.source +97 -0
  367. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/9962f2d1b3a85137bd40cc835725600b39f89ee02a27c06b2e0402e1eafde115.source +277 -0
  368. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/a1090ea066b792cb201739f4994e37bf7c12f52e805239a1eab87f18a537f266.source +171 -0
  369. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/a5241091650134d0919897e086a606a3846c8b2b54f8b4c84a8696c145ac3e9e.source +425 -0
  370. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/af19fa4c6e34d5540028be4b17600161283af3a2a2dfc61a3fdc0834436a0c14.source +99 -0
  371. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/b3713d78e2b2f93905ff6be8d58a8d0a2f42dea322eb67c987fda22ff6a084d5.source +325 -0
  372. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/b3849943c3aff102d1af815631fc843a2a52c17646a4b04696ece323e483bbec.source +332 -0
  373. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/bac735a3803a6650b7f1eb8f587e6dc5c68ea055000c3c99a11789438b78e837.source +43 -0
  374. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/d32c24d61eb8b33c73e5a8fc7e4dc7ef437aed238ee4371c2b00617e6104090a.source +154 -0
  375. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/d5170dc9a9879fda04fdf91d8a110d4efb6787ee38dda596d4da899883d36a72.source +531 -0
  376. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/dc59bcd7bb397be63ba2f2c3fec23f3782dcb17d2d75a9981eeced761f33eb32.source +439 -0
  377. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/eb5ff8cf66b92aec7bf6726781d8df74faa2b030c3aaac17d6b00c1fc04c9b32.source +323 -0
  378. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/f10615a6fae18436e70d1201b2d44fdae3174a3aa7bb4db97dea1b3ed291d721.source +433 -0
  379. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/f36d3e271668bc1260c2823542d22dbf1d0f7041ff16b1ac175bce2256e582ca.source +280 -0
  380. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/f94449380af09f31ac352152007146a75cc80bae8d6411ffe57b2c56f933b0ff.source +117 -0
  381. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/fe4dfd81178fd6b648335f6405d9ede71319aebde796008e50db21f8adf44c99.source +160 -0
  382. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/ffb4e3aa548cfdadabaa44ab599f9b6a3ca6288176a2cc7a4b2fc2a12b5fb848.source +101 -0
  383. package/scripts/.mimosa/hook-status/sess_aeaecb58-8833-4b83-b93c-050467d21e03-d944d71bb3.json +14 -0
  384. package/scripts/_audit/aml-layout-diag.mjs +83 -0
  385. package/scripts/_audit/bump-version.mjs +51 -0
  386. package/scripts/_audit/channel-inspect.mjs +49 -0
  387. package/scripts/_audit/cleanup-apply.mjs +89 -0
  388. package/scripts/_audit/cleanup-plan.mjs +82 -0
  389. package/scripts/_audit/contrast-check.mjs +43 -0
  390. package/scripts/_audit/dcw-unrecorded-write.ts +1 -1
  391. package/scripts/_audit/design-shots.mjs +145 -0
  392. package/scripts/_audit/docs-font-probe.mjs +68 -0
  393. package/scripts/_audit/docs-probe.mjs +107 -0
  394. package/scripts/_audit/docs-shots.mjs +171 -0
  395. package/scripts/_audit/docs-v3-verify.mjs +255 -0
  396. package/scripts/_audit/docs-vue-lint.mjs +81 -0
  397. package/scripts/_audit/docs-vue-lint2.mjs +91 -0
  398. package/scripts/_audit/exp-cost-scaling.mjs +4 -1
  399. package/scripts/_audit/exp-envelope-and-png.mjs +2 -1
  400. package/scripts/_audit/exp-sweep-fairness.mjs +4 -2
  401. package/scripts/_audit/fix-settings-count.mjs +57 -0
  402. package/scripts/_audit/glass-verify.mjs +155 -0
  403. package/scripts/_audit/hydration-diff.mjs +104 -0
  404. package/scripts/_audit/hydration-head.mjs +36 -0
  405. package/scripts/_audit/hydration-probe.mjs +59 -0
  406. package/scripts/_audit/lead-matrix-test.mjs +172 -0
  407. package/scripts/_audit/plc-agent-task.mjs +74 -0
  408. package/scripts/_audit/plc-clean-scenario.mjs +434 -0
  409. package/scripts/_audit/plc-clean-shots.mjs +161 -0
  410. package/scripts/_audit/plc-fc10-probe.mjs +30 -0
  411. package/scripts/_audit/probe-binding.mjs +114 -103
  412. package/scripts/_audit/review-fix-verify.mjs +158 -0
  413. package/scripts/_audit/seed-demo.mjs +165 -0
  414. package/scripts/_audit/town-focus-shot.mjs +129 -0
  415. package/scripts/_audit/town-reposition.mjs +85 -0
  416. package/scripts/_audit/ts-resolve-hook.mjs +57 -22
  417. package/scripts/_audit/verify-cleanup.mjs +67 -0
  418. package/scripts/_audit/verify-release-pack.mjs +82 -0
  419. package/scripts/_audit/watchdog-recovery-test.mjs +127 -0
  420. package/scripts/_dbg-audit-all-pages.mjs +43 -43
  421. package/scripts/_dbg-configroot-audit.mjs +84 -84
  422. package/scripts/_dbg-daq-intervals-func.mjs +94 -94
  423. package/scripts/_dbg-daq-rowstyle-verify.mjs +112 -112
  424. package/scripts/_dbg-groups-ui-verify.mjs +122 -122
  425. package/scripts/_dbg-harness-e2e.mjs +92 -92
  426. package/scripts/_dbg-harness-ui-e2e.py +97 -97
  427. package/scripts/_dbg-hitl-timeout-e2e.mjs +93 -93
  428. package/scripts/_dbg-multiharness-live-e2e.mjs +254 -254
  429. package/scripts/_dbg-opslog-agent-e2e.mjs +194 -194
  430. package/scripts/_dbg-opt-team-e2e.mjs +133 -133
  431. package/scripts/_dbg-recipe-e2e.mjs +176 -176
  432. package/scripts/_dbg-recipe-stale-e2e.mjs +135 -135
  433. package/scripts/_dbg-render-perf.mjs +142 -142
  434. package/scripts/_dbg-render-regression.mjs +130 -130
  435. package/scripts/_dbg-town-smoke.mjs +54 -54
  436. package/scripts/aw-start-smoke.mjs +27 -8
  437. package/scripts/check-docs-sync.mjs +367 -0
  438. package/scripts/e2e-full-closedloop.mjs +36 -18
  439. package/scripts/production-closed-loop-e2e.mjs +300 -303
  440. package/scripts/test-cli-exit.mjs +129 -21
  441. package/scripts/test-daq-frame-race.mjs +144 -96
  442. package/scripts/test-events-index.mjs +176 -0
  443. package/scripts/test-lru.mjs +34 -11
  444. package/scripts/test-memory-month-query.mjs +11 -3
  445. package/scripts/test-plugin-hardening.mjs +39 -2
  446. package/scripts/test-plugin-lifecycle.mjs +173 -0
  447. package/scripts/test-rollback-index.mjs +76 -18
  448. package/scripts/test-sdk-surface.mjs +6 -3
  449. package/sdk/client.mjs +16 -7
  450. package/sdk/context.mjs +21 -9
  451. package/sdk/examples/line-sentinel/client.mjs +13 -6
  452. package/sdk/examples/line-sentinel/index.mjs +5 -2
  453. package/sdk/examples/ops-notifier/client.mjs +3 -1
  454. package/sdk/examples/sample-insight/client.mjs +4 -2
  455. package/sdk/index.d.mts +133 -16
  456. package/sdk/index.mjs +3 -2
  457. package/sdk/lifecycle.mjs +8 -3
  458. package/server/api/workshop/agent-tools/bindings/index.post.ts +22 -7
  459. package/server/api/workshop/aml/datasets/[id].delete.ts +39 -0
  460. package/server/api/workshop/aml/datasets/[id].get.ts +31 -9
  461. package/server/api/workshop/aml/datasets/[id].patch.ts +30 -0
  462. package/server/api/workshop/aml/entities/index.get.ts +13 -0
  463. package/server/api/workshop/aml/entities/prune.post.ts +28 -0
  464. package/server/api/workshop/aml/env/index.get.ts +13 -0
  465. package/server/api/workshop/aml/env/recheck.post.ts +14 -0
  466. package/server/api/workshop/aml/env/uv.post.ts +21 -0
  467. package/server/api/workshop/aml/env/venv.post.ts +24 -0
  468. package/server/api/workshop/aml/index.get.ts +14 -1
  469. package/server/api/workshop/aml/jobs/[id].delete.ts +44 -0
  470. package/server/api/workshop/aml/models/[id].delete.ts +35 -0
  471. package/server/api/workshop/aml/models/[id].patch.ts +30 -0
  472. package/server/plugins/dev-stability-guard.ts +40 -63
  473. package/server/services/workshop/agents/agent-interface.ts +3 -0
  474. package/server/services/workshop/agents/codex-agent.ts +4 -7
  475. package/server/services/workshop/agents/dsh-agent.ts +4 -7
  476. package/server/services/workshop/agents/opencode-agent.ts +5 -7
  477. package/server/services/workshop/aml/aml.repo.ts +18 -0
  478. package/server/services/workshop/aml/dataset-builder.ts +4 -0
  479. package/server/services/workshop/aml/entity.ts +365 -0
  480. package/server/services/workshop/aml/env-manager.ts +242 -0
  481. package/server/services/workshop/aml/job-orchestrator.ts +4 -15
  482. package/server/services/workshop/aml/model-registry.ts +6 -0
  483. package/server/services/workshop/aml/python-runtime.ts +396 -62
  484. package/server/services/workshop/aml/runtime.ts +95 -4
  485. package/server/services/workshop/daq/bus/mqtt.adapter.ts +3 -1
  486. package/server/services/workshop/daq/daq-controller.ts +95 -47
  487. package/server/services/workshop/daq/daq-node.repo.ts +0 -10
  488. package/server/services/workshop/daq/daq-runtime.ts +0 -5
  489. package/server/services/workshop/json-store.mjs +35 -2
  490. package/server/services/workshop/plugins/host.mjs +14 -5
  491. package/server/services/workshop/runtime/manager.ts +28 -1
  492. package/server/services/workshop/runtime/scheduler-loop.ts +10 -1
  493. package/server/services/workshop/settings.ts +2 -0
  494. package/server/utils/stability-severity.ts +66 -0
  495. package/shared/config/home.mjs +58 -0
  496. package/shared/config/schema.json +2 -1
  497. package/shared/lru.mjs +4 -1
  498. package/.output/public/_nuxt/-6OnbLFb.js +0 -1
  499. package/.output/public/_nuxt/-nb2uqVg.js +0 -1
  500. package/.output/public/_nuxt/4bHdIqEg.js +0 -18
  501. package/.output/public/_nuxt/6PZPfFcO.js +0 -17
  502. package/.output/public/_nuxt/BBBtwOpo.js +0 -9
  503. package/.output/public/_nuxt/BBwMH_hG.js +0 -7
  504. package/.output/public/_nuxt/BDUjyaF4.js +0 -42
  505. package/.output/public/_nuxt/BNXfwXpE.js +0 -1
  506. package/.output/public/_nuxt/BN_PdN3J.js +0 -24
  507. package/.output/public/_nuxt/BSSUlJnx2.js +0 -1
  508. package/.output/public/_nuxt/BWSE6hR6.js +0 -1
  509. package/.output/public/_nuxt/BZGNTgTQ2.js +0 -1
  510. package/.output/public/_nuxt/BZv4RFYN.js +0 -1
  511. package/.output/public/_nuxt/BcmbLh2z2.js +0 -1
  512. package/.output/public/_nuxt/BfGc7TJp.js +0 -1
  513. package/.output/public/_nuxt/BgTB6h_q.js +0 -2
  514. package/.output/public/_nuxt/BkLJA9J5.js +0 -1
  515. package/.output/public/_nuxt/Bp5luxkg2.js +0 -1
  516. package/.output/public/_nuxt/BuCHayqN.js +0 -1
  517. package/.output/public/_nuxt/BuvcLKh1.js +0 -19
  518. package/.output/public/_nuxt/C3tCneTM.js +0 -1
  519. package/.output/public/_nuxt/C77oC8yC2.js +0 -7
  520. package/.output/public/_nuxt/C9f8QMp12.js +0 -1
  521. package/.output/public/_nuxt/CKfhtOt7.js +0 -13
  522. package/.output/public/_nuxt/CQvmN-Mi.js +0 -1
  523. package/.output/public/_nuxt/CUDrOuW7.js +0 -1
  524. package/.output/public/_nuxt/CZcC-gpk.js +0 -1
  525. package/.output/public/_nuxt/CbzsPO5H.js +0 -1
  526. package/.output/public/_nuxt/CdSOrh2c.js +0 -1
  527. package/.output/public/_nuxt/Cgx818r-.js +0 -1
  528. package/.output/public/_nuxt/Cjm7VogC.js +0 -1
  529. package/.output/public/_nuxt/Cm5mDxzH.js +0 -1
  530. package/.output/public/_nuxt/CmHzfVc5.js +0 -3
  531. package/.output/public/_nuxt/Cn3J3NXR.js +0 -23
  532. package/.output/public/_nuxt/Cno6kYiO2.js +0 -1
  533. package/.output/public/_nuxt/Cp6z0RN7.js +0 -1
  534. package/.output/public/_nuxt/CwqIxJGj.js +0 -2
  535. package/.output/public/_nuxt/D-Ca4BGY.js +0 -70
  536. package/.output/public/_nuxt/D0fhp-Ga.js +0 -75
  537. package/.output/public/_nuxt/D1z7i2UP.js +0 -31
  538. package/.output/public/_nuxt/DIaTPH1M.js +0 -1
  539. package/.output/public/_nuxt/DTYBfjRY.js +0 -1
  540. package/.output/public/_nuxt/DXRZPxGs.js +0 -1
  541. package/.output/public/_nuxt/DZzGarBE2.js +0 -13
  542. package/.output/public/_nuxt/DaMCzQhv.js +0 -1
  543. package/.output/public/_nuxt/DoLasgPj2.js +0 -1
  544. package/.output/public/_nuxt/DpojD719.js +0 -1
  545. package/.output/public/_nuxt/DsVcWfyR.js +0 -1
  546. package/.output/public/_nuxt/DtBu71ev.js +0 -32
  547. package/.output/public/_nuxt/Dy-mxvXY2.js +0 -1
  548. package/.output/public/_nuxt/DzuC31-i.js +0 -2
  549. package/.output/public/_nuxt/FQri3dV3.js +0 -1
  550. package/.output/public/_nuxt/ORt9oDIy2.js +0 -1
  551. package/.output/public/_nuxt/TownView.CtskuMXS.css +0 -1
  552. package/.output/public/_nuxt/VLI2Zy4t.js +0 -5
  553. package/.output/public/_nuxt/_id_.MbzdFygI.css +0 -1
  554. package/.output/public/_nuxt/_id_.hRYo-EAB.css +0 -1
  555. package/.output/public/_nuxt/_wsId_.gXMEOYgX.css +0 -1
  556. package/.output/public/_nuxt/aml.WU_bh87J.css +0 -1
  557. package/.output/public/_nuxt/arUY5dyq2.js +0 -4
  558. package/.output/public/_nuxt/builds/meta/adc365b6-f636-4a2b-9527-79819c1e874b.json +0 -1
  559. package/.output/public/_nuxt/daq.Bb6l44-O.css +0 -1
  560. package/.output/public/_nuxt/dcw.rXH2fc2Z.css +0 -1
  561. package/.output/public/_nuxt/default.jNT73_hq.css +0 -1
  562. package/.output/public/_nuxt/ekuGmQ7R.js +0 -1
  563. package/.output/public/_nuxt/entry.jFrFAWuA.css +0 -1
  564. package/.output/public/_nuxt/logs.DMOM-iHe.css +0 -1
  565. package/.output/public/_nuxt/niDwBOZW.js +0 -3
  566. package/.output/public/_nuxt/pMoIO6rr.js +0 -14
  567. package/.output/public/_nuxt/pages.Cc8GX9T1.css +0 -1
  568. package/.output/public/_nuxt/plugins.wIPyfPn-.css +0 -1
  569. package/.output/public/_nuxt/rqZ-1SoP.js +0 -2
  570. package/.output/public/_nuxt/settings.BCm4NZIc.css +0 -1
  571. package/.output/public/_nuxt/town.C_DsNW0J.css +0 -1
  572. package/.output/public/_nuxt/users.DuAt_Zwf.css +0 -1
  573. package/.output/public/_nuxt/vJ4FPb-_.js +0 -1
  574. package/.output/public/_nuxt/workshop.BJg84pOK.css +0 -1
  575. package/.output/server/chunks/build/aml-uBNIppIf.mjs +0 -508
  576. package/.output/server/chunks/build/aml-uBNIppIf.mjs.map +0 -1
  577. package/.output/server/chunks/build/daq-BvihjQyW.mjs.map +0 -1
  578. package/.output/server/chunks/build/pages-C-6BRtv8.mjs.map +0 -1
  579. package/scripts/_audit/.tmp/audit-data/dcws.json +0 -28
  580. package/scripts/_audit/.tmp/dcw-writes.json +0 -15650
  581. package/scripts/_audit/.tmp/dcws.json +0 -9033
  582. package/scripts/_audit/.tmp/pollution-backup/dcw-rollback.polluted.json +0 -470006
  583. package/scripts/_audit/.tmp/pollution-backup/dcws.polluted.json +0 -9085
  584. package/scripts/_audit/.tmp/probe-cwd.txt +0 -1
  585. package/scripts/_audit/awhome/commands/README.md +0 -3
  586. package/scripts/_audit/awhome/commands/hello.mjs +0 -12
  587. package/scripts/_audit/diag-cwd.ts +0 -20
  588. package/scripts/_audit/diag-cwd2.ts +0 -19
  589. package/scripts/_audit/hello.mjs +0 -12
  590. package/scripts/_audit/ndjson-partial-line-repro.mjs +0 -77
  591. package/scripts/_audit/opencode-await-ternary-repro.mjs +0 -20
  592. package/scripts/_audit/part-frag.txt +0 -84
  593. package/scripts/_audit/part-head.txt +0 -45
  594. package/scripts/_audit/probe-child.mjs +0 -17
  595. package/scripts/_audit/probe-envelope.mjs +0 -49
  596. package/scripts/_audit/probe-packlist.mjs +0 -67
  597. package/scripts/_audit/probe-routes.mjs +0 -47
  598. package/scripts/_audit/probe-routes2.mjs +0 -38
  599. package/scripts/_audit/probe.ts +0 -9
  600. package/scripts/_audit/probe2.ts +0 -6
  601. package/scripts/_audit/probe3.ts +0 -3
  602. package/scripts/_audit/probe4.ts +0 -3
  603. package/scripts/_audit/proj/.AgentWorkShop/commands/echoargs.mjs +0 -13
  604. package/scripts/_audit/proj/config.yml +0 -1
  605. package/scripts/_audit/run.mjs +0 -30
  606. package/scripts/_audit/tsconfig.probe.json +0 -24
  607. package/scripts/_audit/typecheck-out.txt +0 -466
  608. package/scripts/_daq-realtime-probe.mjs +0 -68
  609. package/scripts/_daq-warn-probe.mjs +0 -50
  610. package/scripts/_dbg-acc-1-setup.mjs +0 -57
  611. package/scripts/_dbg-acc-2-diag.mjs +0 -14
  612. package/scripts/_dbg-acc-2-intervals.mjs +0 -81
  613. package/scripts/_dbg-acc-3-daq.mjs +0 -48
  614. package/scripts/_dbg-acc-4-team.mjs +0 -92
  615. package/scripts/_dbg-acc-5-visual.mjs +0 -63
  616. package/scripts/_dbg-acc-5b-ws-town.mjs +0 -18
  617. package/scripts/_dbg-acc-5c-town.mjs +0 -12
  618. package/scripts/_dbg-acc-6-i18n.mjs +0 -19
  619. package/scripts/_dbg-agent-tools-audit.mjs +0 -154
  620. package/scripts/_dbg-agent-workflow-audit.mjs +0 -177
  621. package/scripts/_dbg-agents-dropdown-shot.py +0 -33
  622. package/scripts/_dbg-anim-verify.mjs +0 -81
  623. package/scripts/_dbg-app-shot.mjs +0 -48
  624. package/scripts/_dbg-autoframe.mjs +0 -103
  625. package/scripts/_dbg-availability-probe.ts +0 -11
  626. package/scripts/_dbg-beacon-final.mjs +0 -181
  627. package/scripts/_dbg-bind-bidi-e2e.mjs +0 -239
  628. package/scripts/_dbg-callout-near.mjs +0 -108
  629. package/scripts/_dbg-catalog-smoke.ts +0 -20
  630. package/scripts/_dbg-cf-line-shot.mjs +0 -18
  631. package/scripts/_dbg-chan-focus.mjs +0 -49
  632. package/scripts/_dbg-channel-plugin-ui.mjs +0 -94
  633. package/scripts/_dbg-cleanup.mjs +0 -31
  634. package/scripts/_dbg-closedloop-ui-shot.mjs +0 -61
  635. package/scripts/_dbg-codex-handshake.ts +0 -30
  636. package/scripts/_dbg-codex-probe.mjs +0 -58
  637. package/scripts/_dbg-codex-sandbox.ts +0 -58
  638. package/scripts/_dbg-codex-turn.ts +0 -65
  639. package/scripts/_dbg-collab-scenario-e2e.mjs +0 -185
  640. package/scripts/_dbg-config-smoke.ts +0 -28
  641. package/scripts/_dbg-console-audit.mjs +0 -61
  642. package/scripts/_dbg-console-probe.mjs +0 -23
  643. package/scripts/_dbg-context-inject-audit.mjs +0 -231
  644. package/scripts/_dbg-cpu-profile.mjs +0 -53
  645. package/scripts/_dbg-crash-recovery.mjs +0 -143
  646. package/scripts/_dbg-crop-shot.mjs +0 -16
  647. package/scripts/_dbg-cross-channel-e2e.mjs +0 -157
  648. package/scripts/_dbg-cross-team-visibility-e2e.mjs +0 -129
  649. package/scripts/_dbg-crush-probe.sh +0 -21
  650. package/scripts/_dbg-crush-spawn-probe.ts +0 -22
  651. package/scripts/_dbg-daq-acc-probe.mjs +0 -24
  652. package/scripts/_dbg-daq-attrib.mjs +0 -34
  653. package/scripts/_dbg-daq-bind-audit.mjs +0 -119
  654. package/scripts/_dbg-daq-cadence.mjs +0 -104
  655. package/scripts/_dbg-daq-debug.mjs +0 -22
  656. package/scripts/_dbg-daq-diag.mjs +0 -33
  657. package/scripts/_dbg-daq-e2e.mjs +0 -171
  658. package/scripts/_dbg-daq-film.mjs +0 -136
  659. package/scripts/_dbg-daq-filter-e2e.mjs +0 -109
  660. package/scripts/_dbg-daq-filter-e2e2.mjs +0 -62
  661. package/scripts/_dbg-daq-final-regression.mjs +0 -78
  662. package/scripts/_dbg-daq-frame-alarm.mjs +0 -49
  663. package/scripts/_dbg-daq-frame-ui.mjs +0 -62
  664. package/scripts/_dbg-daq-frame-ws.mjs +0 -72
  665. package/scripts/_dbg-daq-full-check.mjs +0 -179
  666. package/scripts/_dbg-daq-line-note-verify.mjs +0 -61
  667. package/scripts/_dbg-daq-linebanner-audit.mjs +0 -107
  668. package/scripts/_dbg-daq-pages-shot.mjs +0 -37
  669. package/scripts/_dbg-daq-perf.mjs +0 -61
  670. package/scripts/_dbg-daq-probe.mjs +0 -27
  671. package/scripts/_dbg-daq-recipe-e2e.mjs +0 -30
  672. package/scripts/_dbg-daq-redesign-shot.mjs +0 -88
  673. package/scripts/_dbg-daq-rows-probe.mjs +0 -26
  674. package/scripts/_dbg-daq-rowstate-e2e.mjs +0 -152
  675. package/scripts/_dbg-daq-rowstate-shot.mjs +0 -45
  676. package/scripts/_dbg-daq-rowstate-shot2.mjs +0 -38
  677. package/scripts/_dbg-daq-tpl.mjs +0 -144
  678. package/scripts/_dbg-dash-console-check.mjs +0 -49
  679. package/scripts/_dbg-dash-deep-probe.mjs +0 -61
  680. package/scripts/_dbg-dash-hitpoint.mjs +0 -44
  681. package/scripts/_dbg-dash-live-shot.mjs +0 -36
  682. package/scripts/_dbg-dash-shot.mjs +0 -21
  683. package/scripts/_dbg-dashboard-shot.mjs +0 -35
  684. package/scripts/_dbg-dcw-audit.mjs +0 -126
  685. package/scripts/_dbg-dcw-card-e2e.mjs +0 -108
  686. package/scripts/_dbg-dcw-channel-ui.mjs +0 -144
  687. package/scripts/_dbg-dcw-examples.mjs +0 -81
  688. package/scripts/_dbg-dcw-light-shot.mjs +0 -19
  689. package/scripts/_dbg-dcw-line-audit.mjs +0 -107
  690. package/scripts/_dbg-dcw-pause-tpl-audit.mjs +0 -161
  691. package/scripts/_dbg-dcw-pause-ui.mjs +0 -175
  692. package/scripts/_dbg-dcw-read-toolface.ts +0 -13
  693. package/scripts/_dbg-dcw-read-ui.mjs +0 -74
  694. package/scripts/_dbg-dcw-scene.mjs +0 -72
  695. package/scripts/_dbg-dcw-shot2.mjs +0 -14
  696. package/scripts/_dbg-dcw-twin-e2e.mjs +0 -192
  697. package/scripts/_dbg-diag-mock-loop.mjs +0 -89
  698. package/scripts/_dbg-diag-watch.mjs +0 -95
  699. package/scripts/_dbg-docs-site-shot.mjs +0 -32
  700. package/scripts/_dbg-dsh-probe.mjs +0 -31
  701. package/scripts/_dbg-dt-interact.mjs +0 -193
  702. package/scripts/_dbg-error-probe.mjs +0 -54
  703. package/scripts/_dbg-filter-light-verify.mjs +0 -54
  704. package/scripts/_dbg-final-acceptance-2.mjs +0 -72
  705. package/scripts/_dbg-final-acceptance.mjs +0 -192
  706. package/scripts/_dbg-final-agent-e2e.mjs +0 -151
  707. package/scripts/_dbg-final-features.mjs +0 -155
  708. package/scripts/_dbg-final-fixups.mjs +0 -62
  709. package/scripts/_dbg-final-full-e2e.mjs +0 -218
  710. package/scripts/_dbg-final-line-e2e.mjs +0 -173
  711. package/scripts/_dbg-final-shots.mjs +0 -32
  712. package/scripts/_dbg-final-t6-hitl.mjs +0 -38
  713. package/scripts/_dbg-final-visual.mjs +0 -29
  714. package/scripts/_dbg-fix-unused-imports.py +0 -41
  715. package/scripts/_dbg-focus-range.mjs +0 -115
  716. package/scripts/_dbg-fresh-scene-e2e.mjs +0 -125
  717. package/scripts/_dbg-fullchain-e2e.mjs +0 -178
  718. package/scripts/_dbg-gate-debug.mjs +0 -37
  719. package/scripts/_dbg-gif-encode.mjs +0 -111
  720. package/scripts/_dbg-gizmo.mjs +0 -95
  721. package/scripts/_dbg-glass-probe.mjs +0 -57
  722. package/scripts/_dbg-glass-shot.mjs +0 -50
  723. package/scripts/_dbg-glass-sweep.mjs +0 -25
  724. package/scripts/_dbg-glb-probe.mjs +0 -43
  725. package/scripts/_dbg-goose-probe.mjs +0 -33
  726. package/scripts/_dbg-goose-probe.sh +0 -10
  727. package/scripts/_dbg-hardening-probe.mjs +0 -90
  728. package/scripts/_dbg-harness-cancel-repro.mjs +0 -81
  729. package/scripts/_dbg-harness-ui-dbg.py +0 -49
  730. package/scripts/_dbg-harness-ui-shot.py +0 -109
  731. package/scripts/_dbg-hero-btn-probe.mjs +0 -21
  732. package/scripts/_dbg-hidden-check.mjs +0 -21
  733. package/scripts/_dbg-hmi-audit.mjs +0 -164
  734. package/scripts/_dbg-home-repro.mjs +0 -24
  735. package/scripts/_dbg-home-stack.mjs +0 -13
  736. package/scripts/_dbg-host.mjs +0 -16
  737. package/scripts/_dbg-huashu-survey.mjs +0 -31
  738. package/scripts/_dbg-huashu-survey2.mjs +0 -35
  739. package/scripts/_dbg-huashu-verify.mjs +0 -25
  740. package/scripts/_dbg-huashu-verify2.mjs +0 -26
  741. package/scripts/_dbg-hydration-detail.mjs +0 -18
  742. package/scripts/_dbg-i18n-debug.mjs +0 -27
  743. package/scripts/_dbg-i18n-debug2.mjs +0 -26
  744. package/scripts/_dbg-i18n-final.mjs +0 -42
  745. package/scripts/_dbg-i18n-scan.mjs +0 -38
  746. package/scripts/_dbg-infra-lifecycle.mjs +0 -44
  747. package/scripts/_dbg-interval-config.mjs +0 -156
  748. package/scripts/_dbg-interval-scenario.mjs +0 -126
  749. package/scripts/_dbg-kicker-check.mjs +0 -11
  750. package/scripts/_dbg-line-aura-shots.mjs +0 -54
  751. package/scripts/_dbg-line-control-e2e.mjs +0 -120
  752. package/scripts/_dbg-line-gate-audit.mjs +0 -108
  753. package/scripts/_dbg-line-live-e2e.mjs +0 -144
  754. package/scripts/_dbg-line-repo-test.ts +0 -10
  755. package/scripts/_dbg-line-scenario-e2e.mjs +0 -256
  756. package/scripts/_dbg-line-spawn.ts +0 -31
  757. package/scripts/_dbg-live-engine-probe.mjs +0 -80
  758. package/scripts/_dbg-login-debug.py +0 -23
  759. package/scripts/_dbg-login-e2e.mjs +0 -26
  760. package/scripts/_dbg-logs-ui-e2e.py +0 -126
  761. package/scripts/_dbg-mcp-bridge-probe.mjs +0 -147
  762. package/scripts/_dbg-modbus-latency.mjs +0 -22
  763. package/scripts/_dbg-mqtt-chain-e2e.mjs +0 -90
  764. package/scripts/_dbg-mqtt-publisher.mjs +0 -17
  765. package/scripts/_dbg-nav-rpg.mjs +0 -84
  766. package/scripts/_dbg-nav-shot.mjs +0 -28
  767. package/scripts/_dbg-nav.mjs +0 -27
  768. package/scripts/_dbg-oneshot-impl-probe.ts +0 -67
  769. package/scripts/_dbg-opencode-sse.mjs +0 -101
  770. package/scripts/_dbg-opencode-start.ts +0 -57
  771. package/scripts/_dbg-opslog-e2e.mjs +0 -121
  772. package/scripts/_dbg-opslog-shots.mjs +0 -62
  773. package/scripts/_dbg-optimization-e2e.mjs +0 -94
  774. package/scripts/_dbg-orbit.mjs +0 -58
  775. package/scripts/_dbg-overview-probe.sh +0 -31
  776. package/scripts/_dbg-panesplitter-fix-check.mjs +0 -62
  777. package/scripts/_dbg-perms-visual.mjs +0 -36
  778. package/scripts/_dbg-pg-tcp-probe.cjs +0 -27
  779. package/scripts/_dbg-phase-e3-monitor.mjs +0 -25
  780. package/scripts/_dbg-pi-spawn-probe.ts +0 -33
  781. package/scripts/_dbg-plc-agent-loop.ts +0 -102
  782. package/scripts/_dbg-plc-e2e.mjs +0 -171
  783. package/scripts/_dbg-plugin-agent-read.ts +0 -56
  784. package/scripts/_dbg-plugin-config-ui.mjs +0 -111
  785. package/scripts/_dbg-plugin-matrix.mjs +0 -212
  786. package/scripts/_dbg-plugin-panels-ui.mjs +0 -54
  787. package/scripts/_dbg-plugin-sink-rest.mjs +0 -70
  788. package/scripts/_dbg-plugin-sink-ui.mjs +0 -81
  789. package/scripts/_dbg-plugin-tools-inject.ts +0 -80
  790. package/scripts/_dbg-plugin-ui-wizard.mjs +0 -125
  791. package/scripts/_dbg-plugin-verify-e2e.mjs +0 -123
  792. package/scripts/_dbg-plugins-e2e.mjs +0 -101
  793. package/scripts/_dbg-pop-clamp-verify.mjs +0 -77
  794. package/scripts/_dbg-preset-e2e.mjs +0 -116
  795. package/scripts/_dbg-preview-console.mjs +0 -28
  796. package/scripts/_dbg-preview-minrepro.mjs +0 -156
  797. package/scripts/_dbg-preview-pixels.mjs +0 -93
  798. package/scripts/_dbg-prompts-hotreload-test.ts +0 -76
  799. package/scripts/_dbg-prompts-resolve-test.ts +0 -39
  800. package/scripts/_dbg-quality-pages-e2e.mjs +0 -84
  801. package/scripts/_dbg-query-cancel.ts +0 -12
  802. package/scripts/_dbg-qwen-acp-probe.mjs +0 -30
  803. package/scripts/_dbg-qwen-capture.mjs +0 -21
  804. package/scripts/_dbg-rail-tree-e2e.mjs +0 -183
  805. package/scripts/_dbg-real-driver-e2e.mjs +0 -55
  806. package/scripts/_dbg-redesign-shots.mjs +0 -34
  807. package/scripts/_dbg-registry-smoke.ts +0 -14
  808. package/scripts/_dbg-release-smoke.mjs +0 -104
  809. package/scripts/_dbg-repo-setup-verify.mjs +0 -31
  810. package/scripts/_dbg-resolve-probe.ts +0 -6
  811. package/scripts/_dbg-restart-persist.mjs +0 -41
  812. package/scripts/_dbg-retention-test.ts +0 -25
  813. package/scripts/_dbg-rollback-mgr-audit.mjs +0 -169
  814. package/scripts/_dbg-rpg.mjs +0 -71
  815. package/scripts/_dbg-sc001-dispatch.mjs +0 -63
  816. package/scripts/_dbg-scenario-final-shot.mjs +0 -24
  817. package/scripts/_dbg-scenario-phase-e2.mjs +0 -75
  818. package/scripts/_dbg-scenario-phase-e3.mjs +0 -96
  819. package/scripts/_dbg-scenario-phase1.mjs +0 -90
  820. package/scripts/_dbg-scenario-phase2.mjs +0 -105
  821. package/scripts/_dbg-scenario-phase3-monitor.mjs +0 -48
  822. package/scripts/_dbg-scenario-phase3.mjs +0 -111
  823. package/scripts/_dbg-scene-polish-shot.mjs +0 -118
  824. package/scripts/_dbg-selring-probe.mjs +0 -47
  825. package/scripts/_dbg-settings-draft-probe.mjs +0 -39
  826. package/scripts/_dbg-settings-probe.mjs +0 -33
  827. package/scripts/_dbg-setup-e2e.mjs +0 -88
  828. package/scripts/_dbg-sideinfo.mjs +0 -101
  829. package/scripts/_dbg-sim-keeper.mjs +0 -100
  830. package/scripts/_dbg-splitter.mjs +0 -88
  831. package/scripts/_dbg-swatch-check.mjs +0 -10
  832. package/scripts/_dbg-task-cancel-probe.mjs +0 -66
  833. package/scripts/_dbg-team-drill.mjs +0 -173
  834. package/scripts/_dbg-town-alarm-e2e.mjs +0 -40
  835. package/scripts/_dbg-town-beauty-shots.mjs +0 -54
  836. package/scripts/_dbg-town-daq-shot.mjs +0 -26
  837. package/scripts/_dbg-town-full-e2e.mjs +0 -104
  838. package/scripts/_dbg-town-gate.mjs +0 -44
  839. package/scripts/_dbg-town-ins-probe.mjs +0 -37
  840. package/scripts/_dbg-town-perf.mjs +0 -50
  841. package/scripts/_dbg-town-polish-shots.mjs +0 -82
  842. package/scripts/_dbg-town-realtime.mjs +0 -42
  843. package/scripts/_dbg-town-shot.py +0 -25
  844. package/scripts/_dbg-town-shot3.mjs +0 -17
  845. package/scripts/_dbg-town-truth.mjs +0 -37
  846. package/scripts/_dbg-town-truth2.mjs +0 -27
  847. package/scripts/_dbg-transform-audit.mjs +0 -98
  848. package/scripts/_dbg-trend-expand-test.mjs +0 -38
  849. package/scripts/_dbg-twindaq-focus.mjs +0 -81
  850. package/scripts/_dbg-ui-polish-shot.mjs +0 -43
  851. package/scripts/_dbg-ui-polish-verify1.mjs +0 -92
  852. package/scripts/_dbg-ui-polish-verify2.mjs +0 -50
  853. package/scripts/_dbg-ui-polish-verify3.mjs +0 -51
  854. package/scripts/_dbg-ui-polish-verify4.mjs +0 -50
  855. package/scripts/_dbg-ui-shot.mjs +0 -26
  856. package/scripts/_dbg-ui-shots.mjs +0 -28
  857. package/scripts/_dbg-ui-survey.py +0 -52
  858. package/scripts/_dbg-unify-shot.mjs +0 -43
  859. package/scripts/_dbg-uplink-probe.mjs +0 -36
  860. package/scripts/_dbg-wizard-preview-shot.mjs +0 -58
  861. package/scripts/_dbg-wizard-ui-e2e.mjs +0 -93
  862. package/scripts/_dbg-ws-probe.mjs +0 -86
  863. package/scripts/_dbg-ws-shot2.mjs +0 -23
  864. package/scripts/_dbg-wsdot-sanity.mjs +0 -25
  865. package/scripts/_dev-stack.mjs +0 -46
  866. package/scripts/_http-driver-probe.mjs +0 -30
  867. package/scripts/_mqtt-driver-probe.mjs +0 -30
  868. package/scripts/_newdriver-rest-probe.mjs +0 -100
  869. package/scripts/_node-state-probe.mjs +0 -5
  870. package/scripts/_opcua-driver-probe.mjs +0 -31
  871. package/scripts/_rtu-debug.mjs +0 -41
  872. package/scripts/_rtu-direct.mjs +0 -6
  873. package/scripts/_rtu-driver-probe.mjs +0 -53
  874. package/scripts/_spike-pitui.mjs +0 -116
  875. package/scripts/_tmp-args-probe.mjs +0 -20
  876. package/scripts/_tmp-cyc-entry.mjs +0 -8
  877. package/scripts/_tmp-cyc-main.mjs +0 -5
  878. package/scripts/_tmp-cyc-mod.mjs +0 -2
  879. package/scripts/_tmp-cycle-a.mjs +0 -6
  880. package/scripts/_tmp-cycle-b.mjs +0 -2
  881. package/scripts/_tmp-cycle-probe.mjs +0 -4
  882. package/scripts/_tmp-entry-variant.mjs +0 -2
  883. package/scripts/_tmp-help-probe.mjs +0 -19
  884. package/scripts/_tmp-help-probe2.mjs +0 -2
  885. package/scripts/_tmp-trace-preload.mjs +0 -1
  886. package/scripts/_wizard-shots.mjs +0 -90
  887. package/scripts/acceptance-suite.py +0 -207
  888. package/scripts/aml-agent-bridge.ts +0 -230
  889. package/scripts/aml-industrial-loop.ts +0 -232
  890. package/scripts/build-film-devices.mjs +0 -227
  891. package/scripts/collab-live-test.py +0 -177
  892. package/scripts/debug-mcp-http.ts +0 -64
  893. package/scripts/demo-lead-worker.ts +0 -256
  894. package/scripts/demo-modes.ts +0 -415
  895. package/scripts/demo-omp-channel.ts +0 -135
  896. package/scripts/design-preflight.mjs +0 -223
  897. package/scripts/design-verify-templates.mjs +0 -110
  898. package/scripts/design-verify.mjs +0 -170
  899. package/scripts/dev-window.cmd +0 -6
  900. package/scripts/device-line-restore.mjs +0 -34
  901. package/scripts/diag-lead-status.ts +0 -101
  902. package/scripts/e2e-a2a-steer-live.mjs +0 -193
  903. package/scripts/e2e-dual-drive-comm.ts +0 -259
  904. package/scripts/e2e-full-scenario.ts +0 -321
  905. package/scripts/e2e-harness-consistency.ts +0 -204
  906. package/scripts/e2e-harness-provider-task.mjs +0 -126
  907. package/scripts/e2e-line-live.mjs +0 -144
  908. package/scripts/e2e-memory-persistence.ts +0 -320
  909. package/scripts/e2e-omp-modes.ts +0 -274
  910. package/scripts/e2e-omp-realtime.ts +0 -258
  911. package/scripts/e2e-plc-scenario.mjs +0 -292
  912. package/scripts/e2e-real-scenario.mjs +0 -466
  913. package/scripts/e2e-tab-close.mjs +0 -136
  914. package/scripts/e2e-token-ui.mjs +0 -149
  915. package/scripts/final-soup-run.py +0 -192
  916. package/scripts/final-soup-watch.py +0 -83
  917. package/scripts/i18n-codemod.mjs +0 -173
  918. package/scripts/i18n-fix-en.py +0 -28
  919. package/scripts/i18n-fix-en2.py +0 -31
  920. package/scripts/i18n-merge.mjs +0 -191
  921. package/scripts/migrate-local-time.mjs +0 -123
  922. package/scripts/omp-real-test.py +0 -328
  923. package/scripts/team-plugins-api-smoke.mjs +0 -149
  924. package/scripts/test-a2a-relay.mjs +0 -222
  925. package/scripts/test-aml-integration.ts +0 -159
  926. package/scripts/test-aml-job.ts +0 -174
  927. package/scripts/test-aml-unit.ts +0 -184
  928. package/scripts/test-api-client.ts +0 -108
  929. package/scripts/test-api-suite.mjs +0 -271
  930. package/scripts/test-block-consumption.mjs +0 -194
  931. package/scripts/test-cmd-render.mjs +0 -218
  932. package/scripts/test-collab-omp.mjs +0 -192
  933. package/scripts/test-config-precedence.ts +0 -124
  934. package/scripts/test-context-governor.ts +0 -176
  935. package/scripts/test-daq-frames.ts +0 -180
  936. package/scripts/test-daq-minio.ts +0 -77
  937. package/scripts/test-dedup-logic.ts +0 -132
  938. package/scripts/test-e2e-collaboration.ts +0 -262
  939. package/scripts/test-e2e-monitor.ts +0 -192
  940. package/scripts/test-event-history.ts +0 -112
  941. package/scripts/test-exec-modes.ts +0 -316
  942. package/scripts/test-fifo-realtime.mjs +0 -193
  943. package/scripts/test-final-e2e.mjs +0 -290
  944. package/scripts/test-goal-summary.ts +0 -202
  945. package/scripts/test-harness-liveness.ts +0 -109
  946. package/scripts/test-harness-terminal.ts +0 -164
  947. package/scripts/test-header-trail.mjs +0 -95
  948. package/scripts/test-hitl.ts +0 -360
  949. package/scripts/test-koda-restyle.mjs +0 -105
  950. package/scripts/test-lane-raw.ts +0 -67
  951. package/scripts/test-lanes-history-render.mjs +0 -138
  952. package/scripts/test-loop-omp.mjs +0 -154
  953. package/scripts/test-mdlite.ts +0 -53
  954. package/scripts/test-memory-brief-chronicle.ts +0 -180
  955. package/scripts/test-memory-rrf-mmr.ts +0 -114
  956. package/scripts/test-mock-collab.mjs +0 -226
  957. package/scripts/test-modern-render.mjs +0 -174
  958. package/scripts/test-omp-terminal.mjs +0 -187
  959. package/scripts/test-plugin-ext.ts +0 -173
  960. package/scripts/test-prompts-loader.ts +0 -56
  961. package/scripts/test-real-scenario.mjs +0 -290
  962. package/scripts/test-stream-render.ts +0 -37
  963. package/scripts/test-task-drawer.mjs +0 -204
  964. package/scripts/test-task-invariants.mjs +0 -169
  965. package/scripts/test-town-3d.mjs +0 -121
  966. package/scripts/test-town-layout.mjs +0 -200
  967. package/scripts/test-town-page.mjs +0 -136
  968. package/scripts/test-town-scene-math.ts +0 -169
  969. package/scripts/test-town-twin.mjs +0 -121
  970. package/scripts/test-town-upload.mjs +0 -89
  971. package/scripts/test-town-user-flow.mjs +0 -619
  972. package/scripts/test-town-world.mjs +0 -76
  973. package/scripts/test-town-wuwa.mjs +0 -198
  974. package/scripts/test-user-isolation.mjs +0 -193
  975. package/scripts/test-workshop-entries.ts +0 -370
  976. package/scripts/test-workspace-api.ts +0 -329
  977. package/scripts/test-ws-aep.mjs +0 -187
  978. package/scripts/test-ws-protocol.ts +0 -134
  979. package/scripts/town-demo-seed.mjs +0 -75
  980. package/scripts/town-scene-clear.mjs +0 -56
  981. package/scripts/verify-exec-modes-report.ts +0 -248
  982. package/scripts/verify-lead-mail.ts +0 -188
  983. package/scripts/verify-page-smoke.mjs +0 -87
  984. package/scripts/ws-test.mjs +0 -176
  985. package/scripts/ws-test.py +0 -4
@@ -21,11 +21,11 @@ import { s as spin_default } from './spin-HVY81X_L.mjs';
21
21
  import { s as switch_default } from './switch-CelRXpcy.mjs';
22
22
  import { u as useWorkspacesStore } from './workspaces-BuydxM-3.mjs';
23
23
  import { a as apiErrorMessage } from './api-error-dul30BYQ.mjs';
24
- import { u as useEntitiesStore, a as useWorkshopWs, b as agentHueColor, c as useEventsStore, B as BlockClusterer, K as KIND_META, d as blockTier, e as buildStreamText, f as useWsConnectionStore, m as mdLiteMentions, T as TOOL_META, i as isStreaming, s as streamCursorVisible } from './useWorkshopWs-CprkZEdq.mjs';
24
+ import { u as useEntitiesStore, a as useWorkshopWs, b as agentHueColor, c as useEventsStore, B as BlockClusterer, K as KIND_META, d as blockTier, e as buildStreamText, f as useWsConnectionStore, m as mdLiteMentions, T as TOOL_META, i as isStreaming, s as streamCursorVisible } from './useWorkshopWs-C_I7q9As.mjs';
25
25
  import { u as useWorkshopApi } from './useWorkshopApi-NyjL0L3j.mjs';
26
26
  import { f as formatLocalClock } from './useLocalTime-9a4B-aHv.mjs';
27
27
  import { O as OmpTerminalPanel_default } from './OmpTerminalPanel-Cu_s4i0A.mjs';
28
- import { u as useStorage, T as TownView_default } from './TownView-BdHnAilw.mjs';
28
+ import { u as useStorage, T as TownView_default } from './TownView-jVazYOjN.mjs';
29
29
  import { defineComponent, computed, ref, watch, provide, mergeProps, unref, isRef, reactive, withCtx, createVNode, toDisplayString, createTextVNode, openBlock, createBlock, createCommentVNode, Fragment, renderList, withKeys, nextTick, useModel, withModifiers, mergeModels, shallowRef, toValue, onScopeDispose, Transition, withDirectives, vShow, inject, resolveDynamicComponent, resolveComponent, cloneVNode, useSSRContext } from 'vue';
30
30
  import { ssrRenderAttrs, ssrRenderComponent, ssrInterpolate, ssrRenderAttr, ssrRenderClass, ssrRenderStyle, ssrRenderTeleport, ssrRenderList, ssrIncludeBooleanAttr, ssrRenderVNode } from 'vue/server-renderer';
31
31
  import '../_/nitro.mjs';
@@ -1798,10 +1798,10 @@ var MentionHoverCard_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
1798
1798
  _push(`<div class="mh-card" style="${ssrRenderStyle({
1799
1799
  left: `${card.value.x}px`,
1800
1800
  top: `${card.value.y}px`
1801
- })}" data-v-b043d434><span class="aw-avatar is-agent mh-ava" style="${ssrRenderStyle({ "--av": unref(agentHueColor)(card.value.agent.agentId) })}" data-v-b043d434>${ssrInterpolate(card.value.agent.name.trim().charAt(0).toUpperCase())}</span><div class="mh-body" data-v-b043d434><div class="mh-name" data-v-b043d434><span class="mh-dot" style="${ssrRenderStyle({ background: stateDot(card.value.agent.state) })}" data-v-b043d434></span> ${ssrInterpolate(card.value.agent.name)}</div><div class="mh-role" data-v-b043d434>${ssrInterpolate(card.value.agent.role)} / ${ssrInterpolate(card.value.agent.harness)} / ${ssrInterpolate(card.value.agent.state)}</div>`);
1802
- if (card.value.agent.currentTaskId) _push(`<div class="mh-task" data-v-b043d434>${ssrInterpolate(_ctx.$t("mentionHoverCard.k3o5eky002"))}${ssrInterpolate(unref(entities).taskTitle(card.value.channelId, card.value.agent.currentTaskId))}</div>`);
1801
+ })}" data-v-85570eca><span class="aw-avatar is-agent mh-ava" style="${ssrRenderStyle({ "--av": unref(agentHueColor)(card.value.agent.agentId) })}" data-v-85570eca>${ssrInterpolate(card.value.agent.name.trim().charAt(0).toUpperCase())}</span><div class="mh-body" data-v-85570eca><div class="mh-name" data-v-85570eca><span class="mh-dot" style="${ssrRenderStyle({ background: stateDot(card.value.agent.state) })}" data-v-85570eca></span> ${ssrInterpolate(card.value.agent.name)}</div><div class="mh-role" data-v-85570eca>${ssrInterpolate(card.value.agent.role)} / ${ssrInterpolate(card.value.agent.harness)} / ${ssrInterpolate(card.value.agent.state)}</div>`);
1802
+ if (card.value.agent.currentTaskId) _push(`<div class="mh-task" data-v-85570eca>${ssrInterpolate(_ctx.$t("mentionHoverCard.k3o5eky002"))}${ssrInterpolate(unref(entities).taskTitle(card.value.channelId, card.value.agent.currentTaskId))}</div>`);
1803
1803
  else _push(`<!---->`);
1804
- _push(`<div class="mh-hint" data-v-b043d434>${ssrInterpolate(_ctx.$t("mentionHoverCard.k1t89ag4001"))}</div></div></div>`);
1804
+ _push(`<div class="mh-hint" data-v-85570eca>${ssrInterpolate(_ctx.$t("mentionHoverCard.k1t89ag4001"))}</div></div></div>`);
1805
1805
  } else _push(`<!---->`);
1806
1806
  }, "body", false, _parent);
1807
1807
  };
@@ -1815,7 +1815,7 @@ MentionHoverCard_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx
1815
1815
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/MentionHoverCard.vue");
1816
1816
  return _sfc_setup$31 ? _sfc_setup$31(props, ctx) : void 0;
1817
1817
  };
1818
- var MentionHoverCard_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(MentionHoverCard_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-b043d434"]]), { __name: "WorkshopMentionHoverCard" });
1818
+ var MentionHoverCard_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(MentionHoverCard_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-85570eca"]]), { __name: "WorkshopMentionHoverCard" });
1819
1819
  //#endregion
1820
1820
  //#region app/components/workshop/FileSelectorModal.vue?vue&type=script&setup=true&lang.ts
1821
1821
  var FileSelectorModal_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -2283,9 +2283,9 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2283
2283
  const _component_a_radio_group = Group_default$1;
2284
2284
  const _component_a_radio = radio_default;
2285
2285
  const _component_workshop_file_selector_modal = FileSelectorModal_default;
2286
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "channel-list" }, _attrs))} data-v-755dc699><div class="list-head" data-v-755dc699><span class="title" data-v-755dc699>Channels</span><span class="head-actions" data-v-755dc699><button class="head-op im" type="button" title="Channel 模板中心" data-v-755dc699><span class="i-tabler-layout-grid-add im-pop" data-v-755dc699></span></button><button class="head-op im" type="button" title="新建 Channel" data-v-755dc699><span class="i-tabler-plus im-pop" data-v-755dc699></span></button></span></div>`);
2286
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "channel-list" }, _attrs))} data-v-535bdd58><div class="list-head" data-v-535bdd58><span class="title" data-v-535bdd58>Channels</span><span class="head-actions" data-v-535bdd58><button class="head-op im" type="button" title="Channel 模板中心" data-v-535bdd58><span class="i-tabler-layout-grid-add im-pop" data-v-535bdd58></span></button><button class="head-op im" type="button" title="新建 Channel" data-v-535bdd58><span class="i-tabler-plus im-pop" data-v-535bdd58></span></button></span></div>`);
2287
2287
  _push(ssrRenderComponent(_component_ClientOnly, null, {}, _parent));
2288
- _push(`<div class="mount-template" data-v-755dc699>`);
2288
+ _push(`<div class="mount-template" data-v-535bdd58>`);
2289
2289
  _push(ssrRenderComponent(_component_a_select, {
2290
2290
  value: unref(templateMountId),
2291
2291
  "onUpdate:value": ($event) => isRef(templateMountId) ? templateMountId.value = $event : null,
@@ -2303,7 +2303,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2303
2303
  })),
2304
2304
  onChange: mountFromTemplate
2305
2305
  }, null, _parent));
2306
- _push(`<div class="tpl-hint" data-v-755dc699>${ssrInterpolate(_ctx.$t("channelSessionList.k18ppu31016"))}</div></div>`);
2306
+ _push(`<div class="tpl-hint" data-v-535bdd58>${ssrInterpolate(_ctx.$t("channelSessionList.k18ppu31016"))}</div></div>`);
2307
2307
  _push(ssrRenderComponent(_component_a_modal, {
2308
2308
  open: unref(mountModal),
2309
2309
  "onUpdate:open": ($event) => isRef(mountModal) ? mountModal.value = $event : null,
@@ -2345,7 +2345,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2345
2345
  }, _parent, _scopeId));
2346
2346
  _push(ssrRenderComponent(_component_a_form_item, { label: _ctx.$t("channelSessionList.k1wj4f38004") }, {
2347
2347
  extra: withCtx((_, _push, _parent, _scopeId) => {
2348
- if (_push) _push(`<span class="ws-hint" data-v-755dc699${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1u3zsr5017"))}</span>`);
2348
+ if (_push) _push(`<span class="ws-hint" data-v-535bdd58${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1u3zsr5017"))}</span>`);
2349
2349
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("channelSessionList.k1u3zsr5017")), 1)];
2350
2350
  }),
2351
2351
  default: withCtx((_, _push, _parent, _scopeId) => {
@@ -2370,7 +2370,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2370
2370
  }, _parent, _scopeId));
2371
2371
  _push(ssrRenderComponent(_component_a_form_item, { label: _ctx.$t("channelSessionList.kmgv4h5006") }, {
2372
2372
  extra: withCtx((_, _push, _parent, _scopeId) => {
2373
- if (_push) _push(`<span class="ws-hint" data-v-755dc699${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.kucq30k019"))}</span>`);
2373
+ if (_push) _push(`<span class="ws-hint" data-v-535bdd58${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.kucq30k019"))}</span>`);
2374
2374
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("channelSessionList.kucq30k019")), 1)];
2375
2375
  }),
2376
2376
  default: withCtx((_, _push, _parent, _scopeId) => {
@@ -2434,7 +2434,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2434
2434
  }, _parent, _scopeId));
2435
2435
  _push(ssrRenderComponent(_component_a_form_item, null, {
2436
2436
  default: withCtx((_, _push, _parent, _scopeId) => {
2437
- if (_push) _push(`<span class="ws-hint" data-v-755dc699${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1ful761020"))}</span>`);
2437
+ if (_push) _push(`<span class="ws-hint" data-v-535bdd58${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1ful761020"))}</span>`);
2438
2438
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("channelSessionList.k1ful761020")), 1)];
2439
2439
  }),
2440
2440
  _: 1
@@ -2940,12 +2940,12 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2940
2940
  default: withCtx((_, _push, _parent, _scopeId) => {
2941
2941
  if (_push) {
2942
2942
  if (unref(pluginRows).length) {
2943
- _push(`<div class="ch-plugin-list" data-v-755dc699${_scopeId}><!--[-->`);
2943
+ _push(`<div class="ch-plugin-list" data-v-535bdd58${_scopeId}><!--[-->`);
2944
2944
  ssrRenderList(unref(pluginRows), (p) => {
2945
- _push(`<div class="ch-plugin-row" data-v-755dc699${_scopeId}><div class="ch-plugin-main" data-v-755dc699${_scopeId}><span class="aw-mono" data-v-755dc699${_scopeId}>${ssrInterpolate(p.name)}</span>`);
2946
- if (p.builtin) _push(`<span class="ws-hint" data-v-755dc699${_scopeId}>内置</span>`);
2945
+ _push(`<div class="ch-plugin-row" data-v-535bdd58${_scopeId}><div class="ch-plugin-main" data-v-535bdd58${_scopeId}><span class="aw-mono" data-v-535bdd58${_scopeId}>${ssrInterpolate(p.name)}</span>`);
2946
+ if (p.builtin) _push(`<span class="ws-hint" data-v-535bdd58${_scopeId}>内置</span>`);
2947
2947
  else _push(`<!---->`);
2948
- if (p.description) _push(`<span class="ws-hint ch-plugin-desc" data-v-755dc699${_scopeId}>${ssrInterpolate(p.description)}</span>`);
2948
+ if (p.description) _push(`<span class="ws-hint ch-plugin-desc" data-v-535bdd58${_scopeId}>${ssrInterpolate(p.description)}</span>`);
2949
2949
  else _push(`<!---->`);
2950
2950
  _push(`</div>`);
2951
2951
  _push(ssrRenderComponent(_component_a_switch, {
@@ -2957,10 +2957,10 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2957
2957
  _push(`</div>`);
2958
2958
  });
2959
2959
  _push(`<!--]-->`);
2960
- if (unref(pluginSource) !== "explicit") _push(`<span class="ws-hint" data-v-755dc699${_scopeId}>${ssrInterpolate(unref(t)("channelSessionList.k1plugsrc046"))}</span>`);
2960
+ if (unref(pluginSource) !== "explicit") _push(`<span class="ws-hint" data-v-535bdd58${_scopeId}>${ssrInterpolate(unref(t)("channelSessionList.k1plugsrc046"))}</span>`);
2961
2961
  else _push(`<!---->`);
2962
2962
  _push(`</div>`);
2963
- } else _push(`<span class="ws-hint" data-v-755dc699${_scopeId}>—</span>`);
2963
+ } else _push(`<span class="ws-hint" data-v-535bdd58${_scopeId}>—</span>`);
2964
2964
  } else return [unref(pluginRows).length ? (openBlock(), createBlock("div", {
2965
2965
  key: 0,
2966
2966
  class: "ch-plugin-list"
@@ -3006,12 +3006,12 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
3006
3006
  onClick: openSaveTemplate
3007
3007
  }, {
3008
3008
  default: withCtx((_, _push, _parent, _scopeId) => {
3009
- if (_push) _push(`<span class="i-tabler-template" data-v-755dc699${_scopeId}></span> ${ssrInterpolate(_ctx.$t("channelSessionList.k6kpql010"))}`);
3009
+ if (_push) _push(`<span class="i-tabler-template" data-v-535bdd58${_scopeId}></span> ${ssrInterpolate(_ctx.$t("channelSessionList.k6kpql010"))}`);
3010
3010
  else return [createVNode("span", { class: "i-tabler-template" }), createTextVNode(" " + toDisplayString(_ctx.$t("channelSessionList.k6kpql010")), 1)];
3011
3011
  }),
3012
3012
  _: 1
3013
3013
  }, _parent, _scopeId));
3014
- _push(`<span class="ws-hint" data-v-755dc699${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1x6kznr021"))}</span>`);
3014
+ _push(`<span class="ws-hint" data-v-535bdd58${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1x6kznr021"))}</span>`);
3015
3015
  } else return [createVNode(_component_a_button, {
3016
3016
  size: "small",
3017
3017
  onClick: openSaveTemplate
@@ -3496,7 +3496,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
3496
3496
  }, _parent, _scopeId));
3497
3497
  _push(ssrRenderComponent(_component_a_form_item, null, {
3498
3498
  default: withCtx((_, _push, _parent, _scopeId) => {
3499
- if (_push) _push(`<span class="ws-hint" data-v-755dc699${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.kl9btf7024"))}</span>`);
3499
+ if (_push) _push(`<span class="ws-hint" data-v-535bdd58${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.kl9btf7024"))}</span>`);
3500
3500
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("channelSessionList.kl9btf7024")), 1)];
3501
3501
  }),
3502
3502
  _: 1
@@ -3612,7 +3612,7 @@ ChannelSessionList_vue_vue_type_script_setup_true_lang_default.setup = (props, c
3612
3612
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/ChannelSessionList.vue");
3613
3613
  return _sfc_setup$29 ? _sfc_setup$29(props, ctx) : void 0;
3614
3614
  };
3615
- var ChannelSessionList_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ChannelSessionList_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-755dc699"]]), { __name: "WorkshopChannelSessionList" });
3615
+ var ChannelSessionList_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ChannelSessionList_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-535bdd58"]]), { __name: "WorkshopChannelSessionList" });
3616
3616
  //#endregion
3617
3617
  //#region app/components/workshop/LiveAgentBar.vue?vue&type=script&setup=true&lang.ts
3618
3618
  var LiveAgentBar_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -3810,13 +3810,13 @@ var ClusterStream_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
3810
3810
  const showCursor = computed(() => streamCursorVisible(full.value.length, visible.value, streaming.value));
3811
3811
  const rendered = computed(() => mdLiteMentions(full.value.slice(0, visible.value), members.value));
3812
3812
  return (_ctx, _push, _parent, _attrs) => {
3813
- if (__props.block.coveredBy) _push(`<div${ssrRenderAttrs(mergeProps({ class: "stream-covered" }, _attrs))} data-v-89d25e3d><span class="i-tabler-corner-right-up" data-v-89d25e3d></span><span data-v-89d25e3d>${ssrInterpolate(_ctx.$t("clusterStream.kpk9wff001"))}</span></div>`);
3813
+ if (__props.block.coveredBy) _push(`<div${ssrRenderAttrs(mergeProps({ class: "stream-covered" }, _attrs))} data-v-cda07cf1><span class="i-tabler-corner-right-up" data-v-cda07cf1></span><span data-v-cda07cf1>${ssrInterpolate(_ctx.$t("clusterStream.kpk9wff001"))}</span></div>`);
3814
3814
  else if (full.value) {
3815
- _push(`<div${ssrRenderAttrs(mergeProps({ class: ["stream-bubble", { settled: __props.block.settled }] }, _attrs))} data-v-89d25e3d><div class="stream-text prose" data-v-89d25e3d><span data-v-89d25e3d>${rendered.value ?? ""}</span>`);
3816
- if (showCursor.value) _push(`<span class="cursor" data-v-89d25e3d>▋</span>`);
3815
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: ["stream-bubble", { settled: __props.block.settled }] }, _attrs))} data-v-cda07cf1><div class="stream-text prose" data-v-cda07cf1><span data-v-cda07cf1>${rendered.value ?? ""}</span>`);
3816
+ if (showCursor.value) _push(`<span class="cursor" data-v-cda07cf1>▋</span>`);
3817
3817
  else _push(`<!---->`);
3818
3818
  _push(`</div></div>`);
3819
- } else if (streaming.value) _push(`<div${ssrRenderAttrs(mergeProps({ class: "stream-pending" }, _attrs))} data-v-89d25e3d><span class="pending-dot" data-v-89d25e3d></span><span class="pending-dot" data-v-89d25e3d></span><span class="pending-dot" data-v-89d25e3d></span></div>`);
3819
+ } else if (streaming.value) _push(`<div${ssrRenderAttrs(mergeProps({ class: "stream-pending" }, _attrs))} data-v-cda07cf1><span class="pending-dot" data-v-cda07cf1></span><span class="pending-dot" data-v-cda07cf1></span><span class="pending-dot" data-v-cda07cf1></span></div>`);
3820
3820
  else _push(`<!---->`);
3821
3821
  };
3822
3822
  }
@@ -3829,7 +3829,7 @@ ClusterStream_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) =
3829
3829
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/blocks/ClusterStream.vue");
3830
3830
  return _sfc_setup$26 ? _sfc_setup$26(props, ctx) : void 0;
3831
3831
  };
3832
- var ClusterStream_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ClusterStream_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-89d25e3d"]]), { __name: "WorkshopBlocksClusterStream" });
3832
+ var ClusterStream_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ClusterStream_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-cda07cf1"]]), { __name: "WorkshopBlocksClusterStream" });
3833
3833
  //#endregion
3834
3834
  //#region app/components/workshop/blocks/ClusterTool.vue?vue&type=script&setup=true&lang.ts
3835
3835
  var MAX$5 = 4;
@@ -3863,17 +3863,17 @@ var ClusterTool_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
3863
3863
  const shown = computed(() => expanded.value ? toolLines.value : toolLines.value.slice(0, MAX$5));
3864
3864
  const hasMore = computed(() => toolLines.value.length > MAX$5);
3865
3865
  return (_ctx, _push, _parent, _attrs) => {
3866
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "tool-cluster" }, _attrs))} data-v-0bef4195><!--[-->`);
3866
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "tool-cluster" }, _attrs))} data-v-ac0502fc><!--[-->`);
3867
3867
  ssrRenderList(shown.value, (t) => {
3868
- _push(`<div class="${ssrRenderClass([t.meta.kind, "tool-line"])}" data-v-0bef4195><time class="tool-time aw-mono" data-v-0bef4195>${ssrInterpolate(t.time)}</time><span class="tool-node" data-v-0bef4195></span><span class="${ssrRenderClass([t.meta.icon, "tool-icon"])}" data-v-0bef4195></span><span class="tool-name" data-v-0bef4195>${ssrInterpolate(t.name)}</span>`);
3869
- if (t.args) _push(`<span class="tool-args"${ssrRenderAttr("title", t.args)} data-v-0bef4195>${ssrInterpolate(t.args)}</span>`);
3868
+ _push(`<div class="${ssrRenderClass([t.meta.kind, "tool-line"])}" data-v-ac0502fc><time class="tool-time aw-mono" data-v-ac0502fc>${ssrInterpolate(t.time)}</time><span class="tool-node" data-v-ac0502fc></span><span class="${ssrRenderClass([t.meta.icon, "tool-icon"])}" data-v-ac0502fc></span><span class="tool-name" data-v-ac0502fc>${ssrInterpolate(t.name)}</span>`);
3869
+ if (t.args) _push(`<span class="tool-args"${ssrRenderAttr("title", t.args)} data-v-ac0502fc>${ssrInterpolate(t.args)}</span>`);
3870
3870
  else _push(`<!---->`);
3871
- if (t.meta.kind === "host") _push(`<span class="tool-kind" data-v-0bef4195>harness</span>`);
3871
+ if (t.meta.kind === "host") _push(`<span class="tool-kind" data-v-ac0502fc>harness</span>`);
3872
3872
  else _push(`<!---->`);
3873
3873
  _push(`</div>`);
3874
3874
  });
3875
3875
  _push(`<!--]-->`);
3876
- if (hasMore.value) _push(`<button class="more-btn" data-v-0bef4195>${ssrInterpolate(expanded.value ? _ctx.$t("clusterTool.k40p82001") : `展开全部 ${toolLines.value.length} 个调用`)}</button>`);
3876
+ if (hasMore.value) _push(`<button class="more-btn" data-v-ac0502fc>${ssrInterpolate(expanded.value ? _ctx.$t("clusterTool.k40p82001") : `展开全部 ${toolLines.value.length} 个调用`)}</button>`);
3877
3877
  else _push(`<!---->`);
3878
3878
  _push(`</div>`);
3879
3879
  };
@@ -3887,7 +3887,7 @@ ClusterTool_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) =>
3887
3887
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/blocks/ClusterTool.vue");
3888
3888
  return _sfc_setup$25 ? _sfc_setup$25(props, ctx) : void 0;
3889
3889
  };
3890
- var ClusterTool_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ClusterTool_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-0bef4195"]]), { __name: "WorkshopBlocksClusterTool" });
3890
+ var ClusterTool_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ClusterTool_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-ac0502fc"]]), { __name: "WorkshopBlocksClusterTool" });
3891
3891
  //#endregion
3892
3892
  //#region app/components/workshop/blocks/ClusterStatus.vue?vue&type=script&setup=true&lang.ts
3893
3893
  var ClusterStatus_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -4075,29 +4075,29 @@ var ClusterRoute_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
4075
4075
  const shownRendered = computed(() => expanded.value ? rendered.value : rendered.value.slice(0, MAX$4));
4076
4076
  const hasMore = computed(() => rows.value.length > MAX$4);
4077
4077
  return (_ctx, _push, _parent, _attrs) => {
4078
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "route-cluster" }, _attrs))} data-v-9422b1df><!--[-->`);
4078
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "route-cluster" }, _attrs))} data-v-72348858><!--[-->`);
4079
4079
  ssrRenderList(shown.value, (r, ri) => {
4080
- _push(`<div class="chat-row" data-v-9422b1df><div class="chat-meta" data-v-9422b1df>`);
4081
- if (r.fromLabel && !r.from) _push(`<span class="human-chip"${ssrRenderAttr("title", _ctx.$t("clusterRoute.k12448jn010", { p0: r.fromLabel }))} data-v-9422b1df><span class="i-tabler-user" data-v-9422b1df></span> ${ssrInterpolate(r.fromLabel)}</span>`);
4080
+ _push(`<div class="chat-row" data-v-72348858><div class="chat-meta" data-v-72348858>`);
4081
+ if (r.fromLabel && !r.from) _push(`<span class="human-chip"${ssrRenderAttr("title", _ctx.$t("clusterRoute.k12448jn010", { p0: r.fromLabel }))} data-v-72348858><span class="i-tabler-user" data-v-72348858></span> ${ssrInterpolate(r.fromLabel)}</span>`);
4082
4082
  else _push(`<!---->`);
4083
- if (r.from) _push(`<button type="button" class="who-pill from"${ssrRenderAttr("data-agent-id", r.from)}${ssrRenderAttr("title", _ctx.$t("clusterRoute.khsfl59011", { p0: nameOf(r.from) }))} data-v-9422b1df><span class="aw-avatar is-agent who-ava" style="${ssrRenderStyle({ "--av": unref(agentHueColor)(r.from) })}" data-v-9422b1df>${ssrInterpolate(initials(nameOf(r.from)))}</span> @${ssrInterpolate(nameOf(r.from))}</button>`);
4083
+ if (r.from) _push(`<button type="button" class="who-pill from"${ssrRenderAttr("data-agent-id", r.from)}${ssrRenderAttr("title", _ctx.$t("clusterRoute.khsfl59011", { p0: nameOf(r.from) }))} data-v-72348858><span class="aw-avatar is-agent who-ava" style="${ssrRenderStyle({ "--av": unref(agentHueColor)(r.from) })}" data-v-72348858>${ssrInterpolate(initials(nameOf(r.from)))}</span> @${ssrInterpolate(nameOf(r.from))}</button>`);
4084
4084
  else _push(`<!---->`);
4085
- if (r.to) _push(`<span class="to-arrow" aria-hidden="true" data-v-9422b1df>→</span>`);
4085
+ if (r.to) _push(`<span class="to-arrow" aria-hidden="true" data-v-72348858>→</span>`);
4086
4086
  else _push(`<!---->`);
4087
- if (r.to) _push(`<button type="button" class="who-pill"${ssrRenderAttr("data-agent-id", r.to)}${ssrRenderAttr("title", _ctx.$t("clusterRoute.khsfl59011", { p0: nameOf(r.to) }))} data-v-9422b1df> @${ssrInterpolate(nameOf(r.to))}</button>`);
4088
- else _push(`<span class="who-broadcast" data-v-9422b1df>${ssrInterpolate(_ctx.$t("clusterRoute.kyza1ya002"))}</span>`);
4089
- _push(`<span class="route-badge"${ssrRenderAttr("data-tone", r.kind.tone)} data-v-9422b1df><span class="${ssrRenderClass(r.kind.icon)}" data-v-9422b1df></span>${ssrInterpolate(r.kind.label)}</span>`);
4090
- if (r.requireReply) _push(`<span class="route-badge receipt"${ssrRenderAttr("title", _ctx.$t("clusterRoute.kfbpe32001"))} data-v-9422b1df><span class="i-tabler-message-reply" data-v-9422b1df></span>${ssrInterpolate(_ctx.$t("clusterRoute.k3wn89c003"))}</span>`);
4087
+ if (r.to) _push(`<button type="button" class="who-pill"${ssrRenderAttr("data-agent-id", r.to)}${ssrRenderAttr("title", _ctx.$t("clusterRoute.khsfl59011", { p0: nameOf(r.to) }))} data-v-72348858> @${ssrInterpolate(nameOf(r.to))}</button>`);
4088
+ else _push(`<span class="who-broadcast" data-v-72348858>${ssrInterpolate(_ctx.$t("clusterRoute.kyza1ya002"))}</span>`);
4089
+ _push(`<span class="route-badge"${ssrRenderAttr("data-tone", r.kind.tone)} data-v-72348858><span class="${ssrRenderClass(r.kind.icon)}" data-v-72348858></span>${ssrInterpolate(r.kind.label)}</span>`);
4090
+ if (r.requireReply) _push(`<span class="route-badge receipt"${ssrRenderAttr("title", _ctx.$t("clusterRoute.kfbpe32001"))} data-v-72348858><span class="i-tabler-message-reply" data-v-72348858></span>${ssrInterpolate(_ctx.$t("clusterRoute.k3wn89c003"))}</span>`);
4091
4091
  else _push(`<!---->`);
4092
- if (r.inReplyTo) _push(`<span class="route-badge reply-link aw-mono"${ssrRenderAttr("title", _ctx.$t("clusterRoute.k94hqp2012", { p0: r.inReplyTo }))} data-v-9422b1df>↩ ${ssrInterpolate(r.inReplyTo.slice(0, 8))}</span>`);
4092
+ if (r.inReplyTo) _push(`<span class="route-badge reply-link aw-mono"${ssrRenderAttr("title", _ctx.$t("clusterRoute.k94hqp2012", { p0: r.inReplyTo }))} data-v-72348858>↩ ${ssrInterpolate(r.inReplyTo.slice(0, 8))}</span>`);
4093
4093
  else _push(`<!---->`);
4094
- _push(`<span class="chat-time aw-mono" data-v-9422b1df>${ssrInterpolate(r.time)}</span></div>`);
4095
- if (r.text) _push(`<div class="chat-body prose" data-v-9422b1df>${shownRendered.value[ri] ?? ""}</div>`);
4094
+ _push(`<span class="chat-time aw-mono" data-v-72348858>${ssrInterpolate(r.time)}</span></div>`);
4095
+ if (r.text) _push(`<div class="chat-body prose" data-v-72348858>${shownRendered.value[ri] ?? ""}</div>`);
4096
4096
  else _push(`<!---->`);
4097
4097
  _push(`</div>`);
4098
4098
  });
4099
4099
  _push(`<!--]-->`);
4100
- if (hasMore.value) _push(`<button class="more-btn" data-v-9422b1df>${ssrInterpolate(expanded.value ? _ctx.$t("clusterRoute.k40p82004") : _ctx.$t("clusterRoute.k13ewgum013", { p0: rows.value.length }))}</button>`);
4100
+ if (hasMore.value) _push(`<button class="more-btn" data-v-72348858>${ssrInterpolate(expanded.value ? _ctx.$t("clusterRoute.k40p82004") : _ctx.$t("clusterRoute.k13ewgum013", { p0: rows.value.length }))}</button>`);
4101
4101
  else _push(`<!---->`);
4102
4102
  _push(`</div>`);
4103
4103
  };
@@ -4111,7 +4111,7 @@ ClusterRoute_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) =>
4111
4111
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/blocks/ClusterRoute.vue");
4112
4112
  return _sfc_setup$22 ? _sfc_setup$22(props, ctx) : void 0;
4113
4113
  };
4114
- var ClusterRoute_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ClusterRoute_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-9422b1df"]]), { __name: "WorkshopBlocksClusterRoute" });
4114
+ var ClusterRoute_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ClusterRoute_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-72348858"]]), { __name: "WorkshopBlocksClusterRoute" });
4115
4115
  //#endregion
4116
4116
  //#region app/components/workshop/blocks/ClusterTask.vue?vue&type=script&setup=true&lang.ts
4117
4117
  var ClusterTask_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -4659,33 +4659,33 @@ var EventBlock_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
4659
4659
  "data-seq": firstSeq.value,
4660
4660
  "data-events": __props.block.events.length,
4661
4661
  "data-folded": __props.block.folded
4662
- }, _attrs))} data-v-49551fd4><button type="button" class="${ssrRenderClass([{
4662
+ }, _attrs))} data-v-5e0be04f><button type="button" class="${ssrRenderClass([{
4663
4663
  "is-agent": !!__props.block.agentId,
4664
4664
  "is-human": !!humanLabel.value,
4665
4665
  "clickable": !!__props.block.agentId
4666
- }, "agent-avatar"])}"${ssrRenderAttr("title", humanLabel.value ?? `${agentLabel.value}${roleLabel.value ? ` · ${roleLabel.value}` : ""}`)} style="${ssrRenderStyle(avColor.value ? { "--av": avColor.value } : void 0)}" data-v-49551fd4>`);
4667
- if (humanLabel.value) _push(`<span class="i-tabler-user system-icon" data-v-49551fd4></span>`);
4668
- else if (!__props.block.agentId) _push(`<span class="i-tabler-cpu system-icon" data-v-49551fd4></span>`);
4666
+ }, "agent-avatar"])}"${ssrRenderAttr("title", humanLabel.value ?? `${agentLabel.value}${roleLabel.value ? ` · ${roleLabel.value}` : ""}`)} style="${ssrRenderStyle(avColor.value ? { "--av": avColor.value } : void 0)}" data-v-5e0be04f>`);
4667
+ if (humanLabel.value) _push(`<span class="i-tabler-user system-icon" data-v-5e0be04f></span>`);
4668
+ else if (!__props.block.agentId) _push(`<span class="i-tabler-cpu system-icon" data-v-5e0be04f></span>`);
4669
4669
  else _push(`<!--[-->${ssrInterpolate(agentInitial.value)}<!--]-->`);
4670
- if (__props.block.agentId && agentState.value) _push(`<span class="${ssrRenderClass([agentState.value, "av-status"])}"${ssrRenderAttr("title", agentState.value === "busy" ? "运行中" : agentState.value === "stopped" ? "已停止" : "空闲")} data-v-49551fd4></span>`);
4670
+ if (__props.block.agentId && agentState.value) _push(`<span class="${ssrRenderClass([agentState.value, "av-status"])}"${ssrRenderAttr("title", agentState.value === "busy" ? "运行中" : agentState.value === "stopped" ? "已停止" : "空闲")} data-v-5e0be04f></span>`);
4671
4671
  else _push(`<!---->`);
4672
- _push(`</button><div class="eb-main" data-v-49551fd4><header class="block-head" style="${ssrRenderStyle(!__props.compact ? null : { display: "none" })}" data-v-49551fd4><span class="agent-name" data-v-49551fd4>${ssrInterpolate(humanLabel.value ?? agentLabel.value)}</span>`);
4673
- if (roleLabel.value) _push(`<span class="role-label" data-v-49551fd4>${ssrInterpolate(roleLabel.value)}</span>`);
4672
+ _push(`</button><div class="eb-main" data-v-5e0be04f><header class="block-head" style="${ssrRenderStyle(!__props.compact ? null : { display: "none" })}" data-v-5e0be04f><span class="agent-name" data-v-5e0be04f>${ssrInterpolate(humanLabel.value ?? agentLabel.value)}</span>`);
4673
+ if (roleLabel.value) _push(`<span class="role-label" data-v-5e0be04f>${ssrInterpolate(roleLabel.value)}</span>`);
4674
4674
  else _push(`<!---->`);
4675
- if (tier.value === "attention") _push(`<span class="tier-attention"${ssrRenderAttr("title", _ctx.$t("eventBlock.kc918hn001"))} data-v-49551fd4><span class="i-tabler-alert-circle" data-v-49551fd4></span>${ssrInterpolate(_ctx.$t("eventBlock.k3wmcv4004"))}</span>`);
4675
+ if (tier.value === "attention") _push(`<span class="tier-attention"${ssrRenderAttr("title", _ctx.$t("eventBlock.kc918hn001"))} data-v-5e0be04f><span class="i-tabler-alert-circle" data-v-5e0be04f></span>${ssrInterpolate(_ctx.$t("eventBlock.k3wmcv4004"))}</span>`);
4676
4676
  else _push(`<!---->`);
4677
- _push(`<span class="head-right" data-v-49551fd4>`);
4678
- if (runningNow.value) _push(`<span class="running-chip" data-v-49551fd4><span class="running-dot" data-v-49551fd4></span>${ssrInterpolate(_ctx.$t("eventBlock.k3vp67i005"))}</span>`);
4677
+ _push(`<span class="head-right" data-v-5e0be04f>`);
4678
+ if (runningNow.value) _push(`<span class="running-chip" data-v-5e0be04f><span class="running-dot" data-v-5e0be04f></span>${ssrInterpolate(_ctx.$t("eventBlock.k3vp67i005"))}</span>`);
4679
4679
  else _push(`<!---->`);
4680
- if (__props.block.folded > 0) _push(`<span class="folded"${ssrRenderAttr("title", _ctx.$t("eventBlock.kcugdph002"))} data-v-49551fd4>${ssrInterpolate(_ctx.$t("eventBlock.k3xk4t006"))} ${ssrInterpolate(__props.block.folded)}</span>`);
4680
+ if (__props.block.folded > 0) _push(`<span class="folded"${ssrRenderAttr("title", _ctx.$t("eventBlock.kcugdph002"))} data-v-5e0be04f>${ssrInterpolate(_ctx.$t("eventBlock.k3xk4t006"))} ${ssrInterpolate(__props.block.folded)}</span>`);
4681
4681
  else _push(`<!---->`);
4682
- if (__props.block.events.length > 1) _push(`<span class="merged" data-v-49551fd4>×${ssrInterpolate(__props.block.events.length)}</span>`);
4682
+ if (__props.block.events.length > 1) _push(`<span class="merged" data-v-5e0be04f>×${ssrInterpolate(__props.block.events.length)}</span>`);
4683
4683
  else _push(`<!---->`);
4684
- _push(`<span class="kind-chip" data-v-49551fd4>${ssrInterpolate(meta.value.label)}</span><span class="time" data-v-49551fd4>${ssrInterpolate(time.value)}</span></span>`);
4685
- if (toolbarText.value) _push(`<span class="eb-toolbar" data-v-49551fd4><button type="button" class="eb-tool"${ssrRenderAttr("title", unref(copied) ? "已复制" : "复制全文")} data-v-49551fd4><span class="${ssrRenderClass(unref(copied) ? "i-tabler-check" : "i-tabler-copy")}" data-v-49551fd4></span></button><button type="button" class="eb-tool"${ssrRenderAttr("title", _ctx.$t("eventBlock.kknq700003"))} data-v-49551fd4><span class="i-tabler-quote" data-v-49551fd4></span></button></span>`);
4684
+ _push(`<span class="kind-chip" data-v-5e0be04f>${ssrInterpolate(meta.value.label)}</span><span class="time" data-v-5e0be04f>${ssrInterpolate(time.value)}</span></span>`);
4685
+ if (toolbarText.value) _push(`<span class="eb-toolbar" data-v-5e0be04f><button type="button" class="eb-tool"${ssrRenderAttr("title", unref(copied) ? "已复制" : "复制全文")} data-v-5e0be04f><span class="${ssrRenderClass(unref(copied) ? "i-tabler-check" : "i-tabler-copy")}" data-v-5e0be04f></span></button><button type="button" class="eb-tool"${ssrRenderAttr("title", _ctx.$t("eventBlock.kknq700003"))} data-v-5e0be04f><span class="i-tabler-quote" data-v-5e0be04f></span></button></span>`);
4686
4686
  else _push(`<!---->`);
4687
4687
  _push(`</header>`);
4688
- if (__props.compact) _push(`<span class="ghost-time" data-v-49551fd4>${ssrInterpolate(time.value.slice(0, 5))}</span>`);
4688
+ if (__props.compact) _push(`<span class="ghost-time" data-v-5e0be04f>${ssrInterpolate(time.value.slice(0, 5))}</span>`);
4689
4689
  else _push(`<!---->`);
4690
4690
  ssrRenderVNode(_push, createVNode(resolveDynamicComponent(body.value), {
4691
4691
  block: __props.block,
@@ -4703,7 +4703,7 @@ EventBlock_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
4703
4703
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/EventBlock.vue");
4704
4704
  return _sfc_setup$14 ? _sfc_setup$14(props, ctx) : void 0;
4705
4705
  };
4706
- var EventBlock_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(EventBlock_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-49551fd4"]]), { __name: "WorkshopEventBlock" });
4706
+ var EventBlock_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(EventBlock_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-5e0be04f"]]), { __name: "WorkshopEventBlock" });
4707
4707
  //#endregion
4708
4708
  //#region app/composables/workshop/useClusteredBlocks.ts
4709
4709
  /**
@@ -4729,6 +4729,8 @@ var EventBlock_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_d
4729
4729
  */
4730
4730
  /** 聚合窗:过程帧突发合并为一次呈现(ms) */
4731
4731
  var FLUSH_MS = 160;
4732
+ /** 稳定空数组(无频道/无数据时同一引用,避免下游 computed 每帧产出新数组) */
4733
+ var EMPTY = Object.freeze([]);
4732
4734
  /** 尾部流块最小可见文本(字符):不足则暂缓一拍,避免 1-2 字符的"准空白"块闪现 */
4733
4735
  var MIN_STREAM_PREVIEW = 8;
4734
4736
  /** 即时呈现的终局/外显帧:结果类与状态翻转类内容不合批 */
@@ -4750,12 +4752,18 @@ function useClusteredBlocks(channelId, opts = {}) {
4750
4752
  const focusVal = computed(() => events.focusAgents[cid.value] ?? null);
4751
4753
  const resetKeyVal = computed(() => toValue(opts.resetKey));
4752
4754
  const predRaw = computed(() => opts.predicate ?? null);
4755
+ const laneAgentId = computed(() => toValue(opts.agentId) ?? "");
4753
4756
  const list = computed(() => {
4754
- if (opts.raw) return cid.value ? events.ring(cid.value).items : [];
4755
- return cid.value ? events.timeline(cid.value) : [];
4757
+ if (opts.raw) {
4758
+ if (!cid.value) return EMPTY;
4759
+ if (opts.agentId) return events.agentEvents(cid.value, laneAgentId.value);
4760
+ return events.ring(cid.value).items;
4761
+ }
4762
+ return cid.value ? events.timeline(cid.value) : EMPTY;
4756
4763
  });
4757
4764
  const source = computed(() => {
4758
4765
  resetKeyVal.value;
4766
+ if (opts.agentId) return list.value;
4759
4767
  return predRaw.value ? list.value.filter(predRaw.value) : list.value;
4760
4768
  });
4761
4769
  let flushTimer = null;
@@ -4801,7 +4809,8 @@ function useClusteredBlocks(channelId, opts = {}) {
4801
4809
  if (opts.raw) watch([
4802
4810
  cid,
4803
4811
  predRaw,
4804
- resetKeyVal
4812
+ resetKeyVal,
4813
+ laneAgentId
4805
4814
  ], () => {
4806
4815
  clusterer.reset();
4807
4816
  rebuildPending = true;
@@ -4971,42 +4980,42 @@ var TranscriptTimeline_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
4971
4980
  return (_ctx, _push, _parent, _attrs) => {
4972
4981
  const _component_a_segmented = segmented_default;
4973
4982
  const _component_workshop_event_block = EventBlock_default;
4974
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "transcript" }, _attrs))} data-v-a25318ff><div class="filter-bar" data-v-a25318ff>`);
4983
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "transcript" }, _attrs))} data-v-53ad6b8b><div class="filter-bar" data-v-53ad6b8b>`);
4975
4984
  _push(ssrRenderComponent(_component_a_segmented, {
4976
4985
  value: unref(filter),
4977
4986
  "onUpdate:value": ($event) => isRef(filter) ? filter.value = $event : null,
4978
4987
  size: "small",
4979
4988
  options: filterOptions
4980
4989
  }, null, _parent));
4981
- _push(`<span class="count" data-v-a25318ff>${ssrInterpolate(unref(totalEvents))} ${ssrInterpolate(_ctx.$t("transcriptTimeline.k1atjpx1005"))} ${ssrInterpolate(unref(blocks).length)} ${ssrInterpolate(_ctx.$t("transcriptTimeline.k4a9o007"))}</span><span class="sync-chip"${ssrRenderAttr("data-state", unref(syncing) ? "syncing" : unref(conn).state)}${ssrRenderAttr("title", unref(syncing) ? "连接中断,重连后将自动对齐缺失事件" : _ctx.$t("transcriptTimeline.kglov3b025", { p0: unref(lastDataAgo) || "无" }))} data-v-a25318ff>`);
4982
- if (unref(syncing)) _push(`<span class="sync-pulse" data-v-a25318ff></span>`);
4983
- else if (unref(conn).state === "open") _push(`<span class="i-tabler-point-filled sync-dot" data-v-a25318ff></span>`);
4990
+ _push(`<span class="count" data-v-53ad6b8b>${ssrInterpolate(unref(totalEvents))} ${ssrInterpolate(_ctx.$t("transcriptTimeline.k1atjpx1005"))} ${ssrInterpolate(unref(blocks).length)} ${ssrInterpolate(_ctx.$t("transcriptTimeline.k4a9o007"))}</span><span class="sync-chip"${ssrRenderAttr("data-state", unref(syncing) ? "syncing" : unref(conn).state)}${ssrRenderAttr("title", unref(syncing) ? "连接中断,重连后将自动对齐缺失事件" : _ctx.$t("transcriptTimeline.kglov3b025", { p0: unref(lastDataAgo) || "无" }))} data-v-53ad6b8b>`);
4991
+ if (unref(syncing)) _push(`<span class="sync-pulse" data-v-53ad6b8b></span>`);
4992
+ else if (unref(conn).state === "open") _push(`<span class="i-tabler-point-filled sync-dot" data-v-53ad6b8b></span>`);
4984
4993
  else _push(`<!---->`);
4985
- _push(` ${ssrInterpolate(unref(syncing) ? _ctx.$t("transcriptTimeline.k3lmtk3008") : unref(conn).state === "open" ? unref(lastDataAgo) || _ctx.$t("transcriptTimeline.k3y2p8020") : _ctx.$t("transcriptTimeline.k44c2n024"))}</span></div><div class="scroller" data-v-a25318ff>`);
4986
- if (!unref(stickBottom) && !unref(scrollingDown)) _push(`<button class="jump-latest"${ssrRenderAttr("title", _ctx.$t("transcriptTimeline.kqu93z8001"))} data-v-a25318ff><span class="i-tabler-arrow-down" data-v-a25318ff></span> ${ssrInterpolate(_ctx.$t("transcriptTimeline.k40t11002"))}</button>`);
4994
+ _push(` ${ssrInterpolate(unref(syncing) ? _ctx.$t("transcriptTimeline.k3lmtk3008") : unref(conn).state === "open" ? unref(lastDataAgo) || _ctx.$t("transcriptTimeline.k3y2p8020") : _ctx.$t("transcriptTimeline.k44c2n024"))}</span></div><div class="scroller" data-v-53ad6b8b>`);
4995
+ if (!unref(stickBottom) && !unref(scrollingDown)) _push(`<button class="jump-latest"${ssrRenderAttr("title", _ctx.$t("transcriptTimeline.kqu93z8001"))} data-v-53ad6b8b><span class="i-tabler-arrow-down" data-v-53ad6b8b></span> ${ssrInterpolate(_ctx.$t("transcriptTimeline.k40t11002"))}</button>`);
4987
4996
  else _push(`<!---->`);
4988
- _push(`<div class="column" data-v-a25318ff>`);
4989
- if (unref(maybeMore)) _push(`<button class="earlier-btn"${ssrIncludeBooleanAttr(unref(loadingEarlier)) ? " disabled" : ""} data-v-a25318ff>${ssrInterpolate(unref(loadingEarlier) ? _ctx.$t("transcriptTimeline.k1br0ij9009") : _ctx.$t("transcriptTimeline.kywgd38021"))}</button>`);
4997
+ _push(`<div class="column" data-v-53ad6b8b>`);
4998
+ if (unref(maybeMore)) _push(`<button class="earlier-btn"${ssrIncludeBooleanAttr(unref(loadingEarlier)) ? " disabled" : ""} data-v-53ad6b8b>${ssrInterpolate(unref(loadingEarlier) ? _ctx.$t("transcriptTimeline.k1br0ij9009") : _ctx.$t("transcriptTimeline.kywgd38021"))}</button>`);
4990
4999
  else _push(`<!---->`);
4991
- if (unref(earlierExhausted) && unref(loadedCount) > 0) _push(`<div class="earlier-done" data-v-a25318ff>${ssrInterpolate(_ctx.$t("transcriptTimeline.k1kbaden003"))}</div>`);
5000
+ if (unref(earlierExhausted) && unref(loadedCount) > 0) _push(`<div class="earlier-done" data-v-53ad6b8b>${ssrInterpolate(_ctx.$t("transcriptTimeline.k1kbaden003"))}</div>`);
4992
5001
  else _push(`<!---->`);
4993
5002
  if (unref(connecting)) {
4994
- _push(`<div class="skel-stack" data-v-a25318ff><!--[-->`);
5003
+ _push(`<div class="skel-stack" data-v-53ad6b8b><!--[-->`);
4995
5004
  ssrRenderList(3, (n) => {
4996
- _push(`<div class="skel-row" style="${ssrRenderStyle({ "--d": `${(n - 1) * .12}s` })}" data-v-a25318ff><span class="aw-skel skel-ava" data-v-a25318ff></span><div class="skel-lines" data-v-a25318ff><span class="aw-skel skel-line name" data-v-a25318ff></span><span class="aw-skel skel-line w70" data-v-a25318ff></span><span class="aw-skel skel-line w45" data-v-a25318ff></span></div></div>`);
5005
+ _push(`<div class="skel-row" style="${ssrRenderStyle({ "--d": `${(n - 1) * .12}s` })}" data-v-53ad6b8b><span class="aw-skel skel-ava" data-v-53ad6b8b></span><div class="skel-lines" data-v-53ad6b8b><span class="aw-skel skel-line name" data-v-53ad6b8b></span><span class="aw-skel skel-line w70" data-v-53ad6b8b></span><span class="aw-skel skel-line w45" data-v-53ad6b8b></span></div></div>`);
4997
5006
  });
4998
5007
  _push(`<!--]--></div>`);
4999
5008
  } else if (unref(blocks).length === 0 && unref(totalEvents) === 0) {
5000
- _push(`<div class="empty" data-v-a25318ff>`);
5001
- if (unref(syncing) || unref(conn).state !== "open") _push(`<span class="i-tabler-refresh empty-icon" data-v-a25318ff></span>`);
5002
- else _push(`<span class="i-tabler-message-dots empty-icon" data-v-a25318ff></span>`);
5003
- _push(`<p class="empty-title" data-v-a25318ff>${ssrInterpolate(unref(syncing) || unref(conn).state !== "open" ? _ctx.$t("transcriptTimeline.klnne6o010") : _ctx.$t("transcriptTimeline.k126izdm022"))}</p><p class="empty-hint" data-v-a25318ff>${ssrInterpolate(unref(syncing) || unref(conn).state !== "open" ? _ctx.$t("transcriptTimeline.k1iuqpxj011") : _ctx.$t("transcriptTimeline.kuyjpmi023"))}</p></div>`);
5004
- } else if (unref(blocks).length === 0) _push(`<div class="empty filtered" data-v-a25318ff><span class="i-tabler-filter-off empty-icon" data-v-a25318ff></span><p class="empty-title" data-v-a25318ff>${ssrInterpolate(_ctx.$t("transcriptTimeline.ktuo1zg004"))}</p><p class="empty-hint" data-v-a25318ff> 「${ssrInterpolate(filterOptions.find((o) => o.value === unref(filter))?.label ?? unref(filter))}」${ssrInterpolate(_ctx.$t("transcriptTimeline.kapxgq4006"))}</p></div>`);
5009
+ _push(`<div class="empty" data-v-53ad6b8b>`);
5010
+ if (unref(syncing) || unref(conn).state !== "open") _push(`<span class="i-tabler-refresh empty-icon" data-v-53ad6b8b></span>`);
5011
+ else _push(`<span class="i-tabler-message-dots empty-icon" data-v-53ad6b8b></span>`);
5012
+ _push(`<p class="empty-title" data-v-53ad6b8b>${ssrInterpolate(unref(syncing) || unref(conn).state !== "open" ? _ctx.$t("transcriptTimeline.klnne6o010") : _ctx.$t("transcriptTimeline.k126izdm022"))}</p><p class="empty-hint" data-v-53ad6b8b>${ssrInterpolate(unref(syncing) || unref(conn).state !== "open" ? _ctx.$t("transcriptTimeline.k1iuqpxj011") : _ctx.$t("transcriptTimeline.kuyjpmi023"))}</p></div>`);
5013
+ } else if (unref(blocks).length === 0) _push(`<div class="empty filtered" data-v-53ad6b8b><span class="i-tabler-filter-off empty-icon" data-v-53ad6b8b></span><p class="empty-title" data-v-53ad6b8b>${ssrInterpolate(_ctx.$t("transcriptTimeline.ktuo1zg004"))}</p><p class="empty-hint" data-v-53ad6b8b> 「${ssrInterpolate(filterOptions.find((o) => o.value === unref(filter))?.label ?? unref(filter))}」${ssrInterpolate(_ctx.$t("transcriptTimeline.kapxgq4006"))}</p></div>`);
5005
5014
  else _push(`<!---->`);
5006
5015
  _push(`<!--[-->`);
5007
5016
  ssrRenderList(unref(blocks), (b, i) => {
5008
5017
  _push(`<!--[-->`);
5009
- if (unref(blockDayFlags)[i]?.divider) _push(`<div class="date-divider" data-v-a25318ff><span class="date-divider-label" data-v-a25318ff>${ssrInterpolate(unref(blockDayFlags)[i].divider)}</span></div>`);
5018
+ if (unref(blockDayFlags)[i]?.divider) _push(`<div class="date-divider" data-v-53ad6b8b><span class="date-divider-label" data-v-53ad6b8b>${ssrInterpolate(unref(blockDayFlags)[i].divider)}</span></div>`);
5010
5019
  else _push(`<!---->`);
5011
5020
  _push(ssrRenderComponent(_component_workshop_event_block, {
5012
5021
  block: b,
@@ -5028,7 +5037,7 @@ TranscriptTimeline_vue_vue_type_script_setup_true_lang_default.setup = (props, c
5028
5037
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/TranscriptTimeline.vue");
5029
5038
  return _sfc_setup$13 ? _sfc_setup$13(props, ctx) : void 0;
5030
5039
  };
5031
- var TranscriptTimeline_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(TranscriptTimeline_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-a25318ff"]]), { __name: "WorkshopTranscriptTimeline" });
5040
+ var TranscriptTimeline_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(TranscriptTimeline_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-53ad6b8b"]]), { __name: "WorkshopTranscriptTimeline" });
5032
5041
  //#endregion
5033
5042
  //#region app/components/workshop/lanes/LaneBlocks.vue?vue&type=script&setup=true&lang.ts
5034
5043
  var LaneBlocks_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -5057,6 +5066,7 @@ var LaneBlocks_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
5057
5066
  const props = __props;
5058
5067
  useEventsStore();
5059
5068
  const { blocks } = useClusteredBlocks(() => props.channelId, {
5069
+ agentId: () => props.agentId,
5060
5070
  predicate: (e) => e.agentId === props.agentId,
5061
5071
  resetKey: () => props.agentId,
5062
5072
  raw: true
@@ -5068,11 +5078,11 @@ var LaneBlocks_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
5068
5078
  const maybeMore = computed(() => !earlierExhausted.value && laneHasItems.value);
5069
5079
  return (_ctx, _push, _parent, _attrs) => {
5070
5080
  const _component_workshop_event_block = EventBlock_default;
5071
- if (unref(blocks).length === 0 && unref(historyLoading)) _push(`<div${ssrRenderAttrs(mergeProps({ class: "lane-empty" }, _attrs))} data-v-b04638b2><span class="i-tabler-refresh lane-empty-icon" data-v-b04638b2></span> ${ssrInterpolate(_ctx.$t("laneBlocks.k1otw1r3001"))}</div>`);
5072
- else if (unref(blocks).length === 0) _push(`<div${ssrRenderAttrs(mergeProps({ class: "lane-empty" }, _attrs))} data-v-b04638b2>${ssrInterpolate(_ctx.$t("laneBlocks.k1el0s5k002"))}</div>`);
5081
+ if (unref(blocks).length === 0 && unref(historyLoading)) _push(`<div${ssrRenderAttrs(mergeProps({ class: "lane-empty" }, _attrs))} data-v-e020dd8e><span class="i-tabler-refresh lane-empty-icon" data-v-e020dd8e></span> ${ssrInterpolate(_ctx.$t("laneBlocks.k1otw1r3001"))}</div>`);
5082
+ else if (unref(blocks).length === 0) _push(`<div${ssrRenderAttrs(mergeProps({ class: "lane-empty" }, _attrs))} data-v-e020dd8e>${ssrInterpolate(_ctx.$t("laneBlocks.k1el0s5k002"))}</div>`);
5073
5083
  else {
5074
5084
  _push(`<!--[-->`);
5075
- if (unref(maybeMore)) _push(`<button type="button" class="lane-earlier"${ssrIncludeBooleanAttr(unref(loadingEarlier)) ? " disabled" : ""} data-v-b04638b2>${ssrInterpolate(unref(loadingEarlier) ? _ctx.$t("laneBlocks.k1br0ij9003") : _ctx.$t("laneBlocks.k1br5dtr004"))}</button>`);
5085
+ if (unref(maybeMore)) _push(`<button type="button" class="lane-earlier"${ssrIncludeBooleanAttr(unref(loadingEarlier)) ? " disabled" : ""} data-v-e020dd8e>${ssrInterpolate(unref(loadingEarlier) ? _ctx.$t("laneBlocks.k1br0ij9003") : _ctx.$t("laneBlocks.k1br5dtr004"))}</button>`);
5076
5086
  else _push(`<!---->`);
5077
5087
  _push(`<!--[-->`);
5078
5088
  ssrRenderList(unref(blocks), (b) => {
@@ -5094,7 +5104,7 @@ LaneBlocks_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
5094
5104
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/lanes/LaneBlocks.vue");
5095
5105
  return _sfc_setup$12 ? _sfc_setup$12(props, ctx) : void 0;
5096
5106
  };
5097
- var LaneBlocks_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(LaneBlocks_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-b04638b2"]]), { __name: "WorkshopLanesLaneBlocks" });
5107
+ var LaneBlocks_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(LaneBlocks_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-e020dd8e"]]), { __name: "WorkshopLanesLaneBlocks" });
5098
5108
  //#endregion
5099
5109
  //#region app/components/workshop/AgentLanesView.vue?vue&type=script&setup=true&lang.ts
5100
5110
  var LANE_W_DEFAULT = 320;
@@ -5368,7 +5378,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5368
5378
  const _component_a_select = Select;
5369
5379
  const _component_a_space = Space;
5370
5380
  const _component_a_tag = Tag;
5371
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "lanes-wrap" }, _attrs))} data-v-3d57301f><div class="toolbar" data-v-3d57301f><div class="team-summary" data-v-3d57301f><span class="ts-label" data-v-3d57301f>${ssrInterpolate(_ctx.$t("agentLanesView.k3y5ja016"))}</span><span class="ts-count" data-v-3d57301f>${ssrInterpolate(unref(agents).length)}</span><span class="ts-unit" data-v-3d57301f>${ssrInterpolate(_ctx.$t("agentLanesView.k3ll6sa017"))}</span><span class="ts-detail" data-v-3d57301f>lead ${ssrInterpolate(unref(agents).filter((a) => a.role === "lead").length)} · worker ${ssrInterpolate(unref(agents).filter((a) => a.role === "worker").length)}</span></div>`);
5381
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "lanes-wrap" }, _attrs))} data-v-bd4c4a97><div class="toolbar" data-v-bd4c4a97><div class="team-summary" data-v-bd4c4a97><span class="ts-label" data-v-bd4c4a97>${ssrInterpolate(_ctx.$t("agentLanesView.k3y5ja016"))}</span><span class="ts-count" data-v-bd4c4a97>${ssrInterpolate(unref(agents).length)}</span><span class="ts-unit" data-v-bd4c4a97>${ssrInterpolate(_ctx.$t("agentLanesView.k3ll6sa017"))}</span><span class="ts-detail" data-v-bd4c4a97>lead ${ssrInterpolate(unref(agents).filter((a) => a.role === "lead").length)} · worker ${ssrInterpolate(unref(agents).filter((a) => a.role === "worker").length)}</span></div>`);
5372
5382
  _push(ssrRenderComponent(_component_a_button, {
5373
5383
  size: "small",
5374
5384
  type: "primary",
@@ -5376,34 +5386,34 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5376
5386
  onClick: openMemberModal
5377
5387
  }, {
5378
5388
  default: withCtx((_, _push, _parent, _scopeId) => {
5379
- if (_push) _push(`<span class="i-tabler-user-plus" data-v-3d57301f${_scopeId}></span><span data-v-3d57301f${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1fmutgo018"))}</span>`);
5389
+ if (_push) _push(`<span class="i-tabler-user-plus" data-v-bd4c4a97${_scopeId}></span><span data-v-bd4c4a97${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1fmutgo018"))}</span>`);
5380
5390
  else return [createVNode("span", { class: "i-tabler-user-plus" }), createVNode("span", null, toDisplayString(_ctx.$t("agentLanesView.k1fmutgo018")), 1)];
5381
5391
  }),
5382
5392
  _: 1
5383
5393
  }, _parent));
5384
- _push(`</div><div class="lanes" data-v-3d57301f>`);
5394
+ _push(`</div><div class="lanes" data-v-bd4c4a97>`);
5385
5395
  if (unref(agents).length === 0) {
5386
- _push(`<div class="empty" data-v-3d57301f>`);
5387
- if (!unref(entities).channels[__props.channelId]) _push(`<!--[--><span class="i-tabler-refresh empty-icon" data-v-3d57301f></span><p class="empty-title" data-v-3d57301f>${ssrInterpolate(_ctx.$t("agentLanesView.k1woev5v019"))}</p><!--]-->`);
5388
- else _push(`<!--[--><span class="i-tabler-users-group empty-icon" data-v-3d57301f></span><p class="empty-title" data-v-3d57301f>${ssrInterpolate(_ctx.$t("agentLanesView.k122h4pc020"))}</p><p class="empty-hint" data-v-3d57301f>${ssrInterpolate(_ctx.$t("agentLanesView.k7cr2h8021"))}</p><!--]-->`);
5396
+ _push(`<div class="empty" data-v-bd4c4a97>`);
5397
+ if (!unref(entities).channels[__props.channelId]) _push(`<!--[--><span class="i-tabler-refresh empty-icon" data-v-bd4c4a97></span><p class="empty-title" data-v-bd4c4a97>${ssrInterpolate(_ctx.$t("agentLanesView.k1woev5v019"))}</p><!--]-->`);
5398
+ else _push(`<!--[--><span class="i-tabler-users-group empty-icon" data-v-bd4c4a97></span><p class="empty-title" data-v-bd4c4a97>${ssrInterpolate(_ctx.$t("agentLanesView.k122h4pc020"))}</p><p class="empty-hint" data-v-bd4c4a97>${ssrInterpolate(_ctx.$t("agentLanesView.k7cr2h8021"))}</p><!--]-->`);
5389
5399
  _push(`</div>`);
5390
5400
  } else _push(`<!---->`);
5391
5401
  _push(`<!--[-->`);
5392
5402
  ssrRenderList(unref(agents), (a) => {
5393
- _push(`<!--[--><div class="lane" style="${ssrRenderStyle({ flexBasis: `${laneWidth(a.agentId)}px` })}" data-v-3d57301f><div class="lane-head" data-v-3d57301f><div class="head-top" data-v-3d57301f><span class="lane-ava" data-v-3d57301f><span style="${ssrRenderStyle({ "--av": laneHue(a.agentId) })}" data-v-3d57301f>${ssrInterpolate(laneInitial(a.name))}</span><span class="${ssrRenderClass([a.state, "lane-state"])}" data-v-3d57301f></span></span><span class="lane-name"${ssrRenderAttr("title", a.name)} data-v-3d57301f>${ssrInterpolate(a.name)}</span>`);
5394
- if (a.config?.systemPromptPrefix) _push(`<span class="lane-chip"${ssrRenderAttr("title", _ctx.$t("agentLanesView.k107s4am001"))} data-v-3d57301f>${ssrInterpolate(_ctx.$t("agentLanesView.k3xycu022"))}</span>`);
5403
+ _push(`<!--[--><div class="lane" style="${ssrRenderStyle({ flexBasis: `${laneWidth(a.agentId)}px` })}" data-v-bd4c4a97><div class="lane-head" data-v-bd4c4a97><div class="head-top" data-v-bd4c4a97><span class="lane-ava" data-v-bd4c4a97><span style="${ssrRenderStyle({ "--av": laneHue(a.agentId) })}" data-v-bd4c4a97>${ssrInterpolate(laneInitial(a.name))}</span><span class="${ssrRenderClass([a.state, "lane-state"])}" data-v-bd4c4a97></span></span><span class="lane-name"${ssrRenderAttr("title", a.name)} data-v-bd4c4a97>${ssrInterpolate(a.name)}</span>`);
5404
+ if (a.config?.systemPromptPrefix) _push(`<span class="lane-chip"${ssrRenderAttr("title", _ctx.$t("agentLanesView.k107s4am001"))} data-v-bd4c4a97>${ssrInterpolate(_ctx.$t("agentLanesView.k3xycu022"))}</span>`);
5395
5405
  else _push(`<!---->`);
5396
- _push(`<span class="${ssrRenderClass([a.role, "lane-role"])}" data-v-3d57301f>${ssrInterpolate(a.role)}</span>`);
5397
- if (termBadge(unref(terminalOf).get(a.agentId))) _push(`<span class="term-badge"${ssrRenderAttr("title", _ctx.$t("agentLanesView.k1wn2vmt036", { p0: unref(terminalOf).get(a.agentId)?.pid }))} data-v-3d57301f><span class="term-dot" style="${ssrRenderStyle({ background: TERM_DOT[termBadge(unref(terminalOf).get(a.agentId)).color] ?? "var(--tone-neutral-dot)" })}" data-v-3d57301f></span> ${ssrInterpolate(termBadge(unref(terminalOf).get(a.agentId)).text)}</span>`);
5406
+ _push(`<span class="${ssrRenderClass([a.role, "lane-role"])}" data-v-bd4c4a97>${ssrInterpolate(a.role)}</span>`);
5407
+ if (termBadge(unref(terminalOf).get(a.agentId))) _push(`<span class="term-badge"${ssrRenderAttr("title", _ctx.$t("agentLanesView.k1wn2vmt036", { p0: unref(terminalOf).get(a.agentId)?.pid }))} data-v-bd4c4a97><span class="term-dot" style="${ssrRenderStyle({ background: TERM_DOT[termBadge(unref(terminalOf).get(a.agentId)).color] ?? "var(--tone-neutral-dot)" })}" data-v-bd4c4a97></span> ${ssrInterpolate(termBadge(unref(terminalOf).get(a.agentId)).text)}</span>`);
5398
5408
  else _push(`<!---->`);
5399
- _push(`</div><div class="head-sub" data-v-3d57301f><span class="lane-meta" data-v-3d57301f>`);
5409
+ _push(`</div><div class="head-sub" data-v-bd4c4a97><span class="lane-meta" data-v-bd4c4a97>`);
5400
5410
  if (a.state === "busy" && a.currentTaskTitle) {
5401
5411
  _push(`<!--[-->${ssrInterpolate(a.currentTaskTitle)} `);
5402
- if (a.currentTaskProgress != null) _push(`<span class="lane-progress" data-v-3d57301f>${ssrInterpolate(a.currentTaskProgress)}%</span>`);
5412
+ if (a.currentTaskProgress != null) _push(`<span class="lane-progress" data-v-bd4c4a97>${ssrInterpolate(a.currentTaskProgress)}%</span>`);
5403
5413
  else _push(`<!---->`);
5404
5414
  _push(`<!--]-->`);
5405
5415
  } else _push(`<!--[-->${ssrInterpolate(a.state)} · Q${ssrInterpolate(a.queued ?? 0)}<!--]-->`);
5406
- _push(`</span><div class="lane-actions" data-v-3d57301f>`);
5416
+ _push(`</span><div class="lane-actions" data-v-bd4c4a97>`);
5407
5417
  if (a.harness === "omp") _push(ssrRenderComponent(_component_a_button, {
5408
5418
  size: "small",
5409
5419
  type: "primary",
@@ -5413,7 +5423,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5413
5423
  onClick: ($event) => openTerminal(a)
5414
5424
  }, {
5415
5425
  default: withCtx((_, _push, _parent, _scopeId) => {
5416
- if (_push) _push(`<span class="i-tabler-terminal-2" data-v-3d57301f${_scopeId}></span><span class="term-label" data-v-3d57301f${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k4588s023"))}</span>`);
5426
+ if (_push) _push(`<span class="i-tabler-terminal-2" data-v-bd4c4a97${_scopeId}></span><span class="term-label" data-v-bd4c4a97${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k4588s023"))}</span>`);
5417
5427
  else return [createVNode("span", { class: "i-tabler-terminal-2" }), createVNode("span", { class: "term-label" }, toDisplayString(_ctx.$t("agentLanesView.k4588s023")), 1)];
5418
5428
  }),
5419
5429
  _: 2
@@ -5427,12 +5437,12 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5427
5437
  onClick: ($event) => openEditMember(a)
5428
5438
  }, {
5429
5439
  default: withCtx((_, _push, _parent, _scopeId) => {
5430
- if (_push) _push(`<span class="i-tabler-edit" data-v-3d57301f${_scopeId}></span>`);
5440
+ if (_push) _push(`<span class="i-tabler-edit" data-v-bd4c4a97${_scopeId}></span>`);
5431
5441
  else return [createVNode("span", { class: "i-tabler-edit" })];
5432
5442
  }),
5433
5443
  _: 2
5434
5444
  }, _parent));
5435
- _push(`<span class="actions-divider" data-v-3d57301f></span>`);
5445
+ _push(`<span class="actions-divider" data-v-bd4c4a97></span>`);
5436
5446
  _push(ssrRenderComponent(_component_a_popconfirm, {
5437
5447
  title: _ctx.$t("agentLanesView.k1l029kf037", { p0: a.name }),
5438
5448
  "ok-text": "停止",
@@ -5448,7 +5458,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5448
5458
  title: "HITL 停止该 Agent 运行时"
5449
5459
  }, {
5450
5460
  default: withCtx((_, _push, _parent, _scopeId) => {
5451
- if (_push) _push(`<span class="i-tabler-player-stop" data-v-3d57301f${_scopeId}></span>`);
5461
+ if (_push) _push(`<span class="i-tabler-player-stop" data-v-bd4c4a97${_scopeId}></span>`);
5452
5462
  else return [createVNode("span", { class: "i-tabler-player-stop" })];
5453
5463
  }),
5454
5464
  _: 2
@@ -5481,7 +5491,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5481
5491
  loading: unref(removing) === a.agentId
5482
5492
  }, {
5483
5493
  default: withCtx((_, _push, _parent, _scopeId) => {
5484
- if (_push) _push(`<span class="i-tabler-x" data-v-3d57301f${_scopeId}></span>`);
5494
+ if (_push) _push(`<span class="i-tabler-x" data-v-bd4c4a97${_scopeId}></span>`);
5485
5495
  else return [createVNode("span", { class: "i-tabler-x" })];
5486
5496
  }),
5487
5497
  _: 2
@@ -5499,7 +5509,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5499
5509
  }),
5500
5510
  _: 2
5501
5511
  }, _parent));
5502
- _push(`</div></div></div><div class="lane-body" data-v-3d57301f>`);
5512
+ _push(`</div></div></div><div class="lane-body" data-v-bd4c4a97>`);
5503
5513
  _push(ssrRenderComponent(LaneBlocks_default, {
5504
5514
  "channel-id": __props.channelId,
5505
5515
  "agent-id": a.agentId
@@ -5899,7 +5909,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5899
5909
  }),
5900
5910
  _: 1
5901
5911
  }, _parent, _scopeId));
5902
- _push(`<div class="mode-hint" data-v-3d57301f${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.knybb6r029"))}</div>`);
5912
+ _push(`<div class="mode-hint" data-v-bd4c4a97${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.knybb6r029"))}</div>`);
5903
5913
  } else return [
5904
5914
  createVNode(_component_a_form_item, { label: "选择 Agent 模板(克隆 name/harness/config 为独立实例)" }, {
5905
5915
  default: withCtx(() => [createVNode(_component_a_select, {
@@ -5994,7 +6004,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5994
6004
  }),
5995
6005
  _: 1
5996
6006
  }, _parent, _scopeId));
5997
- _push(`<div class="mode-hint" data-v-3d57301f${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1qqnq5030"))}</div>`);
6007
+ _push(`<div class="mode-hint" data-v-bd4c4a97${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1qqnq5030"))}</div>`);
5998
6008
  } else return [createVNode(_component_a_form_item, { label: _ctx.$t("agentLanesView.k29om9b013") }, {
5999
6009
  default: withCtx(() => [createVNode(_component_a_select, {
6000
6010
  value: unref(selectedTeamId),
@@ -6267,7 +6277,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
6267
6277
  }, _parent, _scopeId));
6268
6278
  _push(ssrRenderComponent(_component_a_form_item, { label: "场景系统提示词(systemPromptPrefix)" }, {
6269
6279
  extra: withCtx((_, _push, _parent, _scopeId) => {
6270
- if (_push) _push(`<span class="ws-hint" data-v-3d57301f${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1rw1rd2031"))}</span>`);
6280
+ if (_push) _push(`<span class="ws-hint" data-v-bd4c4a97${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1rw1rd2031"))}</span>`);
6271
6281
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("agentLanesView.k1rw1rd2031")), 1)];
6272
6282
  }),
6273
6283
  default: withCtx((_, _push, _parent, _scopeId) => {
@@ -6394,7 +6404,7 @@ AgentLanesView_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx)
6394
6404
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/AgentLanesView.vue");
6395
6405
  return _sfc_setup$11 ? _sfc_setup$11(props, ctx) : void 0;
6396
6406
  };
6397
- var AgentLanesView_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(AgentLanesView_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-3d57301f"]]), { __name: "WorkshopAgentLanesView" });
6407
+ var AgentLanesView_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(AgentLanesView_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-bd4c4a97"]]), { __name: "WorkshopAgentLanesView" });
6398
6408
  //#endregion
6399
6409
  //#region app/components/workshop/TaskBoardView.vue?vue&type=script&setup=true&lang.ts
6400
6410
  var TaskBoardView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -6525,20 +6535,20 @@ var TaskBoardView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
6525
6535
  });
6526
6536
  return (_ctx, _push, _parent, _attrs) => {
6527
6537
  const _component_a_progress = progress_default;
6528
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "board-shell" }, _attrs))} data-v-22725176><div class="toolbar" data-v-22725176><div class="aw-seg" data-v-22725176><button type="button" class="${ssrRenderClass({ on: unref(layout) === "board" })}" data-v-22725176>${ssrInterpolate(_ctx.$t("taskBoardView.k43pyn001"))}</button><button type="button" class="${ssrRenderClass({ on: unref(layout) === "list" })}" data-v-22725176>${ssrInterpolate(_ctx.$t("taskBoardView.k3x7l0002"))}</button></div><span class="count" data-v-22725176>${ssrInterpolate(unref(mergedTasks).length)} ${ssrInterpolate(_ctx.$t("taskBoardView.k168w1ze004"))}</span></div>`);
6529
- if (unref(mergedTasks).length === 0) _push(`<div class="pane-empty" data-v-22725176><span class="${ssrRenderClass(unref(synced) ? "pe-icon i-tabler-list-check" : "pe-icon i-tabler-refresh")}" data-v-22725176></span><div class="pe-title" data-v-22725176>${ssrInterpolate(unref(synced) ? _ctx.$t("taskBoardView.k3vkhhj006") : _ctx.$t("taskBoardView.k1f9c17l019"))} <span class="aw-serif-accent-italic" data-v-22725176>${ssrInterpolate(_ctx.$t("taskBoardView.k3wcox003"))}</span></div><div class="pe-sub" data-v-22725176>${ssrInterpolate(unref(synced) ? "在下方 Composer 提交首个任务(首行标题,支持 goal / loop / pipeline 模式)" : "任务快照对齐后自动呈现")}</div></div>`);
6538
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "board-shell" }, _attrs))} data-v-f6edc999><div class="toolbar" data-v-f6edc999><div class="aw-seg" data-v-f6edc999><button type="button" class="${ssrRenderClass({ on: unref(layout) === "board" })}" data-v-f6edc999>${ssrInterpolate(_ctx.$t("taskBoardView.k43pyn001"))}</button><button type="button" class="${ssrRenderClass({ on: unref(layout) === "list" })}" data-v-f6edc999>${ssrInterpolate(_ctx.$t("taskBoardView.k3x7l0002"))}</button></div><span class="count" data-v-f6edc999>${ssrInterpolate(unref(mergedTasks).length)} ${ssrInterpolate(_ctx.$t("taskBoardView.k168w1ze004"))}</span></div>`);
6539
+ if (unref(mergedTasks).length === 0) _push(`<div class="pane-empty" data-v-f6edc999><span class="${ssrRenderClass(unref(synced) ? "pe-icon i-tabler-list-check" : "pe-icon i-tabler-refresh")}" data-v-f6edc999></span><div class="pe-title" data-v-f6edc999>${ssrInterpolate(unref(synced) ? _ctx.$t("taskBoardView.k3vkhhj006") : _ctx.$t("taskBoardView.k1f9c17l019"))} <span class="aw-serif-accent-italic" data-v-f6edc999>${ssrInterpolate(_ctx.$t("taskBoardView.k3wcox003"))}</span></div><div class="pe-sub" data-v-f6edc999>${ssrInterpolate(unref(synced) ? "在下方 Composer 提交首个任务(首行标题,支持 goal / loop / pipeline 模式)" : "任务快照对齐后自动呈现")}</div></div>`);
6530
6540
  else if (unref(layout) === "board") {
6531
- _push(`<div class="board" data-v-22725176><!--[-->`);
6541
+ _push(`<div class="board" data-v-f6edc999><!--[-->`);
6532
6542
  ssrRenderList(unref(columns), (col) => {
6533
- _push(`<div class="${ssrRenderClass([colClasses(col), "task-col"])}" data-v-22725176><div class="sec" data-v-22725176><span class="st-dot" style="${ssrRenderStyle({ background: col.dot })}" data-v-22725176></span><span class="sec-title" data-v-22725176>${ssrInterpolate(col.title)}</span><span class="sec-cnt" data-v-22725176>${ssrInterpolate(col.items.length)}</span></div><div class="task-col-body" data-v-22725176><!--[-->`);
6543
+ _push(`<div class="${ssrRenderClass([colClasses(col), "task-col"])}" data-v-f6edc999><div class="sec" data-v-f6edc999><span class="st-dot" style="${ssrRenderStyle({ background: col.dot })}" data-v-f6edc999></span><span class="sec-title" data-v-f6edc999>${ssrInterpolate(col.title)}</span><span class="sec-cnt" data-v-f6edc999>${ssrInterpolate(col.items.length)}</span></div><div class="task-col-body" data-v-f6edc999><!--[-->`);
6534
6544
  ssrRenderList(col.items, (t) => {
6535
- _push(`<div class="${ssrRenderClass([{ dragging: unref(dragId) === t.id }, "card task"])}" draggable="true" data-v-22725176><div class="tk-chan" data-v-22725176><span data-v-22725176>#${ssrInterpolate(agentName(t.assigneeId))}</span>`);
6536
- if (childCount(t.id)) _push(`<span class="tk-num" data-v-22725176>${ssrInterpolate(_ctx.$t("taskBoardView.k4b1x005"))} ${ssrInterpolate(childCount(t.id))}</span>`);
6545
+ _push(`<div class="${ssrRenderClass([{ dragging: unref(dragId) === t.id }, "card task"])}" draggable="true" data-v-f6edc999><div class="tk-chan" data-v-f6edc999><span data-v-f6edc999>#${ssrInterpolate(agentName(t.assigneeId))}</span>`);
6546
+ if (childCount(t.id)) _push(`<span class="tk-num" data-v-f6edc999>${ssrInterpolate(_ctx.$t("taskBoardView.k4b1x005"))} ${ssrInterpolate(childCount(t.id))}</span>`);
6537
6547
  else _push(`<!---->`);
6538
- if (t.artifacts) _push(`<span class="tk-num" data-v-22725176><span class="i-tabler-package" data-v-22725176></span> ${ssrInterpolate(t.artifacts)}</span>`);
6548
+ if (t.artifacts) _push(`<span class="tk-num" data-v-f6edc999><span class="i-tabler-package" data-v-f6edc999></span> ${ssrInterpolate(t.artifacts)}</span>`);
6539
6549
  else _push(`<!---->`);
6540
- _push(`</div><div class="tk-title" data-v-22725176>${ssrInterpolate(t.title)}</div>`);
6541
- if (t.routeReason) _push(`<div class="tk-route"${ssrRenderAttr("title", _ctx.$t("taskBoardView.k8m7hm6020", { p0: t.routeReason }))} data-v-22725176> ↳ ${ssrInterpolate(t.routeReason)}</div>`);
6550
+ _push(`</div><div class="tk-title" data-v-f6edc999>${ssrInterpolate(t.title)}</div>`);
6551
+ if (t.routeReason) _push(`<div class="tk-route"${ssrRenderAttr("title", _ctx.$t("taskBoardView.k8m7hm6020", { p0: t.routeReason }))} data-v-f6edc999> ↳ ${ssrInterpolate(t.routeReason)}</div>`);
6542
6552
  else _push(`<!---->`);
6543
6553
  if (t.state === "WORKING" && t.progress > 0) _push(ssrRenderComponent(_component_a_progress, {
6544
6554
  percent: t.progress,
@@ -6546,41 +6556,41 @@ var TaskBoardView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
6546
6556
  "show-info": false
6547
6557
  }, null, _parent));
6548
6558
  else _push(`<!---->`);
6549
- _push(`<div class="tk-foot" data-v-22725176><button type="button" class="st-pill-btn" data-v-22725176><span class="st-pill" style="${ssrRenderStyle({
6559
+ _push(`<div class="tk-foot" data-v-f6edc999><button type="button" class="st-pill-btn" data-v-f6edc999><span class="st-pill" style="${ssrRenderStyle({
6550
6560
  color: col.dot,
6551
6561
  borderColor: col.dot
6552
- })}" data-v-22725176>${ssrInterpolate(col.title)}</span></button></div></div>`);
6562
+ })}" data-v-f6edc999>${ssrInterpolate(col.title)}</span></button></div></div>`);
6553
6563
  });
6554
6564
  _push(`<!--]-->`);
6555
- if (col.items.length === 0) _push(`<div class="col-empty" data-v-22725176>${ssrInterpolate(col.moveAction ? _ctx.$t("taskBoardView.k13pad50007") : "-")}</div>`);
6565
+ if (col.items.length === 0) _push(`<div class="col-empty" data-v-f6edc999>${ssrInterpolate(col.moveAction ? _ctx.$t("taskBoardView.k13pad50007") : "-")}</div>`);
6556
6566
  else _push(`<!---->`);
6557
6567
  _push(`</div></div>`);
6558
6568
  });
6559
6569
  _push(`<!--]--></div>`);
6560
6570
  } else {
6561
- _push(`<div class="task-list" data-v-22725176><!--[-->`);
6571
+ _push(`<div class="task-list" data-v-f6edc999><!--[-->`);
6562
6572
  ssrRenderList(unref(columns), (col) => {
6563
6573
  _push(`<!--[-->`);
6564
- if (col.items.length) _push(`<div class="list-sec sec" data-v-22725176><span class="st-dot" style="${ssrRenderStyle({ background: col.dot })}" data-v-22725176></span><span class="sec-title" data-v-22725176>${ssrInterpolate(col.title)}</span><span class="sec-cnt" data-v-22725176>${ssrInterpolate(col.items.length)}</span></div>`);
6574
+ if (col.items.length) _push(`<div class="list-sec sec" data-v-f6edc999><span class="st-dot" style="${ssrRenderStyle({ background: col.dot })}" data-v-f6edc999></span><span class="sec-title" data-v-f6edc999>${ssrInterpolate(col.title)}</span><span class="sec-cnt" data-v-f6edc999>${ssrInterpolate(col.items.length)}</span></div>`);
6565
6575
  else _push(`<!---->`);
6566
6576
  _push(`<!--[-->`);
6567
6577
  ssrRenderList(col.items, (t) => {
6568
- _push(`<div class="list-row" data-v-22725176><span class="grow" data-v-22725176>${ssrInterpolate(t.title)}</span><span class="lnum" data-v-22725176>#${ssrInterpolate(agentName(t.assigneeId))}</span><span class="meta" data-v-22725176>${ssrInterpolate(t.id.slice(0, 8))}</span><span class="st-pill" style="${ssrRenderStyle({
6578
+ _push(`<div class="list-row" data-v-f6edc999><span class="grow" data-v-f6edc999>${ssrInterpolate(t.title)}</span><span class="lnum" data-v-f6edc999>#${ssrInterpolate(agentName(t.assigneeId))}</span><span class="meta" data-v-f6edc999>${ssrInterpolate(t.id.slice(0, 8))}</span><span class="st-pill" style="${ssrRenderStyle({
6569
6579
  color: col.dot,
6570
6580
  borderColor: col.dot
6571
- })}" data-v-22725176>${ssrInterpolate(stateOf(t))}</span></div>`);
6581
+ })}" data-v-f6edc999>${ssrInterpolate(stateOf(t))}</span></div>`);
6572
6582
  });
6573
6583
  _push(`<!--]--><!--]-->`);
6574
6584
  });
6575
6585
  _push(`<!--]--></div>`);
6576
6586
  }
6577
6587
  if (unref(menu)) {
6578
- _push(`<!--[--><div class="menu-backdrop" data-v-22725176></div><div class="st-menu" style="${ssrRenderStyle({
6588
+ _push(`<!--[--><div class="menu-backdrop" data-v-f6edc999></div><div class="st-menu" style="${ssrRenderStyle({
6579
6589
  left: `${unref(menu).x}px`,
6580
6590
  top: `${unref(menu).y}px`
6581
- })}" data-v-22725176><!--[-->`);
6591
+ })}" data-v-f6edc999><!--[-->`);
6582
6592
  ssrRenderList(unref(menuActions), (a) => {
6583
- _push(`<button type="button" class="${ssrRenderClass({ danger: a.danger })}" data-v-22725176><span class="${ssrRenderClass(a.key === "cancel" ? "i-tabler-circle-off" : a.key === "retry" ? "i-tabler-rotate" : "i-tabler-external-link")}" data-v-22725176></span> ${ssrInterpolate(a.label)}</button>`);
6593
+ _push(`<button type="button" class="${ssrRenderClass({ danger: a.danger })}" data-v-f6edc999><span class="${ssrRenderClass(a.key === "cancel" ? "i-tabler-circle-off" : a.key === "retry" ? "i-tabler-rotate" : "i-tabler-external-link")}" data-v-f6edc999></span> ${ssrInterpolate(a.label)}</button>`);
6584
6594
  });
6585
6595
  _push(`<!--]--></div><!--]-->`);
6586
6596
  } else _push(`<!---->`);
@@ -6596,7 +6606,7 @@ TaskBoardView_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) =
6596
6606
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/TaskBoardView.vue");
6597
6607
  return _sfc_setup$10 ? _sfc_setup$10(props, ctx) : void 0;
6598
6608
  };
6599
- var TaskBoardView_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(TaskBoardView_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-22725176"]]), { __name: "WorkshopTaskBoardView" });
6609
+ var TaskBoardView_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(TaskBoardView_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-f6edc999"]]), { __name: "WorkshopTaskBoardView" });
6600
6610
  //#endregion
6601
6611
  //#region app/components/workshop/MultiChannelView.vue?vue&type=script&setup=true&lang.ts
6602
6612
  var COL_W_DEFAULT = 360;
@@ -6669,20 +6679,20 @@ var MultiChannelView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
6669
6679
  };
6670
6680
  return (_ctx, _push, _parent, _attrs) => {
6671
6681
  const _component_workshop_pane_splitter = PaneSplitter_default;
6672
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "split" }, _attrs))} data-v-23486e32>`);
6673
- if (unref(columns).length === 0) _push(`<div class="empty" data-v-23486e32>${ssrInterpolate(_ctx.$t("multiChannelView.k1bfi9ms001"))}</div>`);
6682
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "split" }, _attrs))} data-v-51168f05>`);
6683
+ if (unref(columns).length === 0) _push(`<div class="empty" data-v-51168f05>${ssrInterpolate(_ctx.$t("multiChannelView.k1bfi9ms001"))}</div>`);
6674
6684
  else _push(`<!---->`);
6675
6685
  _push(`<!--[-->`);
6676
6686
  ssrRenderList(unref(columns), (col) => {
6677
- _push(`<!--[--><div class="col" style="${ssrRenderStyle({ flexBasis: `${colWidth(col.id)}px` })}" data-v-23486e32><div class="col-head" data-v-23486e32><span class="col-name" data-v-23486e32>${ssrInterpolate(col.name)}</span><span class="col-meta" data-v-23486e32>`);
6687
+ _push(`<!--[--><div class="col" style="${ssrRenderStyle({ flexBasis: `${colWidth(col.id)}px` })}" data-v-51168f05><div class="col-head" data-v-51168f05><span class="col-name" data-v-51168f05>${ssrInterpolate(col.name)}</span><span class="col-meta" data-v-51168f05>`);
6678
6688
  if (col.synced) _push(`<!--[-->${ssrInterpolate(col.agents)}a / ${ssrInterpolate(_ctx.$t("multiChannelView.k4by6003"))}${ssrInterpolate(col.busy)} / ${ssrInterpolate(_ctx.$t("multiChannelView.k3wcox005"))}${ssrInterpolate(col.activeTasks)} / seq${ssrInterpolate(col.seq)}<!--]-->`);
6679
6689
  else _push(`<!--[-->${ssrInterpolate(_ctx.$t("multiChannelView.k1bst7s9002"))}<!--]-->`);
6680
- _push(`</span></div><div class="col-body" data-v-23486e32>`);
6681
- if (col.items.length === 0) _push(`<div class="col-empty" data-v-23486e32>${ssrInterpolate(col.synced ? _ctx.$t("multiChannelView.k1el0s5k004") : _ctx.$t("multiChannelView.k1bst7s9002"))}</div>`);
6690
+ _push(`</span></div><div class="col-body" data-v-51168f05>`);
6691
+ if (col.items.length === 0) _push(`<div class="col-empty" data-v-51168f05>${ssrInterpolate(col.synced ? _ctx.$t("multiChannelView.k1el0s5k004") : _ctx.$t("multiChannelView.k1bst7s9002"))}</div>`);
6682
6692
  else _push(`<!---->`);
6683
6693
  _push(`<!--[-->`);
6684
6694
  ssrRenderList(col.items, (e) => {
6685
- _push(`<div class="${ssrRenderClass([{ clickable: e.type === "task.status" }, "mini-event"])}" data-v-23486e32><span class="me-time" data-v-23486e32>${ssrInterpolate(unref(formatLocalClock)(e.at))}</span><span class="me-agent" data-v-23486e32>${ssrInterpolate(e.agentId?.slice(0, 4) ?? "sys")}</span><span class="me-text" data-v-23486e32>${ssrInterpolate(summaryOf(e))}</span></div>`);
6695
+ _push(`<div class="${ssrRenderClass([{ clickable: e.type === "task.status" }, "mini-event"])}" data-v-51168f05><span class="me-time" data-v-51168f05>${ssrInterpolate(unref(formatLocalClock)(e.at))}</span><span class="me-agent" data-v-51168f05>${ssrInterpolate(e.agentId?.slice(0, 4) ?? "sys")}</span><span class="me-text" data-v-51168f05>${ssrInterpolate(summaryOf(e))}</span></div>`);
6686
6696
  });
6687
6697
  _push(`<!--]--></div></div>`);
6688
6698
  _push(ssrRenderComponent(_component_workshop_pane_splitter, {
@@ -6704,7 +6714,7 @@ MultiChannelView_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx
6704
6714
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/MultiChannelView.vue");
6705
6715
  return _sfc_setup$9 ? _sfc_setup$9(props, ctx) : void 0;
6706
6716
  };
6707
- var MultiChannelView_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(MultiChannelView_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-23486e32"]]), { __name: "WorkshopMultiChannelView" });
6717
+ var MultiChannelView_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(MultiChannelView_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-51168f05"]]), { __name: "WorkshopMultiChannelView" });
6708
6718
  //#endregion
6709
6719
  //#region app/components/workshop/MemoryPanel.vue?vue&type=script&setup=true&lang.ts
6710
6720
  var MemoryPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -7803,33 +7813,33 @@ var Composer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
7803
7813
  return (_ctx, _push, _parent, _attrs) => {
7804
7814
  const _component_a_select = Select;
7805
7815
  const _component_a_input_number = input_number_default;
7806
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "composer" }, _attrs))} data-v-dced774b><div class="composer-box" data-v-dced774b>`);
7816
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "composer" }, _attrs))} data-v-f1e383c4><div class="composer-box" data-v-f1e383c4>`);
7807
7817
  if (unref(mentionOpen)) {
7808
- _push(`<div class="mention-menu" data-v-dced774b><div class="mention-title" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k1bxvc46004"))}</div><!--[-->`);
7818
+ _push(`<div class="mention-menu" data-v-f1e383c4><div class="mention-title" data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k1bxvc46004"))}</div><!--[-->`);
7809
7819
  ssrRenderList(unref(mentionCandidates), (a, i) => {
7810
- _push(`<button type="button" class="${ssrRenderClass([{ sel: i === unref(mentionHi) }, "mention-opt"])}" data-v-dced774b><span class="aw-avatar is-agent mention-ava" style="${ssrRenderStyle({ "--av": unref(agentHueColor)(a.agentId) })}" data-v-dced774b>${ssrInterpolate(a.name.charAt(0).toUpperCase())}</span><span class="mention-name" data-v-dced774b>@${ssrInterpolate(a.name)}</span><span class="mention-role" data-v-dced774b>${ssrInterpolate(a.role)}</span><span class="${ssrRenderClass([a.state, "mention-state"])}"${ssrRenderAttr("title", a.state)} data-v-dced774b></span></button>`);
7820
+ _push(`<button type="button" class="${ssrRenderClass([{ sel: i === unref(mentionHi) }, "mention-opt"])}" data-v-f1e383c4><span class="aw-avatar is-agent mention-ava" style="${ssrRenderStyle({ "--av": unref(agentHueColor)(a.agentId) })}" data-v-f1e383c4>${ssrInterpolate(a.name.charAt(0).toUpperCase())}</span><span class="mention-name" data-v-f1e383c4>@${ssrInterpolate(a.name)}</span><span class="mention-role" data-v-f1e383c4>${ssrInterpolate(a.role)}</span><span class="${ssrRenderClass([a.state, "mention-state"])}"${ssrRenderAttr("title", a.state)} data-v-f1e383c4></span></button>`);
7811
7821
  });
7812
7822
  _push(`<!--]--></div>`);
7813
7823
  } else _push(`<!---->`);
7814
- _push(`<div class="composer-status-chip" data-v-dced774b>`);
7824
+ _push(`<div class="composer-status-chip" data-v-f1e383c4>`);
7815
7825
  if (unref(mode) === "task") {
7816
- _push(`<!--[--><span class="chip-key" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k3wcox005"))}</span><span data-v-dced774b>${ssrInterpolate(unref(taskMode))}</span>`);
7817
- if (unref(taskMode) === "loop") _push(`<span data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k49kr1011"))} ${ssrInterpolate(unref(loopIntervalSeconds) ?? "-")}s </span>`);
7826
+ _push(`<!--[--><span class="chip-key" data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k3wcox005"))}</span><span data-v-f1e383c4>${ssrInterpolate(unref(taskMode))}</span>`);
7827
+ if (unref(taskMode) === "loop") _push(`<span data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k49kr1011"))} ${ssrInterpolate(unref(loopIntervalSeconds) ?? "-")}s </span>`);
7818
7828
  else _push(`<!---->`);
7819
- _push(`<span class="chip-target"${ssrRenderAttr("title", unref(isDefaultLead) ? "未 @ 指定:任务自动路由 lead 调度;@ 某成员可直发" : _ctx.$t("composer.kl3604i033", { p0: unref(targetName) }))} data-v-dced774b>→ ${ssrInterpolate(unref(targetName) ? `@${unref(targetName)}` : "lead")}${ssrInterpolate(unref(isDefaultLead) ? _ctx.$t("composer.k2z7yuw012") : _ctx.$t("composer.k2z0fsx032"))}</span>`);
7820
- if (unref(reachHint)) _push(`<span class="reach-chip"${ssrRenderAttr("data-tone", unref(reachHint).tone)}${ssrRenderAttr("title", unref(reachHint).title)} data-v-dced774b><span class="reach-dot" aria-hidden="true" data-v-dced774b></span>${ssrInterpolate(unref(reachHint).text)}</span>`);
7829
+ _push(`<span class="chip-target"${ssrRenderAttr("title", unref(isDefaultLead) ? "未 @ 指定:任务自动路由 lead 调度;@ 某成员可直发" : _ctx.$t("composer.kl3604i033", { p0: unref(targetName) }))} data-v-f1e383c4>→ ${ssrInterpolate(unref(targetName) ? `@${unref(targetName)}` : "lead")}${ssrInterpolate(unref(isDefaultLead) ? _ctx.$t("composer.k2z7yuw012") : _ctx.$t("composer.k2z0fsx032"))}</span>`);
7830
+ if (unref(reachHint)) _push(`<span class="reach-chip"${ssrRenderAttr("data-tone", unref(reachHint).tone)}${ssrRenderAttr("title", unref(reachHint).title)} data-v-f1e383c4><span class="reach-dot" aria-hidden="true" data-v-f1e383c4></span>${ssrInterpolate(unref(reachHint).text)}</span>`);
7821
7831
  else _push(`<!---->`);
7822
- _push(`<span class="chip-hint" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k17u6q77006"))}</span><!--]-->`);
7832
+ _push(`<span class="chip-hint" data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k17u6q77006"))}</span><!--]-->`);
7823
7833
  } else {
7824
- _push(`<!--[--><span class="chip-key" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k41ykc007"))}</span>`);
7825
- if (unref(targetName)) _push(`<span data-v-dced774b>@${ssrInterpolate(unref(targetName))}${ssrInterpolate(unref(isDefaultLead) ? _ctx.$t("composer.k2z7yuw012") : "")}</span>`);
7834
+ _push(`<!--[--><span class="chip-key" data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k41ykc007"))}</span>`);
7835
+ if (unref(targetName)) _push(`<span data-v-f1e383c4>@${ssrInterpolate(unref(targetName))}${ssrInterpolate(unref(isDefaultLead) ? _ctx.$t("composer.k2z7yuw012") : "")}</span>`);
7826
7836
  else _push(`<!---->`);
7827
- _push(`<span data-v-dced774b>${ssrInterpolate(unref(priority) === "immediate" ? _ctx.$t("composer.k1bosqfv013") : _ctx.$t("composer.k40g8m009"))}</span>`);
7828
- if (unref(reachHint)) _push(`<span class="reach-chip"${ssrRenderAttr("data-tone", unref(reachHint).tone)}${ssrRenderAttr("title", unref(reachHint).title)} data-v-dced774b><span class="reach-dot" aria-hidden="true" data-v-dced774b></span>${ssrInterpolate(unref(reachHint).text)}</span>`);
7837
+ _push(`<span data-v-f1e383c4>${ssrInterpolate(unref(priority) === "immediate" ? _ctx.$t("composer.k1bosqfv013") : _ctx.$t("composer.k40g8m009"))}</span>`);
7838
+ if (unref(reachHint)) _push(`<span class="reach-chip"${ssrRenderAttr("data-tone", unref(reachHint).tone)}${ssrRenderAttr("title", unref(reachHint).title)} data-v-f1e383c4><span class="reach-dot" aria-hidden="true" data-v-f1e383c4></span>${ssrInterpolate(unref(reachHint).text)}</span>`);
7829
7839
  else _push(`<!---->`);
7830
- _push(`<span class="chip-hint" data-v-dced774b>输入 @ 提及成员 · ⌘/Ctrl+Enter 发送</span><!--]-->`);
7840
+ _push(`<span class="chip-hint" data-v-f1e383c4>输入 @ 提及成员 · ⌘/Ctrl+Enter 发送</span><!--]-->`);
7831
7841
  }
7832
- _push(`</div><textarea class="composer-input" rows="1"${ssrRenderAttr("placeholder", unref(placeholder))} data-v-dced774b>${ssrInterpolate(unref(input))}</textarea><div class="composer-bar" data-v-dced774b><div class="cb-left" data-v-dced774b><div class="aw-seg" data-v-dced774b><button type="button" class="${ssrRenderClass({ on: unref(mode) === "task" })}" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k3wcox005"))}</button><button type="button" class="${ssrRenderClass({ on: unref(mode) === "message" })}" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k41ykc007"))}</button></div>`);
7842
+ _push(`</div><textarea class="composer-input" rows="1"${ssrRenderAttr("placeholder", unref(placeholder))} data-v-f1e383c4>${ssrInterpolate(unref(input))}</textarea><div class="composer-bar" data-v-f1e383c4><div class="cb-left" data-v-f1e383c4><div class="aw-seg" data-v-f1e383c4><button type="button" class="${ssrRenderClass({ on: unref(mode) === "task" })}" data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k3wcox005"))}</button><button type="button" class="${ssrRenderClass({ on: unref(mode) === "message" })}" data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k41ykc007"))}</button></div>`);
7833
7843
  _push(ssrRenderComponent(_component_a_select, {
7834
7844
  value: unref(toAgentId),
7835
7845
  "onUpdate:value": ($event) => isRef(toAgentId) ? toAgentId.value = $event : null,
@@ -7841,13 +7851,13 @@ var Composer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
7841
7851
  }))
7842
7852
  }, null, _parent));
7843
7853
  if (unref(mode) === "task") {
7844
- _push(`<!--[--><div class="aw-seg" data-v-dced774b><!--[-->`);
7854
+ _push(`<!--[--><div class="aw-seg" data-v-f1e383c4><!--[-->`);
7845
7855
  ssrRenderList([
7846
7856
  "goal",
7847
7857
  "loop",
7848
7858
  "pipeline"
7849
7859
  ], (m) => {
7850
- _push(`<button type="button" class="${ssrRenderClass({ on: unref(taskMode) === m })}" data-v-dced774b>${ssrInterpolate(m)}</button>`);
7860
+ _push(`<button type="button" class="${ssrRenderClass({ on: unref(taskMode) === m })}" data-v-f1e383c4>${ssrInterpolate(m)}</button>`);
7851
7861
  });
7852
7862
  _push(`<!--]--></div>`);
7853
7863
  if (unref(taskMode) === "loop") {
@@ -7877,8 +7887,8 @@ var Composer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
7877
7887
  _push(`<!--]-->`);
7878
7888
  } else _push(`<!---->`);
7879
7889
  _push(`<!--]-->`);
7880
- } else _push(`<!--[--><div class="aw-seg" data-v-dced774b><button type="button" class="${ssrRenderClass({ on: unref(priority) === "immediate" })}"${ssrRenderAttr("title", _ctx.$t("composer.k1jqqvhe002"))} data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k3x9n2008"))}</button><button type="button" class="${ssrRenderClass({ on: unref(priority) === "task" })}" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k40g8m009"))}</button></div><button type="button" class="${ssrRenderClass([{ on: unref(requireReply) }, "chip-toggle"])}"${ssrRenderAttr("title", _ctx.$t("composer.k195594v003"))} data-v-dced774b><span class="i-tabler-mail-forward" data-v-dced774b></span> ${ssrInterpolate(_ctx.$t("composer.k3xv7u010"))}</button><!--]-->`);
7881
- _push(`</div><div class="cb-right" data-v-dced774b><button type="button" class="send-btn im"${ssrIncludeBooleanAttr(unref(sendLoading) || !unref(input).trim()) ? " disabled" : ""} title="发送(⌘/Ctrl+Enter)" data-v-dced774b><span class="i-tabler-send im-nudge-up" data-v-dced774b></span></button></div></div></div></div>`);
7890
+ } else _push(`<!--[--><div class="aw-seg" data-v-f1e383c4><button type="button" class="${ssrRenderClass({ on: unref(priority) === "immediate" })}"${ssrRenderAttr("title", _ctx.$t("composer.k1jqqvhe002"))} data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k3x9n2008"))}</button><button type="button" class="${ssrRenderClass({ on: unref(priority) === "task" })}" data-v-f1e383c4>${ssrInterpolate(_ctx.$t("composer.k40g8m009"))}</button></div><button type="button" class="${ssrRenderClass([{ on: unref(requireReply) }, "chip-toggle"])}"${ssrRenderAttr("title", _ctx.$t("composer.k195594v003"))} data-v-f1e383c4><span class="i-tabler-mail-forward" data-v-f1e383c4></span> ${ssrInterpolate(_ctx.$t("composer.k3xv7u010"))}</button><!--]-->`);
7891
+ _push(`</div><div class="cb-right" data-v-f1e383c4><button type="button" class="send-btn im"${ssrIncludeBooleanAttr(unref(sendLoading) || !unref(input).trim()) ? " disabled" : ""} title="发送(⌘/Ctrl+Enter)" data-v-f1e383c4><span class="i-tabler-send im-nudge-up" data-v-f1e383c4></span></button></div></div></div></div>`);
7882
7892
  };
7883
7893
  }
7884
7894
  });
@@ -7890,7 +7900,7 @@ Composer_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
7890
7900
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/Composer.vue");
7891
7901
  return _sfc_setup$5 ? _sfc_setup$5(props, ctx) : void 0;
7892
7902
  };
7893
- var Composer_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(Composer_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-dced774b"]]), { __name: "WorkshopComposer" });
7903
+ var Composer_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(Composer_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-f1e383c4"]]), { __name: "WorkshopComposer" });
7894
7904
  //#endregion
7895
7905
  //#region app/components/workshop/AgentInspectorDrawer.vue?vue&type=script&setup=true&lang.ts
7896
7906
  var DRAWER_W_DEFAULT$2 = 520;
@@ -9737,17 +9747,17 @@ var CommandPalette_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
9737
9747
  return (_ctx, _push, _parent, _attrs) => {
9738
9748
  ssrRenderTeleport(_push, (_push) => {
9739
9749
  if (open.value) {
9740
- _push(`<div class="palette-mask" data-v-e22e8b91><div class="palette" data-v-e22e8b91><div class="palette-search" data-v-e22e8b91><span class="i-tabler-search ps-icon" data-v-e22e8b91></span><input${ssrRenderAttr("value", unref(query))} class="palette-input"${ssrRenderAttr("placeholder", _ctx.$t("commandPalette.k1nn6i83001"))} autofocus data-v-e22e8b91></div><div class="palette-list" data-v-e22e8b91><!--[-->`);
9750
+ _push(`<div class="palette-mask" data-v-b72e120a><div class="palette" data-v-b72e120a><div class="palette-search" data-v-b72e120a><span class="i-tabler-search ps-icon" data-v-b72e120a></span><input${ssrRenderAttr("value", unref(query))} class="palette-input"${ssrRenderAttr("placeholder", _ctx.$t("commandPalette.k1nn6i83001"))} autofocus data-v-b72e120a></div><div class="palette-list" data-v-b72e120a><!--[-->`);
9741
9751
  ssrRenderList(unref(filtered), (c, i) => {
9742
- _push(`<button type="button" class="${ssrRenderClass([{ selected: i === unref(selected) }, "palette-item"])}" data-v-e22e8b91><span class="pi-label" data-v-e22e8b91>${ssrInterpolate(c.label)}</span>`);
9743
- if (c.hint) _push(`<span class="pi-hint" data-v-e22e8b91>${ssrInterpolate(c.hint)}</span>`);
9752
+ _push(`<button type="button" class="${ssrRenderClass([{ selected: i === unref(selected) }, "palette-item"])}" data-v-b72e120a><span class="pi-label" data-v-b72e120a>${ssrInterpolate(c.label)}</span>`);
9753
+ if (c.hint) _push(`<span class="pi-hint" data-v-b72e120a>${ssrInterpolate(c.hint)}</span>`);
9744
9754
  else _push(`<!---->`);
9745
9755
  _push(`</button>`);
9746
9756
  });
9747
9757
  _push(`<!--]-->`);
9748
- if (unref(filtered).length === 0) _push(`<div class="palette-empty" data-v-e22e8b91>${ssrInterpolate(_ctx.$t("commandPalette.ktup4q4002"))}</div>`);
9758
+ if (unref(filtered).length === 0) _push(`<div class="palette-empty" data-v-b72e120a>${ssrInterpolate(_ctx.$t("commandPalette.ktup4q4002"))}</div>`);
9749
9759
  else _push(`<!---->`);
9750
- _push(`</div><div class="palette-foot" data-v-e22e8b91><kbd data-v-e22e8b91>↑↓</kbd> ${ssrInterpolate(_ctx.$t("commandPalette.k1kvl0fa003"))} <kbd data-v-e22e8b91>↵</kbd> ${ssrInterpolate(_ctx.$t("commandPalette.k1e3ualj004"))} <kbd data-v-e22e8b91>esc</kbd> ${ssrInterpolate(_ctx.$t("commandPalette.k3x62t005"))}</div></div></div>`);
9760
+ _push(`</div><div class="palette-foot" data-v-b72e120a><kbd data-v-b72e120a>↑↓</kbd> ${ssrInterpolate(_ctx.$t("commandPalette.k1kvl0fa003"))} <kbd data-v-b72e120a>↵</kbd> ${ssrInterpolate(_ctx.$t("commandPalette.k1e3ualj004"))} <kbd data-v-b72e120a>esc</kbd> ${ssrInterpolate(_ctx.$t("commandPalette.k3x62t005"))}</div></div></div>`);
9751
9761
  } else _push(`<!---->`);
9752
9762
  }, "body", false, _parent);
9753
9763
  };
@@ -9761,7 +9771,7 @@ CommandPalette_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx)
9761
9771
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/CommandPalette.vue");
9762
9772
  return _sfc_setup$1 ? _sfc_setup$1(props, ctx) : void 0;
9763
9773
  };
9764
- var CommandPalette_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(CommandPalette_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-e22e8b91"]]), { __name: "WorkshopCommandPalette" });
9774
+ var CommandPalette_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(CommandPalette_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-b72e120a"]]), { __name: "WorkshopCommandPalette" });
9765
9775
  //#endregion
9766
9776
  //#region app/pages/workshop/w/[wsId].vue?vue&type=script&setup=true&lang.ts
9767
9777
  var LEFT_W_DEFAULT = 248;
@@ -10019,4 +10029,4 @@ _wsId__vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
10019
10029
  var _wsId__default = /*#__PURE__*/ _plugin_vue_export_helper_default(_wsId__vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-f2913902"]]);
10020
10030
 
10021
10031
  export { _wsId__default as default };
10022
- //# sourceMappingURL=_wsId_-CTZswnm5.mjs.map
10032
+ //# sourceMappingURL=_wsId_-BVg3bB77.mjs.map