@oh-my-matrix/autopilot 3.0.2 → 3.1.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/README.md +15 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +131 -1
- package/dist/index.js.map +1 -1
- package/dist/src/continuation-engine.d.ts +6 -0
- package/dist/src/continuation-engine.d.ts.map +1 -1
- package/dist/src/continuation-engine.js +115 -5
- package/dist/src/continuation-engine.js.map +1 -1
- package/dist/src/logger.d.ts +8 -0
- package/dist/src/logger.d.ts.map +1 -1
- package/dist/src/logger.js.map +1 -1
- package/dist/src/state-persister.d.ts +121 -0
- package/dist/src/state-persister.d.ts.map +1 -0
- package/dist/src/state-persister.js +456 -0
- package/dist/src/state-persister.js.map +1 -0
- package/dist/src/types.d.ts +15 -0
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js +3 -0
- package/dist/src/types.js.map +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +12 -11
- package/LICENSE +0 -21
package/README.md
CHANGED
|
@@ -24,6 +24,14 @@ npm install openclaw@">=2026.5.28" @oh-my-matrix/permission-policy
|
|
|
24
24
|
- **Model routing** — cost-aware tier selection per execution phase (budget/standard/premium).
|
|
25
25
|
- **Permission-policy integration** — coordinates the run-scoped policy with
|
|
26
26
|
[`@oh-my-matrix/permission-policy`](../permission-policy).
|
|
27
|
+
- **Crash recovery** — run state is checkpointed to
|
|
28
|
+
`{workspace}/.autopilot/checkpoints/{runId}.json` at stable transitions
|
|
29
|
+
(orchestration-state / blocked-reason / evidence changes). On gateway restart,
|
|
30
|
+
`register()` restores all runs still in an active state
|
|
31
|
+
(`running`/`claimed`/`retry_queued`/`released`/`unclaimed`) whose workspace
|
|
32
|
+
still exists, marked `degraded:true`. Terminal runs (`done`/`user_stopped`)
|
|
33
|
+
delete their checkpoint to prevent file leaks. `status` is **never** trusted
|
|
34
|
+
from disk — always re-derived via `deriveStatus` (ADR-016 sole-writer invariant).
|
|
27
35
|
|
|
28
36
|
## Plugin config
|
|
29
37
|
|
|
@@ -145,7 +153,13 @@ To restore 2.x behavior, set `trustWorkspace: true` in the activate payload or p
|
|
|
145
153
|
|
|
146
154
|
All other 3.0.0 changes (model routing, thinking intensity, new BlockedReason values, stall detection for `claimed` runs) are additive and backward-compatible.
|
|
147
155
|
|
|
156
|
+
### Behavioral changes within 3.x
|
|
157
|
+
|
|
158
|
+
These are not 2.x→3.0.0 migration steps — they are **already-shipped precedence flips** inside the 3.x line that may affect existing configurations:
|
|
159
|
+
|
|
160
|
+
- **3.0.2 (ADR-017): a subagent's declared `model:` overrides the parent `subagentTier`.** Prior to 3.0.2, an active autopilot run with `modelIds` configured would silently override a subagent's `.prose` `model:` declaration with the parent's `subagentTier` (e.g. `budget`). As of 3.0.2, if a subagent declares `model: opus` and the parent sets `subagentTier: budget`, the subagent runs on Opus. If you relied on `subagentTier` to cap costs for subagents that declare an expensive model, those subagents use their declared model under 3.0.2+. Mitigation: remove the expensive `model:` declaration from the `.prose` if cost control matters more, or set `modelIds` to empty (the escape hatch documented in the [model-routing design](../../docs/design/model-routing-thinking-intensity-design.md) §6.3).
|
|
161
|
+
|
|
148
162
|
## Status
|
|
149
163
|
|
|
150
|
-
v3.0.
|
|
164
|
+
v3.0.3. Tested with `vitest` (836 tests, 91%+ statement coverage). See the project
|
|
151
165
|
[changelog](https://github.com/TeFuirnever/oh-my-matrix/blob/master/CHANGELOG.md).
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { OpenClawPluginApi } from 'openclaw/dist/plugin-sdk/plugin-runtime'
|
|
|
3
3
|
export type { AutopilotProjection } from './src/projection';
|
|
4
4
|
export declare const id = "autopilot";
|
|
5
5
|
export declare const name = "Autopilot Continuous Mode";
|
|
6
|
-
export declare const version = "3.
|
|
6
|
+
export declare const version = "3.1.0";
|
|
7
7
|
export declare function _resetForTest(): void;
|
|
8
8
|
/** Test-only: inject a mock audit_setMode so the closed-over _auditSetMode reference is replaceable. */
|
|
9
9
|
export declare function _setAuditSetModeForTest(fn: ((mode: 'active' | 'monitor' | 'passive') => void) | null): void;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,cAAc,EAA+B,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAuZ,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,cAAc,EAA+B,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAuZ,MAAM,yCAAyC,CAAC;AAuBte,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAsB5D,eAAO,MAAM,EAAE,cAAc,CAAC;AAC9B,eAAO,MAAM,IAAI,8BAA8B,CAAC;AAKhD,eAAO,MAAM,OAAO,UAAU,CAAC;AA4G/B,wBAAgB,aAAa,IAAI,IAAI,CAiBpC;AAsDD,wGAAwG;AACxG,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAK3G;AAED,wBAAgB,wBAAwB;;;;;EAOvC;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAAC;IACzD,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CACjC,GAAG,cAAc,GAAG,SAAS,CAmD7B;AAwHD,+EAA+E;AAC/E,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAMD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAy/BrD"}
|
package/dist/index.js
CHANGED
|
@@ -26,6 +26,7 @@ const project_detector_1 = require("./src/project-detector");
|
|
|
26
26
|
const permission_policy_2 = require("@oh-my-matrix/permission-policy");
|
|
27
27
|
const fs_1 = require("fs");
|
|
28
28
|
const path_1 = require("path");
|
|
29
|
+
const state_persister_1 = require("./src/state-persister");
|
|
29
30
|
/**
|
|
30
31
|
* Validate a renderer-supplied workspacePath before storing it as the
|
|
31
32
|
* containment boundary. Rejects relative paths, non-existent paths, and
|
|
@@ -51,7 +52,9 @@ exports.id = 'autopilot';
|
|
|
51
52
|
exports.name = 'Autopilot Continuous Mode';
|
|
52
53
|
// S14 (audit 2026-06-30): keep in sync with package.json + openclaw.plugin.json.
|
|
53
54
|
// These three are the release-time single source of truth for the plugin version.
|
|
54
|
-
|
|
55
|
+
// Kept aligned automatically by scripts/sync-plugin-versions.cjs (do not hand-edit
|
|
56
|
+
// without also updating package.json — the sync script rewrites this line).
|
|
57
|
+
exports.version = '3.1.0';
|
|
55
58
|
/** GAP-25: Maximum number of concurrent run states before eviction kicks in */
|
|
56
59
|
const MAX_RUN_STATES = 50;
|
|
57
60
|
/** GAP-26: Health check threshold — sessions inactive for 24h are orphaned */
|
|
@@ -146,11 +149,73 @@ function _resetForTest() {
|
|
|
146
149
|
canaryFired = new Set();
|
|
147
150
|
noUsageWarned = new Set();
|
|
148
151
|
enqueueInjectionFn = undefined;
|
|
152
|
+
// Test isolation: disable checkpoint persistence so the existing 50+ test suite
|
|
153
|
+
// (which calls register() in the repo root and would otherwise both WRITE
|
|
154
|
+
// checkpoints to disk AND load them back on the next test's register()) doesn't
|
|
155
|
+
// cross-contaminate stateByRun. Tests that exercise persistence explicitly
|
|
156
|
+
// re-enable it via _enableCheckpointingForTest().
|
|
157
|
+
(0, state_persister_1._disableCheckpointingForTest)();
|
|
149
158
|
if (stallInterval) {
|
|
150
159
|
clearInterval(stallInterval);
|
|
151
160
|
stallInterval = null;
|
|
152
161
|
}
|
|
153
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* Resolve the workspace root under which checkpoints are stored for a run.
|
|
165
|
+
* Prefers the run's own workspace.root (the containment boundary the run was
|
|
166
|
+
* activated under); falls back to process.cwd() so checkpointing still works
|
|
167
|
+
* for runs activated before a workspace record is attached.
|
|
168
|
+
*/
|
|
169
|
+
function resolveCheckpointRoot(state) {
|
|
170
|
+
return state.workspace?.root ?? process.cwd();
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Decide whether a state transition should trigger a checkpoint write. We write
|
|
174
|
+
* only at STABLE POINTS — orchestrationState / blockedReason / evidence status
|
|
175
|
+
* changes — not on every setState (agent_activity fires per token batch and
|
|
176
|
+
* would drown the disk). This is the Review #5 "transition filter, not signature
|
|
177
|
+
* hash" recommendation: 3-line field comparison, no debouncing complexity.
|
|
178
|
+
*/
|
|
179
|
+
function shouldCheckpoint(prev, next) {
|
|
180
|
+
if (!prev)
|
|
181
|
+
return true; // first write for a run — persist immediately
|
|
182
|
+
if (prev.orchestrationState !== next.orchestrationState)
|
|
183
|
+
return true;
|
|
184
|
+
if (prev.blockedReason !== next.blockedReason)
|
|
185
|
+
return true;
|
|
186
|
+
if (prev.evidence?.status !== next.evidence?.status)
|
|
187
|
+
return true;
|
|
188
|
+
if (prev.enabled !== next.enabled)
|
|
189
|
+
return true;
|
|
190
|
+
// Reviewer #1 Finding 5a fix: goal/progress changes (via setGoal gateway RPC)
|
|
191
|
+
// must reach disk, else crash-resume continues toward a stale goal.
|
|
192
|
+
if (prev.goal !== next.goal)
|
|
193
|
+
return true;
|
|
194
|
+
if (prev.progress !== next.progress)
|
|
195
|
+
return true;
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Checkpoint + terminal-state cleanup hook. Called from setState after a
|
|
200
|
+
* transition-worthy change. Handles:
|
|
201
|
+
* - persisting the slim checkpoint (fail-silent, per-runId locked)
|
|
202
|
+
* - deleting the checkpoint when the run reaches a terminal state (done /
|
|
203
|
+
* non-resumable blocked) so done-run files don't leak (Review #4 #6)
|
|
204
|
+
*/
|
|
205
|
+
function persistAfterTransition(runId, prev, next) {
|
|
206
|
+
// Terminal cleanup FIRST — once a run is done/non-resumable, delete its file
|
|
207
|
+
// so it can't be resurrected stale on a later restart, and clear the index.
|
|
208
|
+
const orch = next.orchestrationState;
|
|
209
|
+
if (orch === 'done' || (orch === 'blocked' && next.blockedReason === 'user_stopped')) {
|
|
210
|
+
const root = resolveCheckpointRoot(next);
|
|
211
|
+
(0, state_persister_1.deleteCheckpoint)(runId, root);
|
|
212
|
+
(0, state_persister_1.clearSessionIndexEntry)(root, next.sessionKey);
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
if (shouldCheckpoint(prev, next)) {
|
|
216
|
+
(0, state_persister_1.saveCheckpoint)(next, runId, resolveCheckpointRoot(next));
|
|
217
|
+
}
|
|
218
|
+
}
|
|
154
219
|
/** Test-only: inject a mock audit_setMode so the closed-over _auditSetMode reference is replaceable. */
|
|
155
220
|
function _setAuditSetModeForTest(fn) {
|
|
156
221
|
if (process.env.NODE_ENV === 'production') {
|
|
@@ -236,6 +301,9 @@ function evictOldestRuns() {
|
|
|
236
301
|
// S8: release audit refCount for an evicted still-running run before delete.
|
|
237
302
|
if (oldestState?.status === 'running')
|
|
238
303
|
setAuditMode('active');
|
|
304
|
+
// Review #4 #6b: also delete the checkpoint so evicted runs don't leak files.
|
|
305
|
+
if (oldestState)
|
|
306
|
+
(0, state_persister_1.deleteCheckpoint)(oldestRunId, resolveCheckpointRoot(oldestState));
|
|
239
307
|
stateByRun.delete(oldestRunId);
|
|
240
308
|
if (oldestState) {
|
|
241
309
|
sessionKeyToRunId.delete(oldestState.sessionKey);
|
|
@@ -252,9 +320,13 @@ function evictOldestRuns() {
|
|
|
252
320
|
}
|
|
253
321
|
}
|
|
254
322
|
function setState(runId, state) {
|
|
323
|
+
const prev = stateByRun.get(runId);
|
|
255
324
|
stateByRun.set(runId, state);
|
|
256
325
|
if (stateByRun.size > MAX_RUN_STATES)
|
|
257
326
|
evictOldestRuns();
|
|
327
|
+
// Crash-recovery: persist at stable points (orchState/blockedReason/evidence/enabled
|
|
328
|
+
// transitions). Fail-silent + per-runId locked inside saveCheckpoint.
|
|
329
|
+
persistAfterTransition(runId, prev, state);
|
|
258
330
|
}
|
|
259
331
|
/** GAP-23: Cleanup all state on shutdown */
|
|
260
332
|
function cleanupAll() {
|
|
@@ -357,6 +429,30 @@ function register(api) {
|
|
|
357
429
|
...(typeof uc.trustWorkspace === 'boolean' ? { trustWorkspace: uc.trustWorkspace } : {}),
|
|
358
430
|
};
|
|
359
431
|
(0, logger_1.log)(`[autopilot] config: maxAttemptsPerTurn=${config.maxAttemptsPerTurn} maxTotalContinuations=${config.maxTotalContinuations} toolErrorThreshold=${config.toolErrorThreshold} excludedAgents=${JSON.stringify(config.excludedAgents)} highRiskTools=${JSON.stringify(config.highRiskTools)} tokenBudget=${config.tokenBudget}`);
|
|
432
|
+
// Crash-recovery: restore ALL resumable runs at process init (Review #3 multi-run
|
|
433
|
+
// gap). session_start only fires for the session that reconnects, but a gateway
|
|
434
|
+
// restart may orphan runs owned by OTHER sessions. Scanning the checkpoints dir
|
|
435
|
+
// here restores every run still in an active family (running/claimed/retry_queued/
|
|
436
|
+
// released/unclaimed) whose workspace still exists. Restored runs are marked
|
|
437
|
+
// degraded:true so operators can tell a restored run from a fresh one.
|
|
438
|
+
{
|
|
439
|
+
const root = process.cwd();
|
|
440
|
+
const resumable = (0, state_persister_1.listResumableCheckpoints)(root);
|
|
441
|
+
for (const runId of resumable) {
|
|
442
|
+
const restored = (0, state_persister_1.loadCheckpoint)(runId, root);
|
|
443
|
+
if (restored) {
|
|
444
|
+
stateByRun.set(runId, restored);
|
|
445
|
+
sessionKeyToRunId.set(restored.sessionKey, runId);
|
|
446
|
+
if (restored.needsCrossTurnResume) {
|
|
447
|
+
// A restored run that was mid-cross-turn needs a kick to restart the
|
|
448
|
+
// agent loop; defer to kickResumedTurn once enqueueInjectionFn is set.
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
if (resumable.length > 0) {
|
|
453
|
+
(0, logger_1.log)(`[autopilot] crash-recovery: restored ${stateByRun.size} run(s) from checkpoints`);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
360
456
|
// --- Hooks (use api.on for typed hooks when available, registerHook as fallback) ---
|
|
361
457
|
const registerHook = api.on?.bind(api) ?? api.registerHook?.bind(api);
|
|
362
458
|
if (!registerHook) {
|
|
@@ -792,6 +888,25 @@ function register(api) {
|
|
|
792
888
|
sessionIdToKey.set(event.sessionId, event.sessionKey);
|
|
793
889
|
(0, logger_1.log)(`[autopilot] session_start: ${event.sessionId} → ${event.sessionKey}`);
|
|
794
890
|
}
|
|
891
|
+
// Crash-recovery resume (Review #4 BLOCKER #2): after a gateway restart the
|
|
892
|
+
// in-memory sessionKeyToRunId Map is empty, so we consult the durable
|
|
893
|
+
// session-index.json to locate the checkpoint for this session. register()
|
|
894
|
+
// already restored ALL resumable runs at process init; this path covers the
|
|
895
|
+
// case where a session reconnects (e.g. resumedFrom) and its run isn't yet
|
|
896
|
+
// in memory (different process, late-arriving session_start).
|
|
897
|
+
const sessionKey = event.sessionKey;
|
|
898
|
+
if (sessionKey && !findRunBySession(sessionKey)) {
|
|
899
|
+
const root = process.cwd();
|
|
900
|
+
const runId = (0, state_persister_1.lookupRunIdBySessionKey)(root, sessionKey);
|
|
901
|
+
if (runId) {
|
|
902
|
+
const restored = (0, state_persister_1.loadCheckpoint)(runId, root);
|
|
903
|
+
if (restored) {
|
|
904
|
+
stateByRun.set(runId, restored);
|
|
905
|
+
sessionKeyToRunId.set(sessionKey, runId);
|
|
906
|
+
(0, logger_1.log)(`[autopilot] session_start: resumed run ${runId} for session=${sessionKey} orchState=${restored.orchestrationState ?? 'n/a'}`);
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
}
|
|
795
910
|
});
|
|
796
911
|
registerHook('session_end', (event) => {
|
|
797
912
|
const sessionKey = event.sessionKey ?? sessionIdToKey.get(event.sessionId);
|
|
@@ -805,6 +920,13 @@ function register(api) {
|
|
|
805
920
|
// deleting state, mirroring cleanupAll. A leak here pins monitor mode.
|
|
806
921
|
if (state.status === 'running')
|
|
807
922
|
setAuditMode('active');
|
|
923
|
+
// Crash-recovery: for non-terminal runs, the in-memory state is the most
|
|
924
|
+
// up-to-date copy — ensure it's checkpointed BEFORE deleting from memory
|
|
925
|
+
// so a crash between session_end and the next activity doesn't lose work.
|
|
926
|
+
// (Terminal runs already had their checkpoint deleted in setState.)
|
|
927
|
+
if (state.orchestrationState !== 'done' && state.orchestrationState !== 'blocked') {
|
|
928
|
+
(0, state_persister_1.saveCheckpoint)(state, runId, resolveCheckpointRoot(state));
|
|
929
|
+
}
|
|
808
930
|
stateByRun.delete(runId);
|
|
809
931
|
sessionKeyToRunId.delete(sessionKey);
|
|
810
932
|
canaryFired.delete(sessionKey);
|
|
@@ -982,6 +1104,14 @@ function register(api) {
|
|
|
982
1104
|
next.maxTotalContinuations = Math.min(500, Math.max(1, Math.round(payloadMaxContinuations)));
|
|
983
1105
|
if (payloadTokenBudget != null)
|
|
984
1106
|
next.tokenBudget = payloadTokenBudget;
|
|
1107
|
+
// Enhancement C (ADR-019): stamp the EFFECTIVE per-run trust decision
|
|
1108
|
+
// (payload ?? config ?? false) onto state. createInitialState copies
|
|
1109
|
+
// config.trustWorkspace (plugin-level), but the payload override must
|
|
1110
|
+
// win — without this, a payload-trusted run would keep the plugin-level
|
|
1111
|
+
// value and minTurnsBeforeComplete would not raise the threshold.
|
|
1112
|
+
// applyPayload runs after createInitialState and before applyWorkflowConfig
|
|
1113
|
+
// in both activate branches, so this is the single correct stamp point.
|
|
1114
|
+
next.trustWorkspace = payloadTrustWorkspace ?? config.trustWorkspace ?? false;
|
|
985
1115
|
return next;
|
|
986
1116
|
};
|
|
987
1117
|
// GAP-6: Load workflow config from WORKFLOW.md
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,12 @@ interface FinalizeEvent {
|
|
|
3
3
|
lastAssistantMessage?: string;
|
|
4
4
|
stopHookActive?: boolean;
|
|
5
5
|
}
|
|
6
|
+
/**
|
|
7
|
+
* Enhancement C (ADR-019): resolve the per-run early-completion threshold.
|
|
8
|
+
* Returns 3 for verifiable trusted runs (validation commands present + trust
|
|
9
|
+
* enabled), 2 otherwise (the historical default). Pure function of state.
|
|
10
|
+
*/
|
|
11
|
+
export declare function minTurnsBeforeComplete(state: AutopilotState): number;
|
|
6
12
|
export declare function decideContinuation(state: AutopilotState, event: FinalizeEvent): ContinuationDecision;
|
|
7
13
|
export declare function buildRetryInstruction(state: AutopilotState): string;
|
|
8
14
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"continuation-engine.d.ts","sourceRoot":"","sources":["../../src/continuation-engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAIpE,UAAU,aAAa;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;
|
|
1
|
+
{"version":3,"file":"continuation-engine.d.ts","sourceRoot":"","sources":["../../src/continuation-engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAIpE,UAAU,aAAa;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAwBD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAMpE;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,aAAa,GACnB,oBAAoB,CAoDtB;AAMD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAiCnE"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.minTurnsBeforeComplete = minTurnsBeforeComplete;
|
|
3
4
|
exports.decideContinuation = decideContinuation;
|
|
4
5
|
exports.buildRetryInstruction = buildRetryInstruction;
|
|
5
6
|
const completion_detector_1 = require("./completion-detector");
|
|
@@ -15,6 +16,28 @@ const tool_error_tracker_1 = require("./tool-error-tracker");
|
|
|
15
16
|
* lower for snappier simple-task handling.
|
|
16
17
|
*/
|
|
17
18
|
const MIN_TURNS_BEFORE_COMPLETE = 2;
|
|
19
|
+
/**
|
|
20
|
+
* Enhancement C (ADR-019): raised threshold for verifiable trusted tasks.
|
|
21
|
+
* When a run has non-empty validation commands AND trustWorkspace is true,
|
|
22
|
+
* the model must produce more concrete work before a textual completion
|
|
23
|
+
* signal is trusted — closing the gap where it could satisfy "all done" on
|
|
24
|
+
* turn 2 before validation meaningfully ran. Trades one turn of happy-path
|
|
25
|
+
* latency for false-completion prevention (non-eliminable tradeoff, per
|
|
26
|
+
* ADR-019 design doc §4 Enhancement C).
|
|
27
|
+
*/
|
|
28
|
+
const MIN_TURNS_BEFORE_COMPLETE_VERIFIABLE = 3;
|
|
29
|
+
/**
|
|
30
|
+
* Enhancement C (ADR-019): resolve the per-run early-completion threshold.
|
|
31
|
+
* Returns 3 for verifiable trusted runs (validation commands present + trust
|
|
32
|
+
* enabled), 2 otherwise (the historical default). Pure function of state.
|
|
33
|
+
*/
|
|
34
|
+
function minTurnsBeforeComplete(state) {
|
|
35
|
+
const hasValidationCommands = (state.workflow?.validation.commands.length ?? 0) > 0;
|
|
36
|
+
if (hasValidationCommands && state.trustWorkspace === true) {
|
|
37
|
+
return MIN_TURNS_BEFORE_COMPLETE_VERIFIABLE;
|
|
38
|
+
}
|
|
39
|
+
return MIN_TURNS_BEFORE_COMPLETE;
|
|
40
|
+
}
|
|
18
41
|
function decideContinuation(state, event) {
|
|
19
42
|
if (!state.enabled || state.status !== 'running') {
|
|
20
43
|
return { action: 'finalize' };
|
|
@@ -23,10 +46,10 @@ function decideContinuation(state, event) {
|
|
|
23
46
|
return { action: 'finalize' };
|
|
24
47
|
}
|
|
25
48
|
if ((0, completion_detector_1.isTaskComplete)(event.lastAssistantMessage, event.stopHookActive)) {
|
|
26
|
-
// P1-2: don't trust an early completion signal.
|
|
27
|
-
//
|
|
28
|
-
//
|
|
29
|
-
if (state.totalContinuations <
|
|
49
|
+
// P1-2 + Enhancement C: don't trust an early completion signal. The
|
|
50
|
+
// threshold is now per-run: verifiable trusted tasks require more
|
|
51
|
+
// continuations before completion is allowed.
|
|
52
|
+
if (state.totalContinuations < minTurnsBeforeComplete(state)) {
|
|
30
53
|
return {
|
|
31
54
|
action: 'revise',
|
|
32
55
|
retryInstruction: '[Autopilot] An early completion signal was detected. If the task is genuinely done, briefly state the concrete changes made; otherwise continue from where you left off. (early-completion guard)',
|
|
@@ -61,6 +84,8 @@ function decideContinuation(state, event) {
|
|
|
61
84
|
};
|
|
62
85
|
}
|
|
63
86
|
const MAX_INSTRUCTION_LENGTH = 2000;
|
|
87
|
+
const MAX_COMMAND_SUMMARY_LENGTH = 300;
|
|
88
|
+
const MAX_FAILED_COMMANDS = 2;
|
|
64
89
|
function buildRetryInstruction(state) {
|
|
65
90
|
const goal = state.goal?.substring(0, 500) || '继续执行当前任务';
|
|
66
91
|
const progress = state.progress?.substring(0, 500) || '';
|
|
@@ -70,7 +95,92 @@ function buildRetryInstruction(state) {
|
|
|
70
95
|
if (progress) {
|
|
71
96
|
parts.push(`[Autopilot] Progress so far: ${progress}`);
|
|
72
97
|
}
|
|
98
|
+
// Enhancement B (ADR-019): when the last evidence gate run FAILED, re-surface
|
|
99
|
+
// the failure signal (failed-command stderr summaries) into the next retry
|
|
100
|
+
// instruction. This is most valuable after compaction may have evicted the
|
|
101
|
+
// original tool stderr from the context window. The command `summary` is the
|
|
102
|
+
// payload (it carries stderr from command-runner.ts:65); `failureReason` is
|
|
103
|
+
// low-value decoration ("required command(s) failed: <id>"). Prioritize
|
|
104
|
+
// summaries; include failureReason only if budget remains.
|
|
105
|
+
const failureBlock = buildFailureBlock(state.evidence);
|
|
106
|
+
if (failureBlock) {
|
|
107
|
+
parts.push(failureBlock);
|
|
108
|
+
}
|
|
73
109
|
parts.push('[Autopilot] Continue from where you left off.');
|
|
74
|
-
|
|
110
|
+
// Truncation must preserve the closing line. The closing line is always last;
|
|
111
|
+
// if goal+progress+failureBlock already consume most of the budget, the naive
|
|
112
|
+
// substring(0, MAX) would clip the closing line. Instead: join, and if over
|
|
113
|
+
// budget, rebuild by truncating the failure block down to whatever space
|
|
114
|
+
// remains between the prefix (goal+progress) and the closing line.
|
|
115
|
+
const joined = parts.join('\n');
|
|
116
|
+
if (joined.length <= MAX_INSTRUCTION_LENGTH) {
|
|
117
|
+
return joined;
|
|
118
|
+
}
|
|
119
|
+
return truncatePreservingClosing(parts);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Build a concise failure-signal block from a failed EvidenceSummary.
|
|
123
|
+
* Returns null when there is no failed evidence to report (absent, passed,
|
|
124
|
+
* skipped — or failed but with no command details). The block is inserted
|
|
125
|
+
* BEFORE the closing "Continue from where you left off." line.
|
|
126
|
+
*
|
|
127
|
+
* Security note (code-review M1): `cmd.summary` is untrusted command output
|
|
128
|
+
* (stderr, per command-runner.ts:65). It is injected into the agent-facing
|
|
129
|
+
* retry instruction. This is an accepted diagnostic-context risk, not a new
|
|
130
|
+
* trust boundary: the same stderr already reached the model via the original
|
|
131
|
+
* tool_result; this re-surfaces it (valuable after compaction evicts it). The
|
|
132
|
+
* `[Autopilot] Last validation failed:` framing signals to the model this is
|
|
133
|
+
* diagnostic context to reason about, not an instruction to obey. The 300-char
|
|
134
|
+
* cap + 2-command limit bound the volume. No sanitization is applied because
|
|
135
|
+
* the model is the consumer, not an executor of this text.
|
|
136
|
+
*/
|
|
137
|
+
function buildFailureBlock(evidence) {
|
|
138
|
+
if (!evidence || evidence.status !== 'failed')
|
|
139
|
+
return null;
|
|
140
|
+
const failedCommands = (evidence.commands ?? [])
|
|
141
|
+
.filter((c) => c.status === 'failed' || c.status === 'timeout')
|
|
142
|
+
.slice(0, MAX_FAILED_COMMANDS);
|
|
143
|
+
// No command-level detail (e.g. evidence failed but commands array is empty
|
|
144
|
+
// or all skipped) — fall back to failureReason alone if present.
|
|
145
|
+
if (failedCommands.length === 0) {
|
|
146
|
+
if (!evidence.failureReason)
|
|
147
|
+
return null;
|
|
148
|
+
return `[Autopilot] Last validation failed: ${truncate(evidence.failureReason, MAX_COMMAND_SUMMARY_LENGTH)}`;
|
|
149
|
+
}
|
|
150
|
+
const lines = ['[Autopilot] Last validation failed:'];
|
|
151
|
+
for (const cmd of failedCommands) {
|
|
152
|
+
// command id + the stderr-bearing summary are the payload.
|
|
153
|
+
const summary = truncate(cmd.summary || '', MAX_COMMAND_SUMMARY_LENGTH);
|
|
154
|
+
lines.push(` - ${cmd.id}: ${summary}`);
|
|
155
|
+
}
|
|
156
|
+
// failureReason is decorative ("required command(s) failed: <id>") — include
|
|
157
|
+
// only when it adds info beyond the command lines, truncated to a small cap.
|
|
158
|
+
if (evidence.failureReason) {
|
|
159
|
+
lines.push(` (reason: ${truncate(evidence.failureReason, 120)})`);
|
|
160
|
+
}
|
|
161
|
+
return lines.join('\n');
|
|
162
|
+
}
|
|
163
|
+
function truncate(s, max) {
|
|
164
|
+
return s.length > max ? s.substring(0, max - 3) + '...' : s;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Re-truncate the instruction so the closing line always survives. Drops the
|
|
168
|
+
* failure block entirely if the prefix (goal+progress) already consumes too
|
|
169
|
+
* much budget; otherwise shrinks the failure block to fit.
|
|
170
|
+
*/
|
|
171
|
+
function truncatePreservingClosing(parts) {
|
|
172
|
+
const closingLine = parts[parts.length - 1];
|
|
173
|
+
// parts[0] = goal, [1] = progress (optional), [2] = failureBlock (optional)
|
|
174
|
+
const failureIdx = parts.length - 2;
|
|
175
|
+
const prefix = parts.slice(0, failureIdx).join('\n');
|
|
176
|
+
const sep = '\n';
|
|
177
|
+
// Budget after prefix + separator + closing line + its separator.
|
|
178
|
+
const budgetForFailure = MAX_INSTRUCTION_LENGTH - prefix.length - (sep.length * 2) - closingLine.length;
|
|
179
|
+
if (budgetForFailure <= 10) {
|
|
180
|
+
// Failure block can't fit meaningfully — drop it entirely; keep goal+progress+closing.
|
|
181
|
+
return `${prefix}${sep}${closingLine}`;
|
|
182
|
+
}
|
|
183
|
+
const truncatedFailure = parts[failureIdx].substring(0, budgetForFailure);
|
|
184
|
+
return `${prefix}${sep}${truncatedFailure}${sep}${closingLine}`;
|
|
75
185
|
}
|
|
76
186
|
//# sourceMappingURL=continuation-engine.js.map
|