@surething/cockpit 1.0.267 → 1.0.268

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 (208) hide show
  1. package/.next-prod/BUILD_ID +1 -1
  2. package/.next-prod/app-path-routes-manifest.json +4 -4
  3. package/.next-prod/build-manifest.json +2 -2
  4. package/.next-prod/cockpit-build.json +1 -1
  5. package/.next-prod/prerender-manifest.json +4 -4
  6. package/.next-prod/server/app/_global-error/page.js.nft.json +1 -1
  7. package/.next-prod/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next-prod/server/app/_global-error.html +1 -1
  9. package/.next-prod/server/app/_global-error.rsc +1 -1
  10. package/.next-prod/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/.next-prod/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  12. package/.next-prod/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/.next-prod/server/app/_not-found/page.js +1 -1
  14. package/.next-prod/server/app/_not-found/page.js.nft.json +1 -1
  15. package/.next-prod/server/app/_not-found/page_client-reference-manifest.js +1 -1
  16. package/.next-prod/server/app/_not-found.html +2 -2
  17. package/.next-prod/server/app/_not-found.rsc +2 -2
  18. package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +2 -2
  19. package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +2 -2
  20. package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  21. package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  22. package/.next-prod/server/app/api/agent/test/route.js.nft.json +1 -1
  23. package/.next-prod/server/app/api/bash/route.js.nft.json +1 -1
  24. package/.next-prod/server/app/api/chat/codex/route.js.nft.json +1 -1
  25. package/.next-prod/server/app/api/chat/deepseek/route.js.nft.json +1 -1
  26. package/.next-prod/server/app/api/chat/glm/route.js.nft.json +1 -1
  27. package/.next-prod/server/app/api/chat/kimi/route.js.nft.json +1 -1
  28. package/.next-prod/server/app/api/chat/ollama/route.js.nft.json +1 -1
  29. package/.next-prod/server/app/api/chat/route.js.nft.json +1 -1
  30. package/.next-prod/server/app/api/chat/stop/route.js.nft.json +1 -1
  31. package/.next-prod/server/app/api/claude-stats/route.js.nft.json +1 -1
  32. package/.next-prod/server/app/api/commands/route.js.nft.json +1 -1
  33. package/.next-prod/server/app/api/comments/route.js.nft.json +1 -1
  34. package/.next-prod/server/app/api/db/columns/route.js.nft.json +1 -1
  35. package/.next-prod/server/app/api/db/connect/route.js.nft.json +1 -1
  36. package/.next-prod/server/app/api/db/disconnect/route.js.nft.json +1 -1
  37. package/.next-prod/server/app/api/db/export/route.js.nft.json +1 -1
  38. package/.next-prod/server/app/api/db/query/route.js.nft.json +1 -1
  39. package/.next-prod/server/app/api/db/schemas/route.js.nft.json +1 -1
  40. package/.next-prod/server/app/api/deepseek/balance/route.js.nft.json +1 -1
  41. package/.next-prod/server/app/api/deepseek/credentials/route.js.nft.json +1 -1
  42. package/.next-prod/server/app/api/deepseek/models/route.js.nft.json +1 -1
  43. package/.next-prod/server/app/api/dev/spans/route.js.nft.json +1 -1
  44. package/.next-prod/server/app/api/extension/version/route.js.nft.json +1 -1
  45. package/.next-prod/server/app/api/file/route.js.nft.json +1 -1
  46. package/.next-prod/server/app/api/files/blame/route.js.nft.json +1 -1
  47. package/.next-prod/server/app/api/files/clipboard/route.js.nft.json +1 -1
  48. package/.next-prod/server/app/api/files/copy/route.js.nft.json +1 -1
  49. package/.next-prod/server/app/api/files/delete/route.js.nft.json +1 -1
  50. package/.next-prod/server/app/api/files/expanded/route.js.nft.json +1 -1
  51. package/.next-prod/server/app/api/files/index/route.js.nft.json +1 -1
  52. package/.next-prod/server/app/api/files/init/route.js.nft.json +1 -1
  53. package/.next-prod/server/app/api/files/paste/route.js.nft.json +1 -1
  54. package/.next-prod/server/app/api/files/read/route.js.nft.json +1 -1
  55. package/.next-prod/server/app/api/files/readdir/route.js.nft.json +1 -1
  56. package/.next-prod/server/app/api/files/recent/route.js.nft.json +1 -1
  57. package/.next-prod/server/app/api/files/save/route.js.nft.json +1 -1
  58. package/.next-prod/server/app/api/files/search/route.js.nft.json +1 -1
  59. package/.next-prod/server/app/api/files/stat/route.js.nft.json +1 -1
  60. package/.next-prod/server/app/api/files/text/route.js.nft.json +1 -1
  61. package/.next-prod/server/app/api/git/blob/route.js.nft.json +1 -1
  62. package/.next-prod/server/app/api/git/branch-diff/route.js.nft.json +1 -1
  63. package/.next-prod/server/app/api/git/branches/route.js.nft.json +1 -1
  64. package/.next-prod/server/app/api/git/commit-diff/route.js.nft.json +1 -1
  65. package/.next-prod/server/app/api/git/commits/route.js +1 -1
  66. package/.next-prod/server/app/api/git/commits/route.js.nft.json +1 -1
  67. package/.next-prod/server/app/api/git/current-branch/route.js.nft.json +1 -1
  68. package/.next-prod/server/app/api/git/diff/route.js.nft.json +1 -1
  69. package/.next-prod/server/app/api/git/discard/route.js.nft.json +1 -1
  70. package/.next-prod/server/app/api/git/stage/route.js.nft.json +1 -1
  71. package/.next-prod/server/app/api/git/status/route.js.nft.json +1 -1
  72. package/.next-prod/server/app/api/git/unstage/route.js.nft.json +1 -1
  73. package/.next-prod/server/app/api/git/worktree/route.js.nft.json +1 -1
  74. package/.next-prod/server/app/api/glm/credentials/route.js.nft.json +1 -1
  75. package/.next-prod/server/app/api/glm/models/route.js.nft.json +1 -1
  76. package/.next-prod/server/app/api/glm/usage/route.js.nft.json +1 -1
  77. package/.next-prod/server/app/api/global-state/route.js.nft.json +1 -1
  78. package/.next-prod/server/app/api/health/route.js.nft.json +1 -1
  79. package/.next-prod/server/app/api/html-apps/[id]/route.js.nft.json +1 -1
  80. package/.next-prod/server/app/api/html-apps/route.js.nft.json +1 -1
  81. package/.next-prod/server/app/api/jupyter/load/route.js.nft.json +1 -1
  82. package/.next-prod/server/app/api/jupyter/save/route.js.nft.json +1 -1
  83. package/.next-prod/server/app/api/jupyter/shutdown/route.js.nft.json +1 -1
  84. package/.next-prod/server/app/api/kimi/credentials/route.js.nft.json +1 -1
  85. package/.next-prod/server/app/api/kimi/models/route.js.nft.json +1 -1
  86. package/.next-prod/server/app/api/kimi/usage/route.js.nft.json +1 -1
  87. package/.next-prod/server/app/api/lsp/definition/route.js.nft.json +1 -1
  88. package/.next-prod/server/app/api/lsp/hover/route.js.nft.json +1 -1
  89. package/.next-prod/server/app/api/lsp/references/route.js.nft.json +1 -1
  90. package/.next-prod/server/app/api/lsp/status/route.js.nft.json +1 -1
  91. package/.next-prod/server/app/api/lsp/warmup/route.js.nft.json +1 -1
  92. package/.next-prod/server/app/api/mysql/columns/route.js.nft.json +1 -1
  93. package/.next-prod/server/app/api/mysql/connect/route.js.nft.json +1 -1
  94. package/.next-prod/server/app/api/mysql/disconnect/route.js.nft.json +1 -1
  95. package/.next-prod/server/app/api/mysql/export/route.js.nft.json +1 -1
  96. package/.next-prod/server/app/api/mysql/query/route.js.nft.json +1 -1
  97. package/.next-prod/server/app/api/mysql/schemas/route.js.nft.json +1 -1
  98. package/.next-prod/server/app/api/neo4j/connect/route.js.nft.json +1 -1
  99. package/.next-prod/server/app/api/neo4j/disconnect/route.js.nft.json +1 -1
  100. package/.next-prod/server/app/api/neo4j/query/route.js.nft.json +1 -1
  101. package/.next-prod/server/app/api/neo4j/schema/route.js.nft.json +1 -1
  102. package/.next-prod/server/app/api/note/route.js.nft.json +1 -1
  103. package/.next-prod/server/app/api/ollama/config/route.js.nft.json +1 -1
  104. package/.next-prod/server/app/api/ollama/models/route.js.nft.json +1 -1
  105. package/.next-prod/server/app/api/ollama/start/route.js.nft.json +1 -1
  106. package/.next-prod/server/app/api/open-cursor/route.js.nft.json +1 -1
  107. package/.next-prod/server/app/api/open-vscode/route.js.nft.json +1 -1
  108. package/.next-prod/server/app/api/pick-folder/route.js.nft.json +1 -1
  109. package/.next-prod/server/app/api/pinned-sessions/route.js.nft.json +1 -1
  110. package/.next-prod/server/app/api/project-settings/route.js.nft.json +1 -1
  111. package/.next-prod/server/app/api/project-state/route.js.nft.json +1 -1
  112. package/.next-prod/server/app/api/projectGraph/affected/route.js.nft.json +1 -1
  113. package/.next-prod/server/app/api/projectGraph/callees/route.js.nft.json +1 -1
  114. package/.next-prod/server/app/api/projectGraph/callers/route.js.nft.json +1 -1
  115. package/.next-prod/server/app/api/projectGraph/coedit/route.js.nft.json +1 -1
  116. package/.next-prod/server/app/api/projectGraph/context/route.js.nft.json +1 -1
  117. package/.next-prod/server/app/api/projectGraph/file/route.js.nft.json +1 -1
  118. package/.next-prod/server/app/api/projectGraph/file-functions/route.js.nft.json +1 -1
  119. package/.next-prod/server/app/api/projectGraph/impact/route.js.nft.json +1 -1
  120. package/.next-prod/server/app/api/projectGraph/related/route.js.nft.json +1 -1
  121. package/.next-prod/server/app/api/projectGraph/risk/route.js.nft.json +1 -1
  122. package/.next-prod/server/app/api/projectGraph/search/route.js.nft.json +1 -1
  123. package/.next-prod/server/app/api/projects/route.js.nft.json +1 -1
  124. package/.next-prod/server/app/api/prompts/config/route.js.nft.json +1 -1
  125. package/.next-prod/server/app/api/push/public-key/route.js.nft.json +1 -1
  126. package/.next-prod/server/app/api/push/subscribe/route.js.nft.json +1 -1
  127. package/.next-prod/server/app/api/push/unsubscribe/route.js.nft.json +1 -1
  128. package/.next-prod/server/app/api/redis/command/route.js.nft.json +1 -1
  129. package/.next-prod/server/app/api/redis/connect/route.js.nft.json +1 -1
  130. package/.next-prod/server/app/api/redis/delete/route.js.nft.json +1 -1
  131. package/.next-prod/server/app/api/redis/disconnect/route.js.nft.json +1 -1
  132. package/.next-prod/server/app/api/redis/get/route.js.nft.json +1 -1
  133. package/.next-prod/server/app/api/redis/keys/route.js.nft.json +1 -1
  134. package/.next-prod/server/app/api/redis/set/route.js.nft.json +1 -1
  135. package/.next-prod/server/app/api/restart/route.js.nft.json +1 -1
  136. package/.next-prod/server/app/api/review/[id]/comments/route.js.nft.json +1 -1
  137. package/.next-prod/server/app/api/review/[id]/replies/route.js.nft.json +1 -1
  138. package/.next-prod/server/app/api/review/[id]/route.js.nft.json +1 -1
  139. package/.next-prod/server/app/api/review/identify/route.js.nft.json +1 -1
  140. package/.next-prod/server/app/api/review/order/route.js.nft.json +1 -1
  141. package/.next-prod/server/app/api/review/route.js.nft.json +1 -1
  142. package/.next-prod/server/app/api/review/share-info/route.js.nft.json +1 -1
  143. package/.next-prod/server/app/api/review/users/route.js.nft.json +1 -1
  144. package/.next-prod/server/app/api/scheduled-tasks/route.js +1 -1
  145. package/.next-prod/server/app/api/scheduled-tasks/route.js.nft.json +1 -1
  146. package/.next-prod/server/app/api/services/config/route.js.nft.json +1 -1
  147. package/.next-prod/server/app/api/services/scripts/route.js.nft.json +1 -1
  148. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js.nft.json +1 -1
  149. package/.next-prod/server/app/api/session/[sessionId]/history/route.js.nft.json +1 -1
  150. package/.next-prod/server/app/api/session-by-path/route.js.nft.json +1 -1
  151. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js.nft.json +1 -1
  152. package/.next-prod/server/app/api/sessions/projects/route.js.nft.json +1 -1
  153. package/.next-prod/server/app/api/sessions/route.js.nft.json +1 -1
  154. package/.next-prod/server/app/api/settings/route.js.nft.json +1 -1
  155. package/.next-prod/server/app/api/shutdown/route.js.nft.json +1 -1
  156. package/.next-prod/server/app/api/skills/[id]/route.js.nft.json +1 -1
  157. package/.next-prod/server/app/api/skills/content/route.js.nft.json +1 -1
  158. package/.next-prod/server/app/api/skills/route.js.nft.json +1 -1
  159. package/.next-prod/server/app/api/snapshots/blob/route.js.nft.json +1 -1
  160. package/.next-prod/server/app/api/snapshots/diff/route.js.nft.json +1 -1
  161. package/.next-prod/server/app/api/snapshots/route.js.nft.json +1 -1
  162. package/.next-prod/server/app/api/terminal/aliases/route.js.nft.json +1 -1
  163. package/.next-prod/server/app/api/terminal/autocomplete/route.js.nft.json +1 -1
  164. package/.next-prod/server/app/api/terminal/bubble-order/route.js.nft.json +1 -1
  165. package/.next-prod/server/app/api/terminal/env/route.js.nft.json +1 -1
  166. package/.next-prod/server/app/api/terminal/history/route.js.nft.json +1 -1
  167. package/.next-prod/server/app/api/update/route.js.nft.json +1 -1
  168. package/.next-prod/server/app/api/update-state/route.js.nft.json +1 -1
  169. package/.next-prod/server/app/api/version/route.js.nft.json +1 -1
  170. package/.next-prod/server/app/apps/[...path]/route.js.nft.json +1 -1
  171. package/.next-prod/server/app/favicon.ico/route.js.nft.json +1 -1
  172. package/.next-prod/server/app/m/page.js +1 -1
  173. package/.next-prod/server/app/m/page.js.nft.json +1 -1
  174. package/.next-prod/server/app/m/page_client-reference-manifest.js +1 -1
  175. package/.next-prod/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  176. package/.next-prod/server/app/page.js +1 -1
  177. package/.next-prod/server/app/page.js.nft.json +1 -1
  178. package/.next-prod/server/app/page_client-reference-manifest.js +1 -1
  179. package/.next-prod/server/app/project/page.js +1 -1
  180. package/.next-prod/server/app/project/page.js.nft.json +1 -1
  181. package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -1
  182. package/.next-prod/server/app/review/[id]/page.js +1 -1
  183. package/.next-prod/server/app/review/[id]/page.js.nft.json +1 -1
  184. package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -1
  185. package/.next-prod/server/app-paths-manifest.json +4 -4
  186. package/.next-prod/server/chunks/3286.js +2 -2
  187. package/.next-prod/server/chunks/{3641.js → 3583.js} +1 -1
  188. package/.next-prod/server/chunks/5750.js +6 -5
  189. package/.next-prod/server/chunks/6548.js +1 -1
  190. package/.next-prod/server/chunks/9830.js +1 -1
  191. package/.next-prod/server/middleware-build-manifest.js +1 -1
  192. package/.next-prod/server/pages/404.html +2 -2
  193. package/.next-prod/server/pages/500.html +1 -1
  194. package/.next-prod/server/server-reference-manifest.json +1 -1
  195. package/.next-prod/static/chunks/{33372-5305e3772ba46050.js → 33372-a2d65ba0d112fc24.js} +13 -12
  196. package/.next-prod/static/chunks/{46784-ff535f686b295919.js → 46784-24ed72109d7c318b.js} +1 -1
  197. package/.next-prod/static/chunks/{5504-583edbefcb22ed17.js → 87834-dfec736663e6aac2.js} +2 -2
  198. package/.next-prod/static/chunks/app/{layout-65e8647a35bd5ef0.js → layout-9585d7901d2a6c15.js} +1 -1
  199. package/.next-prod/static/chunks/app/{page-6931b763a22d95be.js → page-340e8a5ca67a0dad.js} +1 -1
  200. package/.next-prod/static/chunks/app/project/{page-6931b763a22d95be.js → page-340e8a5ca67a0dad.js} +1 -1
  201. package/.next-prod/trace +15 -15
  202. package/.next-prod/trace-build +1 -1
  203. package/dist/{chunk-SAKRITIQ.mjs → chunk-6EMR3NZV.mjs} +6 -3
  204. package/dist/scheduledTasks.mjs +14 -7
  205. package/dist/wsServer.mjs +1 -1
  206. package/package.json +3 -3
  207. /package/.next-prod/static/{U8R610UNAk7MWsuSmrm28 → MM6vZhLQFwtUo_vz7BSfe}/_buildManifest.js +0 -0
  208. /package/.next-prod/static/{U8R610UNAk7MWsuSmrm28 → MM6vZhLQFwtUo_vz7BSfe}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- [{"name":"run-webpack","duration":14966964,"timestamp":220356917,"id":14,"parentId":1,"tags":{},"startTime":1787715528803,"traceId":"40dc223f76e85a3d"},{"name":"run-typescript","duration":4600148,"timestamp":235328242,"id":1489,"parentId":1,"tags":{},"startTime":1787715543775,"traceId":"40dc223f76e85a3d"},{"name":"static-check","duration":1274501,"timestamp":239959041,"id":1492,"parentId":1,"tags":{},"startTime":1787715548406,"traceId":"40dc223f76e85a3d"},{"name":"static-generation","duration":5191483,"timestamp":241348262,"id":1808,"parentId":1,"tags":{},"startTime":1787715549795,"traceId":"40dc223f76e85a3d"},{"name":"collect-build-traces","duration":22703036,"timestamp":241237473,"id":1805,"parentId":1,"tags":{},"startTime":1787715549684,"traceId":"40dc223f76e85a3d"},{"name":"telemetry-flush","duration":58,"timestamp":263944117,"id":1817,"parentId":1,"tags":{},"startTime":1787715572391,"traceId":"40dc223f76e85a3d"},{"name":"next-build","duration":43854971,"timestamp":220089217,"id":1,"tags":{"buildMode":"default","version":"16.3.0","bundler":"webpack","has-custom-webpack-config":"true","use-build-worker":"false"},"startTime":1787715528536,"traceId":"40dc223f76e85a3d"}]
