agentworkshop 0.7.7 → 0.7.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (337) hide show
  1. package/.AgentWorkShop/prompts/host-tools.json +1 -1
  2. package/.output/.AgentWorkShop/prompts/host-tools.json +1 -1
  3. package/.output/nitro.json +1 -1
  4. package/.output/public/_nuxt/-6OnbLFb.js +1 -0
  5. package/.output/public/_nuxt/{BUxYN2mw.js → -nb2uqVg.js} +1 -1
  6. package/.output/public/_nuxt/{DM8DS9MA.js → 6PZPfFcO.js} +1 -1
  7. package/.output/public/_nuxt/91DZTUMJ.js +1 -0
  8. package/.output/public/_nuxt/B0HpdCKS.js +1 -0
  9. package/.output/public/_nuxt/B1g8pJmr.js +2 -0
  10. package/.output/public/_nuxt/B1kA8LhC.js +14 -0
  11. package/.output/public/_nuxt/{uBbDCfTz.js → B5S_UyaC.js} +1 -1
  12. package/.output/public/_nuxt/{DZk24ego.js → B7wL3pDk.js} +1 -1
  13. package/.output/public/_nuxt/B9MUiDFl.js +1 -0
  14. package/.output/public/_nuxt/B9dLFSYI.js +1 -0
  15. package/.output/public/_nuxt/BC8s1Guv.js +1 -0
  16. package/.output/public/_nuxt/{BSXx2vqR.js → BCJFMBQ6.js} +1 -1
  17. package/.output/public/_nuxt/{BYL0Rjqj.js → BDASpD_i.js} +3 -3
  18. package/.output/public/_nuxt/{VnIWJ0ts.js → BN_PdN3J.js} +1 -1
  19. package/.output/public/_nuxt/BUPj10t4.js +1 -0
  20. package/.output/public/_nuxt/BZGNTgTQ2.js +1 -0
  21. package/.output/public/_nuxt/{NIM0Wglj2.js → BaMkWl5i2.js} +1 -1
  22. package/.output/public/_nuxt/BmHvC_OU.js +1 -0
  23. package/.output/public/_nuxt/{BkfchkK62.js → Bp5luxkg2.js} +1 -1
  24. package/.output/public/_nuxt/{ZugRk0CM2.js → BuktKVqK2.js} +1 -1
  25. package/.output/public/_nuxt/By8BpbKH.js +1 -0
  26. package/.output/public/_nuxt/{pRQri7vQ2.js → BytVi9VX2.js} +1 -1
  27. package/.output/public/_nuxt/{D5KJ7_0V.js → C3tCneTM.js} +1 -1
  28. package/.output/public/_nuxt/{CblLEiCZ.js → C9cU_Ujd.js} +3 -3
  29. package/.output/public/_nuxt/{BJ-fxrSw.js → CBciOiTQ.js} +1 -1
  30. package/.output/public/_nuxt/CFn4vHwD.js +1 -0
  31. package/.output/public/_nuxt/{DCXIGxzT.js → CKfhtOt7.js} +2 -2
  32. package/.output/public/_nuxt/CUMdhxg9.js +1 -0
  33. package/.output/public/_nuxt/{ChEKFMxj.js → CUXCQXjG.js} +1 -1
  34. package/.output/public/_nuxt/CfVAr2nf.js +1 -0
  35. package/.output/public/_nuxt/{CvbHIGQY2.js → CgvGu2IO.js} +1 -1
  36. package/.output/public/_nuxt/CjDQPXfv.js +1 -0
  37. package/.output/public/_nuxt/{B4Fia4FB.js → CmHzfVc5.js} +1 -1
  38. package/.output/public/_nuxt/{Do88WZG2.js → Cn3J3NXR.js} +1 -1
  39. package/.output/public/_nuxt/{DNzaswei.js → Cst47G4-.js} +1 -1
  40. package/.output/public/_nuxt/{DYZBdSSg2.js → Ct68Z0232.js} +1 -1
  41. package/.output/public/_nuxt/{BsMpJf7S.js → D-Ca4BGY.js} +6 -6
  42. package/.output/public/_nuxt/D0Szyn_D.js +1 -0
  43. package/.output/public/_nuxt/{CsCpu2Zh.js → D1z7i2UP.js} +1 -1
  44. package/.output/public/_nuxt/{Du-eSpo2.js → D3VJ3lex.js} +1 -1
  45. package/.output/public/_nuxt/D8CqF0yy.js +1 -0
  46. package/.output/public/_nuxt/D8EfUxO2.js +1 -0
  47. package/.output/public/_nuxt/D8wyHvcz2.js +1 -0
  48. package/.output/public/_nuxt/{zwdqvGN_.js → DDdEnkdw.js} +1 -1
  49. package/.output/public/_nuxt/DM4CNkXz.js +1 -0
  50. package/.output/public/_nuxt/DN5RuZ8k.js +18 -0
  51. package/.output/public/_nuxt/DXRZPxGs.js +1 -0
  52. package/.output/public/_nuxt/{C2iWjzEC2.js → DoLasgPj2.js} +1 -1
  53. package/.output/public/_nuxt/{DRq09ZmT.js → DpojD719.js} +1 -1
  54. package/.output/public/_nuxt/Dqj2h40U.js +1 -0
  55. package/.output/public/_nuxt/{BCipft_k2.js → DsUUYP292.js} +1 -1
  56. package/.output/public/_nuxt/DtBu71ev.js +32 -0
  57. package/.output/public/_nuxt/{fQUs58kX2.js → DvgKXPgu2.js} +1 -1
  58. package/.output/public/_nuxt/{C_gFA2H_2.js → DxrgFxIr2.js} +1 -1
  59. package/.output/public/_nuxt/Dy-mxvXY2.js +1 -0
  60. package/.output/public/_nuxt/G0qIw7Gq2.js +1 -0
  61. package/.output/public/_nuxt/{DCEyMaN-.js → MyA0Oeqd.js} +3 -3
  62. package/.output/public/_nuxt/{tRBT-plo.js → OV6PBW2z.js} +1 -1
  63. package/.output/public/_nuxt/TownView.BHLKAjEu.css +1 -0
  64. package/.output/public/_nuxt/VLI2Zy4t.js +5 -0
  65. package/.output/public/_nuxt/_id_.DIxEKj88.css +1 -0
  66. package/.output/public/_nuxt/_id_.DTvjd6VN.css +1 -0
  67. package/.output/public/_nuxt/{_wsId_.COUzMXpP.css → _wsId_.BFyCuUwS.css} +1 -1
  68. package/.output/public/_nuxt/agents.CEbox5-D.css +1 -0
  69. package/.output/public/_nuxt/builds/latest.json +1 -1
  70. package/.output/public/_nuxt/builds/meta/92d6bd39-dbc5-46d5-90d8-8387f36715fa.json +1 -0
  71. package/.output/public/_nuxt/channel-templates.De5ZvrGz.css +1 -0
  72. package/.output/public/_nuxt/daq.6IrhVVfy.css +1 -0
  73. package/.output/public/_nuxt/dcw.DcDjwvqv.css +1 -0
  74. package/.output/public/_nuxt/{default.V3_hUJq1.css → default.BR3e5fPY.css} +1 -1
  75. package/.output/public/_nuxt/{entry.DvlXlPwx.css → entry.5qf6EqfN.css} +1 -1
  76. package/.output/public/_nuxt/{Cyk3du4K2.js → kZV5TQvh2.js} +1 -1
  77. package/.output/public/_nuxt/logs.BO-BSyjm.css +1 -0
  78. package/.output/public/_nuxt/{D4qXvjuV.js → niDwBOZW.js} +2 -2
  79. package/.output/public/_nuxt/pKv_VWR4.js +1 -0
  80. package/.output/public/_nuxt/plugins.Clsky_kl.css +1 -0
  81. package/.output/public/_nuxt/rqZ-1SoP.js +2 -0
  82. package/.output/public/_nuxt/teams.CUMnbQGf.css +1 -0
  83. package/.output/public/_nuxt/tokens.BPLe9ioQ.css +1 -0
  84. package/.output/public/_nuxt/{C8dxXc6K.js → u7KWCGSb.js} +1 -1
  85. package/.output/public/_nuxt/{Bi6AiCuP.js → vJ4FPb-_.js} +1 -1
  86. package/.output/public/_nuxt/wirVyscc.js +1 -0
  87. package/.output/public/_nuxt/workshop.BIdoGfoC.css +1 -0
  88. package/.output/server/chunks/_/nitro.mjs +2042 -1967
  89. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  90. package/.output/server/chunks/build/{TownView-B5KifIaT.mjs → TownView-D8DSdO3H.mjs} +182 -181
  91. package/.output/server/chunks/build/{TownView-B5KifIaT.mjs.map → TownView-D8DSdO3H.mjs.map} +1 -1
  92. package/.output/server/chunks/build/{_id_-Ct4Jhvl1.mjs → _id_-BV4FfiYd.mjs} +37 -36
  93. package/.output/server/chunks/build/_id_-BV4FfiYd.mjs.map +1 -0
  94. package/.output/server/chunks/build/{_id_-C-ewLgfl.mjs → _id_-TP9hvnBM.mjs} +126 -125
  95. package/.output/server/chunks/build/_id_-TP9hvnBM.mjs.map +1 -0
  96. package/.output/server/chunks/build/{_wsId_-CanI_6Su.mjs → _wsId_-Mm9sQSz2.mjs} +125 -124
  97. package/.output/server/chunks/build/{_wsId_-CanI_6Su.mjs.map → _wsId_-Mm9sQSz2.mjs.map} +1 -1
  98. package/.output/server/chunks/build/{agents-DSOptxXA.mjs → agents-To3a5xcZ.mjs} +16 -15
  99. package/.output/server/chunks/build/agents-To3a5xcZ.mjs.map +1 -0
  100. package/.output/server/chunks/build/api-error-dul30BYQ.mjs +47 -0
  101. package/.output/server/chunks/build/api-error-dul30BYQ.mjs.map +1 -0
  102. package/.output/server/chunks/build/{channel-templates-BK0KuPOd.mjs → channel-templates-DRsP-qxl.mjs} +23 -22
  103. package/.output/server/chunks/build/channel-templates-DRsP-qxl.mjs.map +1 -0
  104. package/.output/server/chunks/build/{daq-D9RA_uze.mjs → daq-_hCEaYLd.mjs} +112 -111
  105. package/.output/server/chunks/build/daq-_hCEaYLd.mjs.map +1 -0
  106. package/.output/server/chunks/build/{dcw-BTM5YU-B.mjs → dcw-C7pJ4Y0p.mjs} +47 -46
  107. package/.output/server/chunks/build/dcw-C7pJ4Y0p.mjs.map +1 -0
  108. package/.output/server/chunks/build/{default-BfWGTlbj.mjs → default-Dnjs36e8.mjs} +16 -15
  109. package/.output/server/chunks/build/{default-BfWGTlbj.mjs.map → default-Dnjs36e8.mjs.map} +1 -1
  110. package/.output/server/chunks/build/{logs-Dyk0I2I9.mjs → logs-C039TFW1.mjs} +38 -37
  111. package/.output/server/chunks/build/logs-C039TFW1.mjs.map +1 -0
  112. package/.output/server/chunks/build/{pages-DR2bzczM.mjs → pages-C_VSGSGo.mjs} +5 -4
  113. package/.output/server/chunks/build/pages-C_VSGSGo.mjs.map +1 -0
  114. package/.output/server/chunks/build/{plugins-DnOBIWGg.mjs → plugins-4FMWkN8d.mjs} +25 -22
  115. package/.output/server/chunks/build/plugins-4FMWkN8d.mjs.map +1 -0
  116. package/.output/server/chunks/build/table-Cswq-l2r.mjs +1 -1
  117. package/.output/server/chunks/build/{teams-BhSKBBBM.mjs → teams-DA1lkf1n.mjs} +19 -18
  118. package/.output/server/chunks/build/teams-DA1lkf1n.mjs.map +1 -0
  119. package/.output/server/chunks/build/{tokens-D_eyxmcv.mjs → tokens-DKMvvk3e.mjs} +18 -17
  120. package/.output/server/chunks/build/tokens-DKMvvk3e.mjs.map +1 -0
  121. package/.output/server/chunks/build/{town-DPtOPRRO.mjs → town-D0thZ7PK.mjs} +6 -5
  122. package/.output/server/chunks/build/town-D0thZ7PK.mjs.map +1 -0
  123. package/.output/server/chunks/build/{useDaqStream-hwkhJHFU.mjs → useDaqStream-BVTRw8_H.mjs} +5 -4
  124. package/.output/server/chunks/build/useDaqStream-BVTRw8_H.mjs.map +1 -0
  125. package/.output/server/chunks/build/{useDcwStream-Bdew_yrr.mjs → useDcwStream-DNsivqI_.mjs} +5 -4
  126. package/.output/server/chunks/build/useDcwStream-DNsivqI_.mjs.map +1 -0
  127. package/.output/server/chunks/build/{useDeviceTwins-C6EBg9oN.mjs → useDeviceTwins-WeIom7A6.mjs} +4 -3
  128. package/.output/server/chunks/build/useDeviceTwins-WeIom7A6.mjs.map +1 -0
  129. package/.output/server/chunks/build/useLocalTime-9a4B-aHv.mjs +1 -1
  130. package/.output/server/chunks/build/{useOpsLog-DdCqKVVG.mjs → useOpsLog-DcKnPO43.mjs} +5 -4
  131. package/.output/server/chunks/build/useOpsLog-DcKnPO43.mjs.map +1 -0
  132. package/.output/server/chunks/build/useWorkshopApi-D2gq06N2.mjs +1 -1
  133. package/.output/server/chunks/build/{workshop-iCzNRifn.mjs → workshop-BhWnJMWs.mjs} +50 -43
  134. package/.output/server/chunks/build/workshop-BhWnJMWs.mjs.map +1 -0
  135. package/.output/server/chunks/routes/api/users/setup-status.get.mjs +25 -0
  136. package/.output/server/chunks/routes/api/users/setup-status.get.mjs.map +1 -0
  137. package/.output/server/chunks/routes/api/workshop/caller.mjs +1 -1
  138. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +1 -1
  139. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +1 -1
  140. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +3 -2
  141. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs.map +1 -1
  142. package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +1 -1
  143. package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +1 -1
  144. package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +1 -1
  145. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +1 -1
  146. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +1 -1
  147. package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +1 -1
  148. package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +1 -1
  149. package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +1 -1
  150. package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +1 -1
  151. package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +1 -1
  152. package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +1 -1
  153. package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +1 -1
  154. package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +1 -1
  155. package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +1 -1
  156. package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +1 -1
  157. package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +1 -1
  158. package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +1 -1
  159. package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +1 -1
  160. package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +1 -1
  161. package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +1 -1
  162. package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +1 -1
  163. package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +1 -1
  164. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +1 -1
  165. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +1 -1
  166. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
  167. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs +1 -1
  168. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +1 -1
  169. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +1 -1
  170. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +1 -1
  171. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +1 -1
  172. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +1 -1
  173. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +1 -1
  174. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +1 -1
  175. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +1 -1
  176. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +1 -1
  177. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +1 -1
  178. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +1 -1
  179. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +1 -1
  180. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
  181. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
  182. package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +1 -1
  183. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +1 -1
  184. package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
  185. package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
  186. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
  187. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
  188. package/.output/server/chunks/routes/api/workshop/index4.get.mjs +1 -1
  189. package/.output/server/chunks/routes/api/workshop/index4.post.mjs +1 -1
  190. package/.output/server/chunks/routes/api/workshop/index5.get.mjs +1 -1
  191. package/.output/server/chunks/routes/api/workshop/index6.post.mjs +1 -1
  192. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +3 -3
  193. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs.map +1 -1
  194. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +3 -3
  195. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs.map +1 -1
  196. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
  197. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
  198. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +1 -1
  199. package/.output/server/chunks/routes/renderer.mjs +2 -2
  200. package/.output/server/chunks/virtual/entry.mjs +57 -23
  201. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  202. package/.output/server/package.json +1 -1
  203. package/README-zh.md +27 -7
  204. package/README.md +455 -435
  205. package/app/components/AppHeader.vue +1 -1
  206. package/app/components/workshop/A2aRpcDebugger.vue +1 -1
  207. package/app/components/workshop/AgentInspectorDrawer.vue +3 -3
  208. package/app/components/workshop/AgentLanesView.vue +6 -6
  209. package/app/components/workshop/AssetLibrary.vue +2 -2
  210. package/app/components/workshop/ChannelSessionList.vue +5 -5
  211. package/app/components/workshop/Composer.vue +1 -1
  212. package/app/components/workshop/DeviceTwinPanel.vue +2 -2
  213. package/app/components/workshop/TaskBoardView.vue +1 -1
  214. package/app/components/workshop/TaskInspectorDrawer.vue +2 -2
  215. package/app/components/workshop/town/TownView.vue +23 -23
  216. package/app/composables/workshop/apiClient.ts +1 -1
  217. package/app/composables/workshop/useCharacterAssets.ts +1 -1
  218. package/app/composables/workshop/useDaqStream.ts +1 -1
  219. package/app/composables/workshop/useDcwStream.ts +1 -1
  220. package/app/composables/workshop/useDeviceTwins.ts +1 -1
  221. package/app/composables/workshop/useOpsLog.ts +2 -2
  222. package/app/composables/workshop/useSceneLayouts.ts +1 -1
  223. package/app/pages/daq/[id].vue +1 -1
  224. package/app/pages/daq/index.vue +8 -8
  225. package/app/pages/dcw/[id].vue +13 -13
  226. package/app/pages/dcw/index.vue +7 -7
  227. package/app/pages/logs/index.vue +1 -1
  228. package/app/pages/plugins/index.vue +14 -6
  229. package/app/pages/tokens.vue +3 -3
  230. package/app/pages/workshop/agents.vue +2 -2
  231. package/app/pages/workshop/channel-templates.vue +3 -3
  232. package/app/pages/workshop/index.vue +29 -10
  233. package/app/pages/workshop/teams.vue +3 -3
  234. package/app/utils/api-error.ts +75 -0
  235. package/cli/commands/plugin.mjs +2 -2
  236. package/config.yml +11 -1
  237. package/i18n/dicts/settings.json +4 -0
  238. package/i18n/locales/en.ts +20 -3
  239. package/i18n/locales/zh-CN.ts +20 -3
  240. package/package.json +1 -1
  241. package/scripts/_dbg-codex-handshake.ts +30 -0
  242. package/scripts/_dbg-codex-sandbox.ts +58 -0
  243. package/scripts/_dbg-codex-turn.ts +65 -0
  244. package/scripts/_dbg-interval-config.mjs +156 -0
  245. package/scripts/_dbg-plugins-e2e.mjs +101 -0
  246. package/scripts/_dbg-repo-setup-verify.mjs +31 -0
  247. package/scripts/_dbg-setup-e2e.mjs +88 -0
  248. package/scripts/e2e-harness-provider-task.mjs +126 -0
  249. package/server/api/users/setup-status.get.ts +8 -0
  250. package/server/api/workshop/daq/[id]/samples.get.ts +4 -2
  251. package/server/api/workshop/plugins/[name]/disable.post.ts +5 -3
  252. package/server/api/workshop/plugins/[name]/enable.post.ts +5 -3
  253. package/server/data/daqs.json +138 -42
  254. package/server/data/dcw-lines.json +28 -0
  255. package/server/data/dcw-products.json +140 -0
  256. package/server/data/dcw-recipes.json +506 -0
  257. package/server/data/dcw-rollback.json +226 -6
  258. package/server/data/dcw-runs.json +1807 -1690
  259. package/server/data/dcw-writes.json +240 -0
  260. package/server/data/dcws.json +673 -173
  261. package/server/data/line-runs.json +26 -6
  262. package/server/plugins/security.ts +46 -50
  263. package/server/repositories/user.repository.ts +384 -414
  264. package/server/services/system-config.ts +7 -0
  265. package/server/services/user.service.ts +8 -3
  266. package/server/services/workshop/agents/adapters/line-spawn.ts +6 -3
  267. package/server/services/workshop/agents/host-tool-bridge.ts +21 -1
  268. package/server/services/workshop/agents/industrial-tools.ts +5 -3
  269. package/server/services/workshop/daq/daq-controller.ts +34 -6
  270. package/server/services/workshop/daq/daq-node.ts +3 -3
  271. package/server/services/workshop/daq/daq-runtime.ts +4 -3
  272. package/server/services/workshop/daq/storage/sqlite.adapter.ts +10 -5
  273. package/server/services/workshop/dcw/dcw-controller.ts +4 -2
  274. package/server/services/workshop/plugins/host.mjs +2 -1
  275. package/server/services/workshop/settings.ts +33 -0
  276. package/shared/config/schema.json +4 -0
  277. package/.output/public/_nuxt/2LwEn9gX.js +0 -2
  278. package/.output/public/_nuxt/3612gD2V.js +0 -32
  279. package/.output/public/_nuxt/8eIQAVlb.js +0 -1
  280. package/.output/public/_nuxt/Ah9qOv1m.js +0 -1
  281. package/.output/public/_nuxt/B7aqqzkY.js +0 -1
  282. package/.output/public/_nuxt/BH0Z05CS.js +0 -1
  283. package/.output/public/_nuxt/BJvGPTpC.js +0 -1
  284. package/.output/public/_nuxt/BVZjSVs2.js +0 -1
  285. package/.output/public/_nuxt/BVzDoF8t.js +0 -1
  286. package/.output/public/_nuxt/BjVLsC3M.js +0 -1
  287. package/.output/public/_nuxt/BnVoQ74r.js +0 -1
  288. package/.output/public/_nuxt/Bnp4vIAf.js +0 -1
  289. package/.output/public/_nuxt/Bt_HDizI.js +0 -5
  290. package/.output/public/_nuxt/Bu-P92Pe.js +0 -18
  291. package/.output/public/_nuxt/ButLXkjo.js +0 -2
  292. package/.output/public/_nuxt/By-LNp3k.js +0 -1
  293. package/.output/public/_nuxt/C-GarxYC.js +0 -1
  294. package/.output/public/_nuxt/CGdPdJPP.js +0 -1
  295. package/.output/public/_nuxt/CQiKcuoG.js +0 -14
  296. package/.output/public/_nuxt/CRGlf1Gb.js +0 -1
  297. package/.output/public/_nuxt/CS8R0_J3.js +0 -1
  298. package/.output/public/_nuxt/CUxV8Bw_.js +0 -1
  299. package/.output/public/_nuxt/Cd15nPnG2.js +0 -1
  300. package/.output/public/_nuxt/DNJSkm3Q.js +0 -1
  301. package/.output/public/_nuxt/DXK1U43I.js +0 -1
  302. package/.output/public/_nuxt/Dk6pq9JB2.js +0 -1
  303. package/.output/public/_nuxt/GP2wXyuY.js +0 -1
  304. package/.output/public/_nuxt/PQLnLxYe.js +0 -1
  305. package/.output/public/_nuxt/TownView.Bt33bo1M.css +0 -1
  306. package/.output/public/_nuxt/_id_.BzKMZnLe.css +0 -1
  307. package/.output/public/_nuxt/_id_.CbpDAWRh.css +0 -1
  308. package/.output/public/_nuxt/agents.BlejnOOC.css +0 -1
  309. package/.output/public/_nuxt/builds/meta/14df171d-89cb-43ec-ad6f-9df72d6da7f5.json +0 -1
  310. package/.output/public/_nuxt/channel-templates.lkqEYlWY.css +0 -1
  311. package/.output/public/_nuxt/daq.zZ8GR433.css +0 -1
  312. package/.output/public/_nuxt/dcw.C46dGiF_.css +0 -1
  313. package/.output/public/_nuxt/eHGLpQSg2.js +0 -1
  314. package/.output/public/_nuxt/logs.DaIsHWZE.css +0 -1
  315. package/.output/public/_nuxt/p7wSGMtc.js +0 -1
  316. package/.output/public/_nuxt/plugins.FTm0PcEe.css +0 -1
  317. package/.output/public/_nuxt/teams.B8JNbUZg.css +0 -1
  318. package/.output/public/_nuxt/tokens.CWOTXM-Z.css +0 -1
  319. package/.output/public/_nuxt/ubPfs9mQ.js +0 -1
  320. package/.output/public/_nuxt/workshop.B98sHiJq.css +0 -1
  321. package/.output/server/chunks/build/_id_-C-ewLgfl.mjs.map +0 -1
  322. package/.output/server/chunks/build/_id_-Ct4Jhvl1.mjs.map +0 -1
  323. package/.output/server/chunks/build/agents-DSOptxXA.mjs.map +0 -1
  324. package/.output/server/chunks/build/channel-templates-BK0KuPOd.mjs.map +0 -1
  325. package/.output/server/chunks/build/daq-D9RA_uze.mjs.map +0 -1
  326. package/.output/server/chunks/build/dcw-BTM5YU-B.mjs.map +0 -1
  327. package/.output/server/chunks/build/logs-Dyk0I2I9.mjs.map +0 -1
  328. package/.output/server/chunks/build/pages-DR2bzczM.mjs.map +0 -1
  329. package/.output/server/chunks/build/plugins-DnOBIWGg.mjs.map +0 -1
  330. package/.output/server/chunks/build/teams-BhSKBBBM.mjs.map +0 -1
  331. package/.output/server/chunks/build/tokens-D_eyxmcv.mjs.map +0 -1
  332. package/.output/server/chunks/build/town-DPtOPRRO.mjs.map +0 -1
  333. package/.output/server/chunks/build/useDaqStream-hwkhJHFU.mjs.map +0 -1
  334. package/.output/server/chunks/build/useDcwStream-Bdew_yrr.mjs.map +0 -1
  335. package/.output/server/chunks/build/useDeviceTwins-C6EBg9oN.mjs.map +0 -1
  336. package/.output/server/chunks/build/useOpsLog-DdCqKVVG.mjs.map +0 -1
  337. package/.output/server/chunks/build/workshop-iCzNRifn.mjs.map +0 -1
