jinzd-ai-cli 0.4.278 → 0.4.280

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 (34) hide show
  1. package/dist/{batch-7Y4NAA6N.js → batch-F27NOTWC.js} +2 -2
  2. package/dist/{chunk-LTZFUYBT.js → chunk-B3FHA6IN.js} +3 -3
  3. package/dist/{chunk-WOXIKQRI.js → chunk-CP5LAA52.js} +4 -4
  4. package/dist/{chunk-2BYQP6JX.js → chunk-EOP775JU.js} +1 -1
  5. package/dist/{chunk-JJCNNQTU.js → chunk-IIO2SMEJ.js} +354 -3
  6. package/dist/{chunk-H7QC5VMQ.js → chunk-LPZNOYRJ.js} +1 -1
  7. package/dist/{chunk-LOXEYWC3.js → chunk-NHJ4GHL4.js} +1 -1
  8. package/dist/{chunk-SJCOE4C7.js → chunk-PN42JO74.js} +1 -1
  9. package/dist/{chunk-LXXQTWT2.js → chunk-PUC277TH.js} +1 -1
  10. package/dist/{chunk-4Z6GAYB5.js → chunk-TAIZZY3N.js} +3 -3
  11. package/dist/{chunk-X3722RFA.js → chunk-UBPRUSAF.js} +1 -1
  12. package/dist/{chunk-L3CPM472.js → chunk-UMWDNNPS.js} +1 -1
  13. package/dist/{chunk-RFSKPCYC.js → chunk-V7EZ4SDC.js} +1 -1
  14. package/dist/{chunk-SB4XONS4.js → chunk-VQCFEA4Z.js} +1 -1
  15. package/dist/{ci-WDF2CYR4.js → ci-HJ4OVHCM.js} +4 -4
  16. package/dist/{ci-format-7B5VAZGA.js → ci-format-NKJRZ3QI.js} +2 -2
  17. package/dist/{constants-DC3TNLTL.js → constants-6LCZOBJC.js} +1 -1
  18. package/dist/{doctor-cli-CDDG5XOY.js → doctor-cli-7JGPC5G4.js} +4 -4
  19. package/dist/electron-server.js +525 -140
  20. package/dist/{hub-TO7ODOIA.js → hub-NX7HYN7V.js} +1 -1
  21. package/dist/index.js +151 -429
  22. package/dist/{persistent-memory-JCENBMCJ.js → persistent-memory-E6WECUTW.js} +2 -2
  23. package/dist/{persistent-memory-BU63CSGK.js → persistent-memory-MHHX7F25.js} +2 -2
  24. package/dist/{pr-GVSZYX6I.js → pr-GLUFBQLI.js} +4 -4
  25. package/dist/{run-tests-2Q5MJHXB.js → run-tests-LWAFPVS3.js} +2 -2
  26. package/dist/{run-tests-R4IQS6IF.js → run-tests-YPJDOEJA.js} +2 -2
  27. package/dist/{server-KAURBKFI.js → server-CXXYIPMU.js} +226 -145
  28. package/dist/{server-WXLE53HG.js → server-P6DI27CY.js} +5 -5
  29. package/dist/{task-orchestrator-RJ6FXYY5.js → task-orchestrator-FW4LBPTS.js} +5 -5
  30. package/dist/{usage-V3R7DA7M.js → usage-CJUHQDT2.js} +2 -2
  31. package/dist/web/client/app.js +14 -2
  32. package/dist/web/client/app.js.br +0 -0
  33. package/dist/web/client/app.js.gz +0 -0
  34. package/package.json +1 -1
@@ -4,9 +4,9 @@ import {
4
4
  googleSearchContext,
5
5
  isToolCapableProvider,
6
6
  truncateOutput
7
- } from "./chunk-WOXIKQRI.js";
7
+ } from "./chunk-CP5LAA52.js";
8
8
  import "./chunk-GHWZVPUV.js";
9
- import "./chunk-RFSKPCYC.js";
9
+ import "./chunk-V7EZ4SDC.js";
10
10
  import "./chunk-4DEMGCK4.js";
11
11
  import "./chunk-UUSRWSSX.js";
12
12
  import "./chunk-CKH4KQ4E.js";
@@ -17,7 +17,7 @@ import "./chunk-NYNSYLFY.js";
17
17
  import "./chunk-3FEZSLGI.js";
18
18
  import {
19
19
  runTool
20
- } from "./chunk-L3CPM472.js";
20
+ } from "./chunk-UMWDNNPS.js";
21
21
  import {
22
22
  getDangerLevel,
23
23
  runLeanAgentLoop
@@ -28,10 +28,10 @@ import {
28
28
  atomicWriteFileSync
29
29
  } from "./chunk-IW3Q7AE5.js";
30
30
  import "./chunk-4BKXL7SM.js";
31
- import "./chunk-SB4XONS4.js";
31
+ import "./chunk-VQCFEA4Z.js";
32
32
  import {
33
33
  SUBAGENT_ALLOWED_TOOLS
34
- } from "./chunk-X3722RFA.js";
34
+ } from "./chunk-UBPRUSAF.js";
35
35
 
36
36
  // src/hub/task-orchestrator.ts
37
37
  import { createInterface } from "readline";
@@ -8,10 +8,10 @@ import {
8
8
  } from "./chunk-DPTEC6AQ.js";
9
9
  import {
10
10
  ConfigManager
11
- } from "./chunk-2BYQP6JX.js";
11
+ } from "./chunk-EOP775JU.js";
12
12
  import "./chunk-TU3L3PW7.js";
13
13
  import "./chunk-IW3Q7AE5.js";
14
- import "./chunk-X3722RFA.js";
14
+ import "./chunk-UBPRUSAF.js";
15
15
 
16
16
  // src/cli/usage.ts
17
17
  function classifyRowCost(row) {
@@ -481,9 +481,21 @@ function handleStatus(msg) {
481
481
  }
482
482
  }
483
483
 
484
+ if (targetIdx < 0 && msg.sessionId && sessionTabs.length > 0) {
485
+ // 没有任何标签认领这个 sessionId,也没人在等待绑定——最常见的成因是**服务端换了会话**:
486
+ // 服务器重启后本页重连,或历史标签从 localStorage 恢复而服务端早已新建了会话。
487
+ // 此前这里直接静默丢弃,于是 plan/think 指示灯、token 用量与成本从此不再更新,
488
+ // 而页面看上去一切正常(P2-02 第 3 批实测发现,第 4 批修)。
489
+ //
490
+ // 一个 WebSocket 只对应服务端一个 SessionHandler、一个 current session,所以这一帧
491
+ // 只可能属于当前活跃标签——把新 id 认领过来,而不是把帧扔掉。
492
+ targetIdx = activeTabIdx >= 0 ? activeTabIdx : 0;
493
+ sessionTabs[targetIdx].sessionId = msg.sessionId;
494
+ sessionTabs[targetIdx].pendingBind = false;
495
+ }
496
+
484
497
  if (targetIdx < 0) {
485
- // Stale response — the tab that asked for it was closed before the
486
- // server responded. Drop silently.
498
+ // 连一个标签都没有(页面正在重建)——这一帧确实无处可去。
487
499
  return;
488
500
  }
489
501
 
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jinzd-ai-cli",
3
- "version": "0.4.278",
3
+ "version": "0.4.280",
4
4
  "description": "Cross-platform REPL-style AI CLI with multi-provider support",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",