nolo-cli 0.211.0 → 0.213.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/{_executeModel-VVQEOY3D.js → _executeModel-CUJLCFWR.js} +57 -54
  2. package/{action-U235TV4P.js → action-DF5UYSJF.js} +4 -4
  3. package/{addContentAction-7C76J7ST.js → addContentAction-WERAONNY.js} +9 -9
  4. package/{addDialogAgentAction-KTYANUEC.js → addDialogAgentAction-7VI7YRML.js} +16 -13
  5. package/{agentDeleteCommand-WHRU6VDJ.js → agentDeleteCommand-XJORXPGU.js} +80 -76
  6. package/{agentEmailCommands-ALLHXPW3.js → agentEmailCommands-XTYYFR6Z.js} +85 -80
  7. package/{agentListCommands-POKMEKMS.js → agentListCommands-OBLRBLHS.js} +237 -115
  8. package/{agentMachineCommands-WJLZLBPI.js → agentMachineCommands-5FMT3OT5.js} +33 -31
  9. package/{agentProviderCommands-MN3ABDME.js → agentProviderCommands-Q5O33MED.js} +33 -4
  10. package/{agentRecordCommands-OULZW3KM.js → agentRecordCommands-ZQ7SVYGG.js} +75 -70
  11. package/{agentRunCommand-ZNG4LGNQ.js → agentRunCommand-WS7IGO2W.js} +77 -73
  12. package/{agentRunControl-AF7BMR22.js → agentRunControl-TAMHJQSR.js} +8 -7
  13. package/{agentRuntimeLocal-YMUHFV5M.js → agentRuntimeLocal-SOO2OPJG.js} +30 -27
  14. package/{agentSlice-WNGUIMQZ.js → agentSlice-CHR6KOZN.js} +13 -13
  15. package/{appDeleteCommands-6MXPLAVF.js → appDeleteCommands-GUP6P5YE.js} +34 -32
  16. package/{appDeployCommands-ERRSVASW.js → appDeployCommands-MH2FX4O5.js} +34 -32
  17. package/{appDeployStatusCommands-ULICISLI.js → appDeployStatusCommands-SUHN3HPJ.js} +34 -32
  18. package/{appGetCommands-WYYYWROF.js → appGetCommands-YWDEX6Z4.js} +34 -32
  19. package/{appListCommands-DFCUCRCV.js → appListCommands-ZQVMLPAY.js} +34 -32
  20. package/{authCommand-ZJMWXFMA.js → authCommand-PWX2ZNUP.js} +15 -15
  21. package/{authCommands-WK6E42L2.js → authCommands-HV3EAU3V.js} +2 -2
  22. package/{builtinSkillRegistry-HH75G5J3.js → builtinSkillRegistry-2QETTQPM.js} +5 -4
  23. package/{chromeOpsCommands-HEN5AX2J.js → chromeOpsCommands-DIVM2K3T.js} +1 -1
  24. package/{chunk-TRZP7JZ7.js → chunk-2QHFH3DR.js} +1 -0
  25. package/{chunk-XE4Q46FF.js → chunk-3CGG2PAL.js} +1 -1
  26. package/{chunk-YUXQAVRD.js → chunk-3UKL3HPD.js} +251 -14
  27. package/{chunk-BSISWVB4.js → chunk-4I7ERB7F.js} +1 -1
  28. package/{chunk-5ORJGHTL.js → chunk-4T2WNOY7.js} +6 -6
  29. package/{chunk-W5VC7F7V.js → chunk-5MQRBSMW.js} +84 -91
  30. package/{chunk-YLTLB5A7.js → chunk-6DWMYIUY.js} +7 -6
  31. package/chunk-6VLJ6YA7.js +11751 -0
  32. package/{chunk-KSTEXKL6.js → chunk-75XIDFBW.js} +4 -3
  33. package/{chunk-BTYQAODF.js → chunk-7BT37FK3.js} +196 -308
  34. package/{chunk-27E2CBBY.js → chunk-7OCO4TDT.js} +1 -1
  35. package/{chunk-V3M6IXQI.js → chunk-7QTZCMKL.js} +335 -131
  36. package/chunk-7RFNTILS.js +2213 -0
  37. package/{chunk-NHQKWPLP.js → chunk-7Y4YTDQF.js} +25 -23
  38. package/{chunk-CKAHAVMK.js → chunk-A7TFUNZO.js} +35 -25
  39. package/{chunk-PJNFNEJE.js → chunk-ALQ3657A.js} +28 -2
  40. package/{chunk-NV572QM3.js → chunk-BBJ22CLB.js} +15 -15
  41. package/chunk-CJEIOP3E.js +0 -0
  42. package/{chunk-4WCEC56C.js → chunk-COFEN36Z.js} +2 -2
  43. package/{chunk-25OB36GU.js → chunk-CRHOO2ZR.js} +4 -4
  44. package/{chunk-NTSRCTUX.js → chunk-CTPXME7U.js} +2 -2
  45. package/{chunk-TPCDYNJK.js → chunk-EHGEOAHI.js} +3 -3
  46. package/{chunk-Y2WUYX4I.js → chunk-EHSZD5OI.js} +1 -1
  47. package/{chunk-SU3QL7YG.js → chunk-FUGMREBO.js} +2 -2
  48. package/{chunk-UMEGDH6A.js → chunk-FW6YHHLI.js} +8 -8
  49. package/chunk-FY7F4Q6X.js +127 -0
  50. package/{chunk-25M2K6OA.js → chunk-G2BQWAVT.js} +3 -3
  51. package/chunk-G7MLNNEX.js +84 -0
  52. package/{chunk-DQLB4NQ3.js → chunk-GPVRUGGY.js} +2 -2
  53. package/{chunk-RQ22OZD7.js → chunk-H2TJUNCH.js} +1 -1
  54. package/{chunk-XPHZK3PJ.js → chunk-H4UOTUOX.js} +165 -51
  55. package/{chunk-CVCRAO6Q.js → chunk-H5HF7TJA.js} +9 -7
  56. package/{chunk-OP7PTBAJ.js → chunk-H7PPIYWP.js} +9 -9
  57. package/{chunk-QQM464AL.js → chunk-HPFCI4SK.js} +3 -3
  58. package/chunk-HRMJUN5J.js +26 -0
  59. package/{chunk-WI6OGHXJ.js → chunk-HSVBJRF4.js} +5 -5
  60. package/{chunk-RYWO5AKN.js → chunk-HUBHAQK2.js} +10 -10
  61. package/{chunk-LKDF3ATR.js → chunk-INUFILG6.js} +1 -1
  62. package/{chunk-NXCGNS4N.js → chunk-IXNGOHV5.js} +2 -2
  63. package/{chunk-ET2CWLIJ.js → chunk-J2NHJ7WX.js} +4 -4
  64. package/{chunk-ECX3NKRD.js → chunk-JY5NGFFH.js} +11 -0
  65. package/chunk-KC4XDTT3.js +227 -0
  66. package/{chunk-ADBWFYJD.js → chunk-KFLT5KAD.js} +9 -9
  67. package/{chunk-PLYWH7XM.js → chunk-KIM6CLW5.js} +7 -7
  68. package/{chunk-7IYBN7IA.js → chunk-LLRPJECG.js} +22 -13
  69. package/{chunk-3J3U3KXB.js → chunk-MDB67IWP.js} +5 -5
  70. package/chunk-MMA3LZ3W.js +105 -0
  71. package/{chunk-XDMGY5IU.js → chunk-MOIJOHA5.js} +227 -11
  72. package/{chunk-NLT32XBZ.js → chunk-NJLL224W.js} +2 -2
  73. package/{chunk-JBOUVTZX.js → chunk-NOKUNJON.js} +15 -4
  74. package/{chunk-C2XZM3K4.js → chunk-NSAPDIN2.js} +12 -27
  75. package/{chunk-PAFTGNWA.js → chunk-O2TZF4AI.js} +2 -2
  76. package/{chunk-UIOEHFF6.js → chunk-OQHIVPG4.js} +1 -0
  77. package/{chunk-TCTSYFDM.js → chunk-OQPKUBPB.js} +19 -6
  78. package/{chunk-X4F26D5K.js → chunk-P5L7CXOC.js} +58 -33
  79. package/{chunk-OXME3PEE.js → chunk-PCLE46CE.js} +1 -1
  80. package/{chunk-UCPAVEQB.js → chunk-PYRUW7XN.js} +1 -1
  81. package/{chunk-YXOBCDNW.js → chunk-QG4AOSON.js} +12 -49
  82. package/{chunk-RXCCWVA2.js → chunk-QHPRUL4O.js} +3 -3
  83. package/{chunk-I5PBXF7O.js → chunk-R5O4QAWG.js} +1 -1
  84. package/{chunk-HD3WR3TD.js → chunk-RLBNLZVC.js} +1 -1
  85. package/{chunk-SN5XE6GQ.js → chunk-RPQXPZZF.js} +4 -4
  86. package/{chunk-ZOO3WJIE.js → chunk-RSHTSUEG.js} +948 -108
  87. package/{chunk-6HVBI6TI.js → chunk-RZOV7OMV.js} +12 -229
  88. package/{chunk-D2MDMY2M.js → chunk-SVYO6AO7.js} +7 -1
  89. package/{chunk-IIHY4ZAI.js → chunk-TAKB25RM.js} +8 -4
  90. package/{chunk-ZN5AH4BY.js → chunk-TX5EYMGT.js} +6 -6
  91. package/{chunk-CKOO42G5.js → chunk-UHJGXRJ4.js} +4 -4
  92. package/{chunk-M4NTDZG3.js → chunk-UYD5HQ6T.js} +857 -295
  93. package/{chunk-WTKYP6QO.js → chunk-V5Y3R6BT.js} +114 -6
  94. package/{chunk-3RQVYR4B.js → chunk-VNYYOX3V.js} +59 -20
  95. package/{chunk-4LEGTOSR.js → chunk-VO4WSAVP.js} +3 -3
  96. package/{chunk-LNYHAKBP.js → chunk-W4S457LU.js} +1 -1
  97. package/{chunk-RIALQUSF.js → chunk-WMTBPBMP.js} +6 -6
  98. package/chunk-WPORQFYN.js +74 -0
  99. package/{chunk-Y6M7KJOA.js → chunk-WRYQ35LQ.js} +5 -5
  100. package/{chunk-YKFP6UGT.js → chunk-WYDI6TGM.js} +17 -17
  101. package/{chunk-SCYQJPGA.js → chunk-X7SDOJUM.js} +147 -20
  102. package/chunk-XFYFMTOM.js +92 -0
  103. package/{chunk-LT3EAHJY.js → chunk-XHQC4PXX.js} +65 -49
  104. package/{chunk-2WZXXAQD.js → chunk-YB3YZK56.js} +67 -1
  105. package/{chunk-JKW6LERJ.js → chunk-YJAFKXMU.js} +14 -14
  106. package/{chunk-GSQNH63I.js → chunk-YTF4WH7J.js} +3 -19
  107. package/{chunk-DA7CTWT4.js → chunk-YWSEPJ7C.js} +5 -5
  108. package/{chunk-3V2QMRNN.js → chunk-ZL5RAEEB.js} +3 -3
  109. package/{chunk-NEZGPBL7.js → chunk-ZNWI6OVT.js} +2 -2
  110. package/{chunk-MBS6CTZB.js → chunk-ZXOUUDCG.js} +266 -2014
  111. package/cliAgentConfigHelpers-WJBZQTLW.js +41 -0
  112. package/{commandRegistry-FI2IOQ3U.js → commandRegistry-W63CYRZJ.js} +91 -87
  113. package/{contentThunks-5LKNNDGY.js → contentThunks-U7PL5MQD.js} +27 -26
  114. package/{cooldownCommands-YXLWOXWR.js → cooldownCommands-TIGUHXTD.js} +3 -3
  115. package/{createAgentAutomationAction-TI4QG4CY.js → createAgentAutomationAction-OLBQDD6R.js} +27 -26
  116. package/{createDialogAction-TJ3JKLO4.js → createDialogAction-SVH6B3SB.js} +29 -28
  117. package/{createPageAction-GKXT6WEH.js → createPageAction-F4DIWZ2Z.js} +29 -28
  118. package/{dbSlice-LPMZ2DGJ.js → dbSlice-BVH2YZPQ.js} +8 -8
  119. package/{deleteFile-EPUQHKPA.js → deleteFile-5YOEKV4U.js} +4 -4
  120. package/{dialogCommands-IWPXIZ5P.js → dialogCommands-KHIEPY3M.js} +38 -36
  121. package/{dialogSlice-ZWNNS7GZ.js → dialogSlice-ZCTDV2PZ.js} +25 -24
  122. package/{dialogUsageCommand-ZCPPHPJ5.js → dialogUsageCommand-7KCPYGHG.js} +1 -1
  123. package/{docCreateCommands-HFSPKJSI.js → docCreateCommands-DPMZI7G5.js} +32 -30
  124. package/{docDeleteCommands-CRL62POH.js → docDeleteCommands-IRQQLUBT.js} +34 -33
  125. package/{docReadCommands-QOTOX3XW.js → docReadCommands-LK37XH6L.js} +32 -30
  126. package/{docStore-WYLRB7ED.js → docStore-V2KECILA.js} +11 -11
  127. package/{docUpdateCommands-7BMH4MCA.js → docUpdateCommands-O6T3HJHH.js} +32 -30
  128. package/{fetchMessages-YY4SATNR.js → fetchMessages-NR4KNQLO.js} +3 -3
  129. package/{getPricing-OQXBJ6VZ.js → getPricing-2MNMXEVG.js} +3 -3
  130. package/{handleSendMessageAction-P27YP2DQ.js → handleSendMessageAction-2PE25WM3.js} +49 -47
  131. package/hostCredentialCreate-S233UMAP.js +357 -0
  132. package/index.js +7 -7
  133. package/{keys-P4ZDOVJW.js → keys-BEGDOTRL.js} +3 -1
  134. package/{localDialogRead-5VCMQQZF.js → localDialogRead-7NNDVVF7.js} +1 -1
  135. package/{localRuntimeAdapter-GP6ZSSO3.js → localRuntimeAdapter-KY6WXNBR.js} +82 -75
  136. package/{machineCommands-6Z6H4BFX.js → machineCommands-Q6HA3IXF.js} +74 -69
  137. package/{machineWsRunDispatch-F2ZIXMYM.js → machineWsRunDispatch-WWJQ6WR3.js} +74 -69
  138. package/{memberThunks-YSEFJF47.js → memberThunks-7EDJADWU.js} +9 -9
  139. package/package.json +1 -1
  140. package/{projectArchive-PIGEOX3D.js → projectArchive-DRTDIMEV.js} +29 -28
  141. package/{providerPresetApply-ZYMLQA46.js → providerPresetApply-YXGV6NXB.js} +4 -4
  142. package/{providerRegistry-E34XWDLJ.js → providerRegistry-S6UL6UNA.js} +4 -4
  143. package/{read-DIIQBOOO.js → read-4V2RMG7N.js} +4 -4
  144. package/{readDocTool-HXYGOEA7.js → readDocTool-BH6ATGQO.js} +1 -1
  145. package/{readlineWorkspace-UG25G7KC.js → readlineWorkspace-2W4WRCOU.js} +437 -217
  146. package/{removeDialogAgentAction-ALJDUJ2E.js → removeDialogAgentAction-LYAZGNKW.js} +18 -15
  147. package/{runAgentClientLoop-IO5F7TCZ.js → runAgentClientLoop-J2VQBS2Z.js} +55 -52
  148. package/{runtimeDoctorCommands-PGAA47G5.js → runtimeDoctorCommands-QAI3MBKQ.js} +6 -6
  149. package/{secretCommands-ZCZ4KVET.js → secretCommands-LXDWOLZ6.js} +4 -4
  150. package/{setDialogExtraReferencesAction-O3SVMD5A.js → setDialogExtraReferencesAction-OCRPGPYH.js} +11 -11
  151. package/{setPrimaryDialogAgentAction-HE7RVFFF.js → setPrimaryDialogAgentAction-HFJDQIBU.js} +19 -16
  152. package/{settingThunks-BWWJQG4L.js → settingThunks-RAMHMTGM.js} +13 -12
  153. package/{spaceCommands-UAELIFEI.js → spaceCommands-KVJZVKVO.js} +32 -31
  154. package/{streamAgentChatTurn-VUKZQYJR.js → streamAgentChatTurn-GHBMJJ6S.js} +63 -60
  155. package/{switchDialogAgentAction-3VZS7SOS.js → switchDialogAgentAction-EBRMW3RA.js} +16 -13
  156. package/{tools-VRXJAVYI.js → tools-EWKCPKMS.js} +49 -46
  157. package/{tuiSummaryLlmCaller-TGCHZLSW.js → tuiSummaryLlmCaller-ALQYUUWB.js} +48 -19
  158. package/{updateCommands-Q6CYAEYJ.js → updateCommands-ZQYU6SCI.js} +5 -3
  159. package/{updateDialogTitleAction-MULWCJCW.js → updateDialogTitleAction-5GGMBTDF.js} +40 -72
  160. package/usageCommand-F4IPVMIZ.js +32 -0
  161. package/usageRebuildCommand-HAW2AD5N.js +626 -0
  162. package/{windowsSelfUpdate-XSQVF2GK.js → windowsSelfUpdate-257DV2T6.js} +2 -2
  163. package/{workloadLifecycle-4BEQHMSD.js → workloadLifecycle-4C42SVBD.js} +1 -0
  164. package/chunk-4LCOCOR5.js +0 -50
  165. package/chunk-7AUQ3WCW.js +0 -51
  166. package/chunk-ZRAU6T47.js +0 -56
  167. package/{agentFavoriteCommands-GAFEXKKP.js → agentFavoriteCommands-EDK743YA.js} +1 -1
  168. package/{agentGrantCommands-V5FOQKFD.js → agentGrantCommands-RQWK2TEV.js} +1 -1
  169. package/{agentPullCommand-2JMJP5BS.js → agentPullCommand-6EM3URVK.js} +1 -1
  170. package/{chunk-A2ZMIRLN.js → chunk-INN4LTAJ.js} +5 -5
  171. package/{chunk-PV6JJAUB.js → chunk-TCZHTTUU.js} +8 -8
  172. package/{chunk-AKE53VMW.js → chunk-ZCWRMUWT.js} +0 -0
  173. package/{tableCommands-D7WR4QSM.js → tableCommands-MP6VFSVT.js} +3 -3
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  applyPublicAgentCatalogOverride
3
- } from "./chunk-RQ22OZD7.js";
3
+ } from "./chunk-H2TJUNCH.js";
4
4
  import {
5
5
  buildCliPrompt
6
6
  } from "./chunk-ATNTHIZI.js";