@@ -21,11 +21,12 @@ 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 useUserStore } from './user-Dk-ytEUV.mjs';
23
23
  import { u as useWorkspacesStore } from './workspaces-IfORCDJE.mjs';
24
+ import { a as apiErrorMessage } from './api-error-dul30BYQ.mjs';
24
25
  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-B3j5wIAK.mjs';
25
26
  import { u as useWorkshopApi } from './useWorkshopApi-D2gq06N2.mjs';
26
27
  import { f as formatLocalClock } from './useLocalTime-9a4B-aHv.mjs';
27
28
  import { O as OmpTerminalPanel_default } from './OmpTerminalPanel-COphA1br.mjs';
28
- import { u as useStorage, T as TownView_default } from './TownView-B5KifIaT.mjs';
29
+ import { u as useStorage, T as TownView_default } from './TownView-D8DSdO3H.mjs';
29
30
  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
31
  import { ssrRenderAttrs, ssrRenderComponent, ssrInterpolate, ssrRenderAttr, ssrRenderClass, ssrRenderStyle, ssrRenderTeleport, ssrRenderList, ssrIncludeBooleanAttr, ssrRenderVNode } from 'vue/server-renderer';
31
32
  import '../_/nitro.mjs';
@@ -61,9 +62,9 @@ import 'axios';
61
62
  import './Col-biaNnEPf.mjs';
