@bolloon/bolloon-agent 0.5.0 → 0.5.1

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 (106) hide show
  1. package/dist/agents/execution-supervisor.js +87 -5
  2. package/dist/agents/model-policy.js +651 -0
  3. package/dist/agents/pi-sdk-tools.js +84 -33
  4. package/dist/agents/pi-sdk.js +83 -23
  5. package/dist/agents/run-store.js +53 -0
  6. package/dist/agents/task/task-runner.js +8 -1
  7. package/dist/agents/workflow-pivot-loop.js +19 -12
  8. package/dist/cli/clipboard.js +65 -0
  9. package/dist/cli/ink-app.js +145 -17
  10. package/dist/cli/log-gate.js +386 -0
  11. package/dist/cli/mention-data.js +2 -0
  12. package/dist/cli/model-selector.js +538 -0
  13. package/dist/cli/reply-hygiene.js +54 -0
  14. package/dist/cli/setup-wizard.js +686 -69
  15. package/dist/cli/startup-notice.js +160 -0
  16. package/dist/cli/stores.js +22 -1
  17. package/dist/cli/theme.js +49 -0
  18. package/dist/cli/tui-select.js +970 -0
  19. package/dist/cli-entry.js +125 -18
  20. package/dist/electron-build/agents/execution-supervisor.js +86 -4
  21. package/dist/electron-build/agents/execution-supervisor.js.map +1 -1
  22. package/dist/electron-build/agents/goal-store.js.map +1 -1
  23. package/dist/electron-build/agents/model-policy.js +706 -0
  24. package/dist/electron-build/agents/model-policy.js.map +1 -0
  25. package/dist/electron-build/agents/pi-sdk-tools.js +84 -33
  26. package/dist/electron-build/agents/pi-sdk-tools.js.map +1 -1
  27. package/dist/electron-build/agents/pi-sdk-types.js.map +1 -1
  28. package/dist/electron-build/agents/pi-sdk.js +83 -23
  29. package/dist/electron-build/agents/pi-sdk.js.map +1 -1
  30. package/dist/electron-build/agents/run-store.js +55 -1
  31. package/dist/electron-build/agents/run-store.js.map +1 -1
  32. package/dist/electron-build/agents/task/task-runner.js +8 -1
  33. package/dist/electron-build/agents/task/task-runner.js.map +1 -1
  34. package/dist/electron-build/agents/workflow-pivot-loop.js +19 -12
  35. package/dist/electron-build/agents/workflow-pivot-loop.js.map +1 -1
  36. package/dist/electron-build/llm/config-store.js +146 -6
  37. package/dist/electron-build/llm/config-store.js.map +1 -1
  38. package/dist/electron-build/llm/connection-probe.js +764 -0
  39. package/dist/electron-build/llm/connection-probe.js.map +1 -0
  40. package/dist/electron-build/llm/custom-provider-store.js +272 -0
  41. package/dist/electron-build/llm/custom-provider-store.js.map +1 -0
  42. package/dist/electron-build/llm/data/provider-catalog-baked.js +23 -0
  43. package/dist/electron-build/llm/data/provider-catalog-baked.js.map +1 -0
  44. package/dist/electron-build/llm/model-catalog.js +778 -0
  45. package/dist/electron-build/llm/model-catalog.js.map +1 -0
  46. package/dist/electron-build/llm/model-discovery.js +1202 -0
  47. package/dist/electron-build/llm/model-discovery.js.map +1 -0
  48. package/dist/electron-build/llm/model-selection.js +1315 -0
  49. package/dist/electron-build/llm/model-selection.js.map +1 -0
  50. package/dist/electron-build/llm/pi-ai.js +70 -11
  51. package/dist/electron-build/llm/pi-ai.js.map +1 -1
  52. package/dist/electron-build/llm/provider-catalog.js +969 -0
  53. package/dist/electron-build/llm/provider-catalog.js.map +1 -0
  54. package/dist/electron-build/llm/provider-registry.js +950 -0
  55. package/dist/electron-build/llm/provider-registry.js.map +1 -0
  56. package/dist/electron-build/llm/tool-name.js +266 -0
  57. package/dist/electron-build/llm/tool-name.js.map +1 -0
  58. package/dist/electron-build/utils/dual-source-facts.js +236 -0
  59. package/dist/electron-build/utils/dual-source-facts.js.map +1 -0
  60. package/dist/electron-build/utils/dual-source.js +32 -156
  61. package/dist/electron-build/utils/dual-source.js.map +1 -1
  62. package/dist/electron-build/utils/update-manager.js +22 -72
  63. package/dist/electron-build/utils/update-manager.js.map +1 -1
  64. package/dist/electron-build/utils/update-state.js +2 -19
  65. package/dist/electron-build/utils/update-state.js.map +1 -1
  66. package/dist/electron-build/utils/version-identity.js +193 -0
  67. package/dist/electron-build/utils/version-identity.js.map +1 -0
  68. package/dist/electron-build/utils/version-info.js +47 -101
  69. package/dist/electron-build/utils/version-info.js.map +1 -1
  70. package/dist/index.js +282 -96
  71. package/dist/ios/bolloon-web.json +10 -0
  72. package/dist/ios/mobile-contacts.js +44 -11
  73. package/dist/ios/mobile-core.js +1723 -84
  74. package/dist/ios/mobile-tasks.js +339 -0
  75. package/dist/ios/mobile-update.js +1442 -0
  76. package/dist/ios/mobile.js +308 -35
  77. package/dist/ios/routes-llm-config.js +344 -52
  78. package/dist/ios/routes-mobile-tasks.js +353 -0
  79. package/dist/ios/server.js +163 -4
  80. package/dist/ios/sw.js +1 -1
  81. package/dist/llm/config-store.js +146 -6
  82. package/dist/llm/connection-probe.js +744 -0
  83. package/dist/llm/custom-provider-store.js +224 -0
  84. package/dist/llm/data/provider-catalog-baked.js +19 -0
  85. package/dist/llm/model-catalog.js +717 -0
  86. package/dist/llm/model-discovery.js +1137 -0
  87. package/dist/llm/model-selection.js +1241 -0
  88. package/dist/llm/pi-ai.js +70 -11
  89. package/dist/llm/provider-catalog.js +898 -0
  90. package/dist/llm/provider-registry.js +917 -0
  91. package/dist/llm/tool-name.js +220 -0
  92. package/dist/setup/onboard.js +34 -8
  93. package/dist/utils/dual-source-facts.js +223 -0
  94. package/dist/utils/dual-source.js +12 -141
  95. package/dist/utils/update-manager.js +16 -59
  96. package/dist/utils/update-state.js +6 -18
  97. package/dist/utils/version-identity.js +176 -0
  98. package/dist/utils/version-info.js +9 -78
  99. package/dist/web/bolloon-web.json +10 -0
  100. package/dist/web/mobile-core.js +1721 -84
  101. package/dist/web/mobile-update.js +1442 -0
  102. package/dist/web/mobile.js +308 -35
  103. package/dist/web/routes-llm-config.js +344 -52
  104. package/dist/web/sw.js +1 -1
  105. package/package.json +1 -1
  106. package/scripts/build-web.ts +36 -0