@@ -12,11 +12,11 @@ import {
12
12
  readStreamChunk,
13
13
  sendOpenAICompletionsRequest,
14
14
  updateTotalUsage
15
- } from "./chunk-JKW6LERJ.js";
15
+ } from "./chunk-YJAFKXMU.js";
16
16
  import "./chunk-JEXVIMYZ.js";
17
17
  import {
18
18
  prepareTools
19
- } from "./chunk-25M2K6OA.js";
19
+ } from "./chunk-G2BQWAVT.js";
20
20
  import {
21
21
  INVALID_TOOL_ARGS_REPLACEMENT,
22
22
  buildInvalidToolCallSelfHealResult,
@@ -27,17 +27,17 @@ import {
27
27
  sanitizeOutboundResponsesInput,
28
28
  selectResponsesConversationState,
29
29
  updateResponsesConversationState
30
- } from "./chunk-NV572QM3.js";
30
+ } from "./chunk-BBJ22CLB.js";
31
31
  import "./chunk-HS7MLR74.js";
32
- import "./chunk-LT3EAHJY.js";
32
+ import "./chunk-XHQC4PXX.js";
33
33
  import "./chunk-KFHREHUQ.js";
34
34
  import {
35
35
  isOwnedAgentRecord,
36
36
  resolveBillingSource
37
- } from "./chunk-YXOBCDNW.js";
38
- import "./chunk-OXME3PEE.js";
39
- import "./chunk-NXCGNS4N.js";
40
- import "./chunk-KSTEXKL6.js";
37
+ } from "./chunk-QG4AOSON.js";
38
+ import "./chunk-PCLE46CE.js";
39
+ import "./chunk-IXNGOHV5.js";
40
+ import "./chunk-75XIDFBW.js";
41
41
  import {
42
42
  applyImageConfigRuntimeOverride,
43
43
  buildDynamicContexts,
@@ -53,37 +53,37 @@ import {
53
53
  trimMessagesWithSummary,
54
54
  validateAccessAndBalance,
55
55
  withRequestContextBlocks
56
- } from "./chunk-YKFP6UGT.js";
56
+ } from "./chunk-WYDI6TGM.js";
57
57
  import {
58
58
  resolveUserSkillRuntime
59
- } from "./chunk-NEZGPBL7.js";
59
+ } from "./chunk-ZNWI6OVT.js";
60
60
  import {
61
61
  isContextOverflowText,
62
62
  parseApiError,
63
63
  performServerProxyFetchWithRetry
64
- } from "./chunk-ZN5AH4BY.js";
64
+ } from "./chunk-TX5EYMGT.js";
65
65
  import {
66
66
  createSSEParser,
67
67
  selectMaxExecutionTime,
68
68
  waitForAbortableDelay
69
- } from "./chunk-RYWO5AKN.js";
69
+ } from "./chunk-HUBHAQK2.js";
70
70
  import "./chunk-NF64D32W.js";