62
63
  import './responsiveObserve-CS0UB6wQ.mjs';
63
64
  import './useTownBus-D9SoIsAN.mjs';
64
- import './useDcwStream-Bdew_yrr.mjs';
65
- import './useDaqStream-hwkhJHFU.mjs';
66
- import './useDeviceTwins-C6EBg9oN.mjs';
65
+ import './useDcwStream-DNsivqI_.mjs';
66
+ import './useDaqStream-BVTRw8_H.mjs';
67
+ import './useDeviceTwins-WeIom7A6.mjs';
67
68
  import 'three';
68
69
  import 'three/examples/jsm/loaders/GLTFLoader.js';
69
70
  import 'three/examples/jsm/environments/RoomEnvironment.js';
@@ -2110,7 +2111,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2110
2111
  refreshChannels();
2111
2112
  api$1.success(t("channelSessionList.kn89jvs028"));
2112
2113
  } catch (e) {
2113
- api$1.error(t("channelSessionList.k1x2th9e041", { p0: e instanceof Error ? e.message : String(e) }));
2114
+ api$1.error(t("channelSessionList.k1x2th9e041", { p0: apiErrorMessage(e) }));
2114
2115
  } finally {
2115
2116
  mountSubmitting.value = false;
2116
2117
  }
@@ -2127,7 +2128,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2127
2128
  refreshChannels();
2128
2129
  } catch (e) {
2129
2130
  const err = e;
2130
- api$1.error(err?.data?.message ?? err?.message ?? t("channelSessionList.k97xi7u029"));
2131
+ api$1.error(apiErrorMessage(err, t("channelSessionList.k97xi7u029")));
2131
2132
  } finally {
2132
2133
  templateMounting.value = false;
2133
2134
  }
@@ -2206,7 +2207,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2206
2207
  settingsOpen.value = false;
2207
2208
  refreshChannels();
2208
2209
  } catch (e) {
2209
- api$1.error(e instanceof Error ? e.message : String(e));
2210
+ api$1.error(apiErrorMessage(e));
2210
2211
  } finally {
2211
2212
  settingsSaving.value = false;
2212
2213
  }
@@ -2241,7 +2242,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2241
2242
  saveTplOpen.value = false;
2242
2243
  refreshChannels();
2243
2244
  } catch (e) {
2244
- api$1.error(e instanceof Error ? e.message : String(e));
2245
+ api$1.error(apiErrorMessage(e));
2245
2246
  } finally {
2246
2247
  saveTplSubmitting.value = false;
2247
2248
  }
@@ -2261,9 +2262,9 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2261
2262
  const _component_a_radio_group = Group_default$1;
2262
2263
  const _component_a_radio = radio_default;
2263
2264
  const _component_workshop_file_selector_modal = FileSelectorModal_default;
2264
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "channel-list" }, _attrs))} data-v-e3cf21d7><div class="list-head" data-v-e3cf21d7><span class="title" data-v-e3cf21d7>Channels</span><span class="head-actions" data-v-e3cf21d7><button class="head-op im" type="button" title="Channel 模板中心" data-v-e3cf21d7><span class="i-tabler-layout-grid-add im-pop" data-v-e3cf21d7></span></button><button class="head-op im" type="button" title="新建 Channel" data-v-e3cf21d7><span class="i-tabler-plus im-pop" data-v-e3cf21d7></span></button></span></div>`);
2265
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "channel-list" }, _attrs))} data-v-b6386095><div class="list-head" data-v-b6386095><span class="title" data-v-b6386095>Channels</span><span class="head-actions" data-v-b6386095><button class="head-op im" type="button" title="Channel 模板中心" data-v-b6386095><span class="i-tabler-layout-grid-add im-pop" data-v-b6386095></span></button><button class="head-op im" type="button" title="新建 Channel" data-v-b6386095><span class="i-tabler-plus im-pop" data-v-b6386095></span></button></span></div>`);
2265
2266
  _push(ssrRenderComponent(_component_ClientOnly, null, {}, _parent));
2266
- _push(`<div class="mount-template" data-v-e3cf21d7>`);
2267
+ _push(`<div class="mount-template" data-v-b6386095>`);
2267
2268
  _push(ssrRenderComponent(_component_a_select, {
2268
2269
  value: unref(templateMountId),
2269
2270
  "onUpdate:value": ($event) => isRef(templateMountId) ? templateMountId.value = $event : null,
@@ -2281,7 +2282,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2281
2282
  })),
2282
2283
  onChange: mountFromTemplate
2283
2284
  }, null, _parent));
2284
- _push(`<div class="tpl-hint" data-v-e3cf21d7>${ssrInterpolate(_ctx.$t("channelSessionList.k18ppu31016"))}</div></div>`);
2285
+ _push(`<div class="tpl-hint" data-v-b6386095>${ssrInterpolate(_ctx.$t("channelSessionList.k18ppu31016"))}</div></div>`);
2285
2286
  _push(ssrRenderComponent(_component_a_modal, {
2286
2287
  open: unref(mountModal),
2287
2288
  "onUpdate:open": ($event) => isRef(mountModal) ? mountModal.value = $event : null,
@@ -2323,7 +2324,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2323
2324
  }, _parent, _scopeId));
2324
2325
  _push(ssrRenderComponent(_component_a_form_item, { label: _ctx.$t("channelSessionList.k1wj4f38004") }, {
2325
2326
  extra: withCtx((_, _push, _parent, _scopeId) => {
2326
- if (_push) _push(`<span class="ws-hint" data-v-e3cf21d7${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1u3zsr5017"))}</span>`);
2327
+ if (_push) _push(`<span class="ws-hint" data-v-b6386095${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1u3zsr5017"))}</span>`);
2327
2328
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("channelSessionList.k1u3zsr5017")), 1)];
2328
2329
  }),
2329
2330
  default: withCtx((_, _push, _parent, _scopeId) => {
@@ -2348,7 +2349,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2348
2349
  }, _parent, _scopeId));
2349
2350
  _push(ssrRenderComponent(_component_a_form_item, { label: _ctx.$t("channelSessionList.kmgv4h5006") }, {
2350
2351
  extra: withCtx((_, _push, _parent, _scopeId) => {
2351
- if (_push) _push(`<span class="ws-hint" data-v-e3cf21d7${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.kucq30k019"))}</span>`);
2352
+ if (_push) _push(`<span class="ws-hint" data-v-b6386095${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.kucq30k019"))}</span>`);
2352
2353
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("channelSessionList.kucq30k019")), 1)];
2353
2354
  }),
2354
2355
  default: withCtx((_, _push, _parent, _scopeId) => {
@@ -2412,7 +2413,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2412
2413
  }, _parent, _scopeId));
2413
2414
  _push(ssrRenderComponent(_component_a_form_item, null, {
2414
2415
  default: withCtx((_, _push, _parent, _scopeId) => {
2415
- if (_push) _push(`<span class="ws-hint" data-v-e3cf21d7${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1ful761020"))}</span>`);
2416
+ if (_push) _push(`<span class="ws-hint" data-v-b6386095${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1ful761020"))}</span>`);
2416
2417
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("channelSessionList.k1ful761020")), 1)];
2417
2418
  }),
2418
2419
  _: 1
@@ -2922,12 +2923,12 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
2922
2923
  onClick: openSaveTemplate
2923
2924
  }, {
2924
2925
  default: withCtx((_, _push, _parent, _scopeId) => {
2925
- if (_push) _push(`<span class="i-tabler-template" data-v-e3cf21d7${_scopeId}></span> ${ssrInterpolate(_ctx.$t("channelSessionList.k6kpql010"))}`);
2926
+ if (_push) _push(`<span class="i-tabler-template" data-v-b6386095${_scopeId}></span> ${ssrInterpolate(_ctx.$t("channelSessionList.k6kpql010"))}`);
2926
2927
  else return [createVNode("span", { class: "i-tabler-template" }), createTextVNode(" " + toDisplayString(_ctx.$t("channelSessionList.k6kpql010")), 1)];
2927
2928
  }),
2928
2929
  _: 1
2929
2930
  }, _parent, _scopeId));
2930
- _push(`<span class="ws-hint" data-v-e3cf21d7${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1x6kznr021"))}</span>`);
2931
+ _push(`<span class="ws-hint" data-v-b6386095${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.k1x6kznr021"))}</span>`);
2931
2932
  } else return [createVNode(_component_a_button, {
2932
2933
  size: "small",
2933
2934
  onClick: openSaveTemplate
@@ -3338,7 +3339,7 @@ var ChannelSessionList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
3338
3339
  }, _parent, _scopeId));
3339
3340
  _push(ssrRenderComponent(_component_a_form_item, null, {
3340
3341
  default: withCtx((_, _push, _parent, _scopeId) => {
3341
- if (_push) _push(`<span class="ws-hint" data-v-e3cf21d7${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.kl9btf7024"))}</span>`);
3342
+ if (_push) _push(`<span class="ws-hint" data-v-b6386095${_scopeId}>${ssrInterpolate(_ctx.$t("channelSessionList.kl9btf7024"))}</span>`);
3342
3343
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("channelSessionList.kl9btf7024")), 1)];
3343
3344
  }),
3344
3345
  _: 1
@@ -3454,7 +3455,7 @@ ChannelSessionList_vue_vue_type_script_setup_true_lang_default.setup = (props, c
3454
3455
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/ChannelSessionList.vue");
3455
3456
  return _sfc_setup$29 ? _sfc_setup$29(props, ctx) : void 0;
3456
3457
  };
3457
- var ChannelSessionList_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ChannelSessionList_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-e3cf21d7"]]), { __name: "WorkshopChannelSessionList" });
3458
+ var ChannelSessionList_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(ChannelSessionList_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-b6386095"]]), { __name: "WorkshopChannelSessionList" });
3458
3459
  //#endregion
3459
3460
  //#region app/components/workshop/LiveAgentBar.vue?vue&type=script&setup=true&lang.ts
3460
3461
  var LiveAgentBar_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -5052,7 +5053,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5052
5053
  api$1.success(t("agentLanesView.k21xjz2044", { p0: name }));
5053
5054
  editModalOpen.value = false;
5054
5055
  } catch (err) {
5055
- api$1.error(t("agentLanesView.k3jmrw1045", { p0: err instanceof Error ? err.message : String(err) }));
5056
+ api$1.error(t("agentLanesView.k3jmrw1045", { p0: apiErrorMessage(err) }));
5056
5057
  } finally {
5057
5058
  editSubmitting.value = false;
5058
5059
  }