package/dist/cli-entry.js CHANGED
@@ -22,6 +22,9 @@ import { discoverEngines, delegateToEngine } from './external-engines/index.js';
22
22
  import { x402CheckBalance, x402Fetch } from './agents/x402/x402Pay.js';
23
23
  import { runVersionCommand, runUpdateCommand, runDoctorCommand, runRuntimeCommand, UPDATE_HELP } from './cli/update-commands.js';
24
24
  import { collectVersionInfo } from './utils/version-info.js';
25
+ // 2026-09-27: 启动前言的默认静默 + 显式查询命令 (与 `src/index.ts` 同一套判断)
26
+ import { startupPreambleVisible } from './cli/startup-notice.js';
27
+ import { logStartupLine } from './cli/log-gate.js';
25
28
  // 2026-09-21 (P3): 统一 JSON 信封 + 命令组 (network/agent/task/wallet/payment/trade)
26
29
  import { runServiceGroup, GROUPS_HELP } from './cli/commands/index.js';
27
30
  // 2026-09-21 (P4): MCP 适配层 (`bolloon mcp serve` = stdio, 只调 P3 服务层)
@@ -71,6 +74,9 @@ ${BOLD}命令:${RESET}
71
74
  bolloon model [name] [model] 列出 / 切换模型供应商 (如: bolloon model deepseek deepseek-v4-flash)
72
75
  bolloon model key <name> 配置某供应商的 API key (隐藏输入, 不回显)
73
76
  bolloon model test [name] 测试供应商连通性
