@bolloon/bolloon-agent 0.4.33 → 0.5.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 (143) hide show
  1. package/dist/agents/contacts/chain.js +27 -7
  2. package/dist/agents/execution-supervisor.js +493 -35
  3. package/dist/agents/external-events.js +35 -6
  4. package/dist/agents/gateway-group.js +100 -12
  5. package/dist/agents/goal-criteria.js +10 -3
  6. package/dist/agents/goal-flywheel/block-executor.js +346 -0
  7. package/dist/agents/goal-flywheel/continuation-decision.js +592 -0
  8. package/dist/agents/goal-flywheel/goal-change.js +754 -0
  9. package/dist/agents/goal-flywheel/index.js +26 -0
  10. package/dist/agents/goal-flywheel/memory-layers.js +227 -0
  11. package/dist/agents/goal-flywheel/run-closure.js +809 -0
  12. package/dist/agents/goal-flywheel/skill-candidate.js +628 -0
  13. package/dist/agents/goal-flywheel/types.js +329 -0
  14. package/dist/agents/goal-flywheel/wiring/change.js +288 -0
  15. package/dist/agents/goal-flywheel/wiring/closure.js +697 -0
  16. package/dist/agents/goal-flywheel/wiring/continuation.js +432 -0
  17. package/dist/agents/goal-flywheel/wiring/contract.js +270 -0
  18. package/dist/agents/goal-flywheel/wiring/index.js +26 -0
  19. package/dist/agents/goal-flywheel/wiring/monitor.js +254 -0
  20. package/dist/agents/goal-flywheel/wiring/seams.js +592 -0
  21. package/dist/agents/goal-flywheel/work-contract.js +478 -0
  22. package/dist/agents/goal-flywheel/work-monitor.js +488 -0
  23. package/dist/agents/goal-flywheel-wiring.js +1870 -0
  24. package/dist/agents/goal-state-reducer.js +406 -0
  25. package/dist/agents/goal-store.js +35 -1
  26. package/dist/agents/mobile-flywheel-view.js +144 -0
  27. package/dist/agents/mobile-task-actions-verify.js +74 -0
  28. package/dist/agents/mobile-task-actions.js +178 -0
  29. package/dist/agents/mobile-task-views.js +199 -0
  30. package/dist/agents/network-pulse.js +304 -18
  31. package/dist/agents/pi-sdk.js +75 -20
  32. package/dist/agents/run-store.js +18 -5
  33. package/dist/agents/skill-readiness.js +52 -10
  34. package/dist/agents/subagent-manager.js +209 -3
  35. package/dist/agents/task/task-runner.js +9 -3
  36. package/dist/agents/task-group.js +8 -51
  37. package/dist/agents/task-public-text.js +89 -0
  38. package/dist/cli/commands/index.js +1 -0
  39. package/dist/cli/commands/tasks.js +350 -2
  40. package/dist/cli/identity-command.js +177 -0
  41. package/dist/cli/setup-wizard.js +71 -0
  42. package/dist/cli/update-commands.js +150 -24
  43. package/dist/cli-entry.js +12 -2
  44. package/dist/electron-build/agents/contacts/chain.js +26 -6
  45. package/dist/electron-build/agents/contacts/chain.js.map +1 -1
  46. package/dist/electron-build/agents/execution-supervisor.js +492 -34
  47. package/dist/electron-build/agents/execution-supervisor.js.map +1 -1
  48. package/dist/electron-build/agents/external-events.js +34 -5
  49. package/dist/electron-build/agents/external-events.js.map +1 -1
  50. package/dist/electron-build/agents/goal-criteria.js +10 -3
  51. package/dist/electron-build/agents/goal-criteria.js.map +1 -1
  52. package/dist/electron-build/agents/goal-flywheel/continuation-decision.js +598 -0
  53. package/dist/electron-build/agents/goal-flywheel/continuation-decision.js.map +1 -0
  54. package/dist/electron-build/agents/goal-flywheel/goal-change.js +773 -0
  55. package/dist/electron-build/agents/goal-flywheel/goal-change.js.map +1 -0
  56. package/dist/electron-build/agents/goal-flywheel/memory-layers.js +269 -0
  57. package/dist/electron-build/agents/goal-flywheel/memory-layers.js.map +1 -0
  58. package/dist/electron-build/agents/goal-flywheel/run-closure.js +818 -0
  59. package/dist/electron-build/agents/goal-flywheel/run-closure.js.map +1 -0
  60. package/dist/electron-build/agents/goal-flywheel/skill-candidate.js +642 -0
  61. package/dist/electron-build/agents/goal-flywheel/skill-candidate.js.map +1 -0
  62. package/dist/electron-build/agents/goal-flywheel/types.js +333 -0
  63. package/dist/electron-build/agents/goal-flywheel/types.js.map +1 -0
  64. package/dist/electron-build/agents/goal-flywheel/wiring/change.js +294 -0
  65. package/dist/electron-build/agents/goal-flywheel/wiring/change.js.map +1 -0
  66. package/dist/electron-build/agents/goal-flywheel/wiring/closure.js +742 -0
  67. package/dist/electron-build/agents/goal-flywheel/wiring/closure.js.map +1 -0
  68. package/dist/electron-build/agents/goal-flywheel/wiring/continuation.js +444 -0
  69. package/dist/electron-build/agents/goal-flywheel/wiring/continuation.js.map +1 -0
  70. package/dist/electron-build/agents/goal-flywheel/wiring/contract.js +279 -0
  71. package/dist/electron-build/agents/goal-flywheel/wiring/contract.js.map +1 -0
  72. package/dist/electron-build/agents/goal-flywheel/wiring/index.js +111 -0
  73. package/dist/electron-build/agents/goal-flywheel/wiring/index.js.map +1 -0
  74. package/dist/electron-build/agents/goal-flywheel/wiring/monitor.js +264 -0
  75. package/dist/electron-build/agents/goal-flywheel/wiring/monitor.js.map +1 -0
  76. package/dist/electron-build/agents/goal-flywheel/wiring/seams.js +612 -0
  77. package/dist/electron-build/agents/goal-flywheel/wiring/seams.js.map +1 -0
  78. package/dist/electron-build/agents/goal-flywheel/work-contract.js +488 -0
  79. package/dist/electron-build/agents/goal-flywheel/work-contract.js.map +1 -0
  80. package/dist/electron-build/agents/goal-flywheel/work-monitor.js +501 -0
  81. package/dist/electron-build/agents/goal-flywheel/work-monitor.js.map +1 -0
  82. package/dist/electron-build/agents/goal-flywheel-wiring.js +1962 -0
  83. package/dist/electron-build/agents/goal-flywheel-wiring.js.map +1 -0
  84. package/dist/electron-build/agents/goal-state-reducer.js +414 -0
  85. package/dist/electron-build/agents/goal-state-reducer.js.map +1 -0
  86. package/dist/electron-build/agents/goal-store.js +35 -1
  87. package/dist/electron-build/agents/goal-store.js.map +1 -1
  88. package/dist/electron-build/agents/network-pulse.js +307 -19
  89. package/dist/electron-build/agents/network-pulse.js.map +1 -1
  90. package/dist/electron-build/agents/pi-sdk.js +74 -19
  91. package/dist/electron-build/agents/pi-sdk.js.map +1 -1
  92. package/dist/electron-build/agents/run-store.js +20 -5
  93. package/dist/electron-build/agents/run-store.js.map +1 -1
  94. package/dist/electron-build/agents/skill-readiness.js +52 -9
  95. package/dist/electron-build/agents/skill-readiness.js.map +1 -1
  96. package/dist/electron-build/agents/task/task-runner.js +8 -2
  97. package/dist/electron-build/agents/task/task-runner.js.map +1 -1
  98. package/dist/electron-build/orbitdb/cid-database.js +83 -17
  99. package/dist/electron-build/orbitdb/cid-database.js.map +1 -1
  100. package/dist/electron-build/orbitdb/ipfs-node.js +31 -2
  101. package/dist/electron-build/orbitdb/ipfs-node.js.map +1 -1
  102. package/dist/electron-build/utils/dual-source.js +471 -0
  103. package/dist/electron-build/utils/dual-source.js.map +1 -0
  104. package/dist/electron-build/utils/update-manager.js +331 -57
  105. package/dist/electron-build/utils/update-manager.js.map +1 -1
  106. package/dist/electron-build/utils/update-state.js +16 -1
  107. package/dist/electron-build/utils/update-state.js.map +1 -1
  108. package/dist/electron-build/utils/version-info.js +82 -2
  109. package/dist/electron-build/utils/version-info.js.map +1 -1
  110. package/dist/index.js +103 -12
  111. package/dist/ios/chain-explorer.js +617 -0
  112. package/dist/ios/explorer.html +163 -0
  113. package/dist/ios/index.html +96 -0
  114. package/dist/ios/mobile-agent.js +2 -2
  115. package/dist/ios/mobile-contacts.js +329 -0
  116. package/dist/ios/mobile-core.js +1379 -226
  117. package/dist/ios/mobile-privacy.js +185 -0
  118. package/dist/ios/mobile.css +19 -0
  119. package/dist/ios/mobile.html +96 -0
  120. package/dist/ios/mobile.js +706 -7
  121. package/dist/ios/routes-chain-index.js +108 -0
  122. package/dist/ios/routes-contacts.js +420 -0
  123. package/dist/ios/routes-onchain-trade.js +99 -0
  124. package/dist/ios/routes-x402-info.js +1 -0
  125. package/dist/ios/server.js +762 -0
  126. package/dist/ios/task-frame-server.js +211 -0
  127. package/dist/orbitdb/cid-database.js +81 -16
  128. package/dist/orbitdb/ipfs-node.js +31 -2
  129. package/dist/utils/dual-source.js +426 -0
  130. package/dist/utils/update-cli.js +16 -21
  131. package/dist/utils/update-health.js +35 -5
  132. package/dist/utils/update-manager.js +329 -57
  133. package/dist/utils/update-state.js +16 -1
  134. package/dist/utils/version-info.js +75 -1
  135. package/dist/web/mobile-contacts.js +44 -11
  136. package/dist/web/mobile-core.js +1197 -513
  137. package/dist/web/mobile-tasks.js +339 -0
  138. package/dist/web/mobile.css +19 -0
  139. package/dist/web/mobile.html +64 -0
  140. package/dist/web/mobile.js +531 -1
  141. package/dist/web/routes-mobile-tasks.js +353 -0
  142. package/dist/web/server.js +163 -4
  143. package/package.json +3 -1
