teamshare-bridge 0.22.13 → 0.22.15

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.
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.STOPPED_MARKER_PATH = void 0;
4
+ exports.writeStoppedMarker = writeStoppedMarker;
5
+ exports.readStoppedMarker = readStoppedMarker;
6
+ exports.clearStoppedMarker = clearStoppedMarker;
7
+ /**
8
+ * Manual-stop marker for the whole bridge (2026-10).
9
+ *
10
+ * `teamshare-bridge stop` means "everything down until a human starts it
11
+ * again": the stopped daemon, the watchdog supervisor, every agent session.
12
+ * Before this file, `stop` killed only verified daemon pids and wrote
13
+ * nothing, so NOTHING distinguished "human asked it down" from "crashed" —
14
+ * and the supervisor (30 s tick), the logon task, and the upgrade helper's
15
+ * trailing `startDaemon` each revived the machine on their own.
16
+ *
17
+ * The marker is the single durable "stay down" signal:
18
+ * - written by `stop` (service.ts `stopDaemon`), cleared ONLY by explicit
19
+ * `start` / `restart` — never by boot, status, crash, or upgrade;
20
+ * - honored by the supervisor tick (no starts, no sweeps) and by the
21
+ * upgrade helper's trailing `startDaemon` (installs, but does not
22
+ * relaunch a stopped machine);
23
+ * - the OS autostart registration is deliberately LEFT installed: at the
24
+ * next logon the supervisor boots, sees the marker, and exits instead of
25
+ * reviving. `autostart off` remains the separate "never run here" opt-out.
26
+ *
27
+ * Deliberately tiny + dependency-free (same reasons as upgrade-marker.ts):
28
+ * path-injectable for the unit tests.
29
+ */
30
+ const node_fs_1 = require("node:fs");
31
+ const node_os_1 = require("node:os");
32
+ const node_path_1 = require("node:path");
33
+ exports.STOPPED_MARKER_PATH = (0, node_path_1.join)((0, node_os_1.homedir)(), '.teamshare', 'daemon.stopped');
34
+ function writeStoppedMarker(marker, path = exports.STOPPED_MARKER_PATH) {
35
+ try {
36
+ (0, node_fs_1.mkdirSync)((0, node_path_1.dirname)(path), { recursive: true });
37
+ (0, node_fs_1.writeFileSync)(path, JSON.stringify(marker, null, 2), 'utf8');
38
+ }
39
+ catch {
40
+ /* best-effort: without the marker a stop degrades to the old behavior */
41
+ }
42
+ }
43
+ function readStoppedMarker(path = exports.STOPPED_MARKER_PATH) {
44
+ try {
45
+ if (!(0, node_fs_1.existsSync)(path))
46
+ return null;
47
+ const parsed = JSON.parse((0, node_fs_1.readFileSync)(path, 'utf8'));
48
+ return parsed && typeof parsed.stoppedAt === 'string' ? parsed : null;
49
+ }
50
+ catch {
51
+ return null;
52
+ }
53
+ }
54
+ function clearStoppedMarker(path = exports.STOPPED_MARKER_PATH) {
55
+ try {
56
+ (0, node_fs_1.rmSync)(path, { force: true });
57
+ }
58
+ catch {
59
+ /* best-effort */
60
+ }
61
+ }
62
+ //# sourceMappingURL=stopped-marker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stopped-marker.js","sourceRoot":"","sources":["../../src/bridge/stopped-marker.ts"],"names":[],"mappings":";;;AAkCA,gDAUC;AAED,8CAQC;AAED,gDAMC;AA9DD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qCAAqF;AACrF,qCAAkC;AAClC,yCAA0C;AAE7B,QAAA,mBAAmB,GAAG,IAAA,gBAAI,EAAC,IAAA,iBAAO,GAAE,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAOnF,SAAgB,kBAAkB,CAChC,MAAqB,EACrB,IAAI,GAAG,2BAAmB;IAE1B,IAAI,CAAC;QACH,IAAA,mBAAS,EAAC,IAAA,mBAAO,EAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,IAAA,uBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;IAC3E,CAAC;AACH,CAAC;AAED,SAAgB,iBAAiB,CAAC,IAAI,GAAG,2BAAmB;IAC1D,IAAI,CAAC;QACH,IAAI,CAAC,IAAA,oBAAU,EAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAkB,CAAC;QACvE,OAAO,MAAM,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAgB,kBAAkB,CAAC,IAAI,GAAG,2BAAmB;IAC3D,IAAI,CAAC;QACH,IAAA,gBAAM,EAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,iBAAiB;IACnB,CAAC;AACH,CAAC"}
@@ -66,6 +66,8 @@ const ensure_excludes_1 = require("../../lib/git/ensure-excludes");
66
66
  const sync_1 = require("../../lib/context/sync");
