teamshare-bridge 0.26.23 → 0.26.25

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.
@@ -17,6 +17,7 @@ exports.ensureLiveMirror = ensureLiveMirror;
17
17
  exports.claimMirrorForSession = claimMirrorForSession;
18
18
  exports.settleMirrorLease = settleMirrorLease;
19
19
  exports.mirrorSessionIsLive = mirrorSessionIsLive;
20
+ exports.allNonRootReposRemoved = allNonRootReposRemoved;
20
21
  exports.detachIsolationMirror = detachIsolationMirror;
21
22
  /**
22
23
  * Isolation mirror (2026-09): EVERY run gets its own private working tree so
@@ -108,6 +109,38 @@ exports.TASK_MIRROR_PREFIX = 'taskrun-';
108
109
  function looksLikeMirrorPath(dir) {
109
110
  return /^(taskrun-[0-9a-f-]{36}|run-[a-z.]+-[0-9a-f]{6,8})$/i.test((0, node_path_1.basename)((0, node_path_1.resolve)(dir)));
110
111
  }
112
+ /**
113
+ * Case-insensitive path equality. Windows is case-insensitive but the two
114
+ * spellings can differ (drive-letter case, forward vs back slashes); every
115
+ * lease/path comparison must use this rather than `===`.
116
+ */
117
+ function samePath(a, b) {
118
+ try {
119
+ return (0, node_path_1.resolve)(a).toLowerCase() === (0, node_path_1.resolve)(b).toLowerCase();
120
+ }
121
+ catch {
122
+ return false;
123
+ }
124
+ }
125
+ /**
126
+ * Does a marker-less lease still belong to someone?
127
+ *
128
+ * Same rule as `assessExistingMirror`: a live pid/presence OR a never-handed
129
+ * lease younger than the spawn window. A fresh, unhanded lease may be a mirror
130
+ * the daemon is still creating, so the marker-less path must never race it.
131
+ * A lease kept for retry is free by definition - the previous run failed and
132
+ * the next one is meant to continue in that tree.
133
+ */
134
+ function markerlessLeaseIsOwned(lease) {
135
+ if (lease.keptForRetry)
136
+ return false;
137
+ if ((0, mirror_lease_1.mirrorLeaseIsLive)(lease))
138
+ return true;
139
+ if (lease.handedTo?.pid)
140
+ return false; // handed to a dead pid: free
141
+ const created = new Date(lease.createdAt).getTime();
142
+ return (Number.isFinite(created) && Date.now() - created < mirror_lease_1.ORPHAN_RECLAIM_MIN_AGE_MS);
143
+ }
111
144
  /**
112
145
  * Ephemeral mirrors (wakes with no task id - `build.trigger`, a bare document
113
146
  * mention): never adopted, always disposable. A distinct prefix keeps the
@@ -557,6 +590,39 @@ async function createIsolationMirror(folder, seed, agentId, projectId, opts) {
557
590
  };
558
591
  }
559
592
  }
593
+ else if (taskId) {
594
+ // No marker, but the lease may still name this EXACT path (2026-10-27).
595
+ // A teardown deletes the marker with the contents, then can fail to
596
+ // remove the EMPTY root because OpenCode's shared service holds a
597
+ // directory handle (rename/rmdir => EBUSY; writes into it still succeed).
598
+ // That is a HALF-DESTROYED MIRROR, not an unknown directory:
599
+ // - a live owner => refuse (queue), never touch it;
600
+ // - otherwise => prune the stale registry row and continue. An
601
+ // empty root is REUSED in place by `createWorktree`
602
+ // (it has no bytes to preserve); a non-empty one is
603
+ // quarantined there, never deleted.
604
+ // Without this, the create path falls through to "quarantine the existing
605
+ // directory", which can never win against the live handle.
606
+ const lease = (0, mirror_lease_1.readMirrorLease)(taskId);
607
+ if (lease?.path && samePath(lease.path, mirrorDir)) {
608
+ if (markerlessLeaseIsOwned(lease)) {
609
+ return {
610
+ ok: false,
611
+ reason: 'blocked',
612
+ detail: "a live session owns this task's mirror (its marker is missing)",
613
+ };
614
+ }
615
+ log(`no marker at ${mirrorDir}, but the lease for task ${taskId} names this exact path - ` +
616
+ `treating it as a half-destroyed mirror (the previous teardown removed its contents but not its root); ` +
617
+ `pruning OpenCode's registry and reusing the path`);
618
+ try {
619
+ (0, opencode_projects_1.forgetOpencodeProject)(mirrorDir);
620
+ }
621
+ catch {
622
+ /* best-effort: the create below does not depend on it */
623
+ }
624
+ }
625
+ }
560
626
  const created = [];
