@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.
- package/dist/agents/contacts/chain.js +27 -7
- package/dist/agents/execution-supervisor.js +493 -35
- package/dist/agents/external-events.js +35 -6
- package/dist/agents/gateway-group.js +100 -12
- package/dist/agents/goal-criteria.js +10 -3
- package/dist/agents/goal-flywheel/block-executor.js +346 -0
- package/dist/agents/goal-flywheel/continuation-decision.js +592 -0
- package/dist/agents/goal-flywheel/goal-change.js +754 -0
- package/dist/agents/goal-flywheel/index.js +26 -0
- package/dist/agents/goal-flywheel/memory-layers.js +227 -0
- package/dist/agents/goal-flywheel/run-closure.js +809 -0
- package/dist/agents/goal-flywheel/skill-candidate.js +628 -0
- package/dist/agents/goal-flywheel/types.js +329 -0
- package/dist/agents/goal-flywheel/wiring/change.js +288 -0
- package/dist/agents/goal-flywheel/wiring/closure.js +697 -0
- package/dist/agents/goal-flywheel/wiring/continuation.js +432 -0
- package/dist/agents/goal-flywheel/wiring/contract.js +270 -0
- package/dist/agents/goal-flywheel/wiring/index.js +26 -0
- package/dist/agents/goal-flywheel/wiring/monitor.js +254 -0
- package/dist/agents/goal-flywheel/wiring/seams.js +592 -0
- package/dist/agents/goal-flywheel/work-contract.js +478 -0
- package/dist/agents/goal-flywheel/work-monitor.js +488 -0
- package/dist/agents/goal-flywheel-wiring.js +1870 -0
- package/dist/agents/goal-state-reducer.js +406 -0
- package/dist/agents/goal-store.js +35 -1
- package/dist/agents/mobile-flywheel-view.js +144 -0
- package/dist/agents/mobile-task-actions-verify.js +74 -0
- package/dist/agents/mobile-task-actions.js +178 -0
- package/dist/agents/mobile-task-views.js +199 -0
- package/dist/agents/network-pulse.js +304 -18
- package/dist/agents/pi-sdk.js +75 -20
- package/dist/agents/run-store.js +18 -5
- package/dist/agents/skill-readiness.js +52 -10
- package/dist/agents/subagent-manager.js +209 -3
- package/dist/agents/task/task-runner.js +9 -3
- package/dist/agents/task-group.js +8 -51
- package/dist/agents/task-public-text.js +89 -0
- package/dist/cli/commands/index.js +1 -0
- package/dist/cli/commands/tasks.js +350 -2
- package/dist/cli/identity-command.js +177 -0
- package/dist/cli/setup-wizard.js +71 -0
- package/dist/cli/update-commands.js +150 -24
- package/dist/cli-entry.js +12 -2
- package/dist/electron-build/agents/contacts/chain.js +26 -6
- package/dist/electron-build/agents/contacts/chain.js.map +1 -1
- package/dist/electron-build/agents/execution-supervisor.js +492 -34
- package/dist/electron-build/agents/execution-supervisor.js.map +1 -1
- package/dist/electron-build/agents/external-events.js +34 -5
- package/dist/electron-build/agents/external-events.js.map +1 -1
- package/dist/electron-build/agents/goal-criteria.js +10 -3
- package/dist/electron-build/agents/goal-criteria.js.map +1 -1
- package/dist/electron-build/agents/goal-flywheel/continuation-decision.js +598 -0
- package/dist/electron-build/agents/goal-flywheel/continuation-decision.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/goal-change.js +773 -0
- package/dist/electron-build/agents/goal-flywheel/goal-change.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/memory-layers.js +269 -0
- package/dist/electron-build/agents/goal-flywheel/memory-layers.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/run-closure.js +818 -0
- package/dist/electron-build/agents/goal-flywheel/run-closure.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/skill-candidate.js +642 -0
- package/dist/electron-build/agents/goal-flywheel/skill-candidate.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/types.js +333 -0
- package/dist/electron-build/agents/goal-flywheel/types.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/change.js +294 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/change.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/closure.js +742 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/closure.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/continuation.js +444 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/continuation.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/contract.js +279 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/contract.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/index.js +111 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/index.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/monitor.js +264 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/monitor.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/seams.js +612 -0
- package/dist/electron-build/agents/goal-flywheel/wiring/seams.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/work-contract.js +488 -0
- package/dist/electron-build/agents/goal-flywheel/work-contract.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel/work-monitor.js +501 -0
- package/dist/electron-build/agents/goal-flywheel/work-monitor.js.map +1 -0
- package/dist/electron-build/agents/goal-flywheel-wiring.js +1962 -0
- package/dist/electron-build/agents/goal-flywheel-wiring.js.map +1 -0
- package/dist/electron-build/agents/goal-state-reducer.js +414 -0
- package/dist/electron-build/agents/goal-state-reducer.js.map +1 -0
- package/dist/electron-build/agents/goal-store.js +35 -1
- package/dist/electron-build/agents/goal-store.js.map +1 -1
- package/dist/electron-build/agents/network-pulse.js +307 -19
- package/dist/electron-build/agents/network-pulse.js.map +1 -1
- package/dist/electron-build/agents/pi-sdk.js +74 -19
- package/dist/electron-build/agents/pi-sdk.js.map +1 -1
- package/dist/electron-build/agents/run-store.js +20 -5
- package/dist/electron-build/agents/run-store.js.map +1 -1
- package/dist/electron-build/agents/skill-readiness.js +52 -9
- package/dist/electron-build/agents/skill-readiness.js.map +1 -1
- package/dist/electron-build/agents/task/task-runner.js +8 -2
- package/dist/electron-build/agents/task/task-runner.js.map +1 -1
- package/dist/electron-build/orbitdb/cid-database.js +83 -17
- package/dist/electron-build/orbitdb/cid-database.js.map +1 -1
- package/dist/electron-build/orbitdb/ipfs-node.js +31 -2
- package/dist/electron-build/orbitdb/ipfs-node.js.map +1 -1
- package/dist/electron-build/utils/dual-source.js +471 -0
- package/dist/electron-build/utils/dual-source.js.map +1 -0
- package/dist/electron-build/utils/update-manager.js +331 -57
- package/dist/electron-build/utils/update-manager.js.map +1 -1
- package/dist/electron-build/utils/update-state.js +16 -1
- package/dist/electron-build/utils/update-state.js.map +1 -1
- package/dist/electron-build/utils/version-info.js +82 -2
- package/dist/electron-build/utils/version-info.js.map +1 -1
- package/dist/index.js +103 -12
- package/dist/ios/chain-explorer.js +617 -0
- package/dist/ios/explorer.html +163 -0
- package/dist/ios/index.html +96 -0
- package/dist/ios/mobile-agent.js +2 -2
- package/dist/ios/mobile-contacts.js +329 -0
- package/dist/ios/mobile-core.js +1379 -226
- package/dist/ios/mobile-privacy.js +185 -0
- package/dist/ios/mobile.css +19 -0
- package/dist/ios/mobile.html +96 -0
- package/dist/ios/mobile.js +706 -7
- package/dist/ios/routes-chain-index.js +108 -0
- package/dist/ios/routes-contacts.js +420 -0
- package/dist/ios/routes-onchain-trade.js +99 -0
- package/dist/ios/routes-x402-info.js +1 -0
- package/dist/ios/server.js +762 -0
- package/dist/ios/task-frame-server.js +211 -0
- package/dist/orbitdb/cid-database.js +81 -16
- package/dist/orbitdb/ipfs-node.js +31 -2
- package/dist/utils/dual-source.js +426 -0
- package/dist/utils/update-cli.js +16 -21
- package/dist/utils/update-health.js +35 -5
- package/dist/utils/update-manager.js +329 -57
- package/dist/utils/update-state.js +16 -1
- package/dist/utils/version-info.js +75 -1
- package/dist/web/mobile-contacts.js +44 -11
- package/dist/web/mobile-core.js +1197 -513
- package/dist/web/mobile-tasks.js +339 -0
- package/dist/web/mobile.css +19 -0
- package/dist/web/mobile.html +64 -0
- package/dist/web/mobile.js +531 -1
- package/dist/web/routes-mobile-tasks.js +353 -0
- package/dist/web/server.js +163 -4
- package/package.json +3 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"closure.js","sourceRoot":"","sources":["../../../../../src/agents/goal-flywheel/wiring/closure.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,444 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* wiring/continuation.ts — 接缝 ①「这个 Goal 现在该不该开下一轮, 为什么?」 (**M1 独占**)
|
|
4
|
+
*
|
|
5
|
+
* 归属: `seams.ts` 的 `SEAM_ROSTER` 里 `id: 'continuation'`, `stage: 'M1'`。
|
|
6
|
+
* M1 只准改本文件 + 本接缝声明的 `wiringPoints` (`goal-flywheel/continuation-decision.ts`)。
|
|
7
|
+
*
|
|
8
|
+
* ## 这条接缝钉住的冻结规则
|
|
9
|
+
*
|
|
10
|
+
* **只有 Supervisor 能决定是否继续** (规则 ①)。
|
|
11
|
+
* 钉法不是文档, 是**调用方必须显式声明身份**: 接缝的入口 `preflight()` 要一个
|
|
12
|
+
* `caller` 字段, 非 `supervisor` 一律拒绝。于是"Runner 自己觉得还能再跑一轮"这种
|
|
13
|
+
* 绕过在类型上就写不出来, 在运行时会拿到一条结构化拒绝。
|
|
14
|
+
*
|
|
15
|
+
* ## M1 的实质: 自适应节奏 —— 固定轮次降级为**安全上限**
|
|
16
|
+
*
|
|
17
|
+
* 接缝不再是把注入的结论原样转出去, 它自己把 P0 编起来 (P0 = 本阶段自己的实现模块
|
|
18
|
+
* `../continuation-decision.js`, 见 `seams.ts` 头部的接缝形态第 ③ 条):
|
|
19
|
+
*
|
|
20
|
+
* ```
|
|
21
|
+
* 事实 (goal + run + progress + noProgressStreak)
|
|
22
|
+
* → decideContinuation (节奏: 有没有**新的可核验证据**)
|
|
23
|
+
* → applyHardLimits (三类上限: 只能收紧, 永不放开)
|
|
24
|
+
* → isRunnable (最后一道路闸)
|
|
25
|
+
* → 归因: 是「进展」在说话, 还是「哪一条上限」在说话
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* 三类安全上限 (设计稿 §4, 字面登记在 `SAFETY_CAPS`): **单 Run 时间 · 单 Goal 预算 ·
|
|
29
|
+
* 无进展熔断阈值**。它们只回答"什么时候必须停", **不回答"什么时候继续"**。
|
|
30
|
+
* 每一条都交给 P0 去执行 (接缝不自己数任何计数): 时间与熔断阈值 P0 直接吃 `hardLimits`;
|
|
31
|
+
* 「单 Goal 预算」P0 走的是 Goal 自己的预算口径, 所以这里把降级来的上限**投影**成那个口径
|
|
32
|
+
* (`factsWithBudgetCap`), 而不是在同一份事实上再判一遍。
|
|
33
|
+
* 旧配置里的固定轮次 (`maxRounds` / `maxRetries`) 在 `safetyCapsFrom()` 里被**登记成**
|
|
34
|
+
* 这两条上限 (总 Run 数 / 熔断阈值) —— 于是"第几轮"再也不能自己决定停或不停:
|
|
35
|
+
* 只有上限真的触顶它才说话, 有进展就继续。P0 本身根本不读轮次, 本文件也不读。
|
|
36
|
+
*
|
|
37
|
+
* ## 归因怎么做: 反事实, 不抄一遍逻辑
|
|
38
|
+
*
|
|
39
|
+
* "哪条上限在说话"不是本文件用几个 `if` 重新推一遍 (那就成了两套事实), 而是**拿 P0 自己当判据**:
|
|
40
|
+
* 把某条上限放宽后**结论变了**, 说明是它在决定 (`bindingCaps`)。放宽了结论也不变 = 这次停跟它无关
|
|
41
|
+
* (是"没有继续的资格"/终态/等人), 于是不会被错记成"被上限拦住"。
|
|
42
|
+
* 上限**没定义** (例如 `maxGoalBudget === null`) 也算它在说话 —— `applyHardLimits` 会收紧成交人,
|
|
43
|
+
* 而放宽后那条收紧理由会消失, 反事实照样抓得到。
|
|
44
|
+
*
|
|
45
|
+
* ## 事实从哪来 (接缝自己不读盘)
|
|
46
|
+
*
|
|
47
|
+
* · `deps.readFacts` (规范口径): **只读事实, 不判定** —— 判定由本接缝用 P0 做, 全量决策随结果返回;
|
|
48
|
+
* · `deps.decide` (旧口径): 接线层注入的整条判定结论。事实拿不到时的兜底, 只能核验
|
|
49
|
+
* **无进展熔断**这一条上限 (其余上限没有事实就没法核验 → 如实标 `unattributableStop`, 不假装验过;
|
|
50
|
+
* 自称的上限若与阈值对不上 → **真拒**, 见 `judgeInjectedOutcome`)。
|
|
51
|
+
*
|
|
52
|
+
* 本文件**不读盘、不读钟**: `now` 由调用方注入。
|
|
53
|
+
*/
|
|
54
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
55
|
+
exports.SEAM_ROUNDS_AS_RHYTHM = exports.SEAM_RHYTHM_REQUIRED = exports.RHYTHM_BASIS_TEXT = exports.SEAM_CAP_DEFAULTS = exports.SAFETY_CAP_TEXT = exports.SAFETY_CAPS = exports.CONTINUATION_SEAM_ID = void 0;
|
|
56
|
+
exports.safetyCapsFrom = safetyCapsFrom;
|
|
57
|
+
exports.rhythmicDecision = rhythmicDecision;
|
|
58
|
+
exports.bindingCaps = bindingCaps;
|
|
59
|
+
exports.planRhythm = planRhythm;
|
|
60
|
+
exports.judgeLegacyStop = judgeLegacyStop;
|
|
61
|
+
exports.judgeInjectedOutcome = judgeInjectedOutcome;
|
|
62
|
+
exports.createContinuationSeam = createContinuationSeam;
|
|
63
|
+
exports.scanContinuationSeamRhythm = scanContinuationSeamRhythm;
|
|
64
|
+
const continuation_decision_js_1 = require("../continuation-decision.js");
|
|
65
|
+
const seams_js_1 = require("./seams.js");
|
|
66
|
+
exports.CONTINUATION_SEAM_ID = 'continuation';
|
|
67
|
+
// ============================================================================
|
|
68
|
+
// §1. 三类安全上限: 固定轮次在这里被降级
|
|
69
|
+
// ============================================================================
|
|
70
|
+
/** 三类安全上限的机器名 (设计稿 §4 的"保留三类硬底线") */
|
|
71
|
+
exports.SAFETY_CAPS = ['max_run_duration', 'goal_budget', 'no_progress_breaker'];
|
|
72
|
+
exports.SAFETY_CAP_TEXT = {
|
|
73
|
+
max_run_duration: '单 Run 时间上限',
|
|
74
|
+
goal_budget: '单 Goal 预算上限 (总 Run 数)',
|
|
75
|
+
no_progress_breaker: '无进展熔断阈值',
|
|
76
|
+
};
|
|
77
|
+
/** 接缝自己的上限默认值 (与接线层 M0 同一口径; 接缝不 import 接线层, 所以在这里登记一份) */
|
|
78
|
+
exports.SEAM_CAP_DEFAULTS = {
|
|
79
|
+
maxRunDurationMs: 30 * 60_000,
|
|
80
|
+
maxGoalBudget: 50,
|
|
81
|
+
noProgressCircuitBreaker: 3,
|
|
82
|
+
};
|
|
83
|
+
const isCount = (n) => typeof n === 'number' && Number.isInteger(n) && n >= 1;
|
|
84
|
+
const isZeroOrCount = (n) => typeof n === 'number' && Number.isInteger(n) && n >= 0;
|
|
85
|
+
const isPosFinite = (n) => typeof n === 'number' && Number.isFinite(n) && n > 0;
|
|
86
|
+
/**
|
|
87
|
+
* 旧配置 → 三类安全上限。**这是"固定轮次降级"的唯一实现处**。
|
|
88
|
+
*
|
|
89
|
+
* 降级不是"少看一眼", 而是**换一件事管**: 轮次从"继续/停止的依据"变成"总 Run 数的上限"。
|
|
90
|
+
* 于是旧配置的语义被保住 (跑不到第 N 轮以上), 但节奏改由进展决定。
|
|
91
|
+
*/
|
|
92
|
+
function safetyCapsFrom(config = {}) {
|
|
93
|
+
let maxRunDurationMs = exports.SEAM_CAP_DEFAULTS.maxRunDurationMs;
|
|
94
|
+
let maxGoalBudget = exports.SEAM_CAP_DEFAULTS.maxGoalBudget;
|
|
95
|
+
let noProgressCircuitBreaker = exports.SEAM_CAP_DEFAULTS.noProgressCircuitBreaker;
|
|
96
|
+
// 旧的固定轮次 → 单 Goal 预算上限 (Run 数上限)
|
|
97
|
+
if (isCount(config.maxRounds))
|
|
98
|
+
maxGoalBudget = config.maxRounds;
|
|
99
|
+
// 运输层的 maxRetries → 无进展熔断阈值 (与 M0 `hardLimitsFor` 同口径: 阈值 = maxRetries + 1)
|
|
100
|
+
if (isZeroOrCount(config.maxRetries))
|
|
101
|
+
noProgressCircuitBreaker = Math.max(1, config.maxRetries + 1);
|
|
102
|
+
if (isPosFinite(config.maxRunDurationMs))
|
|
103
|
+
maxRunDurationMs = config.maxRunDurationMs;
|
|
104
|
+
const explicit = config.limits;
|
|
105
|
+
if (explicit) {
|
|
106
|
+
// 只有 `undefined` 算"没说"; `null` 是显式语义 (未设上限 → applyHardLimits 会收紧成交人), 不许被默认值盖掉
|
|
107
|
+
if (explicit.maxRunDurationMs !== undefined)
|
|
108
|
+
maxRunDurationMs = explicit.maxRunDurationMs;
|
|
109
|
+
if (explicit.maxGoalBudget !== undefined)
|
|
110
|
+
maxGoalBudget = explicit.maxGoalBudget;
|
|
111
|
+
if (explicit.noProgressCircuitBreaker !== undefined)
|
|
112
|
+
noProgressCircuitBreaker = explicit.noProgressCircuitBreaker;
|
|
113
|
+
}
|
|
114
|
+
return { maxRunDurationMs, maxGoalBudget, noProgressCircuitBreaker };
|
|
115
|
+
}
|
|
116
|
+
/** 放宽后的取值: 大到事实上不可能触顶, 但仍是合法上限 (P0 对上限合法性有判据: 正有限数 / >=1 的整数) */
|
|
117
|
+
const RELAXED_LIMIT = Number.MAX_SAFE_INTEGER;
|
|
118
|
+
/** 上限的**事实层来源**: Goal 自带的 `budget` (maxRuns / deadlineMs) 也是「单 Goal 预算上限」 */
|
|
119
|
+
function relaxFactSource(facts, cap) {
|
|
120
|
+
return cap === 'goal_budget' ? { ...facts, goal: { ...facts.goal, budget: undefined } } : facts;
|
|
121
|
+
}
|
|
122
|
+
/** 放宽这一条上限 (其余保持不变) */
|
|
123
|
+
function capsRelaxingOne(caps, cap) {
|
|
124
|
+
const out = { ...caps };
|
|
125
|
+
if (cap === 'max_run_duration')
|
|
126
|
+
out.maxRunDurationMs = RELAXED_LIMIT;
|
|
127
|
+
else if (cap === 'goal_budget')
|
|
128
|
+
out.maxGoalBudget = RELAXED_LIMIT;
|
|
129
|
+
else
|
|
130
|
+
out.noProgressCircuitBreaker = RELAXED_LIMIT;
|
|
131
|
+
return out;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* 把「单 Goal 预算上限」用 **P0 听得懂的口径**表达出来, 而不是在接缝里自己数 Run。
|
|
135
|
+
*
|
|
136
|
+
* 为什么不在接缝里数: 轮次数只有 P0 的预算法则会判 (它读 Goal 自带的 `budget.maxRuns` + Run 列表),
|
|
137
|
+
* 接缝再数一遍就是**第二套事实** —— 而且那正是"用轮次当节奏"的老毛病 (本文件的源码判据也不允许)。
|
|
138
|
+
* 所以这里只做一件事: 把降级来的上限投影成 Goal 的预算口径, 判定仍然只有 P0 那一个出口。
|
|
139
|
+
*
|
|
140
|
+
* 优先级 (与 M0 `hardLimitsFor` 同口径: "Goal 自己声明了预算就用它, 否则退回默认上限"):
|
|
141
|
+
* · Goal **声明**了 `budget.maxRuns` → 用它 (人的意图优先于旧配置; 要让上限更严就改 Goal 的预算,
|
|
142
|
+
* 那是人的取舍, 见 P4 规则 2 "扩/改预算不许 Agent 自动批");
|
|
143
|
+
* · Goal 没声明 → 用上限里的 `maxGoalBudget` (旧 maxRounds 降级来的, 或默认 50) —— 它**真的能停**;
|
|
144
|
+
* · `maxGoalBudget === null` (未设上限) → **不投影**: 那种情况由 `applyHardLimits` 收紧成交人。
|
|
145
|
+
*/
|
|
146
|
+
function factsWithBudgetCap(facts, caps) {
|
|
147
|
+
const declared = facts.goal.budget?.maxRuns;
|
|
148
|
+
const cap = caps.maxGoalBudget;
|
|
149
|
+
const usable = typeof cap === 'number' && Number.isFinite(cap) && cap > 0 ? cap : undefined;
|
|
150
|
+
const effective = typeof declared === 'number' ? declared : usable;
|
|
151
|
+
if (effective === undefined || effective === declared)
|
|
152
|
+
return facts; // 事实已经表达了这条上限
|
|
153
|
+
return { ...facts, goal: { ...facts.goal, budget: { ...(facts.goal.budget ?? {}), maxRuns: effective } } };
|
|
154
|
+
}
|
|
155
|
+
/** 本接缝的节奏管线: **唯一的决策出口** (纯函数, 同一批事实重放得到同一条决策) */
|
|
156
|
+
function rhythmicDecision(facts, caps) {
|
|
157
|
+
return (0, continuation_decision_js_1.applyHardLimits)((0, continuation_decision_js_1.decideContinuation)({ ...factsWithBudgetCap(facts, caps), hardLimits: caps }), caps);
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* 决策的**结论投影**: 除 `reason` 之外的一切。
|
|
161
|
+
*
|
|
162
|
+
* 为什么把 `reason` 排除掉: P0 的理由文本里嵌着上限的**真值** (熔断阈值 / 毫秒数 / Run 数),
|
|
163
|
+
* 拿它做比对会把"数字变了"当成"结论变了" —— 于是没触顶的上限也被记成在说话 (实测踩过)。
|
|
164
|
+
* 结论投影只看真正决定行为的字段: decision / state / nextAction / wakeAt / requiredCapability /
|
|
165
|
+
* riskLevel / stopReason / confidence … 上限真的在说话时, 这些里至少有一个会变。
|
|
166
|
+
*/
|
|
167
|
+
function verdictOf(d) {
|
|
168
|
+
return JSON.stringify({ ...d, reason: null });
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* 哪几条安全上限**真的在决定结论** (触顶 + 起决定作用; 触顶但被别条覆盖的不算)。
|
|
172
|
+
*
|
|
173
|
+
* 判据是**反事实**, 不是本文件手算一遍 (手算就是第二套事实):
|
|
174
|
+
* 把这一条上限 (连它的事实层来源) 放宽 → **结论投影变了** ⟹ 是它在说话;
|
|
175
|
+
* 结论没变 ⟹ 这次停跟它无关 (可能压根没触顶, 也可能被更靠前的规则先拦下了)。
|
|
176
|
+
*
|
|
177
|
+
* 于是"上限没定义"也被算成它在说话 (`maxGoalBudget: null` → `applyHardLimits` 收紧成交人;
|
|
178
|
+
* 放宽后那条收紧理由消失, 结论就变了), 而"没有继续的资格"(⑪) 永远不会被错记成"被上限拦住"。
|
|
179
|
+
* 顺序 = P0 的判定顺序 (单 Run 时间 → 单 Goal 预算 → 无进展熔断)。
|
|
180
|
+
*/
|
|
181
|
+
function bindingCaps(facts, caps) {
|
|
182
|
+
const base = verdictOf(rhythmicDecision(facts, caps));
|
|
183
|
+
const out = [];
|
|
184
|
+
for (const cap of exports.SAFETY_CAPS) {
|
|
185
|
+
if (verdictOf(rhythmicDecision(relaxFactSource(facts, cap), capsRelaxingOne(caps, cap))) !== base)
|
|
186
|
+
out.push(cap);
|
|
187
|
+
}
|
|
188
|
+
return out;
|
|
189
|
+
}
|
|
190
|
+
exports.RHYTHM_BASIS_TEXT = {
|
|
191
|
+
progress: '有可核验进展',
|
|
192
|
+
delegate: '缺能力该派活',
|
|
193
|
+
wait: '等外部 / 等事件',
|
|
194
|
+
cap: '安全上限触顶',
|
|
195
|
+
human: '没有继续的资格 (交人定夺)',
|
|
196
|
+
terminal: '终态 (完成 / 不可达)',
|
|
197
|
+
};
|
|
198
|
+
function basisOf(d, caps) {
|
|
199
|
+
if (d.decision === 'complete' || d.decision === 'fail')
|
|
200
|
+
return 'terminal';
|
|
201
|
+
if (d.decision === 'wait' || d.decision === 'pause')
|
|
202
|
+
return 'wait';
|
|
203
|
+
if (caps.length > 0)
|
|
204
|
+
return 'cap';
|
|
205
|
+
if (d.decision === 'continue')
|
|
206
|
+
return 'progress';
|
|
207
|
+
if (d.decision === 'delegate')
|
|
208
|
+
return 'delegate';
|
|
209
|
+
return 'human';
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* 这个 Goal 现在该不该开下一轮 —— **纯函数版** (接缝的 `preflight` 与宿主都可直接用)。
|
|
213
|
+
* 决策只来自 P0; 上限只来自 `safetyCapsFrom` 的降级结果。
|
|
214
|
+
*/
|
|
215
|
+
function planRhythm(facts, config = {}) {
|
|
216
|
+
const capsInEffect = safetyCapsFrom(config);
|
|
217
|
+
const decision = rhythmicDecision(facts, capsInEffect);
|
|
218
|
+
const gate = (0, continuation_decision_js_1.isRunnable)(decision, facts.now);
|
|
219
|
+
const caps = bindingCaps(facts, capsInEffect);
|
|
220
|
+
return {
|
|
221
|
+
goalId: facts.goal.goalId,
|
|
222
|
+
decision,
|
|
223
|
+
runnable: gate.runnable,
|
|
224
|
+
decisionReason: decision.reason,
|
|
225
|
+
runnableReason: gate.reason,
|
|
226
|
+
basis: basisOf(decision, caps),
|
|
227
|
+
caps,
|
|
228
|
+
bindingCap: caps[0] ?? null,
|
|
229
|
+
capsInEffect,
|
|
230
|
+
noProgressStreak: facts.noProgressStreak,
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* 一个**自称停**的旧结论 (例如运输层的"已到最大轮次 → 交人") 该不该被采纳。
|
|
235
|
+
*
|
|
236
|
+
* 规则 (与设计稿 §4 逐条对应):
|
|
237
|
+
* · 上限触顶 / 终态 / 等外部 → 停得住 (上限是安全线, 该停就停);
|
|
238
|
+
* · 有可核验进展且三类上限一条都没触顶 → **推翻旧结论, 继续** (轮次不再是停止依据);
|
|
239
|
+
* · 其余 (没有继续的资格, basis='human') → 照旧停, 理由是"没证据", 不是"第几轮"。
|
|
240
|
+
*/
|
|
241
|
+
function judgeLegacyStop(claim, plan) {
|
|
242
|
+
if (claim.runnable)
|
|
243
|
+
return { stop: false, overridden: false, reason: claim.reason };
|
|
244
|
+
if (plan.basis === 'terminal' || plan.basis === 'wait') {
|
|
245
|
+
return { stop: true, overridden: false, reason: `停得住 (${exports.RHYTHM_BASIS_TEXT[plan.basis]}): ${claim.reason}` };
|
|
246
|
+
}
|
|
247
|
+
if (plan.caps.length > 0) {
|
|
248
|
+
return {
|
|
249
|
+
stop: true,
|
|
250
|
+
overridden: false,
|
|
251
|
+
reason: `停得住 (安全上限触顶: ${plan.caps.map((c) => exports.SAFETY_CAP_TEXT[c]).join(' + ')}): ${claim.reason}`,
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
if (plan.basis === 'progress' && plan.runnable) {
|
|
255
|
+
return {
|
|
256
|
+
stop: false,
|
|
257
|
+
overridden: true,
|
|
258
|
+
reason: `旧结论「${claim.reason}」被推翻: 本轮有可核验进展, 且三类安全上限一条都没触顶 `
|
|
259
|
+
+ '→ 继续 (轮次/时长不是停止依据, 只有上限能停)',
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
return {
|
|
263
|
+
stop: true,
|
|
264
|
+
overridden: false,
|
|
265
|
+
reason: `停得住 (${exports.RHYTHM_BASIS_TEXT[plan.basis]}): ${claim.reason}`,
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* 注入的结论 → 可核验的节奏归因。
|
|
270
|
+
*
|
|
271
|
+
* 投影里能核验的只有**无进展熔断** (它只需要 `noProgressStreak`)。
|
|
272
|
+
* 自称别的上限 (时间/预算) 缺事实 → 不认, 但如实标注 (不假装验过);
|
|
273
|
+
* 自称熔断却数与阈值对不上 → **真拒** (用轮次冒充安全上限)。
|
|
274
|
+
*/
|
|
275
|
+
function judgeInjectedOutcome(out, caps) {
|
|
276
|
+
const claimed = (out.caps ?? []).filter((c) => exports.SAFETY_CAPS.includes(c));
|
|
277
|
+
const stop = out.runnable !== true;
|
|
278
|
+
const state = out.decision?.state ?? null;
|
|
279
|
+
const kind = out.decision?.decision ?? null;
|
|
280
|
+
const claimsBreaker = claimed.includes('no_progress_breaker');
|
|
281
|
+
const breakerTripped = out.noProgressStreak >= caps.noProgressCircuitBreaker;
|
|
282
|
+
if (claimsBreaker && !breakerTripped) {
|
|
283
|
+
return (0, seams_js_1.refuse)('only_supervisor_decides_continuation', `拒绝: 注入的结论自称「${exports.SAFETY_CAP_TEXT.no_progress_breaker}」触顶, 但 noProgressStreak=`
|
|
284
|
+
+ `${out.noProgressStreak} < 阈值 ${caps.noProgressCircuitBreaker} —— 用轮次冒充安全上限: `
|
|
285
|
+
+ '只有上限真的触顶才能停 (这不算安全线, 是拿"第几轮"当节奏)');
|
|
286
|
+
}
|
|
287
|
+
// 不管自称不自称: 阈值真的到了, 这条上限就是从事实核验得到的
|
|
288
|
+
const verifiedBreaker = stop && (state === 'no_progress') && breakerTripped;
|
|
289
|
+
const unverifiable = claimed.filter((c) => c !== 'no_progress_breaker');
|
|
290
|
+
let basis;
|
|
291
|
+
if (!stop) {
|
|
292
|
+
basis = kind === 'delegate' ? 'delegate' : kind === 'continue' ? 'progress' : 'wait';
|
|
293
|
+
}
|
|
294
|
+
else if (kind === 'complete' || kind === 'fail') {
|
|
295
|
+
basis = 'terminal';
|
|
296
|
+
}
|
|
297
|
+
else if (kind === 'wait' || kind === 'pause') {
|
|
298
|
+
basis = 'wait';
|
|
299
|
+
}
|
|
300
|
+
else if (verifiedBreaker) {
|
|
301
|
+
basis = 'cap';
|
|
302
|
+
}
|
|
303
|
+
else {
|
|
304
|
+
basis = 'human';
|
|
305
|
+
}
|
|
306
|
+
const caps_ = verifiedBreaker ? ['no_progress_breaker'] : [];
|
|
307
|
+
const unattributableStop = stop
|
|
308
|
+
&& basis !== 'cap' && basis !== 'terminal' && basis !== 'wait';
|
|
309
|
+
const note = unattributableStop
|
|
310
|
+
? (unverifiable.length
|
|
311
|
+
? ` (自称的上限 ${unverifiable.map((c) => exports.SAFETY_CAP_TEXT[c]).join(' + ')} 缺事实, 不可核验 → 不认)`
|
|
312
|
+
: ' (缺事实: 时间/预算两类上限无法核验, 只核验了无进展熔断)')
|
|
313
|
+
: '';
|
|
314
|
+
return {
|
|
315
|
+
...out,
|
|
316
|
+
source: 'injected',
|
|
317
|
+
basis,
|
|
318
|
+
caps: caps_,
|
|
319
|
+
bindingCap: caps_[0] ?? null,
|
|
320
|
+
capsInEffect: caps,
|
|
321
|
+
fullDecision: null,
|
|
322
|
+
facts: null,
|
|
323
|
+
unattributableStop,
|
|
324
|
+
reason: `${out.reason}${note}`,
|
|
325
|
+
};
|
|
326
|
+
}
|
|
327
|
+
function createContinuationSeam(deps) {
|
|
328
|
+
return {
|
|
329
|
+
id: exports.CONTINUATION_SEAM_ID,
|
|
330
|
+
stage: 'M1',
|
|
331
|
+
async preflight(input) {
|
|
332
|
+
if (input.caller !== 'supervisor') {
|
|
333
|
+
return (0, seams_js_1.refuse)('only_supervisor_decides_continuation', `拒绝: caller=${input.caller} 想决定"是否继续 (goal=${input.goalId})" —— `
|
|
334
|
+
+ '只有 Supervisor 能决定是否继续 (Runner/子 Agent 只能上报事实与建议)');
|
|
335
|
+
}
|
|
336
|
+
if (!input.goalId) {
|
|
337
|
+
return (0, seams_js_1.refuse)('only_supervisor_decides_continuation', '拒绝: 没有 goalId 的节奏判定等于给不存在的目标排队');
|
|
338
|
+
}
|
|
339
|
+
const config = {
|
|
340
|
+
maxRounds: input.maxRounds,
|
|
341
|
+
maxRetries: input.maxRetries,
|
|
342
|
+
maxRunDurationMs: input.maxRunDurationMs,
|
|
343
|
+
limits: input.limits,
|
|
344
|
+
};
|
|
345
|
+
const capsInEffect = safetyCapsFrom(config);
|
|
346
|
+
// 规范路径: 事实 → P0 (判定由本接缝做, 全量决策随结果返回)
|
|
347
|
+
if (deps.readFacts) {
|
|
348
|
+
const facts = await deps.readFacts({ goalId: input.goalId, now: input.now });
|
|
349
|
+
if (facts) {
|
|
350
|
+
const plan = planRhythm(facts, config);
|
|
351
|
+
const capNote = plan.caps.length > 0
|
|
352
|
+
? `, 上限: ${plan.caps.map((c) => exports.SAFETY_CAP_TEXT[c]).join(' + ')}`
|
|
353
|
+
: '';
|
|
354
|
+
return {
|
|
355
|
+
goalId: plan.goalId,
|
|
356
|
+
runnable: plan.runnable,
|
|
357
|
+
reason: `[${exports.RHYTHM_BASIS_TEXT[plan.basis]}${capNote}] ${plan.decisionReason} | 放行: ${plan.runnableReason}`,
|
|
358
|
+
noProgressStreak: plan.noProgressStreak,
|
|
359
|
+
decision: {
|
|
360
|
+
decision: plan.decision.decision,
|
|
361
|
+
state: plan.decision.state,
|
|
362
|
+
nextAction: plan.decision.nextAction,
|
|
363
|
+
requiredCapability: plan.decision.requiredCapability,
|
|
364
|
+
decisionId: plan.decision.decisionId,
|
|
365
|
+
},
|
|
366
|
+
caps: plan.caps,
|
|
367
|
+
stopReason: plan.decision.stopReason,
|
|
368
|
+
progress: plan.decision.progressDelta,
|
|
369
|
+
source: 'facts',
|
|
370
|
+
basis: plan.basis,
|
|
371
|
+
bindingCap: plan.bindingCap,
|
|
372
|
+
capsInEffect,
|
|
373
|
+
fullDecision: plan.decision,
|
|
374
|
+
facts,
|
|
375
|
+
unattributableStop: false,
|
|
376
|
+
};
|
|
377
|
+
}
|
|
378
|
+
// 事实读不到 → 不猜 (下面还有没兜底, 没有就如实说)
|
|
379
|
+
if (!deps.decide)
|
|
380
|
+
return null;
|
|
381
|
+
}
|
|
382
|
+
if (!deps.decide) {
|
|
383
|
+
return (0, seams_js_1.refuse)('only_supervisor_decides_continuation', '拒绝: 接缝既没有 readFacts 也没有 decide —— 没有事实就没有节奏判定, 不许编一条决策出来');
|
|
384
|
+
}
|
|
385
|
+
const out = await deps.decide({
|
|
386
|
+
goalId: input.goalId,
|
|
387
|
+
now: input.now,
|
|
388
|
+
maxRetries: input.maxRetries,
|
|
389
|
+
writeRecord: input.writeRecord,
|
|
390
|
+
});
|
|
391
|
+
if (!out)
|
|
392
|
+
return null;
|
|
393
|
+
return judgeInjectedOutcome(out, capsInEffect);
|
|
394
|
+
},
|
|
395
|
+
};
|
|
396
|
+
}
|
|
397
|
+
// ============================================================================
|
|
398
|
+
// §5. 源码级判据 (供门与变异验证: 本接缝的"自适应节奏"接线是不是还在)
|
|
399
|
+
// ============================================================================
|
|
400
|
+
/**
|
|
401
|
+
* 必须有: P0 的三个函数 + 上限登记函数 (少一个 = 节奏或上限被摘掉)。
|
|
402
|
+
*
|
|
403
|
+
* 为什么用 `fn.name` 而不是把函数名抄成字面量: 抄成字面量的那一行**自己就含**着这个
|
|
404
|
+
* 名字 —— 于是这道判据会被自己满足 (门空转)。取运行期函数名, 判据只可能在**真的调用**处命中。
|
|
405
|
+
*/
|
|
406
|
+
exports.SEAM_RHYTHM_REQUIRED = [
|
|
407
|
+
`${continuation_decision_js_1.decideContinuation.name}(`,
|
|
408
|
+
`${continuation_decision_js_1.applyHardLimits.name}(`,
|
|
409
|
+
`${continuation_decision_js_1.isRunnable.name}(`,
|
|
410
|
+
`${safetyCapsFrom.name}(`,
|
|
411
|
+
];
|
|
412
|
+
/**
|
|
413
|
+
* 不许有: 拿轮次/轮数自己判停 (轮次只准经 `safetyCapsFrom` 变成安全上限)。
|
|
414
|
+
*
|
|
415
|
+
* 词根 + 后缀拼出来, 同样是为了**不自证违规**: 把 `runsUsed` 直接写成本判据里的一行,
|
|
416
|
+
* 那一行就会被自己的模式命中 → 干净树永远判红, 门就废了。
|
|
417
|
+
*/
|
|
418
|
+
const RHYTHM_FORBIDDEN_ROOTS = ['runs', 'round', 'attempt'];
|
|
419
|
+
exports.SEAM_ROUNDS_AS_RHYTHM = [
|
|
420
|
+
/\bgoal\s*\.\s*runs\b/,
|
|
421
|
+
...RHYTHM_FORBIDDEN_ROOTS.map((root) => new RegExp(`\\b${root}(?:No|Used|Count)?\\s*>=`)),
|
|
422
|
+
];
|
|
423
|
+
/**
|
|
424
|
+
* 纯函数判据: 吃源码文本, 吐违规清单。
|
|
425
|
+
* 与 `seams.ts` 同一手法 —— 于是"改坏主不变量 → 必须判红"可以在测试里**每次跑都在验**,
|
|
426
|
+
* 而不是我口头说验过 (见 `src/test/goal-flywheel-wiring-continuation.test.ts` 的变异段)。
|
|
427
|
+
*/
|
|
428
|
+
function scanContinuationSeamRhythm(text) {
|
|
429
|
+
const code = (0, seams_js_1.stripBlockComments)(String(text)).split(/\r?\n/).map((s) => {
|
|
430
|
+
const i = s.indexOf('//');
|
|
431
|
+
return i >= 0 ? s.slice(0, i) : s;
|
|
432
|
+
}).join('\n');
|
|
433
|
+
const violations = [];
|
|
434
|
+
for (const needle of exports.SEAM_RHYTHM_REQUIRED) {
|
|
435
|
+
if (!code.includes(needle))
|
|
436
|
+
violations.push(`缺少 ${needle} —— 节奏/上限的接线被摘掉了`);
|
|
437
|
+
}
|
|
438
|
+
for (const re of exports.SEAM_ROUNDS_AS_RHYTHM) {
|
|
439
|
+
if (re.test(code))
|
|
440
|
+
violations.push(`出现"按轮次停"的写法 (${String(re)}) —— 轮次只准经 safetyCapsFrom 变成安全上限`);
|
|
441
|
+
}
|
|
442
|
+
return { ok: violations.length === 0, violations };
|
|
443
|
+
}
|
|
444
|
+
//# sourceMappingURL=continuation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation.js","sourceRoot":"","sources":["../../../../../src/agents/goal-flywheel/wiring/continuation.ts"],"names":[],"mappings":"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"}
|