1
+ [{"name":"run-webpack","duration":15441432,"timestamp":194670530,"id":14,"parentId":1,"tags":{},"startTime":1787934941006,"traceId":"19358cb7cc308482"},{"name":"run-typescript","duration":4927178,"timestamp":210115919,"id":1489,"parentId":1,"tags":{},"startTime":1787934956452,"traceId":"19358cb7cc308482"},{"name":"static-check","duration":1333861,"timestamp":215082276,"id":1492,"parentId":1,"tags":{},"startTime":1787934961418,"traceId":"19358cb7cc308482"},{"name":"static-generation","duration":5530545,"timestamp":216525534,"id":1808,"parentId":1,"tags":{},"startTime":1787934962861,"traceId":"19358cb7cc308482"},{"name":"collect-build-traces","duration":24092801,"timestamp":216416788,"id":1805,"parentId":1,"tags":{},"startTime":1787934962752,"traceId":"19358cb7cc308482"},{"name":"telemetry-flush","duration":52,"timestamp":240513559,"id":1817,"parentId":1,"tags":{},"startTime":1787934986849,"traceId":"19358cb7cc308482"},{"name":"next-build","duration":46020721,"timestamp":194492902,"id":1,"tags":{"buildMode":"default","version":"16.3.0","bundler":"webpack","has-custom-webpack-config":"true","use-build-worker":"false"},"startTime":1787934940829,"traceId":"19358cb7cc308482"}]
@@ -166,7 +166,7 @@ function truncate(s) {
166
166
  const chars = [...s];
167
167
  return chars.length <= MAX_TEXT_LEN ? s : chars.slice(0, MAX_TEXT_LEN).join("") + "\u2026";
168
168
  }