561
627
  try {
562
628
  fetchQuiet(folder);
@@ -799,11 +865,23 @@ async function ensureLiveMirror(opts) {
799
865
  `(never deleted: its contents are of unknown provenance and may be a dead run's only copy)`);
800
866
  }
801
867
  else if (corpse === 'empty') {
868
+ // Prune the registry even for an EMPTY shell: it is the row that makes the
869
+ // running service keep a handle on the directory, which is why `rmSync`
870
+ // can empty it and then fail the final rmdir with EBUSY (2026-10-27).
871
+ // Pruning stops the next service start re-acquiring it; the `rmSync` may
872
+ // still fail, and `createIsolationMirror` now REUSES an empty root in
873
+ // place, so the rebuild does not depend on this delete succeeding.
874
+ try {
875
+ (0, opencode_projects_1.forgetOpencodeProject)(opts.cwd);
876
+ }
877
+ catch {
878
+ /* best-effort */
879
+ }
802
880
  try {
803
881
  (0, node_fs_1.rmSync)(opts.cwd, { recursive: true, force: true });
804
882
  }
805
883
  catch {
806
- /* `createIsolationMirror` quarantines a survivor itself - proceed */
884
+ /* still locked: `createIsolationMirror` reuses the empty root */
807
885
  }
808
886
  }