71
71
  import "./chunk-3L2WKC3W.js";
72
- import "./chunk-I5PBXF7O.js";
73
- import "./chunk-YLTLB5A7.js";
72
+ import "./chunk-R5O4QAWG.js";
73
+ import "./chunk-6DWMYIUY.js";
74
74
  import "./chunk-MYOH447Z.js";
75
75
  import "./chunk-VF4K2QE6.js";
76
- import "./chunk-IIHY4ZAI.js";
77
- import "./chunk-HD3WR3TD.js";
76
+ import "./chunk-TAKB25RM.js";
77
+ import "./chunk-RLBNLZVC.js";
78
78
  import "./chunk-AGIM7IMJ.js";
79
- import "./chunk-A2ZMIRLN.js";
79
+ import "./chunk-INN4LTAJ.js";
80
80
  import {
81
81
  getPublicImageAgentDefaultProfile,
82
82
  getPublicImageAgentMode
83
83
  } from "./chunk-VIDPVFP3.js";
84
84
  import "./chunk-63W5N6P3.js";
85
- import "./chunk-7IYBN7IA.js";
86
- import "./chunk-NHQKWPLP.js";
85
+ import "./chunk-LLRPJECG.js";
86
+ import "./chunk-7Y4YTDQF.js";
87
87
  import {
88
88
  addToolMessage,
89
89
  addUserMessage,
@@ -101,11 +101,12 @@ import {
101
101
  toast,
102
102
  updateTokens,
103
103
  updateToolMessage
104
- } from "./chunk-MBS6CTZB.js";
104
+ } from "./chunk-ZXOUUDCG.js";
105
105
  import "./chunk-TZXPT53C.js";