@@ -13,8 +13,9 @@
13
13
  * 2 检查不可用 (离线 / registry 不可用 / 读不到本地版本) —— 与"没有更新"区分开
14
14
  */
15
15
  import { resolveBolloonHome } from '../setup/setup-store.js';
16
- import { collectVersionInfo, renderVersionText, renderVersionJson, } from '../utils/version-info.js';
17
- import { checkForUpdate, buildUpdatePlan, renderUpdatePlan, applyUpdate, readUpdateStatus, readHistory, renderHistory, updateSummaryFor, compareVersions, } from '../utils/update-manager.js';
16
+ import { collectVersionInfo, renderVersionText, renderVersionJson, DEV_CHANNEL_WARNING, DEV_BACK_TO_STABLE_HINT, channelKindOf, isDevIdentity, } from '../utils/version-info.js';
17
+ import { checkForUpdate, buildUpdatePlan, renderUpdatePlan, applyUpdate, readUpdateStatus, readHistory, renderHistory, updateSummaryFor, compareVersions, checkExitCode, REFUSED_STATUSES, } from '../utils/update-manager.js';
18
+ import { renderGithubReportLine } from '../utils/dual-source.js';
18
19
  import { runDoctor, renderDoctor } from '../utils/update-health.js';
19
20
  import { detectRuntimeReport, bootstrapRuntimes, renderRuntimeReport, renderBootstrapPlan, RUNTIME_MIN, readRuntimeConfigWithFallback, } from '../utils/runtime-bootstrap.js';