809
887
  const result = await createIsolationMirror(folder, opts.seed, opts.agentId, opts.projectId ?? null, {
@@ -1054,6 +1132,23 @@ function mirrorSessionIsLive(cwd, marker, ignorePids = []) {
1054
1132
  }
1055
1133
  return { live: false, reason: 'no presence and no live lease pid' };
1056
1134
  }
1135
+ /**
1136
+ * May this teardown clean the mirror ROOT?
1137
+ *
1138
+ * Yes only when every NESTED repo is gone. A nested worktree that was kept
1139
+ * lives INSIDE the root, so deleting or quarantining the root would take it
1140
+ * with it. The ROOT being kept is NOT a blocker: that is exactly the state a
1141
+ * successful teardown leaves behind when OpenCode's shared service holds the
1142
+ * empty shell open, and the old `kept.length === 0` gate skipped the root's
1143
+ * registry prune entirely because of it (2026-10-27).
1144
+ *
1145
+ * Pure and exported so the rule is pinned by a test without a filesystem.
1146
+ */
1147
+ function allNonRootReposRemoved(repos, kept) {
1148
+ return repos
1149
+ .filter((r) => r.name !== '.')
1150
+ .every((r) => !kept.some((p) => samePath(p, r.worktree)));
1151
+ }
1057
1152
  /**
1058
1153
  * Detach a mirror after a run — ALWAYS, success or failure: the run's work is
1059
1154
  * already committed to the task branch, so the mirror is leftover. Rescue-first
@@ -1090,18 +1185,16 @@ async function detachIsolationMirror(cwd, agentId, opts) {
1090
1185
  // it is: prune the registry, quarantine-or-remove, settle.
1091
1186
  const orphanTaskId = taskIdForMirrorDir(cwd);
1092
1187
  const orphanLease = orphanTaskId ? (0, mirror_lease_1.readMirrorLease)(orphanTaskId) : null;
1093
- const leaseMatches = !!orphanLease?.path &&
1094
- (0, node_path_1.resolve)(orphanLease.path).toLowerCase() === (0, node_path_1.resolve)(cwd).toLowerCase();
1095
- if (!leaseMatches)
1096
- return { removed: [], kept: [], details: [] };
1097
- let occupied = false;
1098
- try {
1099
- occupied = (0, presence_1.listPresent)(cwd).length > 0;
1100
- }
1101
- catch {
1188
+ if (!orphanLease?.path || !samePath(orphanLease.path, cwd)) {
1102
1189
  return { removed: [], kept: [], details: [] };
1103
1190
  }
1104
- if (occupied) {
1191
+ // The lease is the authority when the marker is gone: a live `handedTo`
1192
+ // pid OR a live presence row means a session owns this tree, and a fresh
1193
+ // never-handed lease is still mid-spawn. The old code checked presence
1194
+ // only, so a CLI between "claim" and "register presence" could have its
1195
+ // tree deleted under it. `mirrorLeaseIsLive` also fails closed on an
1196
+ // unreadable presence registry.
1197
+ if (markerlessLeaseIsOwned(orphanLease)) {
1105
1198
  return {
1106
1199
  removed: [],
1107
1200
  kept: [cwd],
@@ -1114,7 +1207,7 @@ async function detachIsolationMirror(cwd, agentId, opts) {
1114
1207
  error: 'a live session owns this tree; refusing a marker-less detach',
1115
1208
  },
1116
1209
  ],
1117
- rescueBranch: orphanLease?.deliverableBranch,
1210
+ rescueBranch: orphanLease.deliverableBranch,
1118
1211
  };
1119
1212
  }
1120
1213
  say(`no marker in ${cwd}, but the lease for task ${orphanTaskId} names this exact path - ` +
@@ -1293,30 +1386,91 @@ async function detachIsolationMirror(cwd, agentId, opts) {
1293
1386
  });
1294
1387
  }
1295
1388
  }
1296
- if (kept.length === 0) {
1297
- // The mirror root is the biggest single delete in the whole flow, so it gets
1298
- // its own check even though every repo above already passed one.
1389
+ // The mirror root is the biggest single delete in the whole flow, so it gets
1390
+ // its own check even though every repo above already passed one.
1391
+ //
1392
+ // THE GATE IS "EVERY NON-ROOT REPO IS GONE", NOT `kept.length === 0`
1393
+ // (2026-10-27). When the ROOT is the only kept item - the usual shape after
1394
+ // a successful run whose EMPTY shell is held open by OpenCode's shared
1395
+ // service - `kept.length === 0` was false, so this whole block was skipped:
1396
+ // the registry row was never pruned, the root was never retried, and the
1397
+ // next wake failed on a rename it could never win. A kept NESTED worktree is
1398
+ // the only case where the root must stay untouched (that tree lives inside
1399
+ // it).
1400
+ const normalize = (p) => (0, node_path_1.resolve)(p).toLowerCase();
1401
+ if (allNonRootReposRemoved(marker.repos, kept)) {
1299
1402
  const blocked = revalidate('the mirror root');
1300
1403
  if (blocked) {
1301
- kept.push(cwd);
1404
+ if (!kept.some((p) => normalize(p) === normalize(cwd)))
1405
+ kept.push(cwd);
1302
1406
  return { removed, kept, details, rescueBranch, aborted: blocked };
1303
1407
  }
1408
+ const rootExistsNow = (0, node_fs_1.existsSync)(cwd);
1409
+ const rootWasRemoved = removed.some((p) => normalize(p) === normalize(cwd));
1410
+ // The per-repo loop may ALREADY have removed the root and recorded the
1411
+ // rescue on its detail (`rescued`/`pushed`/`branch`). Never replace a
1412
+ // successful detail with a fresh `rescued:false` one: `saveStoppedRun`
1413
+ // derives its result from these details, and a false negative reports
1414
+ // committed work as lost.
1415
+ let rootDetail = details.find((d) => d.repo === '.');
1416
+ if (!rootDetail) {
1417
+ rootDetail = {
1418
+ repo: '.',
1419
+ worktree: cwd,
1420
+ removed: false,
1421
+ rescued: false,
1422
+ };
1423
+ details.push(rootDetail);
1424
+ }
1425
+ if (!rootExistsNow && rootWasRemoved) {
1426
+ // The loop already removed the root. Only prune the registry and settle
1427
+ // the lease; its detail (including any rescue) stays untouched.
1428
+ for (let i = kept.length - 1; i >= 0; i--) {
1429
+ if (normalize(kept[i]) === normalize(cwd))
1430
+ kept.splice(i, 1);
1431
+ }
1432
+ try {
1433
+ (0, opencode_projects_1.forgetOpencodeProject)(cwd);
1434
+ }
1435
+ catch {
1436
+ /* best-effort */
1437
+ }
1438
+ if (marker.taskId)
1439
+ (0, mirror_lease_1.deleteMirrorLease)(marker.taskId);
1440
+ return { removed, kept, details, rescueBranch };
1441
+ }
1442
+ // This pass now OWNS the root's outcome: drop stale `kept`/`removed`
1443
+ // entries for it so a retry cannot leave a duplicate.
1444
+ for (let i = kept.length - 1; i >= 0; i--) {
1445
+ if (normalize(kept[i]) === normalize(cwd))
1446
+ kept.splice(i, 1);
1447
+ }
1448
+ if (rootExistsNow) {
1449
+ for (let i = removed.length - 1; i >= 0; i--) {
1450
+ if (normalize(removed[i]) === normalize(cwd))
1451
+ removed.splice(i, 1);
1452
+ }
1453
+ }
1304
1454
  // OpenCode's shared service registers every run directory as a project and