169
- async function updateGlobalState(cwd, sessionId, status, title, lastUserMessage) {
169
+ async function updateGlobalState(cwd, sessionId, status, title, lastUserMessage, engine) {
170
170
  if (!existsSync(cwd)) {
171
171
  return;
172
172
  }
@@ -190,7 +190,10 @@ async function updateGlobalState(cwd, sessionId, status, title, lastUserMessage)
190
190
  lastActive: Date.now(),
191
191
  status,
192
192
  title: truncate(title || existing?.title),
193
- lastUserMessage: truncate(lastUserMessage || existing?.lastUserMessage)
193
+ lastUserMessage: truncate(lastUserMessage || existing?.lastUserMessage),
194
+ // Carried like title/lastUserMessage: status-only updates (the client's
195
+ // /api/global-state PATCH) pass no engine and must not erase it.
196
+ engine: engine || existing?.engine
194
197
  };
195
198
  if (existingIndex >= 0) {
196
199
  state.sessions[existingIndex] = newSession;
@@ -318,7 +321,7 @@ async function attachEngines(sessions) {
318
321
  };
319
322
  return Promise.all(
320
323
  sessions.map(async (session) => {
321
- const engine = (await enginesFor(session.cwd))[session.sessionId];
324
+ const engine = session.engine ?? (await enginesFor(session.cwd))[session.sessionId];
322
325
  return engine ? { ...session, engine } : session;
323
326
  })
324
327
  );
@@ -14,7 +14,7 @@ import {
14
14
  stashCodexRollout,
15
15
  stashTranscript,
16
16
  updateGlobalState
17
- } from "./chunk-SAKRITIQ.mjs";
17
+ } from "./chunk-6EMR3NZV.mjs";
18
18
  import {
19
19
  AgentError,
20
20
  AppRuntime,
@@ -2304,7 +2304,7 @@ function deriveBaseUrl() {
2304
2304
  const port = process.env.COCKPIT_PORT || process.env.PORT || "3457";
2305
2305
  return `http://localhost:${port}`;
2306
2306
  }
2307
- var COMMAND_LINE_RE = /^\s*([/@])([a-zA-Z][a-zA-Z0-9-]*)(?:\s+|$)/;
2307
+ var COMMAND_LINE_RE = /^\s*([/@])(\S+?)(?:\s+|$)/;
2308
2308
  function resolveCommandPrompt(prompt, language = "en", _req) {
2309
2309
  const lang = language.startsWith("zh") ? "zh" : "en";
2310
2310
  const userSkills = listUserSkills();
@@ -2488,7 +2488,7 @@ async function dispatchChat(spec, body, request) {
2488
2488
  abort.abort();
2489
2489
  });
2490
2490
  if (cwd && sessionId) {
2491
- updateGlobalState(cwd, sessionId, "loading", void 0, promptText).catch(() => {
2491
+ updateGlobalState(cwd, sessionId, "loading", void 0, promptText, spec.name).catch(() => {
2492
2492
  });
2493
2493
  }
2494
2494
  snapshotOnRunStart(cwd || "", currentKey, spec.name, runId);
@@ -2510,7 +2510,7 @@ async function dispatchChat(spec, body, request) {
2510
2510
  currentKey = realSessionId;
2511
2511
  actualSessionId = realSessionId;
2512
2512
  if (cwd) {
2513
- updateGlobalState(cwd, realSessionId, "loading", void 0, promptText).catch(() => {
2513
+ updateGlobalState(cwd, realSessionId, "loading", void 0, promptText, spec.name).catch(() => {
2514
2514
  });
2515
2515
  }
2516
2516
  },
@@ -2533,14 +2533,14 @@ async function dispatchChat(spec, body, request) {
2533
2533
  isClosed = true;
2534
2534
  if (cwd && actualSessionId) {
2535
2535
  const title = await getSessionTitle(cwd, actualSessionId).catch(() => void 0);
2536
- await updateGlobalState(cwd, actualSessionId, "unread", title).catch(() => {
2536
+ await updateGlobalState(cwd, actualSessionId, "unread", title, void 0, spec.name).catch(() => {
2537
2537
  });
2538
2538
  }
2539
2539
  return;
2540
2540
  }
2541
2541
  if (cwd && actualSessionId) {
2542
2542
  const title = await (spec.runner.resolveTitle ? spec.runner.resolveTitle(cwd, actualSessionId).catch(() => void 0) : Promise.resolve(void 0));
2543
- await updateGlobalState(cwd, actualSessionId, "unread", title).catch(() => {
2543
+ await updateGlobalState(cwd, actualSessionId, "unread", title, void 0, spec.name).catch(() => {
2544
2544
  });
2545
2545
  }
2546
2546
  isClosed = true;
@@ -19033,6 +19033,7 @@ var en_default2 = {
19033
19033
  noQuickPrompts: "No quick prompts yet",
19034
19034
  addQuickPrompt: "Add quick prompt",
19035
19035
  quickPromptPlaceholder: "One-line prompt \u2014 Enter to save, Esc to cancel",
19036
+ insertQuickPrompt: "Insert into input (without sending)",
19036
19037
  context: "Context",
19037
19038
  output: "Output",
19038
19039
  copiedCommandTooltip: "Copied!",
@@ -20297,6 +20298,7 @@ var zh_default = {
20297
20298
  noQuickPrompts: "\u6682\u65E0\u5FEB\u6377 Prompt",
20298
20299
  addQuickPrompt: "\u65B0\u589E\u5FEB\u6377 Prompt",
20299
20300
  quickPromptPlaceholder: "\u8F93\u5165\u4E00\u53E5\u8BDD Prompt\uFF0CEnter \u4FDD\u5B58\uFF0CEsc \u53D6\u6D88",
20301
+ insertQuickPrompt: "\u586B\u5165\u8F93\u5165\u6846\uFF08\u4E0D\u53D1\u9001\uFF09",
20300
20302
  context: "\u4E0A\u4E0B\u6587",
20301
20303
  output: "\u8F93\u51FA",
20302
20304
  copiedCommandTooltip: "\u5DF2\u590D\u5236!",
@@ -21175,7 +21177,12 @@ var sendChatMessageEff = (task) => Effect_exports.gen(function* () {
21175
21177
  (err) => Effect_exports.gen(function* () {
21176
21178
  console.error(`[ScheduledTask] Failed to send message for task ${task.id}:`, err);
21177
21179
  yield* Effect_exports.tryPromise(
21178
- () => updateGlobalState(task.cwd, task.sessionId, "unread")
21180
+ () => (
21181
+ // Pass the engine here too: this branch also covers dispatch never
21182
+ // starting (bad engine, 409, missing task file), so the orchestrator
21183
+ // never got to record it.
21184
+ updateGlobalState(task.cwd, task.sessionId, "unread", void 0, void 0, task.engine)
21185
+ )
21179
21186
  ).pipe(Effect_exports.orElse(() => Effect_exports.void));
21180
21187
  return false;
21181
21188
  })
package/dist/wsServer.mjs CHANGED
@@ -4,7 +4,7 @@ import {
4
4
  getRunSnapshot,
5
5
  recoverStashedCodexRollouts,
6
6
  recoverStashedTranscripts
7
- } from "./chunk-SAKRITIQ.mjs";
7
+ } from "./chunk-6EMR3NZV.mjs";
8
8
  import {
9
9
  addExitListener,
10
10
  addOutputListener,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@surething/cockpit",
3
- "version": "1.0.267",
3
+ "version": "1.0.268",
4
4
  "description": "The open-source Claude Code GUI — an IDE-like workbench for parallel AI coding. Drive Claude (default), Codex, DeepSeek, Kimi, or local Ollama in tabs. Terminal, browser & DB bubbles, code review. Self-host on a shared dev box — a seat for every teammate. Local-first, MIT.",
5
5
  "author": "Robert",
6
6
  "license": "MIT",
@@ -104,9 +104,9 @@
104
104
  },
105
105
  "dependencies": {
106
106
  "@ai-sdk/openai": "^3.0.52",
107
- "@anthropic-ai/claude-agent-sdk": "0.3.245",
107
+ "@anthropic-ai/claude-agent-sdk": "0.3.250",
108
108
  "@dagrejs/dagre": "^3.0.0",
109
- "@openai/codex-sdk": "0.149.1",
109
+ "@openai/codex-sdk": "0.150.1",
110
110
  "@tanstack/react-virtual": "^3.13.18",
111
111
  "@tiptap/extension-link": "^3.19.0",
112
112
  "@tiptap/extension-placeholder": "^3.19.0",