@@ -5086,7 +5087,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5086
5087
  api$1.success(t("agentLanesView.k1g5ykr3046", { p0: name }));
5087
5088
  memberModalOpen.value = false;
5088
5089
  } catch (err) {
5089
- api$1.error(t("agentLanesView.k1j97j74047", { p0: err instanceof Error ? err.message : String(err) }));
5090
+ api$1.error(t("agentLanesView.k1j97j74047", { p0: apiErrorMessage(err) }));
5090
5091
  } finally {
5091
5092
  memberSubmitting.value = false;
5092
5093
  }
@@ -5111,7 +5112,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5111
5112
  }));
5112
5113
  memberModalOpen.value = false;
5113
5114
  } catch (err) {
5114
- const text = err instanceof Error ? err.message : String(err);
5115
+ const text = apiErrorMessage(err);
5115
5116
  api$1.error(`模板克隆失败${text.includes("LEAD_EXISTS") ? "(已有 lead,不能再添加 lead)" : `: ${text}`}`);
5116
5117
  } finally {
5117
5118
  memberSubmitting.value = false;
@@ -5132,7 +5133,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5132
5133
  }));
5133
5134
  memberModalOpen.value = false;
5134
5135
  } catch (err) {
5135
- const text = err instanceof Error ? err.message : String(err);
5136
+ const text = apiErrorMessage(err);
5136
5137
  api$1.error(`编组部署失败${text.includes("LEAD_EXISTS") ? "(channel 已有 lead,编组内 lead 成员冲突;请先移除现有 lead 或选用无 lead 编组)" : `: ${text}`}`);
5137
5138
  } finally {
5138
5139
  memberSubmitting.value = false;
@@ -5145,7 +5146,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5145
5146
  await api$4.removeChannelAgent(props.channelId, agentId);
5146
5147
  api$1.success(t("agentLanesView.k1n3o03a052", { p0: name }));
5147
5148
  } catch (err) {
5148
- api$1.error(t("agentLanesView.k13dsp10053", { p0: err instanceof Error ? err.message : String(err) }));
5149
+ api$1.error(t("agentLanesView.k13dsp10053", { p0: apiErrorMessage(err) }));
5149
5150
  } finally {
5150
5151
  removing.value = null;
5151
5152
  }
@@ -5157,7 +5158,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5157
5158
  await api$4.stopChannelAgent(props.channelId, agentId);
5158
5159
  api$1.success(t("agentLanesView.kcpbv47054", { p0: name }));
5159
5160
  } catch (err) {
5160
- api$1.error(t("agentLanesView.k139ec5j055", { p0: err instanceof Error ? err.message : String(err) }));
5161
+ api$1.error(t("agentLanesView.k139ec5j055", { p0: apiErrorMessage(err) }));
5161
5162
  } finally {
5162
5163
  stopping.value = null;
5163
5164
  }
@@ -5210,7 +5211,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5210
5211
  const _component_a_select = Select;
5211
5212
  const _component_a_space = Space;
5212
5213
  const _component_a_tag = Tag;
