@oh-my-matrix/autopilot 3.0.2 → 3.0.3

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 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.0. Tested with `vitest` (787 tests, 91%+ statement coverage). See the project
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.0.0";
6
+ export declare const version = "3.0.3";
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;
@@ -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;AActe,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAsB5D,eAAO,MAAM,EAAE,cAAc,CAAC;AAC9B,eAAO,MAAM,IAAI,8BAA8B,CAAC;AAGhD,eAAO,MAAM,OAAO,UAAU,CAAC;AA4G/B,wBAAgB,aAAa,IAAI,IAAI,CAWpC;AAED,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;AAkHD,+EAA+E;AAC/E,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAMD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CA87BrD"}
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,CAi/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
- exports.version = '3.0.0';
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.0.3';
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);
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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"}
@@ -9,6 +9,14 @@
9
9
  *
10
10
  * JSON mode emits one JSON object per line: { ts, level, msg, ...ctx }
11
11
  * Text mode emits plain string args (backward-compatible with existing behavior).
12
+ *
13
+ * DRIFT REFERENCE: this logger is intentionally byte-equivalent in its
14
+ * safety-relevant parts (emitJson try/catch + fallback shape, splitArgs) to
15
+ * packages/dynamic-workflows/src/logger.ts. If you change the try/catch or
16
+ * fallback here, change the sibling too. The two per-package logger tests
17
+ * (tests/p0-structured-logger.test.ts here, dynamic-workflows/tests/logger.test.ts)
18
+ * are the drift guard until a third consumer justifies extracting createLogger()
19
+ * (boundary doc §5.2). The logger must NEVER throw into a hook.
12
20
  */
13
21
  type LogLevel = 'debug' | 'info' | 'warn' | 'error' | 'silent';