20
21
  const RESET = '\x1b[0m';
@@ -25,6 +26,45 @@ const YELLOW = '\x1b[38;2;245;158;11m';
25
26
  const RED = '\x1b[38;2;239;68;68m';
26
27
  const out = (s) => process.stdout.write(s + '\n');
27
28
  const err = (s) => process.stderr.write(s + '\n');
29
+ // ── --channel (§12.2: 只覆盖本次进程, 不落盘) ───────────────────────────────
30
+ /** 允许的通道字面量 (`--channel stable|dev`; beta 仍是"与 stable 同源"的老口径)。 */
31
+ const CHANNEL_VALUES = ['stable', 'dev', 'beta'];
32
+ /**
33
+ * 解析 `--channel <v>` / `--channel=<v>`。
34
+ * 给了不认识的值 → **拒绝并说清** (不静默落回 stable, 那会让人以为切成功了)。
35
+ */
36
+ export function parseChannelArg(args) {
37
+ let raw = null;
38
+ for (let i = 0; i < args.length; i++) {
39
+ const a = args[i];
40
+ if (a === '--channel') {
41
+ raw = args[i + 1] ?? '';
42
+ break;
43
+ }
44
+ if (a.startsWith('--channel=')) {
45
+ raw = a.slice('--channel='.length);
46
+ break;
47
+ }
48
+ if (a === 'channel') {
49
+ raw = args[i + 1] ?? '';
50
+ break;
51
+ }
52
+ }
53
+ if (raw === null)
54
+ return { given: false };
55
+ const v = raw.trim().toLowerCase();
56
+ if (!CHANNEL_VALUES.includes(v)) {
57
+ return { given: true, error: `--channel 只接受 ${CHANNEL_VALUES.join('|')}, 收到 "${raw}" — 拒绝执行 (没有静默落回 stable)` };
58
+ }
59
+ return { channel: v, given: true };
60
+ }
61
+ /** dev 通道的三条硬约束 (§12.4) 在这里统一打印: 显式警告 + 记录 sha + 一键回 stable。 */
62
+ function printDevNotice() {
63
+ out('');
64
+ out(DEV_CHANNEL_WARNING);
65
+ out(DEV_BACK_TO_STABLE_HINT);
66
+ out('');
67
+ }
28
68
  // ── 版本 ────────────────────────────────────────────────────────────────────
29
69
  export async function runVersionCommand(args = []) {
30
70
  // 2026-09-19 (leo): 子命令一律**裸词**, 不再带 `--` 前缀 (只有 `--version` 本身保留 --)
@@ -78,22 +118,39 @@ function statusConclusion(status, latest, current) {
78
118
  const cmp = !latest ? '' : compareVersions(current, latest) < 0 ? ` — 已有更新版 ${latest}, 需按该安装方式手动升级` : ` — 本地 ${current} 已是 registry 上最新`;
79
119
  return `${YELLOW}当前安装方式不支持自动更新${RESET}${cmp}`;
80
120
  }
121
+ case 'github_unavailable': return `${RED}GitHub 源不可用${RESET} — ${BOLD}不能判定为最新${RESET}`;
122
+ case 'cross_check_mismatch': return `${RED}两个源不一致${RESET} — npm 与 GitHub 指向不同版本, ${BOLD}拒绝更新${RESET}`;
81
123
  default: return '尚未检查';
82
124
  }
83
125
  }