5213
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "lanes-wrap" }, _attrs))} data-v-ca0bbe05><div class="toolbar" data-v-ca0bbe05><div class="team-summary" data-v-ca0bbe05><span class="ts-label" data-v-ca0bbe05>${ssrInterpolate(_ctx.$t("agentLanesView.k3y5ja016"))}</span><span class="ts-count" data-v-ca0bbe05>${ssrInterpolate(unref(agents).length)}</span><span class="ts-unit" data-v-ca0bbe05>${ssrInterpolate(_ctx.$t("agentLanesView.k3ll6sa017"))}</span><span class="ts-detail" data-v-ca0bbe05>lead ${ssrInterpolate(unref(agents).filter((a) => a.role === "lead").length)} · worker ${ssrInterpolate(unref(agents).filter((a) => a.role === "worker").length)}</span></div>`);
5214
+ _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>`);
5214
5215
  _push(ssrRenderComponent(_component_a_button, {
5215
5216
  size: "small",
5216
5217
  type: "primary",
@@ -5218,34 +5219,34 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5218
5219
  onClick: openMemberModal
5219
5220
  }, {
5220
5221
  default: withCtx((_, _push, _parent, _scopeId) => {
5221
- if (_push) _push(`<span class="i-tabler-user-plus" data-v-ca0bbe05${_scopeId}></span><span data-v-ca0bbe05${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1fmutgo018"))}</span>`);
5222
+ 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>`);
5222
5223
  else return [createVNode("span", { class: "i-tabler-user-plus" }), createVNode("span", null, toDisplayString(_ctx.$t("agentLanesView.k1fmutgo018")), 1)];
5223
5224
  }),
5224
5225
  _: 1
5225
5226
  }, _parent));
5226
- _push(`</div><div class="lanes" data-v-ca0bbe05>`);
5227
+ _push(`</div><div class="lanes" data-v-3d57301f>`);
5227
5228
  if (unref(agents).length === 0) {
5228
- _push(`<div class="empty" data-v-ca0bbe05>`);
5229
- if (!unref(entities).channels[__props.channelId]) _push(`<!--[--><span class="i-tabler-refresh empty-icon" data-v-ca0bbe05></span><p class="empty-title" data-v-ca0bbe05>${ssrInterpolate(_ctx.$t("agentLanesView.k1woev5v019"))}</p><!--]-->`);
5230
- else _push(`<!--[--><span class="i-tabler-users-group empty-icon" data-v-ca0bbe05></span><p class="empty-title" data-v-ca0bbe05>${ssrInterpolate(_ctx.$t("agentLanesView.k122h4pc020"))}</p><p class="empty-hint" data-v-ca0bbe05>${ssrInterpolate(_ctx.$t("agentLanesView.k7cr2h8021"))}</p><!--]-->`);
5229
+ _push(`<div class="empty" data-v-3d57301f>`);
5230
+ 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><!--]-->`);
5231
+ 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><!--]-->`);
5231
5232
  _push(`</div>`);
5232
5233
  } else _push(`<!---->`);
5233
5234
  _push(`<!--[-->`);
5234
5235
  ssrRenderList(unref(agents), (a) => {
5235
- _push(`<!--[--><div class="lane" style="${ssrRenderStyle({ flexBasis: `${laneWidth(a.agentId)}px` })}" data-v-ca0bbe05><div class="lane-head" data-v-ca0bbe05><div class="head-top" data-v-ca0bbe05><span class="lane-ava" data-v-ca0bbe05><span style="${ssrRenderStyle({ "--av": laneHue(a.agentId) })}" data-v-ca0bbe05>${ssrInterpolate(laneInitial(a.name))}</span><span class="${ssrRenderClass([a.state, "lane-state"])}" data-v-ca0bbe05></span></span><span class="lane-name"${ssrRenderAttr("title", a.name)} data-v-ca0bbe05>${ssrInterpolate(a.name)}</span>`);
5236
- if (a.config?.systemPromptPrefix) _push(`<span class="lane-chip"${ssrRenderAttr("title", _ctx.$t("agentLanesView.k107s4am001"))} data-v-ca0bbe05>${ssrInterpolate(_ctx.$t("agentLanesView.k3xycu022"))}</span>`);
5236
+ _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>`);
5237
+ if (a.config?.systemPromptPrefix) _push(`<span class="lane-chip"${ssrRenderAttr("title", _ctx.$t("agentLanesView.k107s4am001"))} data-v-3d57301f>${ssrInterpolate(_ctx.$t("agentLanesView.k3xycu022"))}</span>`);
5237
5238
  else _push(`<!---->`);
5238
- _push(`<span class="${ssrRenderClass([a.role, "lane-role"])}" data-v-ca0bbe05>${ssrInterpolate(a.role)}</span>`);
5239
- 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-ca0bbe05><span class="term-dot" style="${ssrRenderStyle({ background: TERM_DOT[termBadge(unref(terminalOf).get(a.agentId)).color] ?? "var(--tone-neutral-dot)" })}" data-v-ca0bbe05></span> ${ssrInterpolate(termBadge(unref(terminalOf).get(a.agentId)).text)}</span>`);
5239
+ _push(`<span class="${ssrRenderClass([a.role, "lane-role"])}" data-v-3d57301f>${ssrInterpolate(a.role)}</span>`);
5240
+ 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>`);
5240
5241
  else _push(`<!---->`);
5241
- _push(`</div><div class="head-sub" data-v-ca0bbe05><span class="lane-meta" data-v-ca0bbe05>`);
5242
+ _push(`</div><div class="head-sub" data-v-3d57301f><span class="lane-meta" data-v-3d57301f>`);
5242
5243
  if (a.state === "busy" && a.currentTaskTitle) {
5243
5244
  _push(`<!--[-->${ssrInterpolate(a.currentTaskTitle)} `);
5244
- if (a.currentTaskProgress != null) _push(`<span class="lane-progress" data-v-ca0bbe05>${ssrInterpolate(a.currentTaskProgress)}%</span>`);
5245
+ if (a.currentTaskProgress != null) _push(`<span class="lane-progress" data-v-3d57301f>${ssrInterpolate(a.currentTaskProgress)}%</span>`);
5245
5246
  else _push(`<!---->`);
5246
5247
  _push(`<!--]-->`);
5247
5248
  } else _push(`<!--[-->${ssrInterpolate(a.state)} · Q${ssrInterpolate(a.queued ?? 0)}<!--]-->`);
5248
- _push(`</span><div class="lane-actions" data-v-ca0bbe05>`);
5249
+ _push(`</span><div class="lane-actions" data-v-3d57301f>`);
5249
5250
  if (a.harness === "omp") _push(ssrRenderComponent(_component_a_button, {
5250
5251
  size: "small",
5251
5252
  type: "primary",
@@ -5255,7 +5256,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5255
5256
  onClick: ($event) => openTerminal(a)
5256
5257
  }, {
5257
5258
  default: withCtx((_, _push, _parent, _scopeId) => {
5258
- if (_push) _push(`<span class="i-tabler-terminal-2" data-v-ca0bbe05${_scopeId}></span><span class="term-label" data-v-ca0bbe05${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k4588s023"))}</span>`);
5259
+ 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>`);
5259
5260
  else return [createVNode("span", { class: "i-tabler-terminal-2" }), createVNode("span", { class: "term-label" }, toDisplayString(_ctx.$t("agentLanesView.k4588s023")), 1)];
5260
5261
  }),
5261
5262
  _: 2
@@ -5269,12 +5270,12 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5269
5270
  onClick: ($event) => openEditMember(a)
5270
5271
  }, {
5271
5272
  default: withCtx((_, _push, _parent, _scopeId) => {
5272
- if (_push) _push(`<span class="i-tabler-edit" data-v-ca0bbe05${_scopeId}></span>`);
5273
+ if (_push) _push(`<span class="i-tabler-edit" data-v-3d57301f${_scopeId}></span>`);
5273
5274
  else return [createVNode("span", { class: "i-tabler-edit" })];
5274
5275
  }),
5275
5276
  _: 2
5276
5277
  }, _parent));
5277
- _push(`<span class="actions-divider" data-v-ca0bbe05></span>`);
5278
+ _push(`<span class="actions-divider" data-v-3d57301f></span>`);
5278
5279
  _push(ssrRenderComponent(_component_a_popconfirm, {
5279
5280
  title: _ctx.$t("agentLanesView.k1l029kf037", { p0: a.name }),
5280
5281
  "ok-text": "停止",
@@ -5290,7 +5291,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5290
5291
  title: "HITL 停止该 Agent 运行时"
5291
5292
  }, {
5292
5293
  default: withCtx((_, _push, _parent, _scopeId) => {
5293
- if (_push) _push(`<span class="i-tabler-player-stop" data-v-ca0bbe05${_scopeId}></span>`);
5294
+ if (_push) _push(`<span class="i-tabler-player-stop" data-v-3d57301f${_scopeId}></span>`);
5294
5295
  else return [createVNode("span", { class: "i-tabler-player-stop" })];
5295
5296
  }),
5296
5297
  _: 2
@@ -5323,7 +5324,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5323
5324
  loading: unref(removing) === a.agentId
5324
5325
  }, {
5325
5326
  default: withCtx((_, _push, _parent, _scopeId) => {
5326
- if (_push) _push(`<span class="i-tabler-x" data-v-ca0bbe05${_scopeId}></span>`);
5327
+ if (_push) _push(`<span class="i-tabler-x" data-v-3d57301f${_scopeId}></span>`);
5327
5328
  else return [createVNode("span", { class: "i-tabler-x" })];
5328
5329
  }),
5329
5330
  _: 2
@@ -5341,7 +5342,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5341
5342
  }),
5342
5343
  _: 2
5343
5344
  }, _parent));
5344
- _push(`</div></div></div><div class="lane-body" data-v-ca0bbe05>`);
5345
+ _push(`</div></div></div><div class="lane-body" data-v-3d57301f>`);
5345
5346
  _push(ssrRenderComponent(LaneBlocks_default, {
5346
5347
  "channel-id": __props.channelId,
5347
5348
  "agent-id": a.agentId
@@ -5741,7 +5742,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5741
5742
  }),
5742
5743
  _: 1
5743
5744
  }, _parent, _scopeId));
5744
- _push(`<div class="mode-hint" data-v-ca0bbe05${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.knybb6r029"))}</div>`);
5745
+ _push(`<div class="mode-hint" data-v-3d57301f${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.knybb6r029"))}</div>`);
5745
5746
  } else return [
5746
5747
  createVNode(_component_a_form_item, { label: "选择 Agent 模板(克隆 name/harness/config 为独立实例)" }, {
5747
5748
  default: withCtx(() => [createVNode(_component_a_select, {
@@ -5836,7 +5837,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
5836
5837
  }),
5837
5838
  _: 1
5838
5839
  }, _parent, _scopeId));
5839
- _push(`<div class="mode-hint" data-v-ca0bbe05${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1qqnq5030"))}</div>`);
5840
+ _push(`<div class="mode-hint" data-v-3d57301f${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1qqnq5030"))}</div>`);
5840
5841
  } else return [createVNode(_component_a_form_item, { label: _ctx.$t("agentLanesView.k29om9b013") }, {
5841
5842
  default: withCtx(() => [createVNode(_component_a_select, {
5842
5843
  value: unref(selectedTeamId),
@@ -6109,7 +6110,7 @@ var AgentLanesView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
6109
6110
  }, _parent, _scopeId));
6110
6111
  _push(ssrRenderComponent(_component_a_form_item, { label: "场景系统提示词(systemPromptPrefix)" }, {
6111
6112
  extra: withCtx((_, _push, _parent, _scopeId) => {
6112
- if (_push) _push(`<span class="ws-hint" data-v-ca0bbe05${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1rw1rd2031"))}</span>`);
6113
+ if (_push) _push(`<span class="ws-hint" data-v-3d57301f${_scopeId}>${ssrInterpolate(_ctx.$t("agentLanesView.k1rw1rd2031"))}</span>`);
6113
6114
  else return [createVNode("span", { class: "ws-hint" }, toDisplayString(_ctx.$t("agentLanesView.k1rw1rd2031")), 1)];
6114
6115
  }),
6115
6116
  default: withCtx((_, _push, _parent, _scopeId) => {
@@ -6236,7 +6237,7 @@ AgentLanesView_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx)
6236
6237
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/AgentLanesView.vue");
6237
6238
  return _sfc_setup$11 ? _sfc_setup$11(props, ctx) : void 0;
6238
6239
  };
6239
- var AgentLanesView_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(AgentLanesView_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-ca0bbe05"]]), { __name: "WorkshopAgentLanesView" });
6240
+ 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" });
6240
6241
  //#endregion
6241
6242
  //#region app/components/workshop/TaskBoardView.vue?vue&type=script&setup=true&lang.ts
6242
6243
  var TaskBoardView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -6367,20 +6368,20 @@ var TaskBoardView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
6367
6368
  });
6368
6369
  return (_ctx, _push, _parent, _attrs) => {
6369
6370
  const _component_a_progress = progress_default;
6370
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "board-shell" }, _attrs))} data-v-2cc09da6><div class="toolbar" data-v-2cc09da6><div class="aw-seg" data-v-2cc09da6><button type="button" class="${ssrRenderClass({ on: unref(layout) === "board" })}" data-v-2cc09da6>${ssrInterpolate(_ctx.$t("taskBoardView.k43pyn001"))}</button><button type="button" class="${ssrRenderClass({ on: unref(layout) === "list" })}" data-v-2cc09da6>${ssrInterpolate(_ctx.$t("taskBoardView.k3x7l0002"))}</button></div><span class="count" data-v-2cc09da6>${ssrInterpolate(unref(mergedTasks).length)} ${ssrInterpolate(_ctx.$t("taskBoardView.k168w1ze004"))}</span></div>`);
6371
- if (unref(mergedTasks).length === 0) _push(`<div class="pane-empty" data-v-2cc09da6><span class="${ssrRenderClass(unref(synced) ? "pe-icon i-tabler-list-check" : "pe-icon i-tabler-refresh")}" data-v-2cc09da6></span><div class="pe-title" data-v-2cc09da6>${ssrInterpolate(unref(synced) ? _ctx.$t("taskBoardView.k3vkhhj006") : _ctx.$t("taskBoardView.k1f9c17l019"))} <span class="aw-serif-accent-italic" data-v-2cc09da6>${ssrInterpolate(_ctx.$t("taskBoardView.k3wcox003"))}</span></div><div class="pe-sub" data-v-2cc09da6>${ssrInterpolate(unref(synced) ? "在下方 Composer 提交首个任务(首行标题,支持 goal / loop / pipeline 模式)" : "任务快照对齐后自动呈现")}</div></div>`);
6371
+ _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>`);
6372
+ 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>`);
6372
6373
  else if (unref(layout) === "board") {
6373
- _push(`<div class="board" data-v-2cc09da6><!--[-->`);
6374
+ _push(`<div class="board" data-v-22725176><!--[-->`);
6374
6375
  ssrRenderList(unref(columns), (col) => {
6375
- _push(`<div class="${ssrRenderClass([colClasses(col), "task-col"])}" data-v-2cc09da6><div class="sec" data-v-2cc09da6><span class="st-dot" style="${ssrRenderStyle({ background: col.dot })}" data-v-2cc09da6></span><span class="sec-title" data-v-2cc09da6>${ssrInterpolate(col.title)}</span><span class="sec-cnt" data-v-2cc09da6>${ssrInterpolate(col.items.length)}</span></div><div class="task-col-body" data-v-2cc09da6><!--[-->`);
6376
+ _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><!--[-->`);
6376
6377
  ssrRenderList(col.items, (t) => {
6377
- _push(`<div class="${ssrRenderClass([{ dragging: unref(dragId) === t.id }, "card task"])}" draggable="true" data-v-2cc09da6><div class="tk-chan" data-v-2cc09da6><span data-v-2cc09da6>#${ssrInterpolate(agentName(t.assigneeId))}</span>`);
6378
- if (childCount(t.id)) _push(`<span class="tk-num" data-v-2cc09da6>${ssrInterpolate(_ctx.$t("taskBoardView.k4b1x005"))} ${ssrInterpolate(childCount(t.id))}</span>`);
6378
+ _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>`);
6379
+ if (childCount(t.id)) _push(`<span class="tk-num" data-v-22725176>${ssrInterpolate(_ctx.$t("taskBoardView.k4b1x005"))} ${ssrInterpolate(childCount(t.id))}</span>`);
6379
6380
  else _push(`<!---->`);
6380
- if (t.artifacts) _push(`<span class="tk-num" data-v-2cc09da6><span class="i-tabler-package" data-v-2cc09da6></span> ${ssrInterpolate(t.artifacts)}</span>`);
6381
+ if (t.artifacts) _push(`<span class="tk-num" data-v-22725176><span class="i-tabler-package" data-v-22725176></span> ${ssrInterpolate(t.artifacts)}</span>`);
6381
6382
  else _push(`<!---->`);
6382
- _push(`</div><div class="tk-title" data-v-2cc09da6>${ssrInterpolate(t.title)}</div>`);
6383
- if (t.routeReason) _push(`<div class="tk-route"${ssrRenderAttr("title", _ctx.$t("taskBoardView.k8m7hm6020", { p0: t.routeReason }))} data-v-2cc09da6> ↳ ${ssrInterpolate(t.routeReason)}</div>`);
6383
+ _push(`</div><div class="tk-title" data-v-22725176>${ssrInterpolate(t.title)}</div>`);
6384
+ if (t.routeReason) _push(`<div class="tk-route"${ssrRenderAttr("title", _ctx.$t("taskBoardView.k8m7hm6020", { p0: t.routeReason }))} data-v-22725176> ↳ ${ssrInterpolate(t.routeReason)}</div>`);
6384
6385
  else _push(`<!---->`);
6385
6386
  if (t.state === "WORKING" && t.progress > 0) _push(ssrRenderComponent(_component_a_progress, {
6386
6387
  percent: t.progress,
@@ -6388,41 +6389,41 @@ var TaskBoardView_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
6388
6389
  "show-info": false
6389
6390
  }, null, _parent));
6390
6391
  else _push(`<!---->`);
6391
- _push(`<div class="tk-foot" data-v-2cc09da6><button type="button" class="st-pill-btn" data-v-2cc09da6><span class="st-pill" style="${ssrRenderStyle({
6392
+ _push(`<div class="tk-foot" data-v-22725176><button type="button" class="st-pill-btn" data-v-22725176><span class="st-pill" style="${ssrRenderStyle({
6392
6393
  color: col.dot,
6393
6394
  borderColor: col.dot
6394
- })}" data-v-2cc09da6>${ssrInterpolate(col.title)}</span></button></div></div>`);
6395
+ })}" data-v-22725176>${ssrInterpolate(col.title)}</span></button></div></div>`);
6395
6396
  });
6396
6397
  _push(`<!--]-->`);
6397
- if (col.items.length === 0) _push(`<div class="col-empty" data-v-2cc09da6>${ssrInterpolate(col.moveAction ? _ctx.$t("taskBoardView.k13pad50007") : "-")}</div>`);
6398
+ if (col.items.length === 0) _push(`<div class="col-empty" data-v-22725176>${ssrInterpolate(col.moveAction ? _ctx.$t("taskBoardView.k13pad50007") : "-")}</div>`);
6398
6399
  else _push(`<!---->`);
6399
6400
  _push(`</div></div>`);
6400
6401
  });
6401
6402
  _push(`<!--]--></div>`);
6402
6403
  } else {
6403
- _push(`<div class="task-list" data-v-2cc09da6><!--[-->`);
6404
+ _push(`<div class="task-list" data-v-22725176><!--[-->`);
6404
6405
  ssrRenderList(unref(columns), (col) => {
6405
6406
  _push(`<!--[-->`);
6406
- if (col.items.length) _push(`<div class="list-sec sec" data-v-2cc09da6><span class="st-dot" style="${ssrRenderStyle({ background: col.dot })}" data-v-2cc09da6></span><span class="sec-title" data-v-2cc09da6>${ssrInterpolate(col.title)}</span><span class="sec-cnt" data-v-2cc09da6>${ssrInterpolate(col.items.length)}</span></div>`);
6407
+ 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>`);
6407
6408
  else _push(`<!---->`);
6408
6409
  _push(`<!--[-->`);
6409
6410
  ssrRenderList(col.items, (t) => {
6410
- _push(`<div class="list-row" data-v-2cc09da6><span class="grow" data-v-2cc09da6>${ssrInterpolate(t.title)}</span><span class="lnum" data-v-2cc09da6>#${ssrInterpolate(agentName(t.assigneeId))}</span><span class="meta" data-v-2cc09da6>${ssrInterpolate(t.id.slice(0, 8))}</span><span class="st-pill" style="${ssrRenderStyle({
6411
+ _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({
6411
6412
  color: col.dot,
6412
6413
  borderColor: col.dot
6413
- })}" data-v-2cc09da6>${ssrInterpolate(stateOf(t))}</span></div>`);
6414
+ })}" data-v-22725176>${ssrInterpolate(stateOf(t))}</span></div>`);
6414
6415
  });
6415
6416
  _push(`<!--]--><!--]-->`);
6416
6417
  });
6417
6418
  _push(`<!--]--></div>`);
6418
6419
  }
6419
6420
  if (unref(menu)) {
6420
- _push(`<!--[--><div class="menu-backdrop" data-v-2cc09da6></div><div class="st-menu" style="${ssrRenderStyle({
6421
+ _push(`<!--[--><div class="menu-backdrop" data-v-22725176></div><div class="st-menu" style="${ssrRenderStyle({
6421
6422
  left: `${unref(menu).x}px`,
6422
6423
  top: `${unref(menu).y}px`
6423
- })}" data-v-2cc09da6><!--[-->`);
6424
+ })}" data-v-22725176><!--[-->`);
6424
6425
  ssrRenderList(unref(menuActions), (a) => {
6425
- _push(`<button type="button" class="${ssrRenderClass({ danger: a.danger })}" data-v-2cc09da6><span class="${ssrRenderClass(a.key === "cancel" ? "i-tabler-circle-off" : a.key === "retry" ? "i-tabler-rotate" : "i-tabler-external-link")}" data-v-2cc09da6></span> ${ssrInterpolate(a.label)}</button>`);
6426
+ _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>`);
6426
6427
  });
6427
6428
  _push(`<!--]--></div><!--]-->`);
6428
6429
  } else _push(`<!---->`);
@@ -6438,7 +6439,7 @@ TaskBoardView_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) =
6438
6439
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/TaskBoardView.vue");
6439
6440
  return _sfc_setup$10 ? _sfc_setup$10(props, ctx) : void 0;
6440
6441
  };
6441
- var TaskBoardView_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(TaskBoardView_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-2cc09da6"]]), { __name: "WorkshopTaskBoardView" });
6442
+ 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" });
6442
6443
  //#endregion
6443
6444
  //#region app/components/workshop/MultiChannelView.vue?vue&type=script&setup=true&lang.ts
6444
6445
  var COL_W_DEFAULT = 360;
@@ -7645,33 +7646,33 @@ var Composer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
7645
7646
  return (_ctx, _push, _parent, _attrs) => {
7646
7647
  const _component_a_select = Select;
7647
7648
  const _component_a_input_number = input_number_default;
7648
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "composer" }, _attrs))} data-v-764aae70><div class="composer-box" data-v-764aae70>`);
7649
+ _push(`<div${ssrRenderAttrs(mergeProps({ class: "composer" }, _attrs))} data-v-dced774b><div class="composer-box" data-v-dced774b>`);
7649
7650
  if (unref(mentionOpen)) {
7650
- _push(`<div class="mention-menu" data-v-764aae70><div class="mention-title" data-v-764aae70>${ssrInterpolate(_ctx.$t("composer.k1bxvc46004"))}</div><!--[-->`);
7651
+ _push(`<div class="mention-menu" data-v-dced774b><div class="mention-title" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k1bxvc46004"))}</div><!--[-->`);
7651
7652
  ssrRenderList(unref(mentionCandidates), (a, i) => {
7652
- _push(`<button type="button" class="${ssrRenderClass([{ sel: i === unref(mentionHi) }, "mention-opt"])}" data-v-764aae70><span class="aw-avatar is-agent mention-ava" style="${ssrRenderStyle({ "--av": unref(agentHueColor)(a.agentId) })}" data-v-764aae70>${ssrInterpolate(a.name.charAt(0).toUpperCase())}</span><span class="mention-name" data-v-764aae70>@${ssrInterpolate(a.name)}</span><span class="mention-role" data-v-764aae70>${ssrInterpolate(a.role)}</span><span class="${ssrRenderClass([a.state, "mention-state"])}"${ssrRenderAttr("title", a.state)} data-v-764aae70></span></button>`);
7653
+ _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>`);
7653
7654
  });
7654
7655
  _push(`<!--]--></div>`);
7655
7656
  } else _push(`<!---->`);
7656
- _push(`<div class="composer-status-chip" data-v-764aae70>`);
7657
+ _push(`<div class="composer-status-chip" data-v-dced774b>`);
7657
7658
  if (unref(mode) === "task") {
7658
- _push(`<!--[--><span class="chip-key" data-v-764aae70>${ssrInterpolate(_ctx.$t("composer.k3wcox005"))}</span><span data-v-764aae70>${ssrInterpolate(unref(taskMode))}</span>`);
7659
- if (unref(taskMode) === "loop") _push(`<span data-v-764aae70>${ssrInterpolate(_ctx.$t("composer.k49kr1011"))} ${ssrInterpolate(unref(loopIntervalSeconds) ?? "-")}s </span>`);
7659
+ _push(`<!--[--><span class="chip-key" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k3wcox005"))}</span><span data-v-dced774b>${ssrInterpolate(unref(taskMode))}</span>`);
7660
+ if (unref(taskMode) === "loop") _push(`<span data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k49kr1011"))} ${ssrInterpolate(unref(loopIntervalSeconds) ?? "-")}s </span>`);
7660
7661
  else _push(`<!---->`);
7661
- _push(`<span class="chip-target"${ssrRenderAttr("title", unref(isDefaultLead) ? "未 @ 指定:任务自动路由 lead 调度;@ 某成员可直发" : _ctx.$t("composer.kl3604i033", { p0: unref(targetName) }))} data-v-764aae70>→ ${ssrInterpolate(unref(targetName) ? `@${unref(targetName)}` : "lead")}${ssrInterpolate(unref(isDefaultLead) ? _ctx.$t("composer.k2z7yuw012") : _ctx.$t("composer.k2z0fsx032"))}</span>`);
7662
- if (unref(reachHint)) _push(`<span class="reach-chip"${ssrRenderAttr("data-tone", unref(reachHint).tone)}${ssrRenderAttr("title", unref(reachHint).title)} data-v-764aae70><span class="reach-dot" aria-hidden="true" data-v-764aae70></span>${ssrInterpolate(unref(reachHint).text)}</span>`);
7662
+ _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>`);
7663
+ 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>`);
7663
7664
  else _push(`<!---->`);
7664
- _push(`<span class="chip-hint" data-v-764aae70>${ssrInterpolate(_ctx.$t("composer.k17u6q77006"))}</span><!--]-->`);
7665
+ _push(`<span class="chip-hint" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k17u6q77006"))}</span><!--]-->`);
7665
7666
  } else {
7666
- _push(`<!--[--><span class="chip-key" data-v-764aae70>${ssrInterpolate(_ctx.$t("composer.k41ykc007"))}</span>`);
7667
- if (unref(targetName)) _push(`<span data-v-764aae70>@${ssrInterpolate(unref(targetName))}${ssrInterpolate(unref(isDefaultLead) ? _ctx.$t("composer.k2z7yuw012") : "")}</span>`);
7667
+ _push(`<!--[--><span class="chip-key" data-v-dced774b>${ssrInterpolate(_ctx.$t("composer.k41ykc007"))}</span>`);
7668
+ if (unref(targetName)) _push(`<span data-v-dced774b>@${ssrInterpolate(unref(targetName))}${ssrInterpolate(unref(isDefaultLead) ? _ctx.$t("composer.k2z7yuw012") : "")}</span>`);
7668
7669
  else _push(`<!---->`);
7669
- _push(`<span data-v-764aae70>${ssrInterpolate(unref(priority) === "immediate" ? _ctx.$t("composer.k1bosqfv013") : _ctx.$t("composer.k40g8m009"))}</span>`);
7670
- if (unref(reachHint)) _push(`<span class="reach-chip"${ssrRenderAttr("data-tone", unref(reachHint).tone)}${ssrRenderAttr("title", unref(reachHint).title)} data-v-764aae70><span class="reach-dot" aria-hidden="true" data-v-764aae70></span>${ssrInterpolate(unref(reachHint).text)}</span>`);
7670
+ _push(`<span data-v-dced774b>${ssrInterpolate(unref(priority) === "immediate" ? _ctx.$t("composer.k1bosqfv013") : _ctx.$t("composer.k40g8m009"))}</span>`);
7671
+ 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>`);
7671
7672
  else _push(`<!---->`);
7672
- _push(`<span class="chip-hint" data-v-764aae70>输入 @ 提及成员 · ⌘/Ctrl+Enter 发送</span><!--]-->`);
7673
+ _push(`<span class="chip-hint" data-v-dced774b>输入 @ 提及成员 · ⌘/Ctrl+Enter 发送</span><!--]-->`);
7673
7674
  }
7674
- _push(`</div><textarea class="composer-input" rows="1"${ssrRenderAttr("placeholder", unref(placeholder))} data-v-764aae70>${ssrInterpolate(unref(input))}</textarea><div class="composer-bar" data-v-764aae70><div class="cb-left" data-v-764aae70><div class="aw-seg" data-v-764aae70><button type="button" class="${ssrRenderClass({ on: unref(mode) === "task" })}" data-v-764aae70>${ssrInterpolate(_ctx.$t("composer.k3wcox005"))}</button><button type="button" class="${ssrRenderClass({ on: unref(mode) === "message" })}" data-v-764aae70>${ssrInterpolate(_ctx.$t("composer.k41ykc007"))}</button></div>`);
7675
+ _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>`);
7675
7676
  _push(ssrRenderComponent(_component_a_select, {
7676
7677
  value: unref(toAgentId),
7677
7678
  "onUpdate:value": ($event) => isRef(toAgentId) ? toAgentId.value = $event : null,
@@ -7683,13 +7684,13 @@ var Composer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
7683
7684
  }))