106
+ import "./chunk-7RFNTILS.js";
106
107
  import "./chunk-LEC5ALIN.js";
107
108
  import "./chunk-523DITKR.js";
108
- import "./chunk-ADBWFYJD.js";
109
+ import "./chunk-KFLT5KAD.js";
109
110
  import {
110
111
  getCurrentSpaceId
111
112
  } from "./chunk-5XBUWM6I.js";
@@ -115,13 +116,13 @@ import {
115
116
  createCliChatTurnStream,
116
117
  getCliChatSession,
117
118
  startCliChatSession
118
- } from "./chunk-NLT32XBZ.js";
119
+ } from "./chunk-NJLL224W.js";
119
120
  import "./chunk-4JH2UMJR.js";
120
- import "./chunk-DQLB4NQ3.js";
121
+ import "./chunk-GPVRUGGY.js";
121
122
  import "./chunk-UAD2WT54.js";
122
123
  import "./chunk-5RGU3J7P.js";
123
- import "./chunk-ZRAU6T47.js";
124
- import "./chunk-4LCOCOR5.js";
124
+ import "./chunk-WPORQFYN.js";
125
+ import "./chunk-MMA3LZ3W.js";
125
126
  import {
126
127
  addActiveController,
127
128
  claimDialogTurnPhase,
@@ -135,24 +136,24 @@ import {
135
136
  tokenUsageLiveUpdate
136
137
  } from "./chunk-OWYYDMGJ.js";
137
138
  import "./chunk-YDH3FDFQ.js";
138
- import "./chunk-QQM464AL.js";
139
+ import "./chunk-HPFCI4SK.js";
139
140
  import {
140
141
  selectCurrentServer
141
- } from "./chunk-BSISWVB4.js";
142
+ } from "./chunk-4I7ERB7F.js";
142
143
  import {
143
144
  patch,
144
145
  read,
145
146
  selectById,
146
147
  write
147
- } from "./chunk-UMEGDH6A.js";
148
+ } from "./chunk-FW6YHHLI.js";
148
149
  import "./chunk-3PVYUPXK.js";
149
- import "./chunk-4WCEC56C.js";
150
- import "./chunk-PAFTGNWA.js";
150
+ import "./chunk-COFEN36Z.js";
151
+ import "./chunk-O2TZF4AI.js";
151
152
  import {
152
153
  selectRuntimeCurrentServer
153
- } from "./chunk-UCPAVEQB.js";
154
+ } from "./chunk-PYRUW7XN.js";
154
155
  import "./chunk-UEILX4EV.js";
155
- import "./chunk-X4F26D5K.js";
156
+ import "./chunk-P5L7CXOC.js";
156
157
  import {
157
158
  getIsDesktopApp
158
159
  } from "./chunk-AGP3YSEC.js";
@@ -163,10 +164,10 @@ import {
163
164
  selectIdentityUser,
164
165
  selectIdentityUserId
165
166
  } from "./chunk-PXYBUFDB.js";
166
- import "./chunk-Y2WUYX4I.js";
167
- import "./chunk-D2MDMY2M.js";
168
- import "./chunk-Y6M7KJOA.js";
169
- import "./chunk-TPCDYNJK.js";
167
+ import "./chunk-EHSZD5OI.js";
168
+ import "./chunk-SVYO6AO7.js";
169
+ import "./chunk-WRYQ35LQ.js";
170
+ import "./chunk-EHGEOAHI.js";
170
171
  import "./chunk-AETZ7AD6.js";
171
172
  import "./chunk-Y6ORVLSS.js";
172
173
  import "./chunk-KHCLMKZZ.js";