77
+ bolloon model list [name] 看模型发现目录 (P5)
78
+ bolloon model refresh [name] 重取上游模型目录 (--clear 清缓存)
79
+ bolloon model admit <name> <model> 手输一个目录里没有的模型名
74
80
  bolloon read <file> 读取文档
75
81
  bolloon summarize <file> 总结文档
76
82
  bolloon improve <file> <req> 改进文档
@@ -568,36 +574,121 @@ async function handleP2pCommand(p2pArgs) {
568
574
  // 那是常驻模块, 句柄不会自己关 → 不显式退出会"输出完了还挂着"。
569
575
  process.exit(info.ok ? 0 : 1);
570
576
  }
577
+ /** 真终端判定: stdin 与 stdout 都是 TTY 才算交互 (管道 / 重定向 = 脚本可读输出) */
578
+ function isRealTty() {
579
+ return !!process.stdin.isTTY && !!process.stdout.isTTY;
580
+ }
581
+ /**
582
+ * `bolloon model [...]` — 模型供应商/模型切换的唯一命令行入口。
583
+ *
584
+ * leo 2026-09-27 口径: **`bolloon model` 就是"切换"的启动命令** —— 真终端里敲完直接就是选择界面
585
+ * (与 `bolloon model pick` 同一实现, 只是用户不必知道 pick 这个词), 第一屏就是带序号/状态/当前项
586
+ * 标记的供应商列表, 选完往下走; **不许**先刷一坨供应商清单+用法再问。
587
+ * 管道/非 TTY 才退回清单+用法 (脚本可读, 不会卡在等待输入)。
588
+ * `pick` / `list` 两个子命令都保留 (pick 是显式写法, list 只读列表)。
589
+ */
571
590
  async function handleModelCommand(modelArgs) {
572
- const { llmConfigStore, PROVIDER_INFO } = await import('./llm/config-store.js');
591
+ const { llmConfigStore } = await import('./llm/config-store.js');
592
+ const { effectiveModelConfig, formatEffectiveModel } = await import('./llm/model-selection.js');
573
593
  await llmConfigStore.initialize();
574
- // 无参: 列出所有供应商 + 当前 active
594
+ const tty = isRealTty();
595
+ // ── 真终端 + 裸敲: 直接进选择器 (第一屏 = 供应商列表) ──────────
596
+ if (modelArgs.length === 0 && tty) {
597
+ const { runModelCommand, modelTtyIO, askHiddenLineEof, askLineEof } = await import('./cli/setup-wizard.js');
598
+ const out = await runModelCommand('pick', await useTui() ? modelTtyIO() : {
599
+ live: true, // 每一步当场打到终端 (不是等整轮结束才一次性回显)
600
+ print: (l) => process.stdout.write(l + '\n'),
601
+ askHidden: async (q) => { const r = await askHiddenLineEof(q); return r.eof ? null : r.value; },
602
+ ask: async (q, opts) => { const r = await askLineEof(q, opts); return r.eof ? null : r.value; },
603
+ });
604
+ for (const line of String(out).split('\n'))
605
+ if (line !== '')
606
+ console.log(line);
607
+ return;
608
+ }
609
+ // ── 无参 + 非终端 (管道/脚本): 列出**全部**供应商 (分组带家数) + 当前**真实生效**的那一份 + 用法 ──
575
610
  if (modelArgs.length === 0) {
576
- const config = await llmConfigStore.getConfig();
577
- console.log(`\n${BOLD}模型供应商${RESET} (当前: ${config.activeProvider})\n`);
611
+ const eff = await effectiveModelConfig({}).catch(() => null);
612
+ const mc = await import('./llm/model-catalog.js');
613
+ const summaries = await mc.buildProviderSummaries({});
614
+ const pc = await import('./llm/provider-catalog.js');
615
+ await pc.initializeProviderCatalog();
616
+ console.log(`\n${BOLD}模型供应商${RESET} (当前生效: ${eff ? `${eff.provider}/${eff.model}` : '读不出来'})\n`);
617
+ if (eff)
618
+ console.log(` ${formatEffectiveModel(eff)}`);
578
619
  console.log('─'.repeat(58));
579
- for (const [name, p] of Object.entries(config.providers)) {
580
- const info = PROVIDER_INFO[name] || {};
581
- const active = name === config.activeProvider ? '●' : '○';
582
- const keyState = p.apiKey ? '🔑' : p.requiresApiKey ? '⚠ 无 key' : '';
583
- const model = p.model || (info.models && info.models[0]) || '';
584
- console.log(` ${active} ${name.padEnd(10)} ${String(info.name || '').padEnd(16)} ${keyState.padEnd(8)} model: ${model}`);
620
+ // 非终端里没有"固定高度视窗 + 折叠"那套交互 (那是全屏 TUI 的事), 所以这里**整份列全**:
621
+ // 内置 13 + 自定义 + 目录全部 逐行出, 分组标题带家数。只给"分组计数"是这条线要修的病 ——
622
+ // 脚本要能 grep 到任何一家 (含"需专用鉴权 (未支持)""无基址"的那些)。
623
+ const ordered = mc.orderProvidersForMenu(summaries);
624
+ let lastGroup = '';
625
+ for (const s of ordered) {
626
+ const tier = mc.providerTierOf(s);
627
+ const g = mc.PROVIDER_GROUPS[tier];
628
+ if (g !== lastGroup) {
629
+ lastGroup = g;
630
+ const n = ordered.filter((x) => mc.providerTierOf(x) === tier).length;
631
+ console.log(` ── ${g} (${n} 家)${mc.providerTierCollapsedByDefault(tier) ? ' · 交互界面里默认收起, 空格/→ 展开' : ''}`);
632
+ }
633
+ console.log(` ${mc.formatProviderMenuRow(s)}`);
585
634
  }
635
+ console.log(` ${mc.providerGroupSummary(summaries)}`);
636
+ console.log(` ${pc.catalogStatusLine()}`);
637
+ console.log(` ${pc.catalogGroupLine()}`);
586
638
  console.log(`\n${BOLD}用法:${RESET}`);
639
+ console.log(` bolloon model # 终端里直接进选择界面 (固定高度视窗 + 分组折叠; 上面这份全量列表是管道/脚本的可读输出)`);
640
+ console.log(` bolloon model pick # 同上, 显式写法 (供应商→凭证→模型→参数→作用域→测试→确认)`);
587
641
  console.log(` bolloon model <name> # 切换到该供应商`);
588
642
  console.log(` bolloon model <name> <model> # 切换并指定模型`);
643
+ console.log(` bolloon model list [name] # 看模型发现目录 (只读)`);
644
+ console.log(` bolloon model refresh [name] # 重取上游目录 (--clear 清缓存)`);
645
+ console.log(` bolloon model admit <name> <m> # 手输一个目录里没有的模型名`);
646
+ console.log(` bolloon model catalog # 供应商目录: 是几号的/新鲜度/族分布 (只读)`);
647
+ console.log(` bolloon model catalog list [词] # 逐家看 (**默认全量**, 含"需专用鉴权/无基址"并标原因; --usable 只看能用的)`);
648
+ console.log(` bolloon model catalog refresh # 运行期真拉最新目录 (落盘 0600, 记来源与时间)`);
589
649
  console.log(` 示例: bolloon model deepseek deepseek-v4-flash`);
590
650
  return;
591
651
  }
592
- // 有参: 统一交给 setup-wizard 的 runModelCommand
593
- // (切换 / <provider> <model> / key <provider> / test / status 一套语义, 与 CLI 会话内 /model 完全一致)
594
- const { runModelCommand, askHiddenLine } = await import('./cli/setup-wizard.js');
595
- const out = await runModelCommand(modelArgs.join(' '), {
596
- // 正常终端里可以安全收 key (隐藏输入, 不回显)
597
- askHidden: (q) => askHiddenLine(q),
652
+ // ── 有参: 统一交给 setup-wizard 的 runModelCommand ───────────
653
+ // (pick 分步选择 / 切换 / <provider> <model> / key <provider> / test / status 一套语义,
654
+ // 与 CLI 会话内 /model 完全一致 —— 写配置与重建运行时的逻辑只有 selectModel 一处)
655
+ const { runModelCommand, modelTtyIO, askHiddenLineEof, askLineEof } = await import('./cli/setup-wizard.js');
656
+ // `--verbose` 交给界面层决定"打不打内部细节", 不进参数解析 (解析器不认识这个词会被当值)
657
+ const wantVerbose = modelArgs.includes('--verbose');
658
+ const args = modelArgs.filter((a) => a !== '--verbose');
659
+ const out = await runModelCommand(args.join(' '), (await useTui()) && tty ? {
660
+ ...modelTtyIO(),
661
+ ...(wantVerbose ? { verbose: true } : {}),
662
+ } : {
663
+ // 非 TTY (管道/脚本) / 显式关掉 TUI: 逐行问答 —— 输出可读、不卡死、行为与以前一致
664
+ live: tty,
665
+ print: (l) => process.stdout.write(l + '\n'),
666
+ askHidden: async (q) => { const r = await askHiddenLineEof(q); return r.eof ? null : r.value; },
667
+ ask: async (q, opts) => { const r = await askLineEof(q, opts); return r.eof ? null : r.value; },
668
+ ...(wantVerbose ? { verbose: true } : {}),
598
669
  });
599
670
  for (const line of String(out).split('\n'))
600
- console.log(line);
671
+ if (line !== '')
672
+ console.log(line);
673
+ }
674
+ /**
675
+ * 这个环境要不要用全屏 TUI 选择器。
676
+ * 三判据: ① 用户没显式关 (`BOLLOON_NO_TUI=1`); ② 真 TTY; ③ `tuiCapable()` (终端够高/能拿 raw mode)。
677
+ * 任何一条不满足 → 退回逐行问答 (**不静默变样子**: 管道输出仍是可读清单+用法)。
678
+ */
679
+ function useTui() {
680
+ return (async () => {
681
+ if (process.env.BOLLOON_NO_TUI)
682
+ return false;
683
+ try {
684
+ // 同步判据在 tui-select 里 (它不许在非 TTY 里抢输入)
685
+ const { tuiCapable } = await import('./cli/tui-select.js');
686
+ return !!tuiCapable();
687
+ }
688
+ catch {
689
+ return false;
690
+ }
691
+ })();
601
692
  }
602
693
  /** `bolloon setup` — 首次运行初始化向导 (用户身份 + 模型供应商 + API key + 连通性测试) */
603
694
  async function handleSetupCommand(setupArgs) {
@@ -615,6 +706,7 @@ async function handleSetupCommand(setupArgs) {
615
706
  console.log(`${BOLD}bolloon setup${RESET} — 初始化 Bolloon (用户身份 + 模型供应商 + API key)`);
616
707
  console.log('');
617
708
  console.log(' 无参数 交互式向导 (推荐)');
709
+ console.log(' status 只读: 看初始化状态/门禁/就绪度全量 (启动面板那一行"详情"指的就是它)');
618
710
  console.log(' --provider <名> 指定供应商 (deepseek / minimax / openai / anthropic / ...)');
619
711
  console.log(' --api-key <key> 直接给 key (脚本用; 交互模式会隐藏输入)');
620
712
  console.log(' --model <名> 指定模型');
@@ -623,6 +715,15 @@ async function handleSetupCommand(setupArgs) {
623
715
  console.log(' repair-runtime 检查并补装缺失运行时 (Node/npm/Git/Python)');
624
716
  return;
625
717
  }
718
+ // 2026-09-27: `bolloon setup status` —— **启动前言搬去的地方**。
719
+ // 启动时那一整段 (初始化状态/就绪度/已完成/配置来源/已存输入/缺什么/下一步) 默认不上屏,
720
+ // 要看全量就显式敲这条 (只读, 不写任何文件; 退出码 0 = ready, 1 = 未就绪 —— 脚本可用)。
721
+ if (setupArgs[0] === 'status' || setupArgs.includes('--status')) {
722
+ const { evaluateSetup, describeSetup } = await import('./setup/setup-store.js');
723
+ const ev = await evaluateSetup();
724
+ process.stdout.write(describeSetup(ev) + '\n');
725
+ process.exit(ev.gate === 'ready' ? 0 : 1);
726
+ }
626
727
  const apiKey = val('--api-key');
627
728
  const needsInteractive = !apiKey;
628
729
  const r = await runSetupWizard({
@@ -801,7 +902,13 @@ async function startWebServer(additionalArgs) {
801
902
  }
802
903
  // 启动 CLI
803
904
  async function startCLI(additionalArgs) {
804
- log('启动命令行界面...', CYAN);
905
+ // 2026-09-27 (leo 口径: 打完 `bolloon --cli` 直接看到面板): 这句"启动命令行界面..."属于**启动前言**,
906
+ // 默认不上屏 (照落启动日志); `--verbose` / `BOLLOON_VERBOSE=1` / `BOLLOON_STARTUP_PREAMBLE=1` 逐字回来。
907
+ // (gui/web 那两个面的 banner 不动 —— 它们没有"面板", 输出就是交付物。)
908
+ if (startupPreambleVisible())
909
+ log('启动命令行界面...', CYAN);
910
+ else
911
+ logStartupLine('启动命令行界面...');
805
912
  try {
806
913
  const mainPath = getMainScript();
807
914
  const cliArgs = [...additionalArgs];
@@ -53,6 +53,9 @@ exports.getSupervisor = getSupervisor;
53
53
  exports.resetSupervisorForTest = resetSupervisorForTest;
54
54
  const os = __importStar(require("os"));
55
55
  const goal_store_js_1 = require("./goal-store.js");
56
+ // 2026-09-26 (P7 接线): 长期任务的模型策略 —— 「下一个 Run 用哪一份模型」的唯一决定函数,
57
+ // 以及「这次失败换模型能解决吗」的唯一判定函数 (Supervisor 不再自己看失败类别猜)。
58
+ const model_policy_js_1 = require("./model-policy.js");
56
59
  const run_store_js_1 = require("./run-store.js");
57
60
  // 2026-09-25 (飞轮接线): P0–P4 的七个模块经**唯一**适配层接进真实执行路径
58
61
  // (节奏由进展决定 · Run 收尾必过 closeRun · 子 Agent 走工作合同 · 阻塞监控 · 变更注入 · 用户可见态)
@@ -136,13 +139,19 @@ function decideGoalOutcome(goal, run, opts = {}) {
136
139
  case 'failed':
137
140
  case 'needs_human': {
138
141
  const cls = run.errorClass || 'unknown';
142
+ // ★ 2026-09-26 (P7 接线): 这次失败"换一个模型能不能解决"由**唯一判定函数**回答, 不再由
143
+ // Supervisor 这边看类别自己猜。结论照实写进 reason (含策略模式与理由), 但**不改写**任何
144
+ // 在跑的 Run —— 真正换模型发生在下一个 Run 的决定里 (`resolveNextRunModel`, 见 runGoal)。
145
+ const policyMode = (0, model_policy_js_1.parseGoalModelPolicy)(goal.modelPolicy).policy.mode;
146
+ const modelVerdict = (0, model_policy_js_1.supervisorMaySwitchModel)({ mode: policyMode, errorClass: run.errorClass });
147
+ const modelHint = `; 模型: 策略=${policyMode} · ${modelVerdict.reason}`;
139
148
  const needsHuman = ['auth', 'persist_failed', 'corrupt_state', 'policy_denied', 'repeat_failure', 'bad_args', 'no_such_tool'].includes(cls)
140
149
  || attempts >= maxAttempts;
141
150
  if (needsHuman) {
142
151
  return {
143
152
  goalStatus: 'needs_human',
144
153
  continuation: { ...base, autoContinue: false, wakeReason: 'needs_human', attempts },
145
- reason: `${cls} 需要人工介入${attempts >= maxAttempts ? ` (自动继续已试 ${attempts} 次)` : ''}`,
154
+ reason: `${cls} 需要人工介入${attempts >= maxAttempts ? ` (自动继续已试 ${attempts} 次)` : ''}${modelHint}`,
146
155
  };
147
156
  }
148
157
  const wait = continuationBackoffMs(attempts);
@@ -154,7 +163,7 @@ function decideGoalOutcome(goal, run, opts = {}) {
154
163
  wakeAt: new Date(now + wait).toISOString(),
155
164
  attempts: attempts + 1,
156
165
  },
157
- reason: `可恢复错误 ${cls}: 第 ${attempts + 1} 次自动继续, ${Math.round(wait / 1000)}s 后唤醒`,
166
+ reason: `可恢复错误 ${cls}: 第 ${attempts + 1} 次自动继续, ${Math.round(wait / 1000)}s 后唤醒${modelHint}`,
158
167
  };
159
168
  }
160
169
  case 'recovering':
@@ -540,6 +549,55 @@ class ExecutionSupervisor {
540
549
  const prevRun = prevRunId ? await (0, run_store_js_1.readRun)(prevRunId) : null;
541
550
  const plan = prevRunId ? await (0, run_store_js_1.buildContinuationPlan)(prevRunId).catch(() => null) : null;
542
551
  const guards = plan?.replayGuards || [];
552
+ // ★ 2026-09-26 (P7 接线): 下一个 Run 该用**哪一份**模型配置 —— 唯一决定函数 `resolveNextRunModel`。
553
+ // 它自己走完四步: ① 读 Goal 策略 (记录上的 modelPolicy 优先, 没有才读 sidecar);
554
+ // ② 定稿配置 (auto → 最新 Global 默认; pinned → 固定三元组; session → 会话绑定);
555
+ // ③ 按**失败类别**判定能不能挑备用模型 (内部就是 `supervisorMaySwitchModel`);
556
+ // ④ 跨 Run 非幂等守卫照带 (模型换了也不重做副作用), 并把这次决定写成 Run 事件。
557
+ // 它算的是**下一条** Run: 在跑的那条 Run 的快照一个字都不动 (旧 Run 可追溯)。
558
+ //
559
+ // ⚠ **事件落点** (接线时真跑逼出来的, 不是设计洁癖): P7 自己文档里的事实边界是
560
+ // 「本层算出来的只用于①下一个 Run 的启动快照 ②切换事件 —— **它不回头改老 Run**」,
561
+ // 飞轮规则 ⑦ (`goal-flywheel-wiring.test.ts`) 更是**逐字节**钉住「已发生的 Run 记录不被改写」。
562
+ // 而决定函数的事件缺省落点是 `prevRunId` —— 上一条 Run **已经收尾**时, 那条写入等于
563
+ // 往历史记录上追加一格 (真跑实测: `updatedAt`/`modelSwitches`/`harness` 全变 ⇒ 判红)。
564
+ // 所以分两种, 都说清: 上一条 Run **还活着** → 事件就写它 (它是当事 Run, 也是缺省);
565
+ // **已收尾** → 它是历史, 决定"只算不写", 等新 Run 起来后把同一条决定记到**新 Run 自己**的
566
+ // 账本上 (`RunModelSwitchEvent.to` 的语义本来就是"这个 Run **或下一个 Run** 该用的那一份")。
567
+ const prevIsHistory = prevRun ? (0, model_policy_js_1.isTerminalRunStatus)(prevRun.status) : true;
568
+ let modelResolution = null;
569
+ try {
570
+ // 备用候选: 只有上一个 Run 是**模型相关失败**时才值得去凑 (凑法在切换入口里, 只挑现在真能用的)
571
+ const fallbackCandidates = prevRun?.errorClass
572
+ ? await (async () => {
573
+ const ms = await Promise.resolve().then(() => __importStar(require('../llm/model-selection.js')));
574
+ return await ms.usableFallbackCandidates(prevRun.modelConfig ?? null);
575
+ })().catch(() => [])
576
+ : [];
577
+ modelResolution = await (0, model_policy_js_1.resolveNextRunModel)({
578
+ goalId: goal.goalId,
579
+ // 上一条 Run 已收尾 = 历史 → 不给事件落点 (P7 契约里"只算不写"的那一档), 免得往历史追加
580
+ ...(prevIsHistory ? {} : { prevRunId: prevRunId || undefined }),
581
+ policy: goal.modelPolicy,
582
+ errorClass: prevRun?.errorClass,
583
+ ...(fallbackCandidates.length ? { fallbackCandidates } : {}),
584
+ });
585
+ }
586
+ catch (err) {
587
+ // 算不出来**不猜**: 下一句日志说清, 执行器按自己的默认启动 (Run 记录里因此没有模型快照)
588
+ this.log(`[supervisor] goal=${goal.goalId} 下一个 Run 的模型决定算不出来 (按无快照启动): ${String(err?.message || err).slice(0, 160)}`);
589
+ }
590
+ const nextModelConfig = modelResolution?.startRunModelConfig;
591
+ if (modelResolution) {
592
+ this.log(`[supervisor] goal=${goal.goalId} 下一个 Run 模型: ${(0, model_policy_js_1.formatModelDecision)(modelResolution.decision)}`
593
+ + `; 策略来源=${modelResolution.policyOrigin}`
594
+ + `${modelResolution.startRunModelConfig ? `; 启动快照 hash=${modelResolution.startRunModelConfig.configHash}` : '; 没有可信快照 → 不写快照'}`
595
+ + `; 事件=${modelResolution.event.ok
596
+ ? `已写(Run ${modelResolution.event.onRunId || '-'})`
597
+ : prevIsHistory && modelResolution.startRunModelConfig
598
+ ? '等新 Run 起来后写在它自己的账本上 (上一条 Run 已收尾 = 历史, 不许改写)'
599
+ : `未写(${modelResolution.event.reason || '原因未明'})`}`);
600
+ }
543
601
  // 2026-09-25 (飞轮接线 P4 / P2): 下一个 Run 必须真的读到**同一份**事实 ——
544
602
  // ① 权威 continuation 的 nextAction (飞轮收尾写下的"下一步是什么");
545
603
  // ② 已生效的新要求 (变更注入: 只影响后续 Run, 不改写历史);
@@ -565,7 +623,7 @@ class ExecutionSupervisor {
565
623
  if (!runner && this.resolver) {
566
624
  let res;
567
625
  try {
568
- res = await this.resolver({ goal, kind, prevRunId, instruction, guards });
626
+ res = await this.resolver({ goal, kind, prevRunId, instruction, guards, ...(nextModelConfig ? { modelConfig: nextModelConfig } : {}) });
569
627
  }
570
628
  catch (err) {
571
629
  res = { ok: false, kind: 'none', reason: `resolver 抛错: ${String(err?.message || err).slice(0, 140)}` };
@@ -640,7 +698,7 @@ class ExecutionSupervisor {
640
698
  let result;
641
699
  const t0 = Date.now();
642
700
  try {
643
- result = await runner({ goal, kind, prevRunId, instruction, guards });
701
+ result = await runner({ goal, kind, prevRunId, instruction, guards, ...(nextModelConfig ? { modelConfig: nextModelConfig } : {}) });
644
702
  }
645
703
  catch (err) {
646
704
  result = { error: err?.message || String(err) };
@@ -648,6 +706,30 @@ class ExecutionSupervisor {
648
706
  finally {
649
707
  clearInterval(hb);
650
708
  }
709
+ // ★ 2026-09-26 (P7 接线): 决定"只算不写"的那一档, 把同一条决定**补写进它真正生效的那条 Run**。
710
+ // 为什么不写在算决定的那一刻: 那时新 Run 还没有 id, 而唯一的现成落点是已经收尾的上一条 Run
711
+ // —— 那是历史 (`prevIsHistory` 分支就是为了不碰它)。落点等执行器报回 runId 再定, 事实不丢。
712
+ const runIdOfThisRun = result.runId && result.runId !== prevRunId ? result.runId : null;
713
+ if (modelResolution && nextModelConfig && runIdOfThisRun && !modelResolution.event.ok
714
+ && prevIsHistory && (await (0, run_store_js_1.readRun)(runIdOfThisRun).catch(() => null))) {
715
+ const d = modelResolution.decision;
716
+ const from = prevRun?.modelConfig ?? null;
717
+ // 同口径 = 同一份 `configHash` 就是同一份 (P7 的 configHash 契约), 别自己另立一套
718
+ const outcome = (d.conflict && d.conflict.length) ? 'conflict'
719
+ : (from && from.configHash === nextModelConfig.configHash) ? 'frozen' : 'switched';
720
+ const w = await (0, run_store_js_1.recordModelSwitch)(runIdOfThisRun, {
721
+ to: nextModelConfig,
722
+ from,
723
+ outcome,
724
+ mode: (d.mode === 'auto' || d.mode === 'pinned' || d.mode === 'session' ? d.mode : 'unknown'),
725
+ source: d.source,
726
+ reason: `${d.reason}; 事件落在新 Run (上一条 Run 已收尾 = 历史, 不许改写)`.slice(0, 400),
727
+ guardsCarried: guards.length,
728
+ goalId: goal.goalId,
729
+ });
730
+ this.log(`[supervisor] goal=${goal.goalId} 模型决定补写在新 Run ${runIdOfThisRun} 的账本上: `
731
+ + `${w.ok ? `outcome=${outcome}` : `写不进去 (${w.reason || '原因未明'})`}`);
732
+ }
651
733
  // Run 结束 → Goal 决策 (确定性 reducer, 落盘)
652
734
  const finalRunId = result.runId || prevRunId;
653
735
  const finalRun = finalRunId ? await (0, run_store_js_1.readRun)(finalRunId) : null;
@@ -1 +1 @@
1
- {"version":3,"file":"execution-supervisor.js","sourceRoot":"","sources":["../../../src/agents/execution-supervisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-supervisor.js","sourceRoot":"","sources":["../../../src/agents/execution-supervisor.ts"],"names":[],"mappings":"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"}