7684
7685
  }, null, _parent));
7685
7686
  if (unref(mode) === "task") {
7686
- _push(`<!--[--><div class="aw-seg" data-v-764aae70><!--[-->`);
7687
+ _push(`<!--[--><div class="aw-seg" data-v-dced774b><!--[-->`);
7687
7688
  ssrRenderList([
7688
7689
  "goal",
7689
7690
  "loop",
7690
7691
  "pipeline"
7691
7692
  ], (m) => {
7692
- _push(`<button type="button" class="${ssrRenderClass({ on: unref(taskMode) === m })}" data-v-764aae70>${ssrInterpolate(m)}</button>`);
7693
+ _push(`<button type="button" class="${ssrRenderClass({ on: unref(taskMode) === m })}" data-v-dced774b>${ssrInterpolate(m)}</button>`);
7693
7694
  });
7694
7695
  _push(`<!--]--></div>`);
7695
7696
  if (unref(taskMode) === "loop") {
@@ -7719,8 +7720,8 @@ var Composer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
7719
7720
  _push(`<!--]-->`);
7720
7721
  } else _push(`<!---->`);
7721
7722
  _push(`<!--]-->`);
7722
- } else _push(`<!--[--><div class="aw-seg" data-v-764aae70><button type="button" class="${ssrRenderClass({ on: unref(priority) === "immediate" })}"${ssrRenderAttr("title", _ctx.$t("composer.k1jqqvhe002"))} data-v-764aae70>${ssrInterpolate(_ctx.$t("composer.k3x9n2008"))}</button><button type="button" class="${ssrRenderClass({ on: unref(priority) === "task" })}" data-v-764aae70>${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-764aae70><span class="i-tabler-mail-forward" data-v-764aae70></span> ${ssrInterpolate(_ctx.$t("composer.k3xv7u010"))}</button><!--]-->`);
7723
- _push(`</div><div class="cb-right" data-v-764aae70><button type="button" class="send-btn im"${ssrIncludeBooleanAttr(unref(sendLoading) || !unref(input).trim()) ? " disabled" : ""} title="发送(⌘/Ctrl+Enter)" data-v-764aae70><span class="i-tabler-send im-nudge-up" data-v-764aae70></span></button></div></div></div></div>`);
7723
+ } 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><!--]-->`);
7724
+ _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>`);
7724
7725
  };
7725
7726
  }
7726
7727
  });
@@ -7732,7 +7733,7 @@ Composer_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
7732
7733
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/Composer.vue");
7733
7734
  return _sfc_setup$5 ? _sfc_setup$5(props, ctx) : void 0;
7734
7735
  };
7735
- var Composer_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(Composer_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-764aae70"]]), { __name: "WorkshopComposer" });
7736
+ 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" });
7736
7737
  //#endregion
7737
7738
  //#region app/components/workshop/AgentInspectorDrawer.vue?vue&type=script&setup=true&lang.ts
7738
7739
  var DRAWER_W_DEFAULT$2 = 520;
@@ -7784,7 +7785,7 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
7784
7785
  });
7785
7786
  api$1.success(checked === true ? t("agentInspectorDrawer.k3n5z7y016") : t("agentInspectorDrawer.k1dst50d017"));
7786
7787
  } catch (e) {
7787
- api$1.error(e instanceof Error ? e.message : String(e));
7788
+ api$1.error(apiErrorMessage(e));
7788
7789
  } finally {
7789
7790
  toggling.value = false;
7790
7791
  }
@@ -7800,7 +7801,7 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
7800
7801
  open.value = false;
7801
7802
  emit("removed", props.agentId);
7802
7803
  } catch (e) {
7803
- api$1.error(e instanceof Error ? e.message : String(e));
7804
+ api$1.error(apiErrorMessage(e));
7804
7805
  } finally {
7805
7806
  removing.value = false;
7806
7807
  }
@@ -7849,7 +7850,7 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
7849
7850
  api$1.success(t("agentInspectorDrawer.k1y2jrsr021"));
7850
7851
  sendText.value = "";
7851
7852
  } catch (e) {
7852
- api$1.error(e instanceof Error ? e.message : String(e));
7853
+ api$1.error(apiErrorMessage(e));
7853
7854
  } finally {
7854
7855
  sending.value = false;
7855
7856
  }
@@ -7891,7 +7892,7 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
7891
7892
  onReset: ($event) => drawerWidth.value = DRAWER_W_DEFAULT$2