1305
1455
  // holds a handle on it (2026-10-18). Forget the registration BEFORE the
1306
- // delete so the handle cannot come back at the next service restart, and
1307
- // never let a registry hiccup fail a teardown - it is housekeeping, and
1308
- // the empty-shell triage in `createWorktreeAsync` covers a stuck window.
1456
+ // delete so the handle cannot come back at the next service restart. This
1457
+ // call used to sit behind the `kept.length === 0` gate, which is exactly
1458
+ // how the 2026-10-27 corpse kept its row and its handle alive. Never let a
1459
+ // registry hiccup fail a teardown - it is housekeeping, and the create
1460
+ // path reuses an empty root anyway.
1309
1461
  try {
1310
1462
  (0, opencode_projects_1.forgetOpencodeProject)(cwd);
1311
1463
  }
1312
1464
  catch {
1313
1465
  /* best-effort */
1314
1466
  }
1315
- try {
1316
- (0, node_fs_1.rmSync)(cwd, { recursive: true, force: true });
1317
- }
1318
- catch {
1319
- /* best-effort - the verification below is what decides the outcome */
1467
+ if ((0, node_fs_1.existsSync)(cwd)) {
1468
+ try {
1469
+ (0, node_fs_1.rmSync)(cwd, { recursive: true, force: true });
1470
+ }
1471
+ catch {
1472
+ /* best-effort - the verification below decides the outcome */
1473
+ }
1320
1474
  }
1321
1475
  // `rmSync` is best-effort: on Windows it can empty the directory and then
1322
1476
  // fail the final rmdir because something still holds a handle to a
@@ -1346,33 +1500,36 @@ async function detachIsolationMirror(cwd, agentId, opts) {
1346
1500
  if (moved) {
1347
1501
  say(`mirror root ${cwd} would not delete - quarantined to ${parked} ` +
1348
1502
  `(every byte kept; delete it by hand once nothing in it is needed)`);
1503
+ rootDetail.removed = false;
1504
+ rootDetail.quarantined = parked;
1505
+ rootDetail.error = `mirror root would not delete; quarantined to ${parked}`;
1349
1506
  kept.push(parked);
1350
- details.push({
1351
- repo: '.',
1352
- worktree: cwd,
1353
- removed: false,
1354
- rescued: false,
1355
- quarantined: parked,
1356
- error: `mirror root would not delete; quarantined to ${parked}`,
1357
- });
1358
1507
  }
1359
1508
  else {
1360
1509
  // Either way it is kept, and the machine-readable detail is what
1361
1510
  // stops the sweep from reporting a clean pass over a stuck shell.
1511
+ const empty = (0, worktree_1.isDirEmpty)(cwd);
1362
1512
  kept.push(cwd);
1363
- details.push({
1364
- repo: '.',
1365
- worktree: cwd,
1366
- removed: false,
1367
- rescued: false,
1368
- error: 'mirror root still exists after removal (locked); retry pending',
1369
- });
1513
+ rootDetail.removed = false;
1514
+ rootDetail.error = empty
1515
+ ? 'mirror root is EMPTY but locked (the next run will reuse it in place)'
1516
+ : "mirror root still exists after removal (locked, non-empty); retry pending - its bytes may be a dead run's only copy";
1370
1517
  }
1371
1518
  }
1372
- else if (marker.taskId) {
1373
- // The tree is gone and the lease has no tree to describe any more. Keeping
1374
- // it would make the sweeper chase a path that no longer exists.
1375
- (0, mirror_lease_1.deleteMirrorLease)(marker.taskId);
1519
+ else {
1520
+ // The tree is gone; add the root to `removed` unless the per-repo loop
1521
+ // already reported it (the root's own `removeWorktreeSafeAsync` usually
1522
+ // did), so the caller's count stays honest and `kept` cannot retain it.
1523
+ rootDetail.removed = true;
1524
+ rootDetail.error = undefined;
1525
+ if (!removed.some((p) => normalize(p) === normalize(cwd))) {
1526
+ removed.push(cwd);
1527
+ }
1528
+ if (marker.taskId) {
1529
+ // The tree is gone and the lease has no tree to describe any more.
1530
+ // Keeping it would make the sweeper chase a path that no longer exists.
1531
+ (0, mirror_lease_1.deleteMirrorLease)(marker.taskId);
1532
+ }
1376
1533
  }
1377
1534
  }
1378
1535
  return { removed, kept, details, rescueBranch };
@@ -1 +1 @@
1
- {"version":3,"file":"mirror.js","sourceRoot":"","sources":["../../../src/lib/workspace/mirror.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mirror.js","sourceRoot":"","sources":["../../../src/lib/workspace/mirror.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,11 @@ export interface WorkspaceAudit {
10
10
  findings: WorkspaceFinding[];
11
11
  truncated: boolean;
12
12
  }
13
- export declare function auditWorkspaceState(): WorkspaceAudit;
13
+ export declare function auditWorkspaceState(folders?: string[]): WorkspaceAudit;
14
14
  export interface WorkspaceCleanupResult {
15
15
  removed: number;
16
16
  kept: number;
17
17
  keptReason: string;
18
18
  errors: string[];
19
19
  }
20
- export declare function applyWorkspaceStateCleanup(report: WorkspaceAudit): WorkspaceCleanupResult;
20
+ export declare function applyWorkspaceStateCleanup(report: WorkspaceAudit, folders?: string[]): WorkspaceCleanupResult;
@@ -111,23 +111,30 @@ function excludeFileFor(folder) {
111
111
  return null;
112
112
  }
113
113
  }
114
- function auditWorkspaceState() {
114
+ function auditWorkspaceState(folders) {
115
115
  const findings = [];
116
116
  let truncated = false;
117
- let folders = 0;
118
- let links = {};
119
- try {
120
- links = ((0, config_1.loadConfig)().projects ?? {});
117
+ let folderCount = 0;
118
+ let links;
119
+ if (folders) {
120
+ links = folders;
121
121
  }
122
- catch {
123
- return { folders: 0, findings, truncated };
122
+ else {
123
+ try {
124
+ const cfg = ((0, config_1.loadConfig)().projects ?? {});
125
+ links = Object.values(cfg)
126
+ .map((l) => l?.path)
127
+ .filter((p) => typeof p === 'string' && p.length > 0);
128
+ }
129
+ catch {
130
+ return { folders: 0, findings, truncated };
131
+ }
124
132
  }
125
133
  const live = liveScopeDirs();
126
- for (const link of Object.values(links)) {
127
- const folder = link?.path;
134
+ for (const folder of links) {
128
135
  if (!folder || !(0, node_fs_1.existsSync)(folder))
129
136
  continue;
130
- folders++;
137
+ folderCount++;
131
138
  // 1. Legacy in-folder scratch.
132
139
  const scratchRoot = (0, node_path_1.join)(folder, 'teamshare');
133
140
  if ((0, node_fs_1.existsSync)(scratchRoot)) {
@@ -228,7 +235,7 @@ function auditWorkspaceState() {
228
235
  /* best-effort */
229
236
  }
230
237
  }
231
- return { folders, findings, truncated };
238
+ return { folders: folderCount, findings, truncated };
232
239
  }
233
240
  function removeEmptyDirsUp(root, start) {
234
241
  let dir = start;
@@ -249,7 +256,7 @@ function removeEmptyDirsUp(root, start) {
249
256
  dir = parent;
250
257
  }
251
258
  }
252
- function applyWorkspaceStateCleanup(report) {
259
+ function applyWorkspaceStateCleanup(report, folders) {
253
260
  const res = {
254
261
  removed: 0,
255
262
  kept: 0,
@@ -313,11 +320,14 @@ function applyWorkspaceStateCleanup(report) {
313
320
  const scopeFindings = report.findings.filter((f) => f.kind === 'leftover-scope' && f.removable);
314
321
  if (scopeFindings.length) {
315
322
  const { sweepStaleScopes } = require('../harness/run-scope');
316
- const links = ((0, config_1.loadConfig)().projects ?? {});
317
- const folders = Object.values(links)
318
- .map((l) => l?.path)
319
- .filter((p) => typeof p === 'string' && p.length > 0);
320
- const swept = sweepStaleScopes(folders);
323
+ let folderList = folders;
324
+ if (!folderList) {
325
+ const cfg = ((0, config_1.loadConfig)().projects ?? {});
326
+ folderList = Object.values(cfg)
327
+ .map((l) => l?.path)
328
+ .filter((p) => typeof p === 'string' && p.length > 0);
329
+ }
330
+ const swept = sweepStaleScopes(folderList);
321
331
  res.removed += swept.length;
322
332
  res.kept += Math.max(0, scopeFindings.length - swept.length);
323
333
  if (scopeFindings.length - swept.length > 0)