67
67
  const utils_2 = require("../utils");
68
68
  const bridge_notice_1 = require("../../lib/bridge-notice");
69
+ const mirror_lease_1 = require("../../lib/workspace/mirror-lease");
70
+ const diagnostics_1 = require("../../lib/diagnostics");
69
71
  const DONE_STATUSES_RUN = new Set(['in_review', 'resolved', 'closed']);
70
72
  async function cmdRun(flags) {
71
73
  const agentId = (0, utils_1.need)(flags, 'agent');
@@ -94,7 +96,17 @@ async function cmdRun(flags) {
94
96
  const lock = await (0, lock_1.acquireLock)(agentId, 'task', {
95
97
  taskId: taskIdFlag,
96
98
  }, {
97
- onWaiting: (busy) => console.log(`[lock] agent ${agentId} is busy (pid ${busy.pid}, since ${busy.startedAt}, ${busy.kind}) - waiting for it to finish...`),
99
+ onWaiting: (busy) => {
100
+ console.log(`[lock] agent ${agentId} is busy (pid ${busy.pid}, since ${busy.startedAt}, ${busy.kind}) - waiting for it to finish...`);
101
+ // LEASE HEARTBEAT (2026-10): this session was dispatched into a mirror
102
+ // but has not started yet. Without this the lease reads "never handed to
103
+ // anyone, ageing since creation" for the whole wait - indistinguishable
104
+ // from an orphan - and a sweep reaps a tree whose session is already on
105
+ // its way. Touching `lastActivityAt` keeps the reclaim clock moving with
106
+ // the waiter. No-op when there is no task yet or no lease.
107
+ if (taskIdFlag)
108
+ (0, mirror_lease_1.touchMirrorLease)(taskIdFlag);
109
+ },
98
110
  onDuplicate: (busy) => console.log(`[lock] task ${taskIdFlag} is ALREADY running as agent ${agentId} ` +
99
111
  `(pid ${busy.pid}, since ${busy.startedAt}) - this is a duplicate dispatch, exiting instead of waiting`),
100
112
  });
@@ -201,6 +213,70 @@ async function cmdRun(flags) {
201
213
  exitCode = 1;
202
214
  return;
203
215
  }
216
+ // DEAD-MIRROR RECOVERY (2026-10): the daemon built this tree, but this
217
+ // process may have waited on the agent lock long enough for it to be
218
+ // swept, cleaned or deleted meanwhile. Rebuild it ONCE here - a session
219
+ // must never start in a corpse and "degrade" into the linked folder (that
220
+ // is how a run wrote straight into the human's branch with no mirror, no
221
+ // branch and no PR). The rebuild lands on the task's own branch when one
222
+ // exists, so a retry continues previous commits.
223
+ let mirrorQuarantined;
224
+ if ((0, mirror_1.looksLikeMirrorPath)(cwd) && !(0, mirror_1.isMirrorDir)(cwd)) {
225
+ const taskBranch = (0, git_pipeline_1.desiredBranch)({
226
+ taskId: task.id,
227
+ projectSlug: task.project?.name,
228
+ taskTitle: task.title,
229
+ });
230
+ const recovery = await (0, mirror_1.ensureLiveMirror)({
231
+ cwd,
232
+ seed: task.id,
233
+ agentId,
234
+ projectId: task.projectId ?? null,
235
+ taskId: task.id,
236
+ baseBranch: taskBranch,
237
+ deliverableBranch: taskBranch,
238
+ log,
239
+ });
240
+ if (recovery.ok) {
241
+ mirrorQuarantined = recovery.quarantined;
242
+ }
243
+ else {
244
+ // Rebuild failed: abort, don't degrade. Report to the hub (which owns
245
+ // the auto-run failure accounting) and say so where the human looks.
246
+ // This runs before the claim, so the task is untouched and retryable.
247
+ const reason = `Isolation unavailable: ${recovery.detail ?? 'the isolation mirror could not be rebuilt'}`;
248
+ log(`[isolation] FAILED - ${reason}. Refusing to run in the linked folder: an agent must never write to the user's branch.`, 'stderr');
249
+ try {
250
+ await api.reportRunFailed(taskId, { reason, harness });
251
+ }
252
+ catch (err) {
253
+ log(`[isolation] reportRunFailed failed: ${(0, config_1.msg)(err)}`, 'stderr');
254
+ }
255
+ try {
256
+ await (0, bridge_notice_1.postBridgeNotice)({
257
+ api,
258
+ noticeKey: (0, bridge_notice_1.oneShotKey)('isolation-failed', agentId, task.projectId ?? '', taskId, (recovery.detail ?? '').slice(0, 60)),
259
+ scope: { taskId },
260
+ body: `**I could not start this task.** I could not create an isolated working tree for it (${recovery.detail ?? 'unknown error'}), and I will not fall back to your linked folder — an agent must never write to your working branch.\n\n` +
261
+ `The task has been left untouched. Fix the problem above and re-run it.`,
262
+ log: (m) => log(m),
263
+ });
264
+ }
265
+ catch (err) {
266
+ log(`[isolation] isolation-failure comment failed: ${(0, config_1.msg)(err)}`, 'stderr');
267
+ }
268
+ (0, diagnostics_1.reportDiagnosticSafe)({
269
+ kind: 'wake_failure',
270
+ severity: 'error',
271
+ agentId,
272
+ errorCode: 'ISOLATION_UNAVAILABLE',
273
+ message: `run for task ${taskId} could not get an isolated working tree (${recovery.detail ?? 'rebuild failed'}) - the run was FAILED rather than degraded into the linked folder`,
274
+ includeDoctor: true,
275
+ });
276
+ exitCode = 1;
277
+ return;
278
+ }
279
+ }
204
280
  // IMP-950: announce occupancy for arbitration visibility.
205
281
  presenceCwd = cwd;
206
282
  (0, presence_1.registerPresence)(cwd, { agentId, kind: 'task', taskId });
@@ -603,6 +679,11 @@ async function cmdRun(flags) {
603
679
  const stashSummary = (0, git_runner_1.formatStashSummary)(stashResults, orphanStashes);
604
680
  if (stashSummary)
605
681
  summary += `\n\n${stashSummary}`;
682
+ if (mirrorQuarantined) {
683
+ summary +=
684
+ `\n\n**Isolation note:** the dispatched mirror was gone when this run started, so it was rebuilt. ` +
685
+ `Unrecognised remains were parked at \`${mirrorQuarantined}\` (nothing was deleted) - delete it by hand once you have confirmed nothing in it is needed.`;
686
+ }
606
687
  if (!noReport)
607
688
  await (0, brief_1.postClosingComment)(api, taskId, summary);
608
689
  // Deterministic mention close (2026-09): a TASK COMMENT mention runs as a
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /** Lock age past which a sessionless busy lock is reaped (default 30 min). */
2
+ export declare const STALE_BUSY_REAP_AFTER_MS: number;
3
+ /** How often the daemon runs the reaper per agent. */
4
+ export declare const STALE_BUSY_REAP_INTERVAL_MS: number;
5
+ export type StaleBusyOutcome = 'idle' | 'kept-live-session' | 'kept-young' | 'kept-not-busy' | 'kept-node-or-unknown' | 'cleared';
6
+ export interface StaleBusyDeps {
7
+ agentId: string;
8
+ hasLiveSession: () => boolean;
9
+ pushState: () => void;
10
+ log?: (message: string) => void;
11
+ nowMs?: () => number;
12
+ reapAfterMs?: number;
13
+ readLockFn?: (agentId: string) => {
14
+ pid: number;
15
+ startedAt: string;
16
+ } | null;
17
+ busyFn?: (agentId: string) => boolean;
18
+ clearLockFn?: (agentId: string) => void;
19
+ /** Image name for a pid, or null when unlistable/unknown. */
20
+ imageForPid?: (pid: number) => string | null;
21
+ }
22
+ export declare function reapStaleBusyLock(deps: StaleBusyDeps): StaleBusyOutcome;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.STALE_BUSY_REAP_INTERVAL_MS = exports.STALE_BUSY_REAP_AFTER_MS = void 0;
4
+ exports.reapStaleBusyLock = reapStaleBusyLock;
5
+ /**
6
+ * Stale-busy reaper (2026-10).
7
+ *
8
+ * THE BUG THIS EXISTS FOR
9
+ * -----------------------
10
+ * The console showed `Busy · task session since 42m ago` forever although no
11
+ * session was running. Chain, every link individually "correct":
12
+ *
13
+ * 1. A run died without its `finally` (`taskkill /F`, reboot, kill between
14
+ * harness exit and cleanup), leaving `~/.teamshare/locks/<agentId>.lock`.
15
+ * 2. The lock's pid number was later recycled by a FOREIGN process, so
16
+ * `pidAlive()` reads true and `isLockBusy()` asserts busy with the
17
+ * ORIGINAL `startedAt` (hence `since` frozen 42m back).
18
+ * 3. The daemon's 60 s `pushState` re-pushes `busy:true`, which refreshes
19
+ * the hub's 5-min TTL — so `GET /agents/:id/state` never goes idle.
20
+ * 4. Every hub self-heal (working-sync, orphan sweep) defers to exactly
21
+ * that signal while the daemon heartbeats. Three sweeps, all correctly
22
+ * deciding "the agent says it's working" — off one stale file.
23
+ *
24
+ * REAP RULE (all must hold; otherwise hands off):
25
+ * - the lock file parses with a numeric pid;
26
+ * - the agent has NO live relay session (a live session means real work —
27
+ * including a daemon restart mid-run, where the relay is empty but the
28
+ * CLI child survived; the image check below would still save us, but the
29
+ * session check short-circuits first);
30
+ * - the lock is older than STALE_BUSY_REAP_AFTER_MS (default 30 min; long
31
+ * builds always have a live session, so they never qualify);
32
+ * - busy is actually asserted (`isLockBusy` — a dead pid already reads
33
+ * idle and needs no reaping);
34
+ * - the holder pid resolves to a NON-node image (recycled by a foreign
35
+ * process). `node`/`node.exe`, an empty name, or an unlistable table
36
+ * means "could be ours" — hands off, fail-closed.
37
+ *
38
+ * Clearing removes only OUR lock FILE and pushes state; it NEVER kills by
39
+ * pid (see the kill-identity guards — a recycled pid must never be
40
+ * signalled). The next `pushState` then reports idle and the hub TTL +
41
+ * console clear on their own.
42
+ */
43
+ const lock_1 = require("./lock");
44
+ const process_tree_1 = require("./process-tree");
45
+ /** Lock age past which a sessionless busy lock is reaped (default 30 min). */
46
+ exports.STALE_BUSY_REAP_AFTER_MS = Number(process.env.TEAMSHARE_STALE_BUSY_MS) || 30 * 60 * 1000;
47
+ /** How often the daemon runs the reaper per agent. */
48
+ exports.STALE_BUSY_REAP_INTERVAL_MS = 5 * 60 * 1000;
49
+ function defaultImageForPid(pid) {
50
+ try {
51
+ const tree = (0, process_tree_1.listProcessTree)();
52
+ if (!tree)
53
+ return null;
54
+ const node = tree.find((n) => n.pid === pid);
55
+ // Absent from the table while kill-0 says alive = unknown, not foreign.
56
+ return node ? node.image : null;
57
+ }
58
+ catch {
59
+ return null;
60
+ }
61
+ }
62
+ function isNodeImage(image) {
63
+ const parts = image.split(/[\\/]/);
64
+ const base = (parts.pop() ?? '').toLowerCase();
65
+ return base === 'node' || base === 'node.exe';
66
+ }
67
+ function reapStaleBusyLock(deps) {
68
+ const now = (deps.nowMs ?? Date.now)();
69
+ const lock = (deps.readLockFn ?? lock_1.readLock)(deps.agentId);
70
+ if (!lock || typeof lock.pid !== 'number')
71
+ return 'idle';
72
+ if (deps.hasLiveSession())
73
+ return 'kept-live-session';
74
+ const age = now - new Date(lock.startedAt).getTime();
75
+ const after = deps.reapAfterMs ?? exports.STALE_BUSY_REAP_AFTER_MS;
76
+ if (!Number.isFinite(age) || age < after)
77
+ return 'kept-young';
78
+ const busy = deps.busyFn ?? lock_1.isLockBusy;
79
+ if (!busy(deps.agentId))
80
+ return 'kept-not-busy';
81
+ const image = (deps.imageForPid ?? defaultImageForPid)(lock.pid);
82
+ if (!image || isNodeImage(image))
83
+ return 'kept-node-or-unknown';
84
+ (deps.clearLockFn ?? lock_1.clearLock)(deps.agentId);
85
+ try {
86
+ deps.pushState();
87
+ }
88
+ catch {
89
+ /* best-effort */
90
+ }
91
+ deps.log?.(`agent ${deps.agentId}: reaped stale busy lock ` +
92
+ `(pid ${lock.pid} is ${image}, no live session, ` +
93
+ `age ${Math.round(age / 60000)}m)`);
94
+ return 'cleared';
95
+ }
96
+ //# sourceMappingURL=stale-busy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stale-busy.js","sourceRoot":"","sources":["../../src/lib/stale-busy.ts"],"names":[],"mappings":"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"}
@@ -74,6 +74,18 @@ export declare function markMirrorHandedTo(taskId: string, info: {
74
74
  pid: number;
75
75
  kind?: string;
76
76
  }): void;
77
+ /**
78
+ * Heartbeat for a dispatched-but-waiting session (2026-10).
79
+ *
80
+ * A CLI spawned into a mirror can wait on the agent lock for a long time
81
+ * (several sessions, one agent) before it ever reaches `claimMirrorForSession`.
82
+ * During that whole wait the lease reads "never handed to anyone, ageing since
83
+ * creation" - indistinguishable from an orphan - so a sweep reaps a tree whose
84
+ * session is already on its way. Touching `lastActivityAt` while waiting keeps
85
+ * the reclaim clock (30-min grace when the field exists) moving with the waiter.
86
+ * No-op when the lease is gone; never throws.
87
+ */
88
+ export declare function touchMirrorLease(taskId: string): void;
77
89
  export declare function markMirrorKeptForRetry(taskId: string, reason?: string): void;
78
90
  /**
79
91
  * A retry took over a dead run's tree.
@@ -6,6 +6,7 @@ exports.writeMirrorLease = writeMirrorLease;
6
6
  exports.patchMirrorLease = patchMirrorLease;
7
7
  exports.deleteMirrorLease = deleteMirrorLease;
8
8
  exports.markMirrorHandedTo = markMirrorHandedTo;
9
+ exports.touchMirrorLease = touchMirrorLease;
9
10
  exports.markMirrorKeptForRetry = markMirrorKeptForRetry;
10
11
  exports.markMirrorAdopted = markMirrorAdopted;
11
12
  exports.listMirrorLeases = listMirrorLeases;
@@ -139,6 +140,20 @@ function markMirrorHandedTo(taskId, info) {
139
140
  lastActivityAt: now,
140
141
  });
141
142
  }
143
+ /**
144
+ * Heartbeat for a dispatched-but-waiting session (2026-10).
145
+ *
146
+ * A CLI spawned into a mirror can wait on the agent lock for a long time
147
+ * (several sessions, one agent) before it ever reaches `claimMirrorForSession`.
148
+ * During that whole wait the lease reads "never handed to anyone, ageing since
149
+ * creation" - indistinguishable from an orphan - so a sweep reaps a tree whose
150
+ * session is already on its way. Touching `lastActivityAt` while waiting keeps
151
+ * the reclaim clock (30-min grace when the field exists) moving with the waiter.
152
+ * No-op when the lease is gone; never throws.
153
+ */
154
+ function touchMirrorLease(taskId) {
155
+ patchMirrorLease(taskId, { lastActivityAt: new Date().toISOString() });
156
+ }
142
157
  function markMirrorKeptForRetry(taskId, reason) {
143
158
  patchMirrorLease(taskId, {
144
159
  keptForRetry: true,
@@ -1 +1 @@
1
- {"version":3,"file":"mirror-lease.js","sourceRoot":"","sources":["../../../src/lib/workspace/mirror-lease.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mirror-lease.js","sourceRoot":"","sources":["../../../src/lib/workspace/mirror-lease.ts"],"names":[],"mappings":"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"}
@@ -224,6 +224,52 @@ export declare function createIsolationMirror(folder: string, seed: string, agen
224
224
  */
225
225
  deliverableBranch?: string | null;
226
226
  }): Promise<MirrorOutcome>;
227
+ /**
228
+ * Rebuild-on-arrival (2026-10): a session dispatched into a mirror that no
229
+ * longer exists gets a WORKING tree, not a downgrade and not a run in the
230
+ * linked folder.
231
+ *
232
+ * The observed case: the daemon builds `taskrun-<taskId>`, the CLI waits on
233
+ * the agent lock behind a live session, and by the time it starts the tree is
234
+ * gone (swept, cleaned, or deleted by hand) - an empty shell with a mirror's
235
+ * name, no marker, no git repo. `git-prepare` used to downgrade that to
236
+ * `mirror-destroyed` and the harness ran anyway, escaping via absolute paths
237
+ * into the human's branch.
238
+ *
239
+ * Rules:
240
+ * - marker present -> nothing to do (the live path, zero cost);
241
+ * - corpse triage: a MISSING or EMPTY shell is removed; a NON-EMPTY shell of
242
+ * unknown provenance is QUARANTINED (`<path>.abandoned-<ts>`), never
243
+ * deleted - its bytes may be a dead run's only copy;
244
+ * - rebuild is attempted EXACTLY ONCE via `createIsolationMirror` with the
245
+ * same task id/branches, so the path stays deterministic and a retry still
246
+ * adopts it; any failure is terminal for the caller (abort, don't degrade);
247
+ * - the previous tree's uncommitted remainder is declared unrecoverable
248
+ * out loud when the lease says there was one - a rebuild continues from
249
+ * the task branch, it never pretends the files survived.
250
+ */
251
+ export interface MirrorRecovery {
252
+ ok: boolean;
253
+ rebuilt: boolean;
254
+ /** Where unknown corpse content was parked (only when quarantined). */
255
+ quarantined?: string;
256
+ /** Why the rebuild was refused/failed (only when `ok` is false). */
257
+ detail?: string;
258
+ }
259
+ export declare function ensureLiveMirror(opts: {
260
+ /** The dispatched working directory (must be the task's own mirror path). */
261
+ cwd: string;
262
+ /** Mirror seed (task id for task-scoped runs). */
263
+ seed: string;
264
+ agentId?: string;
265
+ projectId?: string | null;
266
+ taskId?: string;
267
+ /** Branch to base the rebuilt tree on (the task's own branch for retries). */
268
+ baseBranch?: string | null;
269
+ /** Branch the rebuilt run delivers on. */
270
+ deliverableBranch?: string | null;
271
+ log?: (text: string) => void;
272
+ }): Promise<MirrorRecovery>;
227
273
  /**
228
274
  * Claim a mirror for THIS session (called by the spawned CLI on start).
229
275
  * Records the pid in the lease so a second wake can tell "someone is working