@@ -176,7 +177,7 @@ import {
176
177
  buildDesktopAgentRuntimeDialogHistorySnapshot,
177
178
  extractImageUrlsFromMessages,
178
179
  stripImagePartsForTextOnlyAgent
179
- } from "./chunk-LNYHAKBP.js";
180
+ } from "./chunk-W4S457LU.js";
180
181
  import {
181
182
  projectUserPartForModel
182
183
  } from "./chunk-4KB6WQUL.js";
@@ -184,38 +185,39 @@ import "./chunk-56GBUMO5.js";
184
185
  import {
185
186
  isGptProModel,
186
187
  shouldBlockForGptPro
187
- } from "./chunk-W5VC7F7V.js";
188
+ } from "./chunk-5MQRBSMW.js";
188
189
  import {
189
190
  extractImagePartsFromResponseOutput,
190
191
  extractTextFromResponseOutput,
191
192
  toResponsesTools
192
- } from "./chunk-CVCRAO6Q.js";
193
+ } from "./chunk-H5HF7TJA.js";
193
194
  import "./chunk-E2BESSAW.js";
195
+ import "./chunk-RZOV7OMV.js";
196
+ import "./chunk-3UKL3HPD.js";
194
197
  import {
195
198
  resolveRuntimeToolSurfaceForAgent
196
- } from "./chunk-6HVBI6TI.js";
197
- import "./chunk-YUXQAVRD.js";
198
- import "./chunk-2WZXXAQD.js";
199
- import "./chunk-DA7CTWT4.js";
199
+ } from "./chunk-KC4XDTT3.js";
200
+ import "./chunk-YB3YZK56.js";
201
+ import "./chunk-YWSEPJ7C.js";
200
202
  import "./chunk-WJZOQR2J.js";
201
203
  import {
202
204
  resolveAgentCallPlan,
203
205
  resolveClientWire
204
- } from "./chunk-CKOO42G5.js";
206
+ } from "./chunk-UHJGXRJ4.js";
205
207
  import {
206
208
  resolveAgentContextWindow
207
- } from "./chunk-WTKYP6QO.js";
208
- import "./chunk-5ZUL4CUO.js";
209
+ } from "./chunk-V5Y3R6BT.js";
209
210
  import {
210
211
  getModelInfo
211
- } from "./chunk-BTYQAODF.js";
212
+ } from "./chunk-7BT37FK3.js";
212
213
  import "./chunk-H57T64RA.js";
214
+ import "./chunk-5ZUL4CUO.js";
213
215
  import {
214
216
  isOAuthApiKeyRef
215
217
  } from "./chunk-UKZX3NHN.js";
216
218
  import "./chunk-5MMAK75Q.js";
217
- import "./chunk-TRZP7JZ7.js";
218
- import "./chunk-UIOEHFF6.js";
219
+ import "./chunk-2QHFH3DR.js";
220
+ import "./chunk-OQHIVPG4.js";
219
221
  import {
220
222
  asRecordOrEmpty
221
223
  } from "./chunk-KX6YBIHG.js";
@@ -223,10 +225,11 @@ import "./chunk-DWLEOOGR.js";
223
225
  import {
224
226
  isAbortError
225
227
  } from "./chunk-7DPNBQSV.js";
226
- import "./chunk-G7Y4GXTY.js";
228
+ import "./chunk-T43B7LB2.js";
227
229
  import "./chunk-ZRSNONOB.js";
228
230
  import "./chunk-4VJAC32I.js";
229
- import "./chunk-AKE53VMW.js";
231
+ import "./chunk-CJEIOP3E.js";
232
+ import "./chunk-ZCWRMUWT.js";
230
233
  import "./chunk-ZC3CMUKU.js";
231
234
  import {
232
235
  isSystemBuiltinTrustedAgentKey
@@ -236,13 +239,12 @@ import {
236
239
  } from "./chunk-M2EJHDJP.js";
237
240
  import {
238
241
  isAntigravityOAuthAgent
239
- } from "./chunk-PLYWH7XM.js";
240
- import "./chunk-PJNFNEJE.js";
242
+ } from "./chunk-KIM6CLW5.js";
243
+ import "./chunk-ALQ3657A.js";
241
244
  import {
242
245
  estimateTokenCount
243
246
  } from "./chunk-PSCNXBYA.js";
244
- import "./chunk-6UBGXX2W.js";
245
- import "./chunk-PV6JJAUB.js";
247
+ import "./chunk-TCZHTTUU.js";
246
248
  import {
247
249
  isOpenAiResponsesModel
248
250
  } from "./chunk-YUA6OAH5.js";
@@ -256,10 +258,14 @@ import {
256
258
  import {
257
259
  isRecord
258
260
  } from "./chunk-KUG52IAP.js";
261
+ import "./chunk-GOO6G4PY.js";
262
+ import "./chunk-QSJ3HFEF.js";
259
263
  import "./chunk-LCBAMY2M.js";
260
264
  import "./chunk-4SN6J65J.js";
261
265
  import "./chunk-CF7PE763.js";
262
- import "./chunk-ECX3NKRD.js";
266
+ import "./chunk-G7Y4GXTY.js";
267
+ import "./chunk-6UBGXX2W.js";
268
+ import "./chunk-JY5NGFFH.js";
263
269
  import {
264
270
  createDialogMessageKeyAndId,
265
271
  dialogMessageKey
@@ -273,9 +279,6 @@ import {
273
279
  import {
274
280
  asOptionalTrimmedString
275
281
  } from "./chunk-G3SUCT4W.js";
276
- import "./chunk-T43B7LB2.js";
277
- import "./chunk-GOO6G4PY.js";
278
- import "./chunk-QSJ3HFEF.js";
279
282
  import "./chunk-4VNS5WPM.js";
280
283
 
281
284
  // packages/ai/agent/isVoiceModel.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
- formatISO
3
- } from "./chunk-ZRAU6T47.js";
4
- import "./chunk-4LCOCOR5.js";
2
+ require_formatISO
3
+ } from "./chunk-WPORQFYN.js";
4
+ import "./chunk-MMA3LZ3W.js";
5
5
  import {
6
6
  getActiveDialogKey
7
7
  } from "./chunk-OWYYDMGJ.js";
@@ -9,36 +9,39 @@ import "./chunk-YDH3FDFQ.js";
9
9
  import {
10
10
  patch,
11
11
  selectById
12
- } from "./chunk-UMEGDH6A.js";
12
+ } from "./chunk-FW6YHHLI.js";
13
13
  import "./chunk-3PVYUPXK.js";
14
- import "./chunk-4WCEC56C.js";
15
- import "./chunk-PAFTGNWA.js";
16
- import "./chunk-UCPAVEQB.js";
14
+ import "./chunk-COFEN36Z.js";
15
+ import "./chunk-O2TZF4AI.js";
16
+ import "./chunk-PYRUW7XN.js";
17
17
  import "./chunk-UEILX4EV.js";
18
- import "./chunk-X4F26D5K.js";
18
+ import "./chunk-P5L7CXOC.js";
19
19
  import "./chunk-AGP3YSEC.js";