14
22
  /** Log an informational message (gated by AUTOPILOT_LOG_LEVEL >= info) */
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,KAAK,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAqE/D,0EAA0E;AAC1E,wBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI5C;AAED,mEAAmE;AACnE,wBAAgB,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI7C;AAED,mEAAmE;AACnE,wBAAgB,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI9C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAClC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,IAAI,CAQN"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,KAAK,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAqE/D,0EAA0E;AAC1E,wBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI5C;AAED,mEAAmE;AACnE,wBAAgB,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI7C;AAED,mEAAmE;AACnE,wBAAgB,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI9C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAClC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,IAAI,CAQN"}
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ import type { AutopilotState } from './types';
2
+ import type { WorkspaceRecord, RetryEntry, WorkflowConfig } from './types';
3
+ export declare function getCheckpointWriteFailureCount(): number;
4
+ export declare function _resetCheckpointFailureCountForTest(): void;
5
+ export declare function _disableCheckpointingForTest(): void;
6
+ export declare function _enableCheckpointingForTest(): void;
7
+ export declare function _isCheckpointingDisabledForTest(): boolean;
8
+ /**
9
+ * The slim persisted shape. Intentionally a SUBSET of AutopilotState — we do NOT
10
+ * persist permissionAudit (it has its own JSONL via audit-persister), nor status
11
+ * (re-derived on load). Large/ephemeral fields (canaryFired, noUsageWarned) are
12
+ * session-scoped and never persisted.
13
+ */
14
+ export interface AutopilotCheckpoint {
15
+ runId: string;
16
+ sessionKey: string;
17
+ orchestrationState?: AutopilotState['orchestrationState'];
18
+ blockedReason?: AutopilotState['blockedReason'];
19
+ goal?: string;
20
+ goalSnapshot?: string;
21
+ progress?: string;
22
+ progressSnapshot?: string;
23
+ turnAttempts: number;
24
+ totalContinuations: number;
25
+ maxAttemptsPerTurn: number;
26
+ maxTotalContinuations: number;
27
+ needsCrossTurnResume: boolean;
28
+ enabled: boolean;
29
+ totalTokensUsed: number;
30
+ tokenBudget?: number;
31
+ inputTokensUsed?: number;
32
+ outputTokensUsed?: number;
33
+ evidenceStatus?: AutopilotState['evidence'] extends infer E ? (E extends {
34
+ status: infer S;
35
+ } ? S : undefined) : undefined;
36
+ startedAt?: number;
37
+ lastActivityAt?: number;
38
+ /** Forensic only — loaders overwrite with deriveStatus(). Never trusted. */
39
+ status?: AutopilotState['status'];
40
+ workspaceRoot?: string;
41
+ workspacePath?: string;
42
+ /** Full workspace record (Reviewer #1 Finding 2a fix): restored runs MUST retain
43
+ * their permission-containment boundary + checkpoint-root. Persisting flat fields
44
+ * alone left state.workspace undefined after restore, widening the tool-call
45
+ * containment to process.cwd() — a security regression. */
46
+ workspace?: WorkspaceRecord;
47
+ /** Retry entry (Reviewer #1 Finding 2b fix): without this, restored retry_queued
48
+ * runs lose state.retry → the stall interval's retry_due guard
49
+ * (state.retry?.nextRetryAt != null) is never satisfied → the run wedges forever. */
50
+ retry?: RetryEntry;
51
+ /** Workflow config (Reviewer #1 Finding 2c fix): restored runs otherwise skip
52
+ * validation commands, reset stallTimeoutMs, and lose modelRouting. */
53
+ workflow?: WorkflowConfig;
54
+ /** Millisecond epoch of the checkpoint write. */
55
+ savedAt: number;
56
+ }
57
+ /**
58
+ * Build a slim checkpoint from a full AutopilotState. Extracts only the fields
59
+ * needed to resume a run; drops the bulky/ephemeral ones.
60
+ */
61
+ export declare function buildCheckpoint(state: AutopilotState, runId: string, workspaceRoot: string): AutopilotCheckpoint;
62
+ /**
63
+ * Persist a checkpoint + update the sessionKey→runId index. Fail-silent.
64
+ * Serialized per-runId so concurrent setState firings don't interleave writes.
65
+ *
66
+ * Returns a Promise (rather than sync) because the lock chain is async; callers
67
+ * that don't need to await (the common case from setState) fire-and-forget via
68
+ * void. The internal _writeSyncLocked does the actual sync I/O under the lock.
69
+ */
70
+ export declare function saveCheckpoint(state: AutopilotState, runId: string, workspaceRoot: string): void;
71
+ /**
72
+ * Load a checkpoint and rebuild an AutopilotState. ADR-016 BLOCKER #1 fix:
73
+ * `status` is NEVER trusted from the persisted field — always re-derived.
74
+ *
75
+ * Returns null if the checkpoint is missing, corrupt, or fails workspace
76
+ * validation (Review #4 #4: stale-run guard).
77
+ */
78
+ export declare function loadCheckpoint(runId: string, workspaceRoot: string, options?: {
79
+ validateWorkspace?: boolean;
80
+ }): AutopilotState | null;
81
+ /**
82
+ * Delete a checkpoint file (Review #4 #6: called on terminal transitions to
83
+ * prevent done-run file leaks). Fail-silent.
84
+ */
85
+ export declare function deleteCheckpoint(runId: string, workspaceRoot: string): void;
86
+ /**
87
+ * Remove a sessionKey→runId entry from the index. Used when a run terminates
88
+ * so a future session_start for the same sessionKey doesn't resurrect a dead run.
89
+ */
90
+ export declare function clearSessionIndexEntry(workspaceRoot: string, sessionKey: string): void;
91
+ /**
92
+ * Look up runId by sessionKey from the durable index. Returns null if the
93
+ * index is missing, corrupt, or has no entry. This is BLOCKER #2's recovery
94
+ * path: after a process restart, the in-memory sessionKeyToRunId Map is empty,
95
+ * so session_start must consult this file to find the checkpoint.
96
+ */
97
+ export declare function lookupRunIdBySessionKey(workspaceRoot: string, sessionKey: string): string | null;
98
+ /**
99
+ * Scan the checkpoints directory and return all runIds whose checkpoint is
100
+ * resumable (orchestrationState in the active family) and whose workspace still
101
+ * exists. Used by register() at process init to restore ALL resumable runs,
102
+ * not just the one whose session_start fired (Review #3 multi-run gap).
103
+ *
104
+ * Also sweeps terminal checkpoints older than TERMINAL_CHECKPOINT_TTL_MS to
105
+ * reclaim disk (Review #4 #6c).
106
+ */
107
+ export declare function listResumableCheckpoints(workspaceRoot: string): string[];
108
+ /** Test-only: clear the write-lock map between tests. */
109
+ export declare function _clearWriteLocksForTest(): void;
110
+ /**
111
+ * Test-only: deterministically await all in-flight checkpoint writes. Reviewer
112
+ * #2 Finding 5 fix — replaces the fragile "two setImmediate ticks" drain with
113
+ * `Promise.all` over the lock map so tests don't flake if the lock chain grows
114
+ * another async hop.
115
+ */
116
+ export declare function _flushAllWritesForTest(): Promise<void>;
117
+ //# sourceMappingURL=state-persister.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-persister.d.ts","sourceRoot":"","sources":["../../src/state-persister.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,454 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.getCheckpointWriteFailureCount = getCheckpointWriteFailureCount;
37
+ exports._resetCheckpointFailureCountForTest = _resetCheckpointFailureCountForTest;
38
+ exports._disableCheckpointingForTest = _disableCheckpointingForTest;
39
+ exports._enableCheckpointingForTest = _enableCheckpointingForTest;
40
+ exports._isCheckpointingDisabledForTest = _isCheckpointingDisabledForTest;
41
+ exports.buildCheckpoint = buildCheckpoint;
42
+ exports.saveCheckpoint = saveCheckpoint;
43
+ exports.loadCheckpoint = loadCheckpoint;
44
+ exports.deleteCheckpoint = deleteCheckpoint;
45
+ exports.clearSessionIndexEntry = clearSessionIndexEntry;
46
+ exports.lookupRunIdBySessionKey = lookupRunIdBySessionKey;
47
+ exports.listResumableCheckpoints = listResumableCheckpoints;
48
+ exports._clearWriteLocksForTest = _clearWriteLocksForTest;
49
+ exports._flushAllWritesForTest = _flushAllWritesForTest;
50
+ /**
51
+ * Crash-recovery checkpoint persistence for autopilot run state.
52
+ *
53
+ * Writes a SLIM pointer of AutopilotState to
54
+ * {workspaceRoot}/.autopilot/checkpoints/{runId}.json
55
+ * plus a sessionKey→runId index at
56
+ * {workspaceRoot}/.autopilot/checkpoints/session-index.json
57
+ *
58
+ * Design (mirrors @oh-my-matrix/permission-policy/src/audit-persister.ts):
59
+ * - synchronous file I/O (plugin runs in main process; simplicity > async)
60
+ * - fail-silent (never throws; persistence is best-effort recovery, not authoritative)
61
+ * - no external dependencies
62
+ *
63
+ * ADR-016 invariant (status sole-writer): `status` is NEVER trusted from disk.
64
+ * On load, status is re-derived via deriveStatus(). We persist a `status` field
65
+ * only as a forensic hint; loaders MUST overwrite it with the derived value.
66
+ * This prevents the H1 false-completion class from recurring via stale checkpoints.
67
+ *
68
+ * Review #4 BLOCKERs addressed here:
69
+ * #1 (status re-derive) — loadCheckpoint re-derives via deriveStatus
70
+ * #2 (runId recovery) — session-index.json maps sessionKey→runId durably
71
+ * #3 (write concurrency) — per-runId Promise lock serializes writes
72
+ * #5 (atomic same-dir write) — tmp written next to target, not os.tmpdir()
73
+ * #6 (done-run leak) — deleteCheckpoint called on terminal transitions
74
+ */
75
+ const fs = __importStar(require("fs"));
76
+ const path = __importStar(require("path"));
77
+ const orchestrator_1 = require("./orchestrator");
78
+ const CHECKPOINT_SUBDIR = path.join('.autopilot', 'checkpoints');
79
+ const SESSION_INDEX_FILE = 'session-index.json';
80
+ const TERMINAL_CHECKPOINT_TTL_MS = 24 * 60 * 60 * 1000; // sweep terminal checkpoints older than 24h
81
+ let _writeFailureCount = 0;
82
+ function getCheckpointWriteFailureCount() { return _writeFailureCount; }
83
+ function _resetCheckpointFailureCountForTest() { _writeFailureCount = 0; }
84
+ /**
85
+ * Test-only kill switch. When true, saveCheckpoint/deleteCheckpoint/listResumableCheckpoints
86
+ * become no-ops so the existing 50+ test suite (which runs in the repo root and would
87
+ * otherwise leak checkpoint files across tests, polluting stateByRun via the
88
+ * register()-time restore) stays isolated. Production never sets this. Flipped to
89
+ * true by index.ts _resetForTest(); flipped back false by _enableCheckpointingForTest()
90
+ * in tests that exercise persistence (state-persister.test.ts).
91
+ */
92
+ let _checkpointingDisabledForTest = false;
93
+ function _disableCheckpointingForTest() { _checkpointingDisabledForTest = true; }
94
+ function _enableCheckpointingForTest() { _checkpointingDisabledForTest = false; }
95
+ function _isCheckpointingDisabledForTest() { return _checkpointingDisabledForTest; }
96
+ /**
97
+ * Resolve the checkpoint directory for a workspace root, following symlinks
98
+ * (S12: same canonical-path discipline as audit-persister).
99
+ */
100
+ function getCheckpointDir(workspaceRoot) {
101
+ let resolved = workspaceRoot;
102
+ try {
103
+ resolved = fs.realpathSync(workspaceRoot);
104
+ }
105
+ catch {
106
+ // Path may not exist yet (mkdirSync creates it downstream).
107
+ }
108
+ return path.join(resolved, CHECKPOINT_SUBDIR);
109
+ }
110
+ function getCheckpointPath(workspaceRoot, runId) {
111
+ return path.join(getCheckpointDir(workspaceRoot), `${runId}.json`);
112
+ }
113
+ function getSessionIndexPath(workspaceRoot) {
114
+ return path.join(getCheckpointDir(workspaceRoot), SESSION_INDEX_FILE);
115
+ }
116
+ /**
117
+ * Build a slim checkpoint from a full AutopilotState. Extracts only the fields
118
+ * needed to resume a run; drops the bulky/ephemeral ones.
119
+ */
120
+ function buildCheckpoint(state, runId, workspaceRoot) {
121
+ return {
122
+ runId,
123
+ sessionKey: state.sessionKey,
124
+ orchestrationState: state.orchestrationState,
125
+ blockedReason: state.blockedReason,
126
+ goal: state.goal,
127
+ goalSnapshot: state.goalSnapshot,
128
+ progress: state.progress,
129
+ progressSnapshot: state.progressSnapshot,
130
+ turnAttempts: state.turnAttempts,
131
+ totalContinuations: state.totalContinuations,
132
+ maxAttemptsPerTurn: state.maxAttemptsPerTurn,
133
+ maxTotalContinuations: state.maxTotalContinuations,
134
+ needsCrossTurnResume: state.needsCrossTurnResume,
135
+ enabled: state.enabled,
136
+ totalTokensUsed: state.totalTokensUsed,
137
+ tokenBudget: state.tokenBudget,
138
+ inputTokensUsed: state.inputTokensUsed,
139
+ outputTokensUsed: state.outputTokensUsed,
140
+ evidenceStatus: state.evidence?.status,
141
+ startedAt: state.startedAt,
142
+ lastActivityAt: state.lastActivityAt,
143
+ // Forensic hint only — loadCheckpoint overwrites this with deriveStatus().
144
+ status: state.status,
145
+ workspaceRoot,
146
+ workspacePath: state.workspace?.path,
147
+ workspace: state.workspace,
148
+ retry: state.retry,
149
+ workflow: state.workflow,
150
+ savedAt: Date.now(),
151
+ };
152
+ }
153
+ // ─── Per-runId write lock (Review #4 #3a) ──────────────────────────────
154
+ // Serializes concurrent saveCheckpoint calls for the same runId across the
155
+ // 60s stall timer context and async hook handler contexts. A bare Map<runId,
156
+ // Promise> chain — each write awaits the previous one before starting.
157
+ const writeLocks = new Map();
158
+ /**
159
+ * Atomic write: tmp file in the SAME directory as the target (NOT os.tmpdir(),
160
+ * which can be on a different volume on Windows → EXDEV). renameSync is atomic
161
+ * on POSIX same-filesystem; Node ≥10 overwrites the target.
162
+ */
163
+ function atomicWriteFileSync(targetPath, data) {
164
+ const dir = path.dirname(targetPath);
165
+ fs.mkdirSync(dir, { recursive: true });
166
+ // PID + random suffix guards against same-dir tmp collisions under concurrency.
167
+ const tmpPath = `${targetPath}.tmp.${process.pid}.${Math.random().toString(36).slice(2)}`;
168
+ fs.writeFileSync(tmpPath, data, 'utf-8');
169
+ fs.renameSync(tmpPath, targetPath);
170
+ }
171
+ /**
172
+ * Persist a checkpoint + update the sessionKey→runId index. Fail-silent.
173
+ * Serialized per-runId so concurrent setState firings don't interleave writes.
174
+ *
175
+ * Returns a Promise (rather than sync) because the lock chain is async; callers
176
+ * that don't need to await (the common case from setState) fire-and-forget via
177
+ * void. The internal _writeSyncLocked does the actual sync I/O under the lock.
178
+ */
179
+ function saveCheckpoint(state, runId, workspaceRoot) {
180
+ if (_checkpointingDisabledForTest)
181
+ return; // test isolation: don't touch disk
182
+ const checkpoint = buildCheckpoint(state, runId, workspaceRoot);
183
+ const targetPath = getCheckpointPath(workspaceRoot, runId);
184
+ // Chain onto any in-flight write for this runId.
185
+ const prev = writeLocks.get(runId) ?? Promise.resolve();
186
+ const next = prev.then(() => {
187
+ try {
188
+ atomicWriteFileSync(targetPath, JSON.stringify(checkpoint));
189
+ updateSessionIndex(workspaceRoot, checkpoint.sessionKey, runId);
190
+ }
191
+ catch (e) {
192
+ _writeFailureCount++;
193
+ try {
194
+ console.error('[autopilot] checkpoint save failed:', e);
195
+ }
196
+ catch { /* noop */ }
197
+ }
198
+ }).catch(() => {
199
+ // Lock chain errors are already logged inside _writeSyncLocked; swallow to
200
+ // keep the chain alive for the next write.
201
+ });
202
+ writeLocks.set(runId, next);
203
+ // Auto-clean the lock entry once settled so the Map doesn't grow unbounded.
204
+ void next.then(() => {
205
+ if (writeLocks.get(runId) === next)
206
+ writeLocks.delete(runId);
207
+ });
208
+ }
209
+ /** Update the sessionKey→runId index atomically. Fail-silent. */
210
+ function updateSessionIndex(workspaceRoot, sessionKey, runId) {
211
+ const indexPath = getSessionIndexPath(workspaceRoot);
212
+ let index = {};
213
+ try {
214
+ if (fs.existsSync(indexPath)) {
215
+ index = JSON.parse(fs.readFileSync(indexPath, 'utf-8'));
216
+ }
217
+ }
218
+ catch {
219
+ // Corrupt index — start fresh rather than crash.
220
+ index = {};
221
+ }
222
+ if (index[sessionKey] === runId)
223
+ return; // no-op if unchanged
224
+ index[sessionKey] = runId;
225
+ try {
226
+ atomicWriteFileSync(indexPath, JSON.stringify(index));
227
+ }
228
+ catch (e) {
229
+ _writeFailureCount++;
230
+ try {
231
+ console.error('[autopilot] session-index update failed:', e);
232
+ }
233
+ catch { /* noop */ }
234
+ }
235
+ }
236
+ /**
237
+ * Load a checkpoint and rebuild an AutopilotState. ADR-016 BLOCKER #1 fix:
238
+ * `status` is NEVER trusted from the persisted field — always re-derived.
239
+ *
240
+ * Returns null if the checkpoint is missing, corrupt, or fails workspace
241
+ * validation (Review #4 #4: stale-run guard).
242
+ */
243
+ function loadCheckpoint(runId, workspaceRoot, options) {
244
+ const cpPath = getCheckpointPath(workspaceRoot, runId);
245
+ let cp;
246
+ try {
247
+ const raw = fs.readFileSync(cpPath, 'utf-8');
248
+ cp = JSON.parse(raw);
249
+ }
250
+ catch {
251
+ return null; // missing or corrupt — nothing to resume
252
+ }
253
+ // Review #4 #4: stale-run guard. If the workspace path recorded at checkpoint
254
+ // time no longer exists (deleted between crash and restart), refuse to resume
255
+ // rather than resurrecting a run against a vanished workspace.
256
+ if (options?.validateWorkspace !== false && cp.workspacePath) {
257
+ try {
258
+ const stat = fs.statSync(cp.workspacePath);
259
+ if (!stat.isDirectory())
260
+ return null;
261
+ }
262
+ catch {
263
+ return null;
264
+ }
265
+ }
266
+ // Rebuild a minimal AutopilotState. Many fields have safe defaults; the
267
+ // load-bearing ones (orchestrationState, blockedReason, goal, counters,
268
+ // workspace, retry, workflow) come from the checkpoint.
269
+ const partial = {
270
+ sessionKey: cp.sessionKey,
271
+ runId: cp.runId,
272
+ orchestrationState: cp.orchestrationState,
273
+ blockedReason: cp.blockedReason,
274
+ goal: cp.goal,
275
+ goalSnapshot: cp.goalSnapshot,
276
+ progress: cp.progress,
277
+ progressSnapshot: cp.progressSnapshot,
278
+ turnAttempts: cp.turnAttempts,
279
+ totalContinuations: cp.totalContinuations,
280
+ maxAttemptsPerTurn: cp.maxAttemptsPerTurn,
281
+ maxTotalContinuations: cp.maxTotalContinuations,
282
+ maxConcurrentAutopilot: 5, // default; per-run override not persisted
283
+ needsCrossTurnResume: cp.needsCrossTurnResume,
284
+ enabled: cp.enabled,
285
+ totalTokensUsed: cp.totalTokensUsed,
286
+ tokenBudget: cp.tokenBudget,
287
+ inputTokensUsed: cp.inputTokensUsed,
288
+ outputTokensUsed: cp.outputTokensUsed,
289
+ startedAt: cp.startedAt,
290
+ lastActivityAt: cp.lastActivityAt,
291
+ degraded: true, // mark resumed runs — operators can tell a restored run
292
+ toolErrorCount: 0,
293
+ toolErrorThreshold: 5,
294
+ // Reviewer #1 Finding 2a/2b/2c fixes: restore the three load-bearing
295
+ // objects the original "slim pointer" design dropped. Without workspace,
296
+ // the permission containment boundary widens to process.cwd(); without
297
+ // retry, retry_queued runs wedge; without workflow, validation is skipped.
298
+ workspace: cp.workspace,
299
+ retry: cp.retry,
300
+ workflow: cp.workflow,
301
+ };
302
+ // BLOCKER #1: re-derive status. Never trust cp.status.
303
+ const derivedStatus = (0, orchestrator_1.deriveStatus)(partial);
304
+ return { ...partial, status: derivedStatus };
305
+ }
306
+ /**
307
+ * Delete a checkpoint file (Review #4 #6: called on terminal transitions to
308
+ * prevent done-run file leaks). Fail-silent.
309
+ */
310
+ function deleteCheckpoint(runId, workspaceRoot) {
311
+ if (_checkpointingDisabledForTest)
312
+ return; // test isolation: don't touch disk
313
+ const cpPath = getCheckpointPath(workspaceRoot, runId);
314
+ try {
315
+ if (fs.existsSync(cpPath))
316
+ fs.unlinkSync(cpPath);
317
+ }
318
+ catch (e) {
319
+ try {
320
+ console.error('[autopilot] checkpoint delete failed:', e);
321
+ }
322
+ catch { /* noop */ }
323
+ }
324
+ // Best-effort index cleanup — leave stale sessionKey→runId entries; they're
325
+ // cheap and the index is rewritten on every save. A full GC pass would risk
326
+ // racing an in-flight save for a different runId.
327
+ }
328
+ /**
329
+ * Remove a sessionKey→runId entry from the index. Used when a run terminates
330
+ * so a future session_start for the same sessionKey doesn't resurrect a dead run.
331
+ */
332
+ function clearSessionIndexEntry(workspaceRoot, sessionKey) {
333
+ const indexPath = getSessionIndexPath(workspaceRoot);
334
+ try {
335
+ if (!fs.existsSync(indexPath))
336
+ return;
337
+ const index = JSON.parse(fs.readFileSync(indexPath, 'utf-8'));
338
+ if (!(sessionKey in index))
339
+ return;
340
+ delete index[sessionKey];
341
+ atomicWriteFileSync(indexPath, JSON.stringify(index));
342
+ }
343
+ catch {
344
+ // fail-silent
345
+ }
346
+ }
347
+ /**
348
+ * Look up runId by sessionKey from the durable index. Returns null if the
349
+ * index is missing, corrupt, or has no entry. This is BLOCKER #2's recovery
350
+ * path: after a process restart, the in-memory sessionKeyToRunId Map is empty,
351
+ * so session_start must consult this file to find the checkpoint.
352
+ */
353
+ function lookupRunIdBySessionKey(workspaceRoot, sessionKey) {
354
+ const indexPath = getSessionIndexPath(workspaceRoot);
355
+ try {
356
+ if (!fs.existsSync(indexPath))
357
+ return null;
358
+ const index = JSON.parse(fs.readFileSync(indexPath, 'utf-8'));
359
+ return index[sessionKey] ?? null;
360
+ }
361
+ catch {
362
+ return null;
363
+ }
364
+ }
365
+ /**
366
+ * Scan the checkpoints directory and return all runIds whose checkpoint is
367
+ * resumable (orchestrationState in the active family) and whose workspace still
368
+ * exists. Used by register() at process init to restore ALL resumable runs,
369
+ * not just the one whose session_start fired (Review #3 multi-run gap).
370
+ *
371
+ * Also sweeps terminal checkpoints older than TERMINAL_CHECKPOINT_TTL_MS to
372
+ * reclaim disk (Review #4 #6c).
373
+ */
374
+ function listResumableCheckpoints(workspaceRoot) {
375
+ if (_checkpointingDisabledForTest)
376
+ return []; // test isolation: don't read disk
377
+ const dir = getCheckpointDir(workspaceRoot);
378
+ if (!fs.existsSync(dir))
379
+ return [];
380
+ let files;
381
+ try {
382
+ files = fs.readdirSync(dir).filter(f => f.endsWith('.json') && f !== SESSION_INDEX_FILE);
383
+ }
384
+ catch {
385
+ return [];
386
+ }
387
+ const resumable = [];
388
+ const now = Date.now();
389
+ for (const f of files) {
390
+ const runId = f.replace(/\.json$/, '');
391
+ const fullPath = path.join(dir, f);
392
+ try {
393
+ const cp = JSON.parse(fs.readFileSync(fullPath, 'utf-8'));
394
+ const orch = cp.orchestrationState;
395
+ const isResumable = orch === 'running' || orch === 'claimed' || orch === 'retry_queued' || orch === 'released' || orch === 'unclaimed';
396
+ const isTerminal = orch === 'done' || (orch === 'blocked' && cp.blockedReason && !isResumableBlockedReason(cp.blockedReason));
397
+ if (isTerminal) {
398
+ // Review #4 #6c: sweep stale terminal checkpoints.
399
+ if (cp.savedAt && (now - cp.savedAt) > TERMINAL_CHECKPOINT_TTL_MS) {
400
+ try {
401
+ fs.unlinkSync(fullPath);
402
+ }
403
+ catch { /* fail-silent */ }
404
+ }
405
+ continue;
406
+ }
407
+ if (isResumable) {
408
+ // Validate workspace still exists before offering to resume.
409
+ if (cp.workspacePath) {
410
+ try {
411
+ const stat = fs.statSync(cp.workspacePath);
412
+ if (!stat.isDirectory())
413
+ continue;
414
+ }
415
+ catch {
416
+ continue; // workspace gone — skip
417
+ }
418
+ }
419
+ resumable.push(runId);
420
+ }
421
+ }
422
+ catch {
423
+ // corrupt checkpoint — skip
424
+ }
425
+ }
426
+ return resumable;
427
+ }
428
+ // Mirror of RESUMABLE_BLOCKED_REASONS from orchestrator.ts (kept local to avoid
429
+ // a circular import: orchestrator.ts imports nothing from this module, and we
430
+ // don't want to widen its dep surface). If the set in orchestrator.ts changes,
431
+ // update this too. (Documented linkage, not duplication-for-its-own-sake.)
432
+ const RESUMABLE_BLOCKED_LOCAL = new Set([
433
+ 'stalled',
434
+ 'validation_failed',
435
+ 'evidence_missing',
436
+ 'injection_rejected',
437
+ ]);
438
+ function isResumableBlockedReason(reason) {
439
+ return RESUMABLE_BLOCKED_LOCAL.has(reason);
440
+ }
441
+ /** Test-only: clear the write-lock map between tests. */
442
+ function _clearWriteLocksForTest() {
443
+ writeLocks.clear();
444
+ }
445
+ /**
446
+ * Test-only: deterministically await all in-flight checkpoint writes. Reviewer
447
+ * #2 Finding 5 fix — replaces the fragile "two setImmediate ticks" drain with
448
+ * `Promise.all` over the lock map so tests don't flake if the lock chain grows
449
+ * another async hop.
450
+ */
451
+ async function _flushAllWritesForTest() {
452
+ await Promise.all([...writeLocks.values()]);
453
+ }
454
+ //# sourceMappingURL=state-persister.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-persister.js","sourceRoot":"","sources":["../../src/state-persister.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  "id": "autopilot",
3
3
  "name": "Autopilot Continuous Mode",