7892
7893
  }, null, _parent, _scopeId));
7893
7894
  if (unref(agent)) {
7894
- _push(`<!--[--><div class="head" data-v-52ff0158${_scopeId}><span class="dot" style="${ssrRenderStyle({ background: stateDot[unref(agent).state] ?? "var(--tone-neutral-dot)" })}" data-v-52ff0158${_scopeId}></span><span class="state-text" data-v-52ff0158${_scopeId}>${ssrInterpolate(unref(agent).state)}</span><span class="role-chip" data-v-52ff0158${_scopeId}>${ssrInterpolate(unref(agent).harness)}</span><span class="queue-meta" data-v-52ff0158${_scopeId}>${ssrInterpolate(_ctx.$t("agentInspectorDrawer.k498bf010"))}${ssrInterpolate(unref(agent).queued ?? 0)} · ${ssrInterpolate(_ctx.$t("agentInspectorDrawer.k3ypnl022"))}${ssrInterpolate(unref(agent).completed ?? 0)}</span>`);
7895
+ _push(`<!--[--><div class="head" data-v-857e6de6${_scopeId}><span class="dot" style="${ssrRenderStyle({ background: stateDot[unref(agent).state] ?? "var(--tone-neutral-dot)" })}" data-v-857e6de6${_scopeId}></span><span class="state-text" data-v-857e6de6${_scopeId}>${ssrInterpolate(unref(agent).state)}</span><span class="role-chip" data-v-857e6de6${_scopeId}>${ssrInterpolate(unref(agent).harness)}</span><span class="queue-meta" data-v-857e6de6${_scopeId}>${ssrInterpolate(_ctx.$t("agentInspectorDrawer.k498bf010"))}${ssrInterpolate(unref(agent).queued ?? 0)} · ${ssrInterpolate(_ctx.$t("agentInspectorDrawer.k3ypnl022"))}${ssrInterpolate(unref(agent).completed ?? 0)}</span>`);
7895
7896
  _push(ssrRenderComponent(_component_a_button, {
7896
7897
  size: "small",
7897
7898
  type: unref(focusActive) ? "primary" : "default",
@@ -7904,7 +7905,7 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
7904
7905
  _: 1
7905
7906
  }, _parent, _scopeId));
7906
7907
  _push(`</div>`);
7907
- if (unref(currentTitle)) _push(`<div class="current-task" data-v-52ff0158${_scopeId}>${ssrInterpolate(_ctx.$t("agentInspectorDrawer.kk653nv011"))}${ssrInterpolate(unref(currentTitle))}」 </div>`);
7908
+ if (unref(currentTitle)) _push(`<div class="current-task" data-v-857e6de6${_scopeId}>${ssrInterpolate(_ctx.$t("agentInspectorDrawer.kk653nv011"))}${ssrInterpolate(unref(currentTitle))}」 </div>`);
7908
7909
  else _push(`<!---->`);
7909
7910
  _push(ssrRenderComponent(_component_a_tabs, {
7910
7911
  "active-key": unref(tab),
@@ -7920,8 +7921,8 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
7920
7921
  }, {
7921
7922
  default: withCtx((_, _push, _parent, _scopeId) => {
7922
7923
  if (_push) {
7923
- _push(`<div class="stream" data-v-52ff0158${_scopeId}>`);
7924
- if (unref(stream).length === 0) _push(`<div class="empty" data-v-52ff0158${_scopeId}>${ssrInterpolate(_ctx.$t("agentInspectorDrawer.k1frr9es004"))}</div>`);
7924
+ _push(`<div class="stream" data-v-857e6de6${_scopeId}>`);
7925
+ if (unref(stream).length === 0) _push(`<div class="empty" data-v-857e6de6${_scopeId}>${ssrInterpolate(_ctx.$t("agentInspectorDrawer.k1frr9es004"))}</div>`);
7925
7926
  else _push(`<!---->`);
7926
7927
  _push(`<!--[-->`);
7927
7928
  ssrRenderList(unref(stream), (b) => {
@@ -7966,12 +7967,12 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
7966
7967
  ["待执行", unref(assignedTasks).queued],
7967
7968
  ["已完成", unref(assignedTasks).done]
7968
7969
  ], (group) => {
7969
- _push(`<div class="queue-group" data-v-52ff0158${_scopeId}><div class="group-title" data-v-52ff0158${_scopeId}>${ssrInterpolate(group[0])}(${ssrInterpolate(group[1].length)}) </div><!--[-->`);
7970
+ _push(`<div class="queue-group" data-v-857e6de6${_scopeId}><div class="group-title" data-v-857e6de6${_scopeId}>${ssrInterpolate(group[0])}(${ssrInterpolate(group[1].length)}) </div><!--[-->`);
7970
7971
  ssrRenderList(group[1], (t) => {
7971
- _push(`<div class="queue-task" data-v-52ff0158${_scopeId}><span class="state-chip aw-mono" data-v-52ff0158${_scopeId}>${ssrInterpolate(t.state)}</span><span class="qt-title" data-v-52ff0158${_scopeId}>${ssrInterpolate(t.title)}</span><span class="qt-meta" data-v-52ff0158${_scopeId}>${ssrInterpolate(t.progress)}%</span></div>`);
7972
+ _push(`<div class="queue-task" data-v-857e6de6${_scopeId}><span class="state-chip aw-mono" data-v-857e6de6${_scopeId}>${ssrInterpolate(t.state)}</span><span class="qt-title" data-v-857e6de6${_scopeId}>${ssrInterpolate(t.title)}</span><span class="qt-meta" data-v-857e6de6${_scopeId}>${ssrInterpolate(t.progress)}%</span></div>`);
7972
7973
  });
7973
7974
  _push(`<!--]-->`);
7974
- if (group[1].length === 0) _push(`<div class="empty" data-v-52ff0158${_scopeId}> (${ssrInterpolate(_ctx.$t("agentInspectorDrawer.k43rxk012"))}</div>`);
7975
+ if (group[1].length === 0) _push(`<div class="empty" data-v-857e6de6${_scopeId}> (${ssrInterpolate(_ctx.$t("agentInspectorDrawer.k43rxk012"))}</div>`);
7975
7976
  else _push(`<!---->`);
7976
7977
  _push(`</div>`);
7977
7978
  });
@@ -8085,9 +8086,9 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
8085
8086
  }),
8086
8087
  _: 1
8087
8088
  }, _parent, _scopeId));
8088
- _push(`<div class="footer" data-v-52ff0158${_scopeId}>`);
8089
+ _push(`<div class="footer" data-v-857e6de6${_scopeId}>`);
8089
8090
  if (unref(agent).role === "worker") {
8090
- _push(`<div class="member-ops" data-v-52ff0158${_scopeId}><span class="op-label" data-v-52ff0158${_scopeId}>${ssrInterpolate(_ctx.$t("agentInspectorDrawer.kas9m5q006"))}</span>`);
8091
+ _push(`<div class="member-ops" data-v-857e6de6${_scopeId}><span class="op-label" data-v-857e6de6${_scopeId}>${ssrInterpolate(_ctx.$t("agentInspectorDrawer.kas9m5q006"))}</span>`);
8091
8092
  _push(ssrRenderComponent(_component_a_switch, {
8092
8093
  checked: (unref(agent).enabled ?? 1) === 1,
8093
8094
  loading: unref(toggling),
@@ -8129,7 +8130,7 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
8129
8130
  }, _parent, _scopeId));
8130
8131
  _push(`</div>`);
8131
8132
  } else _push(`<!---->`);
8132
- _push(`<div class="send-box" data-v-52ff0158${_scopeId}>`);
8133
+ _push(`<div class="send-box" data-v-857e6de6${_scopeId}>`);
8133
8134
  _push(ssrRenderComponent(_component_a_textarea, {
8134
8135
  value: unref(sendText),
8135
8136
  "onUpdate:value": ($event) => isRef(sendText) ? sendText.value = $event : null,
@@ -8140,7 +8141,7 @@ var AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE
8140
8141
  placeholder: _ctx.$t("agentInspectorDrawer.kwsotdg003"),
8141
8142
  onKeydown: send
8142
8143
  }, null, _parent, _scopeId));
8143
- _push(`<div class="send-ops" data-v-52ff0158${_scopeId}>`);
8144
+ _push(`<div class="send-ops" data-v-857e6de6${_scopeId}>`);
8144
8145
  _push(ssrRenderComponent(_component_a_segmented, {
8145
8146
  value: unref(priority),
8146
8147
  "onUpdate:value": ($event) => isRef(priority) ? priority.value = $event : null,
@@ -8363,7 +8364,7 @@ AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default.setup = (props,
8363
8364
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/AgentInspectorDrawer.vue");
8364
8365
  return _sfc_setup$4 ? _sfc_setup$4(props, ctx) : void 0;
8365
8366
  };
8366
- var AgentInspectorDrawer_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-52ff0158"]]), { __name: "WorkshopAgentInspectorDrawer" });
8367
+ var AgentInspectorDrawer_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(AgentInspectorDrawer_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-857e6de6"]]), { __name: "WorkshopAgentInspectorDrawer" });
8367
8368
  //#endregion
8368
8369
  //#region app/components/workshop/TaskInspectorDrawer.vue?vue&type=script&setup=true&lang.ts
8369
8370
  var DRAWER_W_DEFAULT$1 = 560;
@@ -8429,7 +8430,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8429
8430
  api$1.success(t("taskInspectorDrawer.k1xj595a013"));
8430
8431
  load();
8431
8432
  } catch (e) {
8432
- api$1.error(e instanceof Error ? e.message : String(e));
8433
+ api$1.error(apiErrorMessage(e));
8433
8434
  } finally {
8434
8435
  cancelling.value = false;
8435
8436
  }
@@ -8444,7 +8445,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8444
8445
  api$1.success(t("taskInspectorDrawer.ke7bh8u014"));
8445
8446
  load();
8446
8447
  } catch (e) {
8447
- api$1.error(e instanceof Error ? e.message : String(e));
8448
+ api$1.error(apiErrorMessage(e));
8448
8449
  } finally {
8449
8450
  retrying.value = false;
8450
8451
  }
@@ -8503,7 +8504,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8503
8504
  default: withCtx((_, _push, _parent, _scopeId) => {
8504
8505
  if (_push) {
8505
8506
  if (unref(detail) || unref(taskView)) {
8506
- _push(`<!--[--><div class="head" data-v-a7e259eb${_scopeId}>`);
8507
+ _push(`<!--[--><div class="head" data-v-4130ad00${_scopeId}>`);
8507
8508
  _push(ssrRenderComponent(_component_a_tag, { color: stateColor[unref(taskView)?.state ?? unref(detail)?.state ?? ""] ?? "default" }, {
8508
8509
  default: withCtx((_, _push, _parent, _scopeId) => {
8509
8510
  if (_push) _push(`${ssrInterpolate(unref(taskView)?.state ?? unref(detail)?.state)}`);
@@ -8511,7 +8512,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8511
8512
  }),
8512
8513
  _: 1
8513
8514
  }, _parent, _scopeId));
8514
- _push(`<span class="meta" data-v-a7e259eb${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k3o48o4010"))}${ssrInterpolate(agentName(unref(taskView)?.assigneeId ?? unref(detail)?.assigneeId ?? ""))}</span><span class="meta" data-v-a7e259eb${_scopeId}>${ssrInterpolate(unref(taskView)?.progress ?? unref(detail)?.progress ?? 0)}%</span><div class="spacer" data-v-a7e259eb${_scopeId}></div>`);
8515
+ _push(`<span class="meta" data-v-4130ad00${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k3o48o4010"))}${ssrInterpolate(agentName(unref(taskView)?.assigneeId ?? unref(detail)?.assigneeId ?? ""))}</span><span class="meta" data-v-4130ad00${_scopeId}>${ssrInterpolate(unref(taskView)?.progress ?? unref(detail)?.progress ?? 0)}%</span><div class="spacer" data-v-4130ad00${_scopeId}></div>`);
8515
8516
  if ((unref(taskView)?.state ?? unref(detail)?.state) === "FAILED") _push(ssrRenderComponent(_component_a_popconfirm, {
8516
8517
  title: _ctx.$t("taskInspectorDrawer.kns2a6x002"),
8517
8518
  onConfirm: retry
@@ -8576,7 +8577,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8576
8577
  _: 1
8577
8578
  }, _parent, _scopeId));
8578
8579
  _push(`</div>`);
8579
- if ((unref(taskView)?.state ?? unref(detail)?.state) === "FAILED" && unref(failureReason)) _push(`<div class="failure-reason" data-v-a7e259eb${_scopeId}><span class="fr-label" data-v-a7e259eb${_scopeId}>失败原因</span><span class="fr-text" data-v-a7e259eb${_scopeId}>${ssrInterpolate(unref(failureReason))}</span></div>`);
8580
+ if ((unref(taskView)?.state ?? unref(detail)?.state) === "FAILED" && unref(failureReason)) _push(`<div class="failure-reason" data-v-4130ad00${_scopeId}><span class="fr-label" data-v-4130ad00${_scopeId}>失败原因</span><span class="fr-text" data-v-4130ad00${_scopeId}>${ssrInterpolate(unref(failureReason))}</span></div>`);
8580
8581
  else _push(`<!---->`);
8581
8582
  if (unref(detail)?.description) _push(ssrRenderComponent(_component_a_descriptions, {
8582
8583
  column: 1,
@@ -8599,7 +8600,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8599
8600
  _: 1
8600
8601
  }, _parent, _scopeId));
8601
8602
  else _push(`<!---->`);
8602
- if (unref(detail)?.routeReason) _push(`<div class="route-reason" data-v-a7e259eb${_scopeId}><span class="route-label" data-v-a7e259eb${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k1knph8c007"))}</span><span class="route-text" data-v-a7e259eb${_scopeId}>${ssrInterpolate(unref(detail).routeReason)}</span></div>`);
8603
+ if (unref(detail)?.routeReason) _push(`<div class="route-reason" data-v-4130ad00${_scopeId}><span class="route-label" data-v-4130ad00${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k1knph8c007"))}</span><span class="route-text" data-v-4130ad00${_scopeId}>${ssrInterpolate(unref(detail).routeReason)}</span></div>`);
8603
8604
  else _push(`<!---->`);
8604
8605
  _push(ssrRenderComponent(_component_a_tabs, {
8605
8606
  size: "small",
@@ -8613,11 +8614,11 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8613
8614
  }, {
8614
8615
  default: withCtx((_, _push, _parent, _scopeId) => {
8615
8616
  if (_push) {
8616
- if (unref(timeline).length === 0) _push(`<div class="empty" data-v-a7e259eb${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.kr3vr2x008"))}</div>`);
8617
+ if (unref(timeline).length === 0) _push(`<div class="empty" data-v-4130ad00${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.kr3vr2x008"))}</div>`);
8617
8618
  else _push(`<!---->`);
8618
8619
  _push(`<!--[-->`);
8619
8620
  ssrRenderList(unref(timeline), (e) => {
8620
- _push(`<div class="tl-row" data-v-a7e259eb${_scopeId}><span class="tl-time" data-v-a7e259eb${_scopeId}>${ssrInterpolate(unref(formatLocalClock)(e.at))}</span>`);
8621
+ _push(`<div class="tl-row" data-v-4130ad00${_scopeId}><span class="tl-time" data-v-4130ad00${_scopeId}>${ssrInterpolate(unref(formatLocalClock)(e.at))}</span>`);
8621
8622
  if (e.type === "task.status") _push(ssrRenderComponent(_component_a_tag, {
8622
8623
  color: stateColor[e.payload.state] ?? "default",
8623
8624
  class: "state"
@@ -8628,7 +8629,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8628
8629
  }),
8629
8630
  _: 2
8630
8631
  }, _parent, _scopeId));
8631
- else _push(`<span class="tl-progress" data-v-a7e259eb${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k485ye011"))} ${ssrInterpolate(e.payload.progress)}%</span>`);
8632
+ else _push(`<span class="tl-progress" data-v-4130ad00${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k485ye011"))} ${ssrInterpolate(e.payload.progress)}%</span>`);
8632
8633
  _push(`</div>`);
8633
8634
  });
8634
8635
  _push(`<!--]-->`);
@@ -8660,7 +8661,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8660
8661
  }, {
8661
8662
  default: withCtx((_, _push, _parent, _scopeId) => {
8662
8663
  if (_push) {
8663
- if (!unref(detail)?.artifacts.length) _push(`<div class="empty" data-v-a7e259eb${_scopeId}> (${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k401n2012"))}</div>`);
8664
+ if (!unref(detail)?.artifacts.length) _push(`<div class="empty" data-v-4130ad00${_scopeId}> (${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k401n2012"))}</div>`);
8664
8665
  else _push(`<!---->`);
8665
8666
  _push(`<!--[-->`);
8666
8667
  ssrRenderList(unref(detail)?.artifacts ?? [], (a) => {
@@ -8688,11 +8689,11 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8688
8689
  }, {
8689
8690
  default: withCtx((_, _push, _parent, _scopeId) => {
8690
8691
  if (_push) {
8691
- if (unref(children).length === 0) _push(`<div class="empty" data-v-a7e259eb${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k1kmqn5u009"))}</div>`);
8692
+ if (unref(children).length === 0) _push(`<div class="empty" data-v-4130ad00${_scopeId}>${ssrInterpolate(_ctx.$t("taskInspectorDrawer.k1kmqn5u009"))}</div>`);
8692
8693
  else _push(`<!---->`);
8693
8694
  _push(`<!--[-->`);
8694
8695
  ssrRenderList(unref(children), (c) => {
8695
- _push(`<div class="child-row" data-v-a7e259eb${_scopeId}>`);
8696
+ _push(`<div class="child-row" data-v-4130ad00${_scopeId}>`);
8696
8697
  _push(ssrRenderComponent(_component_a_tag, {
8697
8698
  color: stateColor[c.state] ?? "default",
8698
8699
  class: "state"
@@ -8703,7 +8704,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8703
8704
  }),
8704
8705
  _: 2
8705
8706
  }, _parent, _scopeId));
8706
- _push(`<span class="child-title" data-v-a7e259eb${_scopeId}>${ssrInterpolate(c.title)}</span><span class="child-meta" data-v-a7e259eb${_scopeId}>${ssrInterpolate(agentName(c.assigneeId))} · ${ssrInterpolate(c.progress)}%</span></div>`);
8707
+ _push(`<span class="child-title" data-v-4130ad00${_scopeId}>${ssrInterpolate(c.title)}</span><span class="child-meta" data-v-4130ad00${_scopeId}>${ssrInterpolate(agentName(c.assigneeId))} · ${ssrInterpolate(c.progress)}%</span></div>`);
8707
8708
  });
8708
8709
  _push(`<!--]-->`);
8709
8710
  } else return [unref(children).length === 0 ? (openBlock(), createBlock("div", {
@@ -8733,7 +8734,7 @@ var TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
8733
8734
  tab: _ctx.$t("taskInspectorDrawer.kxj74io017", { p0: unref(detail)?.artifacts.reduce((n, a) => n + a.parts.length, 0) ?? 0 })
8734
8735
  }, {
8735
8736
  default: withCtx((_, _push, _parent, _scopeId) => {
8736
- if (_push) _push(`<pre class="raw" data-v-a7e259eb${_scopeId}>${ssrInterpolate(JSON.stringify(unref(detail)?.artifacts, null, 2)?.slice(0, 4e3))}</pre>`);
8737
+ if (_push) _push(`<pre class="raw" data-v-4130ad00${_scopeId}>${ssrInterpolate(JSON.stringify(unref(detail)?.artifacts, null, 2)?.slice(0, 4e3))}</pre>`);
8737
8738
  else return [createVNode("pre", { class: "raw" }, toDisplayString(JSON.stringify(unref(detail)?.artifacts, null, 2)?.slice(0, 4e3)), 1)];
8738
8739
  }),
8739
8740
  _: 1
@@ -9131,7 +9132,7 @@ TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default.setup = (props,
9131
9132
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/TaskInspectorDrawer.vue");
9132
9133
  return _sfc_setup$3 ? _sfc_setup$3(props, ctx) : void 0;
9133
9134
  };
9134
- var TaskInspectorDrawer_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-a7e259eb"]]), { __name: "WorkshopTaskInspectorDrawer" });
9135
+ var TaskInspectorDrawer_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(TaskInspectorDrawer_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-4130ad00"]]), { __name: "WorkshopTaskInspectorDrawer" });
9135
9136
  //#endregion
9136
9137
  //#region app/components/workshop/A2aRpcDebugger.vue?vue&type=script&setup=true&lang.ts
9137
9138
  var DRAWER_W_DEFAULT = 600;
@@ -9285,7 +9286,7 @@ var A2aRpcDebugger_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
9285
9286
  append(text.slice(0, 4e3));
9286
9287
  }
9287
9288
  } catch (e) {
9288
- append(`✖ ${e instanceof Error ? e.message : String(e)}`);
9289
+ append(`✖ ${apiErrorMessage(e)}`);
9289
9290
  } finally {
9290
9291
  running.value = false;
9291
9292
  }
@@ -9314,7 +9315,7 @@ var A2aRpcDebugger_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
9314
9315
  onResize: resizeDrawer,
9315
9316
  onReset: ($event) => drawerWidth.value = DRAWER_W_DEFAULT
9316
9317
  }, null, _parent, _scopeId));
9317
- _push(`<div class="dbg" data-v-b4ba187a${_scopeId}><div class="row" data-v-b4ba187a${_scopeId}>`);
9318
+ _push(`<div class="dbg" data-v-56f080d0${_scopeId}><div class="row" data-v-56f080d0${_scopeId}>`);
9318
9319
  _push(ssrRenderComponent(_component_a_select, {
9319
9320
  value: unref(agentId),
9320
9321
  "onUpdate:value": ($event) => isRef(agentId) ? agentId.value = $event : null,
@@ -9339,14 +9340,14 @@ var A2aRpcDebugger_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
9339
9340
  placeholder: "Bearer token(message/send 需要;留空匿名)",
9340
9341
  class: "token"
9341
9342
  }, null, _parent, _scopeId));
9342
- _push(`<div class="row" data-v-b4ba187a${_scopeId}>`);
9343
+ _push(`<div class="row" data-v-56f080d0${_scopeId}>`);
9343
9344
  _push(ssrRenderComponent(_component_a_textarea, {
9344
9345
  value: unref(paramsJson),
9345
9346
  "onUpdate:value": ($event) => isRef(paramsJson) ? paramsJson.value = $event : null,
9346
9347
  rows: 6,
9347
9348
  class: "params"
9348
9349
  }, null, _parent, _scopeId));
9349
- _push(`</div><div class="row ops" data-v-b4ba187a${_scopeId}>`);
9350
+ _push(`</div><div class="row ops" data-v-56f080d0${_scopeId}>`);
9350
9351
  _push(ssrRenderComponent(_component_a_button, {
9351
9352
  size: "small",
9352
9353
  onClick: ($event) => paramsJson.value = JSON.stringify(template(), null, 2)
@@ -9369,7 +9370,7 @@ var A2aRpcDebugger_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
9369
9370
  }),
9370
9371
  _: 1
9371
9372
  }, _parent, _scopeId));
9372
- _push(`</div><pre class="output" data-v-b4ba187a${_scopeId}>${ssrInterpolate(unref(output) || "(输出;sendSubscribe 将逐条渲染 SSE 事件)")}</pre></div>`);
9373
+ _push(`</div><pre class="output" data-v-56f080d0${_scopeId}>${ssrInterpolate(unref(output) || "(输出;sendSubscribe 将逐条渲染 SSE 事件)")}</pre></div>`);
9373
9374
  } else return [createVNode(_component_workshop_pane_splitter, {
9374
9375
  variant: "bare",
9375
9376
  class: "drawer-resizer",
@@ -9441,7 +9442,7 @@ A2aRpcDebugger_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx)
9441
9442
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/workshop/A2aRpcDebugger.vue");
9442
9443
  return _sfc_setup$2 ? _sfc_setup$2(props, ctx) : void 0;
9443
9444
  };
9444
- var A2aRpcDebugger_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(A2aRpcDebugger_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-b4ba187a"]]), { __name: "WorkshopA2aRpcDebugger" });
9445
+ var A2aRpcDebugger_default = /*#__PURE__*/ Object.assign(_plugin_vue_export_helper_default(A2aRpcDebugger_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-56f080d0"]]), { __name: "WorkshopA2aRpcDebugger" });
9445
9446
  //#endregion
9446
9447
  //#region app/components/workshop/CommandPalette.vue?vue&type=script&setup=true&lang.ts
9447
9448
  var CommandPalette_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
@@ -9861,4 +9862,4 @@ _wsId__vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
9861
9862
  var _wsId__default = /*#__PURE__*/ _plugin_vue_export_helper_default(_wsId__vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-f2913902"]]);
9862
9863
 
9863
9864
  export { _wsId__default as default };
9864
- //# sourceMappingURL=_wsId_-CanI_6Su.mjs.map
9865
+ //# sourceMappingURL=_wsId_-Mm9sQSz2.mjs.map