20
20
  import "./chunk-QQ56R7KS.js";
21
21
  import "./chunk-OW765XBU.js";
22
22
  import "./chunk-PXYBUFDB.js";
23
- import "./chunk-D2MDMY2M.js";
23
+ import "./chunk-SVYO6AO7.js";
24
24
  import "./chunk-7DPNBQSV.js";
25
25
  import "./chunk-LOEO7LRC.js";
26
26
  import "./chunk-M2EJHDJP.js";
27
27
  import "./chunk-KUG52IAP.js";
28
+ import "./chunk-QSJ3HFEF.js";
28
29
  import "./chunk-LCBAMY2M.js";
29
30
  import "./chunk-4SN6J65J.js";
30
31
  import "./chunk-CF7PE763.js";
31
- import "./chunk-ECX3NKRD.js";
32
+ import "./chunk-JY5NGFFH.js";
32
33
  import "./chunk-XJWWBO34.js";
33
34
  import "./chunk-I42VC5KR.js";
34
35
  import "./chunk-U6VC4MU4.js";
35
36
  import "./chunk-WWC7I6TA.js";
36
37
  import "./chunk-3EUW3WEO.js";
37
38
  import "./chunk-G3SUCT4W.js";
38
- import "./chunk-QSJ3HFEF.js";
39
- import "./chunk-4VNS5WPM.js";
39
+ import {
40
+ __toESM
41
+ } from "./chunk-4VNS5WPM.js";
40
42
 
41
43
  // packages/chat/dialog/actions/switchDialogAgentAction.ts