84
126
  export function renderCheckResult(r) {
127
+ const dev = r.channelKind === 'git-ref';
85
128
  const L = [];
86
- L.push(`当前版本: ${r.currentVersion}`);
87
- L.push(`最新版本: ${r.latestVersion || '未知'}`);
88
- L.push(`更新通道: ${r.channel} (来源: ${r.source})`);
129
+ L.push(`当前版本: ${r.currentVersion}${r.installedDevSha ? ` (dev 快照 commit ${r.installedDevSha})` : ''}`);
130
+ L.push(`${dev ? '最新快照' : '最新版本'}: ${r.latestVersion || '未知'}`);
131
+ L.push(`更新通道: ${r.channel} (比较语义: ${r.channelKind || channelKindOf(r.channel)})`);
132
+ L.push(`当前来源: ${r.installedChannel === 'dev' ? `dev (GitHub master 快照 @ ${r.installedDevSha})` : 'stable (npm registry)'}`);
89
133
  L.push(`安装方式: ${r.installMethod}`);
134
+ if (dev)
135
+ L.push(renderGithubReportLine(r.github));
136
+ else {
137
+ L.push(renderGithubReportLine(r.github));
138
+ if (r.crossCheck)
139
+ L.push(`交叉校验: ${r.crossCheck.kind}${r.crossCheck.blocking ? ' (阻塞)' : ''} — ${r.crossCheck.detail}`);
140
+ }
141
+ if (r.dev)
142
+ L.push(`dev 判定: ${r.dev.detail}`);
143
+ if (r.switchableTo)
144
+ L.push(`能切回: ${r.switchableTo.channel} (${r.switchableTo.source}${r.switchableTo.target ? ` @ ${r.switchableTo.target}` : ''})`);
90
145
  L.push(`检查时间: ${r.checkedAt}${r.fromCache ? ' (缓存)' : ''}`);
91
146
  L.push(`结论: ${statusConclusion(r.status, r.latestVersion, r.currentVersion)}`);
92
147
  if (r.reason)
93
148
  L.push(`说明: ${r.reason}`);
94
149
  L.push('');
95
150
  if (r.status === 'update_available') {
96
- L.push(`下一步: ${BOLD}bolloon update plan${RESET} 看计划, ${BOLD}bolloon update now${RESET} 执行更新`);
151
+ L.push(`下一步: ${BOLD}bolloon update plan --channel ${r.channel}${RESET} 看计划, ${BOLD}bolloon update now --channel ${r.channel}${RESET} 执行更新`);
152
+ if (dev)
153
+ L.push(DEV_CHANNEL_WARNING), L.push(DEV_BACK_TO_STABLE_HINT);
97
154
  }
98
155
  else if (r.status === 'unsupported_installation') {
99
156
  L.push('下一步: 按上面"说明"里对应安装方式更新 (源码目录: git pull && npm install && npm run build:all)');
@@ -101,6 +158,14 @@ export function renderCheckResult(r) {
101
158
  else if (r.status === 'offline' || r.status === 'registry_unavailable') {
102
159
  L.push('下一步: 检查网络/代理后重跑 `bolloon update`; 也可以 `bolloon update status` 看上次结论');
103
160
  }
161
+ else if (r.status === 'github_unavailable') {
162
+ L.push('下一步: 检查到 GitHub 的网络/代理/限流后重跑 `bolloon update --channel dev`;'
163
+ + `${BOLD}dev 通道不会退回 stable 装旧版${RESET} —— 要稳定版请显式 --channel stable`);
164
+ }
165
+ else if (r.status === 'cross_check_mismatch') {
166
+ L.push('下一步: 两个发布源不一致, 先查清哪个是对的 (npm: registry dist-tags / GitHub: Release 记录);'
167
+ + '本条不执行任何安装, 也不会按 GitHub 的 tag 去装。');
168
+ }
104
169
  else if (r.status === 'local_version_unknown') {
105
170
  L.push('下一步: 重新安装 (npm install -g @bolloon/bolloon-agent) 以恢复 package.json');
106
171
  }
@@ -109,32 +174,63 @@ export function renderCheckResult(r) {
109
174
  export function renderStatusReport(s) {
110
175
  const L = [];
111
176
  const lu = s.lastUpdate;
177
+ const dev = s.installedChannel === 'dev';
112
178
  L.push(`${BOLD}更新状态${RESET}`);
113
179
  L.push(`当前版本: ${s.currentVersion}`);
180
+ // ── §12.5: 必须说清"当前装的是哪个源 + 哪个版本/commit sha + 能切回哪个源" ──
181
+ L.push(`安装来源: ${dev
182
+ ? `dev (GitHub master 快照, ref ${s.devRef || 'refs/heads/master'}, commit ${s.installedDevSha || '未知'})`
183
+ : 'stable (npm registry)'}`);
184
+ L.push(`身份标识: ${dev ? `commit ${s.installedDevSha || '未知'}` : s.currentVersion}`);
185
+ L.push(`能切回: ${s.switchableTo
186
+ ? `${s.switchableTo.channel} (${s.switchableTo.source}${s.switchableTo.target ? ` @ ${s.switchableTo.target}` : ''}) — 一键切: bolloon update now --channel ${s.switchableTo.channel}`
187
+ : '无 (未知来源)'}`);
188
+ if (s.lastDevSha && !dev)
189
+ L.push(`上次 dev: commit ${s.lastDevSha}${s.devCheckedAt ? ` @ ${s.devCheckedAt}` : ''} (已切回 stable)`);
114
190
  L.push(`最新版本: ${s.latestVersion || (s.lastCheckStatus ? '未知' : '尚未检查')}`);
115
191
  L.push(`是否最新: ${statusConclusion(s.lastCheckStatus, s.latestVersion, s.currentVersion)}`);
116
- L.push(`更新通道: ${s.channel}`);
192
+ L.push(`更新通道: ${s.channel} (比较语义: ${s.channelKind})`);
117
193
  L.push(`安装方式: ${s.installMethod}`);
118
194
  L.push(`安装目录: ${s.installDir}`);
119
195
  L.push(`运行入口: ${s.entryPath}`);
196
+ if (s.sourceFacts) {
197
+ const f = s.sourceFacts;
198
+ L.push(`源事实: npm ${f.npm?.reachable ? `可达 (latest=${f.npm.latest || '未知'})` : `不可达${f.npm?.detail ? ` (${f.npm.detail})` : ''}`}`
199
+ + ` · GitHub ${f.github?.reachable
200
+ ? `可达 (HEAD ${f.github.headSha ? f.github.headSha.slice(0, 7) : '未知'}, Release ${f.github.releases ?? 0}, Tag ${f.github.tags ?? 0})`
201
+ : `不可达${f.github?.reason ? ` (github_unavailable(${f.github.reason}))` : ' (未查询)'}`}`);
202
+ if (f.crossCheck)
203
+ L.push(`交叉校验: ${f.crossCheck.kind}${f.crossCheck.blocking ? ' (阻塞)' : ''} — ${f.crossCheck.detail}`);
204
+ }
120
205
  L.push(`最近检查: ${s.lastCheckAt || '从未'}${s.lastCheckReason ? ` (${s.lastCheckReason})` : ''}`);
121
206
  L.push(`最近更新: ${lu ? `${lu.at} ${lu.from} → ${lu.to} [${lu.status}]${lu.reason ? ` ${lu.reason}` : ''}` : '无记录'}`);
122
207
  L.push(`最近失败: ${s.lastFailure ? `${s.lastFailure.at} @${s.lastFailure.stage}: ${s.lastFailure.reason}` : '无'}`);
123
208
  L.push(`需要重启: ${s.needsRestart ? '是 (新版已就位, 重启后生效)' : '否'}`);
124
209
  L.push(`更新锁: ${s.lock ? `有 (pid ${s.lock.pid}, ${s.lock.at}${s.lock.stale ? ', 已陈旧' : ''})` : '无'}`);
125
210
  L.push(`开关: 检查更新=${s.prefs.checkUpdates} (${s.prefs.sources.checkUpdates}) · 自动安装=${s.prefs.autoInstall} (${s.prefs.sources.autoInstall}) · 自动重启=${s.prefs.autoRestart} (${s.prefs.sources.autoRestart})`);
211
+ if (dev) {
212
+ L.push('');
213
+ L.push(DEV_CHANNEL_WARNING);
214
+ L.push(DEV_BACK_TO_STABLE_HINT);
215
+ }
126
216
  return L.join('\n');
127
217
  }
128
218
  // ── update 子命令 ───────────────────────────────────────────────────────────
129
219
  export async function runUpdateCommand(args = []) {
130
220
  const home = resolveBolloonHome();
131
- // 裸词优先 (bolloon update plan / status / history / now / wait / force / json),
221
+ // 裸词优先 (bolloon update plan / status / history / now / wait / force / json / --channel dev),
132
222
  // 同时兼容旧的 --plan / --status / ... 写法 (已有脚本不断裂)。
133
223
  const has = (...f) => f.some((x) => args.includes(x));
134
224
  const json = has('json', '--json');
225
+ const ch = parseChannelArg(args);
226
+ if (ch.error) {
227
+ err(`${RED}✗ ${ch.error}${RESET}`);
228
+ return 2;
229
+ }
230
+ const channel = ch.channel;
135
231
  // ── 状态 ──
136
232
  if (has('status', '--status')) {
137
- const s = await readUpdateStatus({ home });
233
+ const s = await readUpdateStatus({ home, channel });
138
234
  if (json) {
139
235
  out(JSON.stringify(s, null, 2));
140
236
  return 0;
@@ -156,21 +252,26 @@ export async function runUpdateCommand(args = []) {
156
252
  }
157
253
  // ── 计划 ──
158
254
  if (has('plan', '--plan')) {
159
- const plan = await buildUpdatePlan({ home, force: true });
255
+ const plan = await buildUpdatePlan({ home, force: true, channel });
160
256
  if (json) {
161
257
  out(JSON.stringify(plan, null, 2));
162
258
  return 0;
163
259
  }
164
260
  out(renderUpdatePlan(plan));
261
+ if (plan.channelKind === 'git-ref')
262
+ printDevNotice();
165
263
  return 0;
166
264
  }
167
265
  // ── 执行 ──
168
266
  if (has('now', '--now')) {
169
267
  const wait = has('wait', '--wait');
170
268
  const force = has('force', '--force', '-f');
171
- const plan = await buildUpdatePlan({ home, force: true });
172
- if (!json)
269
+ const plan = await buildUpdatePlan({ home, force: true, channel });
270
+ if (!json) {
173
271
  out(renderUpdatePlan(plan));
272
+ if (plan.channelKind === 'git-ref')
273
+ printDevNotice();
274
+ }
174
275
  if (!plan.ok && plan.blockers.length > 0) {
175
276
  if (json)
176
277
  out(JSON.stringify({ stage: 'blocked', reason: plan.blockers.join('; ') }, null, 2));
@@ -178,6 +279,17 @@ export async function runUpdateCommand(args = []) {
178
279
  return 1;
179
280
  }
180
281
  if (!plan.targetVersion) {
282
+ /**
283
+ * §12.5: 源不可达 / 版本不存在 → **拒绝并说清**, 退出码 2。
284
+ * 绝不打印"✅ 已是最新, 无需更新" (那正是这次要收敛掉的骗人行为)。
285
+ */
286
+ if (REFUSED_STATUSES.includes(plan.check.status)) {
287
+ if (json)
288
+ out(JSON.stringify({ stage: 'blocked', refused: true, status: plan.check.status, reason: plan.check.reason }, null, 2));
289
+ err(`${RED}✗ 拒绝更新${RESET} (${plan.check.status}): ${plan.check.reason || '源不可达 / 版本不存在'}`);
290
+ err(' 没有安装任何东西, 也没有静默退回旧版。');
291
+ return 2;
292
+ }
181
293
  if (json)
182
294
  out(JSON.stringify({ stage: 'succeeded', ok: true, reason: '已是最新', from: plan.currentVersion, to: plan.currentVersion }, null, 2));
183
295
  out(`${GREEN}✓ 已是最新, 无需更新${RESET} (${plan.currentVersion})`);
@@ -185,27 +297,34 @@ export async function runUpdateCommand(args = []) {
185
297
  }
186
298
  const res = await applyUpdate({
187
299
  home,
300
+ channel,
188
301
  strategy: wait ? 'wait' : 'now',
189
302
  force,
190
303
  onStage: json ? undefined : (stage, detail) => out(` [${stage}] ${detail}`),
191
304
  });
192
305
  if (json) {
193
306
  out(JSON.stringify(res, null, 2));
194
- return res.ok ? 0 : 1;
307
+ return res.ok ? 0 : (res.stage === 'blocked' ? 2 : 1);
195
308
  }
196
309
  if (res.ok) {
197
310
  out(`${GREEN}✓ 更新成功${RESET}: ${res.from} → ${res.to} (${(res.durationMs / 1000).toFixed(1)}s)`);
311
+ if (isDevIdentity(res.to)) {
312
+ out(` dev 快照已记录: commit ${res.to.split('+dev.')[1] || '未知'} (ref refs/heads/master) — bolloon update status 可查`);
313
+ }
198
314
  out(' 正在做更新后健康检查...');
199
315
  const health = await runDoctor({ bolloonHome: home }).catch(() => null);
200
316
  if (health) {
201
317
  out(renderDoctor(health));
202
318
  }
319
+ if (isDevIdentity(res.to))
320
+ printDevNotice();
203
321
  out(`${YELLOW}请重启 bolloon 以使用新版本${RESET}`);
204
322
  return 0;
205
323
  }
206
324
  if (res.stage === 'blocked') {
325
+ const refused = /拒绝更新|github_unavailable|cross_check_mismatch/.test(res.reason || '');
207
326
  err(`${YELLOW}! ${res.reason}${RESET}`);
208
- return 1;
327
+ return refused ? 2 : 1;
209
328
  }
210
329
  err(`${RED}✗ 更新失败${RESET} (${res.stage}): ${res.reason}`);
211
330
  err(` 旧版本仍在: ${res.from} — 可继续使用; 详情: bolloon update status`);
@@ -214,21 +333,17 @@ export async function runUpdateCommand(args = []) {
214
333
  return 1;
215
334
  }
216
335
  // ── 默认: 只检查, 给清晰结论 (显式命令 = 忽略节流) ──
217
- const r = await checkForUpdate({ home, force: true });
336
+ const r = await checkForUpdate({ home, force: true, channel });
218
337
  if (json) {
219
338
  out(JSON.stringify(r, null, 2));
220
- return r.status === 'offline' || r.status === 'registry_unavailable' || r.status === 'local_version_unknown' ? 2 : 0;
339
+ return checkExitCode(r.status);
221
340
  }
222
341
  out(renderCheckResult(r));
223
342
  if (r.status !== 'up_to_date' && r.status !== 'check_skipped') {
224
343
  out('');
225
344
  out(`${YELLOW}提示${RESET}: 本次只检查, 没有安装任何东西。`);
226
345
  }
227
- if (r.status === 'offline' || r.status === 'registry_unavailable' || r.status === 'local_version_unknown')
228
- return 2;
229
- if (r.status === 'update_available' && compareVersions(r.currentVersion, r.latestVersion || r.currentVersion) >= 0)
230
- return 0;
231
- return 0;
346
+ return checkExitCode(r.status);
232
347
  }
233
348
  // ── doctor ──────────────────────────────────────────────────────────────────
234
349
  export async function runDoctorCommand(args = []) {
@@ -323,12 +438,12 @@ export async function runRuntimeCommand(args = []) {
323
438
  }
324
439
  export const UPDATE_HELP = `
325
440
  ${BOLD}版本与更新:${RESET} (子命令一律裸词, 不带 -- 前缀)
326
- bolloon --version 版本 + 安装方式/目录/入口/通道/上游/是否最新
441
+ bolloon --version 版本 + 安装方式/目录/入口/通道/来源身份/上游/是否最新
327
442
  bolloon --version verbose 诊断版 (构建时间/git/Node/npm/Python/配置目录/最近更新)
328
443
  bolloon --version json 机器版 (同一份 VersionInfo, 给脚本与问题报告)
329
444
  bolloon update 只检查并给结论 (不安装任何东西)
330
445
  bolloon update plan 更新计划: 要更新什么 / 不会动什么 / 风险检查
331
- bolloon update status 更新状态: 最近检查/最近更新/失败/是否需重启/开关
446
+ bolloon update status 更新状态: 装的哪个源+版本/commit+能切回哪/最近检查/失败/开关
332
447
  bolloon update history [N] 最近 N 次更新 (时间 · 版本变化 · 结果 · 耗时 · 原因)
333
448
  bolloon update now 真正执行更新 (默认先看计划)
334
449
  bolloon update now wait 等当前 Run 结束后再更新 (有长期任务时的默认建议)
@@ -336,6 +451,15 @@ ${BOLD}版本与更新:${RESET} (子命令一律裸词, 不带 -- 前缀)
336
451
  bolloon doctor json 同上, 机器可读
337
452
  bolloon runtime [plan|install|json] 运行时 (Node/npm/Git/Python) 检查与安装 (install 需显式 yes)
338
453
 
454
+ ${BOLD}双源 (--channel):${RESET}
455
+ --channel stable (默认) npm registry 是权威 (dist-tags.latest), GitHub Tag/Release 只做交叉校验;
456
+ 比较语义 = semver (npm 的 latest ↔ GitHub 同名 tag)
457
+ --channel dev GitHub master HEAD 是唯一源; 比较语义 = git ref + commit sha (不用 semver);
458
+ 身份 = <版本>+dev.<sha7>; 未走发布门, 会打印警告并记录 sha
459
+ 一键回稳定版: bolloon update now --channel stable
460
+ --channel 只覆盖本次进程, 不落盘 (config 里的 updateChannel 仍是默认值)
461
+ 源不可达 / 版本不存在 → 拒绝并说清 (退出码 2), 不会静默装回旧版
462
+
339
463
  ${BOLD}开关 (config.json):${RESET}
340
464
  checkUpdates (默认 true) 启动时后台检查
341
465
  autoInstall (默认 false) 自动安装 —— 默认关, 需显式打开
@@ -344,6 +468,8 @@ ${BOLD}环境变量 (临时覆盖, 不落盘):${RESET}
344
468
  BOLLOON_SKIP_UPDATE=1 本次不检查
345
469
  BOLLOON_AUTO_UPDATE=1 本次允许自动安装
346
470
  BOLLOON_UPDATE_CHANNEL=stable|beta|dev
471
+ BOLLOON_GITHUB_API 覆盖 GitHub API 根 (镜像/受控验收用)
472
+ BOLLOON_DEV_SOURCE_DIR dev 快照用本地源码树 (必须与该 sha 一致, 否则拒绝)
347
473
 
348
- ${BOLD}退出码:${RESET} 0 正常 · 1 执行失败 · 2 检查不可用 (离线/registry 不可用/读不到本地版本)
474
+ ${BOLD}退出码:${RESET} 0 正常 · 1 执行失败 · 2 检查不可用 (离线/registry 不可用/GitHub 不可用/两源不一致/读不到本地版本)
349
475
  `;
package/dist/cli-entry.js CHANGED
@@ -26,11 +26,12 @@ import { collectVersionInfo } from './utils/version-info.js';
26
26
  import { runServiceGroup, GROUPS_HELP } from './cli/commands/index.js';
27
27
  // 2026-09-21 (P4): MCP 适配层 (`bolloon mcp serve` = stdio, 只调 P3 服务层)
28
28
  import { runMcpCommand } from './cli/commands/mcp.js';
29
- import { legacyJson } from './cli/protocol-envelope.js';
29
+ import { legacyJson, parseFlags, runCommand } from './cli/protocol-envelope.js';
30
+ import { identityCommand } from './cli/identity-command.js';
30
31
  import { createRequire } from 'module';
31
32
  const _require = createRequire(import.meta.url);
32
33
  /** P3 `bolloon task <子命令>` 的已知子命令 —— 其它一律当 M1 任务正文 (既有体验不动) */
33
- const TASK_SUBCOMMANDS = new Set(['send', 'list', 'status', 'cancel', 'retry', 'result', 'inbox', 'accept', 'reject', 'run', 'complete', 'publish', 'board', 'claim']);
34
+ const TASK_SUBCOMMANDS = new Set(['send', 'list', 'status', 'cancel', 'retry', 'result', 'inbox', 'accept', 'reject', 'run', 'complete', 'publish', 'board', 'claim', 'announce', 'trail', 'post', 'group']);
34
35
  const isWindows = process.platform === 'win32';
35
36
  // ANSI 颜色 — Bolloon Web UI 配色 truecolor
36
37
  function _fg(r, g, b) { return `\x1b[38;2;${r};${g};${b}m`; }
@@ -62,6 +63,8 @@ ${BOLD}选项:${RESET}
62
63
 
63
64
  ${BOLD}命令:${RESET}
64
65
  bolloon setup 初始化向导 (你的称呼 + 模型供应商 + API key + 连通性测试)
66
+ bolloon identity init 非交互建本机身份 (~/.bolloon/identity.json, 0600, 幂等; 新机器/第二实例用)
67
+ bolloon identity show 看本机身份 (只出 DID/指纹, 绝不打印私钥)
65
68
  bolloon update [plan|status|history|now] 检查更新 / 计划 / 状态 / 历史 / 执行 (默认只检查)
66
69
  bolloon doctor 安装入口 + 版本事实 + 更新状态自洽性诊断
67
70
  bolloon runtime [plan|install] 运行时 (Node/npm/Git/Python) 检查与安装
@@ -203,6 +206,9 @@ function parseArgs() {
203
206
  case 'setup':
204
207
  case 'init':
205
208
  return { mode: 'setup', args: args.slice(1) };
209
+ // 2026-09-24: 非交互建本机身份 (`bolloon identity init` → ~/.bolloon/identity.json)
210
+ case 'identity':
211
+ return { mode: 'identity', args: args.slice(1) };
206
212
  case 'read':
207
213
  case 'summarize':
208
214
  case 'improve':
@@ -890,6 +896,10 @@ async function main() {
890
896
  case 'setup':
891
897
  await handleSetupCommand(args);
892
898
  break;
899
+ // 2026-09-24: bolloon identity — 非交互建/看本机身份 (新机器/第二实例用; 幂等, 不打印私钥)
900
+ case 'identity':
901
+ process.exit(await runCommand(parseFlags(args), identityCommand));
902
+ break;
893
903
  case 'passthrough':
894
904
  // 传递所有参数给主程序
895
905
  try {
@@ -56,6 +56,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
56
56
  exports.maskPhone = exports.maskEmail = exports.ContactChain = void 0;
57
57
  exports.contactChain = contactChain;
58
58
  const goal_store_js_1 = require("../goal-store.js");
59
+ // 2026-09-25 (M0 接线冻结, 规则 ②): Goal 状态变更只有一个漏斗
60
+ const goal_state_reducer_js_1 = require("../goal-state-reducer.js");
59
61
  const run_store_js_1 = require("../run-store.js");
60
62
  const external_events_js_1 = require("../external-events.js");
61
63
  const store_js_1 = require("./store.js");
@@ -360,7 +362,14 @@ class ContactChain {
360
362
  note: `等 ${contact.displayValue} 回复 (通道 ${contact.provider})`,
361
363
  };
362
364
  await (0, external_events_js_1.bindExternalWait)(opts.goalId, wait);
363
- await (0, goal_store_js_1.updateGoal)(opts.goalId, { status: 'awaiting_external' });
365
+ // 规则 ②: 进入"等外部"也是一种 Goal 状态变更 → 走 Goal reducer
366
+ await (0, goal_state_reducer_js_1.reduceGoalState)({
367
+ goalId: opts.goalId,
368
+ intent: 'external_wait_enter',
369
+ now: new Date(this.now()).toISOString(),
370
+ by: 'contacts',
371
+ externalWait: `等 ${contact.displayValue} 回复 (通道 ${contact.provider})`,
372
+ });
364
373
  const g = await (0, goal_store_js_1.readGoal)(opts.goalId);
365
374
  await this.ledger({
366
375
  activity: 'contact.authorization_requested', contactId: contact.contactId, goalId: opts.goalId, runId: opts.runId,
@@ -492,9 +501,14 @@ class ContactChain {
492
501
  await (0, external_events_js_1.clearExternalWait)(s.goalId);
493
502
  const g = await (0, goal_store_js_1.readGoal)(s.goalId);
494
503
  await (0, goal_store_js_1.setUnresolved)(s.goalId, Array.from(new Set([...(g?.unresolvedItems || []), `联系方式授权 ${grantId} 已撤销, 该联系不可自动重试 (转人工)`])));
495
- // 撤等待 + 转人工: 不再自动唤醒, 由人接手 (Supervisor 下一轮看到 needs_human)
496
- await (0, goal_store_js_1.setContinuation)(s.goalId, { wakeReason: 'needs_human', needsExternal: undefined, autoContinue: false }).catch(() => null);
497
- await (0, goal_store_js_1.updateGoal)(s.goalId, { status: 'needs_human' }).catch(() => null);
504
+ // 撤等待 + 转人工: 不再自动唤醒, 由人接手 (规则 ②: 状态经 Goal reducer 写, 单一漏斗)
505
+ await (0, goal_state_reducer_js_1.reduceGoalState)({
506
+ goalId: s.goalId,
507
+ intent: 'contact_revoked_human',
508
+ now: new Date().toISOString(),
509
+ by: 'contacts',
510
+ revokeNote: `联系方式授权 ${grantId} 已撤销, 该联系不可自动重试`,
511
+ }).catch(() => null);
498
512
  affected.push(s.goalId);
499
513
  }
500
514
  return { ok: true, affectedGoals: affected };
@@ -594,8 +608,14 @@ class ContactChain {
594
608
  await (0, external_events_js_1.clearExternalWait)(s.goalId);
595
609
  const g = await (0, goal_store_js_1.readGoal)(s.goalId);
596
610
  await (0, goal_store_js_1.setUnresolved)(s.goalId, Array.from(new Set([...(g?.unresolvedItems || []), `联系人 ${c.displayValue} 已撤销授权, 该联系不可重试`])));
597
- await (0, goal_store_js_1.setContinuation)(s.goalId, { wakeReason: 'needs_human', needsExternal: undefined, autoContinue: false }).catch(() => null);
598
- await (0, goal_store_js_1.updateGoal)(s.goalId, { status: 'needs_human' }).catch(() => null);
611
+ // 规则 ②: 经 Goal reducer 写 (单一漏斗)
612
+ await (0, goal_state_reducer_js_1.reduceGoalState)({
613
+ goalId: s.goalId,
614
+ intent: 'contact_revoked_human',
615
+ now: new Date().toISOString(),
616
+ by: 'contacts',
617
+ revokeNote: `联系人 ${c.displayValue} 已撤销授权, 该联系不可重试`,
618
+ }).catch(() => null);
599
619
  affected.push(s.goalId);
600
620
  }
601
621
  return { ok: true, evidenceRef: ev.evidenceRef, affectedGoals: affected };
@@ -1 +1 @@
1
- {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../../src/agents/contacts/chain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../../src/agents/contacts/chain.ts"],"names":[],"mappings":"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"}