4
4
  "description": "OpenClaw-native continuous execution for long-running tasks",
5
- "version": "3.0.2",
5
+ "version": "3.0.3",
6
6
  "main": "dist/index.js",
7
7
  "activation": {
8
8
  "onStartup": true
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oh-my-matrix/autopilot",
3
- "version": "3.0.2",
3
+ "version": "3.0.3",
4
4
  "description": "Autopilot: OpenClaw-native continuous execution for long-running tasks",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -44,22 +44,23 @@
44
44
  "llm_output"
45
45
  ]
46
46
  },
47
+ "scripts": {
48
+ "build": "tsc",
49
+ "test": "vitest run",
50
+ "pack": "pnpm pack",
51
+ "typecheck": "tsc --noEmit",
52
+ "prepublishOnly": "pnpm run build"
53
+ },
47
54
  "peerDependencies": {
48
- "@oh-my-matrix/permission-policy": "^0.1.2",
55
+ "@oh-my-matrix/permission-policy": "^0.1.3",
49
56
  "openclaw": ">=2026.5.28 <2027"
50
57
  },
51
58
  "devDependencies": {
59
+ "@oh-my-matrix/permission-policy": "workspace:*",
52
60
  "@types/node": "^22.0.0",
53
61
  "@vitest/coverage-v8": "^3.2.6",
54
62
  "openclaw": "2026.5.28",
55
63
  "typescript": "^5.0.0",
56
- "vitest": "^3.0.0",
57
- "@oh-my-matrix/permission-policy": "0.1.2"
58
- },
59
- "scripts": {
60
- "build": "tsc",
61
- "test": "vitest run",
62
- "pack": "pnpm pack",
63
- "typecheck": "tsc --noEmit"
64
+ "vitest": "^3.0.0"
64
65
  }
65
- }
66
+ }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 oh-my-matrix contributors
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.