44
+ var import_formatISO = __toESM(require_formatISO());
42
45
  var switchDialogAgentAction = async (payload, thunkApi) => {
43
46
  const { dispatch, getState } = thunkApi;
44
47
  const state = getState();
@@ -55,7 +58,7 @@ var switchDialogAgentAction = async (payload, thunkApi) => {
55
58
  }
56
59
  const changes = {
57
60
  activeAgentKey: payload.agentKey.trim(),
58
- updatedAt: formatISO(/* @__PURE__ */ new Date())
61
+ updatedAt: (0, import_formatISO.default)(/* @__PURE__ */ new Date())
59
62
  };
60
63
  return await dispatch(
61
64
  patch({
@@ -8,107 +8,110 @@ import {
8
8
  toolQueryFunc,
9
9
  toolQueryFunctionSchema,
10
10
  toolRegistry
11
- } from "./chunk-LT3EAHJY.js";
11
+ } from "./chunk-XHQC4PXX.js";
12
12
  import "./chunk-KFHREHUQ.js";
13
- import "./chunk-YXOBCDNW.js";
14
- import "./chunk-OXME3PEE.js";
15
- import "./chunk-NXCGNS4N.js";
16
- import "./chunk-KSTEXKL6.js";
17
- import "./chunk-RYWO5AKN.js";
13
+ import "./chunk-QG4AOSON.js";
14
+ import "./chunk-PCLE46CE.js";
15
+ import "./chunk-IXNGOHV5.js";
16
+ import "./chunk-75XIDFBW.js";
17
+ import "./chunk-HUBHAQK2.js";
18
18
  import "./chunk-NF64D32W.js";
19
19
  import "./chunk-3L2WKC3W.js";
20
- import "./chunk-I5PBXF7O.js";
21
- import "./chunk-YLTLB5A7.js";
20
+ import "./chunk-R5O4QAWG.js";
21
+ import "./chunk-6DWMYIUY.js";
22
22
  import "./chunk-MYOH447Z.js";
23
23
  import "./chunk-VF4K2QE6.js";
24
- import "./chunk-IIHY4ZAI.js";
25
- import "./chunk-HD3WR3TD.js";
24
+ import "./chunk-TAKB25RM.js";
25
+ import "./chunk-RLBNLZVC.js";
26
26
  import "./chunk-AGIM7IMJ.js";
27
27
  import "./chunk-63W5N6P3.js";
28
- import "./chunk-7IYBN7IA.js";
29
- import "./chunk-NHQKWPLP.js";
30
- import "./chunk-MBS6CTZB.js";
28
+ import "./chunk-LLRPJECG.js";
29
+ import "./chunk-7Y4YTDQF.js";
30
+ import "./chunk-ZXOUUDCG.js";
31
31
  import "./chunk-TZXPT53C.js";
32
+ import "./chunk-7RFNTILS.js";
32
33
  import "./chunk-LEC5ALIN.js";
33
34
  import "./chunk-523DITKR.js";
34
- import "./chunk-ADBWFYJD.js";
35
+ import "./chunk-KFLT5KAD.js";
35
36
  import "./chunk-5XBUWM6I.js";
36
37
  import "./chunk-BYXBJQAS.js";
37
38
  import "./chunk-QYPE3TS3.js";
38
- import "./chunk-NLT32XBZ.js";
39
+ import "./chunk-NJLL224W.js";
39
40
  import "./chunk-4JH2UMJR.js";
40
- import "./chunk-DQLB4NQ3.js";
41
+ import "./chunk-GPVRUGGY.js";
41
42
  import "./chunk-UAD2WT54.js";
42
43
  import "./chunk-5RGU3J7P.js";
43
- import "./chunk-ZRAU6T47.js";
44
- import "./chunk-4LCOCOR5.js";
44
+ import "./chunk-WPORQFYN.js";
45
+ import "./chunk-MMA3LZ3W.js";
45
46
  import "./chunk-OWYYDMGJ.js";
46
47
  import "./chunk-YDH3FDFQ.js";
47
- import "./chunk-QQM464AL.js";
48
- import "./chunk-BSISWVB4.js";
49
- import "./chunk-UMEGDH6A.js";
48
+ import "./chunk-HPFCI4SK.js";
49
+ import "./chunk-4I7ERB7F.js";
50
+ import "./chunk-FW6YHHLI.js";
50
51
  import "./chunk-3PVYUPXK.js";
51
- import "./chunk-4WCEC56C.js";
52
- import "./chunk-PAFTGNWA.js";
53
- import "./chunk-UCPAVEQB.js";
52
+ import "./chunk-COFEN36Z.js";
53
+ import "./chunk-O2TZF4AI.js";
54
+ import "./chunk-PYRUW7XN.js";
54
55
  import "./chunk-UEILX4EV.js";
55
- import "./chunk-X4F26D5K.js";
56
+ import "./chunk-P5L7CXOC.js";
56
57
  import "./chunk-AGP3YSEC.js";
57
58
  import "./chunk-QQ56R7KS.js";
58
59
  import "./chunk-OW765XBU.js";
59
60
  import "./chunk-PXYBUFDB.js";
60
- import "./chunk-Y2WUYX4I.js";
61
- import "./chunk-D2MDMY2M.js";
62
- import "./chunk-Y6M7KJOA.js";
61
+ import "./chunk-EHSZD5OI.js";
62
+ import "./chunk-SVYO6AO7.js";
63
+ import "./chunk-WRYQ35LQ.js";
63
64
  import {
64
65
  TOOL_PACKS,
65
66
  addDefaultLightWebToolsForConfiguredAgents,
66
67
  applyDefaultWebToolPacks
67
- } from "./chunk-TPCDYNJK.js";
68
+ } from "./chunk-EHGEOAHI.js";
68
69
  import "./chunk-AETZ7AD6.js";
69
70
  import "./chunk-Y6ORVLSS.js";
70
71
  import "./chunk-KHCLMKZZ.js";
71
- import "./chunk-6HVBI6TI.js";
72
- import "./chunk-YUXQAVRD.js";
73
- import "./chunk-WTKYP6QO.js";
74
- import "./chunk-5ZUL4CUO.js";
75
- import "./chunk-BTYQAODF.js";
72
+ import "./chunk-RZOV7OMV.js";
73
+ import "./chunk-3UKL3HPD.js";
74
+ import "./chunk-KC4XDTT3.js";
75
+ import "./chunk-V5Y3R6BT.js";
76
+ import "./chunk-7BT37FK3.js";
76
77
  import "./chunk-H57T64RA.js";
78
+ import "./chunk-5ZUL4CUO.js";
77
79
  import "./chunk-UKZX3NHN.js";
78
80
  import "./chunk-5MMAK75Q.js";
79
- import "./chunk-TRZP7JZ7.js";
80
- import "./chunk-UIOEHFF6.js";
81
+ import "./chunk-2QHFH3DR.js";
82
+ import "./chunk-OQHIVPG4.js";
81
83
  import "./chunk-KX6YBIHG.js";
82
84
  import "./chunk-DWLEOOGR.js";
83
85
  import "./chunk-7DPNBQSV.js";
84
- import "./chunk-G7Y4GXTY.js";
85
- import "./chunk-AKE53VMW.js";
86
+ import "./chunk-T43B7LB2.js";
87
+ import "./chunk-CJEIOP3E.js";
88
+ import "./chunk-ZCWRMUWT.js";
86
89
  import "./chunk-ZC3CMUKU.js";
87
90
  import "./chunk-LOEO7LRC.js";
88
91
  import "./chunk-M2EJHDJP.js";
89
- import "./chunk-PLYWH7XM.js";
90
- import "./chunk-PJNFNEJE.js";
92
+ import "./chunk-KIM6CLW5.js";
93
+ import "./chunk-ALQ3657A.js";
91
94
  import "./chunk-PSCNXBYA.js";
92
- import "./chunk-6UBGXX2W.js";
93
- import "./chunk-PV6JJAUB.js";
95
+ import "./chunk-TCZHTTUU.js";
94
96
  import "./chunk-YUA6OAH5.js";
95
97
  import "./chunk-SM3NSZJV.js";
96
98
  import "./chunk-JRTNUU5Z.js";
97
99
  import "./chunk-HNMXYYJR.js";
98
100
  import "./chunk-KUG52IAP.js";
101
+ import "./chunk-GOO6G4PY.js";
102
+ import "./chunk-QSJ3HFEF.js";
99
103
  import "./chunk-LCBAMY2M.js";
100
104
  import "./chunk-4SN6J65J.js";
101
105
  import "./chunk-CF7PE763.js";
102
- import "./chunk-ECX3NKRD.js";
106
+ import "./chunk-G7Y4GXTY.js";
107
+ import "./chunk-6UBGXX2W.js";
108
+ import "./chunk-JY5NGFFH.js";
103
109
  import "./chunk-XJWWBO34.js";
104
110
  import "./chunk-I42VC5KR.js";
105
111
  import "./chunk-U6VC4MU4.js";
106
112
  import "./chunk-WWC7I6TA.js";
107
113
  import "./chunk-3EUW3WEO.js";
108
114
  import "./chunk-G3SUCT4W.js";
109
- import "./chunk-T43B7LB2.js";
110
- import "./chunk-GOO6G4PY.js";
111
- import "./chunk-QSJ3HFEF.js";
112
115
  import "./chunk-4VNS5WPM.js";
113
116
  export {
114
117
  TOOL_GROUP_META,
@@ -7,37 +7,37 @@ import {
7
7
  canUsePlatformChatProvider,
8
8
  parsePlatformChatCompletionResponse,
9
9
  resolvePlatformChatProviderConfig
10
- } from "./chunk-TCTSYFDM.js";
10
+ } from "./chunk-OQPKUBPB.js";
11
11
  import "./chunk-HNUWUO75.js";
12
12
  import "./chunk-56GBUMO5.js";
13
- import "./chunk-CVCRAO6Q.js";
13
+ import "./chunk-H5HF7TJA.js";
14
14
  import "./chunk-E2BESSAW.js";
15
- import "./chunk-DA7CTWT4.js";
16
- import "./chunk-CKOO42G5.js";
15
+ import "./chunk-YWSEPJ7C.js";
16
+ import "./chunk-UHJGXRJ4.js";
17
17
  import {
18
18
  COMPACTION_SUMMARY_SYSTEM_PROMPT
19
- } from "./chunk-BTYQAODF.js";
19
+ } from "./chunk-7BT37FK3.js";
20
20
  import "./chunk-H57T64RA.js";
21
21
  import "./chunk-UKZX3NHN.js";
22
22
  import "./chunk-5MMAK75Q.js";
23
23
  import "./chunk-DWLEOOGR.js";
24
- import "./chunk-PLYWH7XM.js";
24
+ import "./chunk-T43B7LB2.js";
25
+ import "./chunk-KIM6CLW5.js";
25
26
  import "./chunk-PSCNXBYA.js";
26
- import "./chunk-PV6JJAUB.js";
27
+ import "./chunk-TCZHTTUU.js";
27
28
  import "./chunk-YUA6OAH5.js";
28
29
  import "./chunk-SM3NSZJV.js";
29
30
  import "./chunk-JRTNUU5Z.js";
30
31
  import "./chunk-HNMXYYJR.js";
31
32
  import "./chunk-KUG52IAP.js";
33
+ import "./chunk-GOO6G4PY.js";
34
+ import "./chunk-QSJ3HFEF.js";
32
35
  import "./chunk-4SN6J65J.js";
33
36
  import "./chunk-CF7PE763.js";
34
37
  import "./chunk-I42VC5KR.js";
35
38
  import "./chunk-WWC7I6TA.js";
36
39
  import "./chunk-3EUW3WEO.js";
37
40
  import "./chunk-G3SUCT4W.js";
38
- import "./chunk-T43B7LB2.js";
39
- import "./chunk-GOO6G4PY.js";
40
- import "./chunk-QSJ3HFEF.js";
41
41
  import "./chunk-4VNS5WPM.js";
42
42
 
43
43
  // packages/cli/client/tuiSummaryLlmCaller.ts
@@ -50,6 +50,9 @@ function createTuiSummaryLlmCaller(env, options) {
50
50
  const resolveProviderConfig = options?.resolveProviderConfig ?? resolvePlatformChatProviderConfig;
51
51
  return async (content, callOptions) => {
52
52
  if (!canUsePlatformChatProvider(env) || callOptions?.signal?.aborted) return null;
53
+ const requestedOutputTokens = callOptions?.maxOutputTokens;
54
+ if (requestedOutputTokens !== void 0 && (!Number.isFinite(requestedOutputTokens) || requestedOutputTokens < 1)) return null;
55
+ const maxOutputTokens = requestedOutputTokens === void 0 ? TUI_SUMMARY_MAX_OUTPUT_TOKENS : Math.min(TUI_SUMMARY_MAX_OUTPUT_TOKENS, Math.floor(requestedOutputTokens));
53
56
  const deadlineMs = Math.min(Date.now() + timeoutMs, callOptions?.deadlineMs ?? Infinity);
54
57
  const remainingMs = deadlineMs - Date.now();
55
58
  if (!(remainingMs > 0)) return null;
@@ -61,12 +64,10 @@ function createTuiSummaryLlmCaller(env, options) {
61
64
  const timer = setTimeout(() => controller.abort(new DOMException("Summary deadline exceeded", "TimeoutError")), remainingMs);
62
65
  const signal = controller.signal;
63
66
  const attemptId = callOptions?.attemptId ?? randomUUID();
64
- const attempt = async (model, remainingModels) => {
65
- const remaining = deadlineMs - Date.now();
66
- if (signal.aborted || !(remaining > 0)) return null;
67
+ const attempt = async (model, budgetMs) => {
68
+ if (signal.aborted || !(budgetMs > 0)) return null;
67
69
  const attemptController = new AbortController();
68
70
  const attemptSignal = attemptController.signal;
69
- const budgetMs = remaining / remainingModels;
70
71
  const attemptDeadlineMs = Date.now() + budgetMs;
71
72
  const onStop = () => attemptController.abort(signal.reason);
72
73
  signal.addEventListener("abort", onStop, { once: true });
@@ -83,6 +84,10 @@ function createTuiSummaryLlmCaller(env, options) {
83
84
  });
84
85
  const isStopped = () => attemptSignal.aborted || Date.now() >= attemptDeadlineMs;
85
86
  let stage = "resolve";
87
+ let operationStage = "resolve";
88
+ let errorKind = null;
89
+ let httpStatus = null;
90
+ const startedAt = Date.now();
86
91
  const work = async () => {
87
92
  try {
88
93
  const providerConfig = await resolveProviderConfig({
@@ -92,6 +97,7 @@ function createTuiSummaryLlmCaller(env, options) {
92
97
  credentialBroker: options?.credentialBroker
93
98
  });
94
99
  if (isStopped()) return null;
100
+ operationStage = "build";
95
101
  if (!providerConfig?.authToken) {
96
102
  stage = "auth";
97
103
  return null;
@@ -104,18 +110,36 @@ function createTuiSummaryLlmCaller(env, options) {
104
110
  const request = buildPlatformChatCompletionRequest({
105
111
  providerConfig: {
106
112
  ...providerConfig,
107
- requestOptions: { ...providerConfig.requestOptions, max_tokens: TUI_SUMMARY_MAX_OUTPUT_TOKENS, reasoning_effort: "low" }
113
+ requestOptions: { ...providerConfig.requestOptions, max_tokens: maxOutputTokens, reasoning_effort: "low" }
108
114
  },
109
115
  messages,
110
116
  stream: false,
111
117
  requestId: attemptId
112
118
  });
113
119
  stage = "http";
120
+ operationStage = "http";
114
121
  if (isStopped()) return null;
115
122
  const response = await fetchImpl(request.url, { ...request.init, signal: attemptSignal });
123
+ httpStatus = response.status;
116
124
  if (isStopped() || !response.ok) return null;
117
125
  stage = "body";
118
- const data = JSON.parse(await response.text());
126
+ operationStage = "body";
127
+ let responseText;
128
+ try {
129
+ responseText = await response.text();
130
+ } catch {
131
+ errorKind = "body";
132
+ throw new Error("body-read-failed");
133
+ }
134
+ if (isStopped()) return null;
135
+ operationStage = "parse";
136
+ let data;
137
+ try {
138
+ data = JSON.parse(responseText);
139
+ } catch {
140
+ errorKind = "parse";
141
+ throw new Error("response-json-invalid");
142
+ }
119
143
  if (isStopped()) return null;
120
144
  stage = "parse";
121
145
  if (data?.choices?.[0]?.finish_reason === "length" || data?.status === "incomplete" || data?.incomplete_details) {
@@ -127,6 +151,7 @@ function createTuiSummaryLlmCaller(env, options) {
127
151
  stage = summary ? "done" : "empty";
128
152
  return summary;
129
153
  } catch {
154
+ if (errorKind === null) errorKind = operationStage === "resolve" ? "resolve" : operationStage === "http" ? "http" : null;
130
155
  return null;
131
156
  }
132
157
  };
@@ -135,7 +160,11 @@ function createTuiSummaryLlmCaller(env, options) {
135
160
  if (!result) console.warn("[tuiSummary] summary attempt failed", {
136
161
  attemptId,
137
162
  model,
138
- stage: parentSignal?.aborted ? "cancelled" : signal.aborted || Date.now() >= deadlineMs ? "deadline" : isStopped() ? "attempt-budget" : stage
163
+ stage: parentSignal?.aborted ? "cancelled" : signal.aborted || Date.now() >= deadlineMs ? "deadline" : isStopped() ? "attempt-budget" : stage,
164
+ operationStage,
165
+ elapsedMs: Math.max(0, Date.now() - startedAt),
166
+ ...errorKind ? { errorKind } : {},
167
+ ...httpStatus !== null ? { httpStatus } : {}
139
168
  });
140
169
  return result;
141
170
  } finally {
@@ -145,9 +174,9 @@ function createTuiSummaryLlmCaller(env, options) {
145
174
  }
146
175
  };
147
176
  try {
148
- const primary = await attempt(BUILTIN_SUMMARY_LLM_CONFIG.model, 2);
177
+ const primary = await attempt(BUILTIN_SUMMARY_LLM_CONFIG.model, deadlineMs - Date.now());
149
178
  if (primary || signal.aborted || parentSignal?.aborted || Date.now() >= deadlineMs) return primary;
150
- return await attempt(BUILTIN_DIALOG_LLM_FALLBACK_MODEL, 1);
179
+ return await attempt(BUILTIN_DIALOG_LLM_FALLBACK_MODEL, deadlineMs - Date.now());
151
180
  } finally {
152
181
  clearTimeout(timer);
153
182
  parentSignal?.removeEventListener("abort", onAbort);