@ai-dossier/worktree-pool 0.6.1 → 0.7.1
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 +50 -8
- package/dist/cli.js +75 -5
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/pool-actions.d.ts +88 -2
- package/dist/pool-actions.d.ts.map +1 -1
- package/dist/pool-actions.js +238 -15
- package/dist/pool-actions.js.map +1 -1
- package/dist/process-scan.d.ts +97 -0
- package/dist/process-scan.d.ts.map +1 -0
- package/dist/process-scan.js +416 -0
- package/dist/process-scan.js.map +1 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -29,9 +29,10 @@ Requires Node.js >= 20.0.0.
|
|
|
29
29
|
| `worktree-pool status [--json]` | Show pool inventory (warm/assigned/broken counts); `--json` prints the whole inventory, including per-entry `status`, for callers |
|
|
30
30
|
| `worktree-pool replenish [--count N]` | Pre-warm spares up to target count |
|
|
31
31
|
| `worktree-pool claim --issue N --branch B` | Claim a warm worktree, print path |
|
|
32
|
-
| `worktree-pool return --path P [--json]` | Return worktree to pool for reuse; self-checks on success, and on failure marks the entry `broken` and exits non-zero naming the step |
|
|
32
|
+
| `worktree-pool return --path P [--json]` | Return worktree to pool for reuse; kills any process still running out of it first, self-checks on success, and on failure marks the entry `broken` and exits non-zero naming the step |
|
|
33
33
|
| `worktree-pool refresh` | Fetch origin + rebuild in all warm worktrees |
|
|
34
|
-
| `worktree-pool gc [--dry-run] [--yes]` | Remove stale/orphaned pool worktrees (never anything else) |
|
|
34
|
+
| `worktree-pool gc [--dry-run] [--yes]` | Remove stale/orphaned pool worktrees (never anything else), killing any process still running out of one first |
|
|
35
|
+
| `worktree-pool reap [--older-than H] [--dry-run] [--yes]` | Kill processes orphaned by a removed or non-assigned worktree, at least `H` hours old (default 24) — the sweep for what `return`/`gc` already missed |
|
|
35
36
|
| `worktree-pool init` | Configure pool directory for this project |
|
|
36
37
|
| `worktree-pool detect [dir]` | Print the detected package-manager env as JSON |
|
|
37
38
|
|
|
@@ -57,6 +58,11 @@ worktree-pool return --path "$WORKTREE_PATH"
|
|
|
57
58
|
# Clean up stale worktrees (prints the plan first, then asks)
|
|
58
59
|
worktree-pool gc --dry-run # show what would go
|
|
59
60
|
worktree-pool gc --yes # remove it, no prompt (required when stdin is not a TTY)
|
|
61
|
+
|
|
62
|
+
# Sweep processes orphaned by worktrees return/gc already lost track of —
|
|
63
|
+
# run this on a schedule (a host cron/timer), not per-issue
|
|
64
|
+
worktree-pool reap --older-than 24 --dry-run
|
|
65
|
+
worktree-pool reap --older-than 24 --yes
|
|
60
66
|
```
|
|
61
67
|
|
|
62
68
|
## How It Works
|
|
@@ -72,11 +78,29 @@ replenish claim return
|
|
|
72
78
|
|
|
73
79
|
1. **Replenish** creates worktrees from `base_ref` (default `origin/main`) on temp branches, then runs the warm commands (install + build)
|
|
74
80
|
2. **Claim** renames a warm worktree, switches to your feature branch — instant setup (~2s)
|
|
75
|
-
3. **Return**
|
|
76
|
-
4. **GC** removes broken entries and stale entries (>72h) and reconciles disk state vs pool state — only for worktrees the pool created (see [Sharing the pool directory](#sharing-the-pool-directory))
|
|
81
|
+
3. **Return** first kills any process still running out of the worktree (see [Process cleanup](#process-cleanup) below), then recycles it back to pool on a fresh temp branch, then verifies the result against reality — the entry really reads `warm`, no tracked file is dirty, and the new `pool/spare-*` branch is really checked out — before reporting success. A failure at any step leaves the entry `broken` (never `assigned`, never a falsely-`warm` spare), leaves the directory on disk, and exits non-zero naming the step
|
|
82
|
+
4. **GC** kills any process still running out of a worktree it is about to touch, then removes broken entries and stale entries (>72h) and reconciles disk state vs pool state — only for worktrees the pool created (see [Sharing the pool directory](#sharing-the-pool-directory))
|
|
77
83
|
|
|
78
84
|
Claim and return only re-run the warm commands when the project's lockfile changed between the worktree's base commit and `base_ref` — otherwise the existing `node_modules` and build output are reused.
|
|
79
85
|
|
|
86
|
+
## Process cleanup
|
|
87
|
+
|
|
88
|
+
A dev server, jest run, or vite server started inside a worktree by a verification step does not stop on its own when the worktree it was started in is recycled or removed. Left unaddressed, these outlive the worktree, the branch and the issue that spawned them — a real sweep on hcc found 13 such processes across four merged worktrees, one holding open connections to a shared test database for 10 days.
|
|
89
|
+
|
|
90
|
+
- **`return` and `gc` kill first.** Before recycling or removing a worktree, both send SIGTERM to every process whose cwd or command line is rooted under that exact worktree path, wait up to 5 seconds, then SIGKILL anything still alive. The kill is scoped to that one worktree — a sibling worktree sharing the same pool directory is never touched — and the killed pids are printed and included in `return --json`'s `killedProcesses` / `gc`'s `killedProcesses` field.
|
|
91
|
+
- **`reap` is the sweep for what got away** — a process from a worktree that was removed by something other than this tool, or that is otherwise no longer `assigned`:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
$ worktree-pool reap --older-than 24 --dry-run
|
|
95
|
+
Found 1 orphaned process(es):
|
|
96
|
+
pid 48213 age 11.4h worktree bug-701-fix-something
|
|
97
|
+
node /repo/../worktrees/bug-701-fix-something/node_modules/.bin/vite
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
`reap` never touches a worktree the pool did not create (the same [ownership rule](#sharing-the-pool-directory) `gc` uses), and never a currently-registered worktree in an active pool status (`assigned`, `recycling`, `creating`, `warming`) — that is active work, not an orphan, and includes a `return` that is mid-flight but has not reached its own kill step yet. Run it on a schedule (a host cron/timer calling `reap --older-than 24 --yes`), not per-issue; `return`/`gc` already handle the common case at the moment a worktree changes hands.
|
|
101
|
+
- The Linux discovery path (`/proc/*/cwd` + `/proc/*/cmdline`) always excludes the invoking process and its whole parent chain, so running `return --path <wt>` from a shell whose own cwd is inside `<wt>` cannot kill its own invoker. The `ps`-based fallback (non-Linux) can only exclude the invoking process itself — an ancestor's cwd/ppid is not determinable without `/proc`. `return`, `gc`, and `reap` all print `skipped self/ancestors: <pids>` whenever a match was excluded this way — routinely true for `return`, since its own command line contains the worktree path it was given.
|
|
102
|
+
- **`return` and `gc` refuse an unsafe kill root outright** rather than silently skipping it: an empty path, the filesystem root, the git root itself, or anything outside the pool directory. Every current call site already derives a safe path, so this should never fire — it exists so a future one cannot skip the check.
|
|
103
|
+
|
|
80
104
|
### Pool State
|
|
81
105
|
|
|
82
106
|
Pool state is stored in `worktrees/.pool-state.json` (automatically gitignored). Each worktree transitions through:
|
|
@@ -208,21 +232,27 @@ Note the two distinct fields, matching the two sections above: the top-level
|
|
|
208
232
|
"dirty_entries": [],
|
|
209
233
|
"checked_out_branch": "pool/spare-pool-1787468026330-1079658",
|
|
210
234
|
"expected_branch": "pool/spare-pool-1787468026330-1079658"
|
|
211
|
-
}
|
|
235
|
+
},
|
|
236
|
+
"killedProcesses": [
|
|
237
|
+
{ "pid": 48213, "command": "node .../vite", "signal": "SIGTERM" }
|
|
238
|
+
]
|
|
212
239
|
}
|
|
213
240
|
```
|
|
214
241
|
|
|
215
242
|
### Programmatic use
|
|
216
243
|
|
|
244
|
+
`returnWorktree` is `async` (it kills processes before recycling — see
|
|
245
|
+
[Process cleanup](#process-cleanup)):
|
|
246
|
+
|
|
217
247
|
```ts
|
|
218
248
|
import { returnWorktree, ReturnFailure } from '@ai-dossier/worktree-pool';
|
|
219
249
|
|
|
220
250
|
try {
|
|
221
|
-
const result = returnWorktree(worktreePath);
|
|
222
|
-
// result.id, result.path, result.verification
|
|
251
|
+
const result = await returnWorktree(worktreePath);
|
|
252
|
+
// result.id, result.path, result.verification, result.killedProcesses, result.killErrors
|
|
223
253
|
} catch (err) {
|
|
224
254
|
if (err instanceof ReturnFailure) {
|
|
225
|
-
// err.step (a ReturnStep), err.entryId, err.worktreePath
|
|
255
|
+
// err.step (a ReturnStep), err.entryId, err.worktreePath, err.killedProcesses, err.killErrors
|
|
226
256
|
// The entry is 'broken' and the directory was NOT destroyed — unless
|
|
227
257
|
// err.markError is non-null, which means the marking write itself failed
|
|
228
258
|
// and pool state should be re-checked before the next claim.
|
|
@@ -230,6 +260,18 @@ try {
|
|
|
230
260
|
}
|
|
231
261
|
```
|
|
232
262
|
|
|
263
|
+
`reap` is the same shape, without the try/catch — it never throws:
|
|
264
|
+
|
|
265
|
+
```ts
|
|
266
|
+
import { reap } from '@ai-dossier/worktree-pool';
|
|
267
|
+
|
|
268
|
+
const result = await reap({ olderThanHours: 24, dryRun: true });
|
|
269
|
+
// result.candidates (what matched the age threshold), result.killed (empty on a dry run),
|
|
270
|
+
// result.aborted (confirmation missing / declined), result.errors
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
The lower-level primitives `return`/`gc`/`reap` are built on — `findWorktreeProcesses`, `killProcesses`, `killWorktreeProcesses` — are also exported, for a caller that wants process discovery/kill on its own terms.
|
|
274
|
+
|
|
233
275
|
## Configuration
|
|
234
276
|
|
|
235
277
|
### Pool sizing — `.pool-state.json`
|
package/dist/cli.js
CHANGED
|
@@ -2,6 +2,29 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
const pool_actions_1 = require("./pool-actions");
|
|
5
|
+
/**
|
|
6
|
+
* Print the processes a `return`/`gc` kill step killed, any non-fatal kill
|
|
7
|
+
* failures, and any matching pids excluded as this process or an ancestor of
|
|
8
|
+
* it — the one block `return`, `gc`, and a failed `return`'s error handler
|
|
9
|
+
* all need (imboard-ai/ai-dossier#760, #763).
|
|
10
|
+
*/
|
|
11
|
+
function printKilledProcesses(killed, killErrors, skippedSelfOrAncestor = [], headerIndent = '', itemIndent = ' ') {
|
|
12
|
+
if (killed.length > 0) {
|
|
13
|
+
console.error(`${headerIndent}Killed ${killed.length} process(es):`);
|
|
14
|
+
for (const p of killed) {
|
|
15
|
+
console.error(`${itemIndent}pid ${p.pid} (${p.signal}) ${p.command.slice(0, 80)}`);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
if (killErrors.length > 0) {
|
|
19
|
+
console.error(`${headerIndent}Kill failures (${killErrors.length}) — process may still be running:`);
|
|
20
|
+
for (const e of killErrors) {
|
|
21
|
+
console.error(`${itemIndent}${e}`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
if (skippedSelfOrAncestor.length > 0) {
|
|
25
|
+
console.error(`${headerIndent}skipped self/ancestors: ${skippedSelfOrAncestor.join(', ')}`);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
5
28
|
/**
|
|
6
29
|
* Print corrupted pool directories (#443) — a directory on disk whose git
|
|
7
30
|
* admin dir is gone. Distinct from a #453 `broken` *entry*, which is a pool
|
|
@@ -25,21 +48,33 @@ Commands:
|
|
|
25
48
|
status [--json] Show pool inventory (--json for callers)
|
|
26
49
|
replenish [--count N] Pre-warm spares up to target
|
|
27
50
|
claim --issue N --branch B Claim a warm worktree, print path
|
|
28
|
-
return --path P [--json] Return worktree to pool
|
|
51
|
+
return --path P [--json] Return worktree to pool (kills its processes first)
|
|
29
52
|
refresh Fetch + rebuild all warm worktrees
|
|
30
|
-
gc [--dry-run] [--yes] Remove stale/orphaned worktrees
|
|
53
|
+
gc [--dry-run] [--yes] Remove stale/orphaned worktrees (kills their processes first)
|
|
54
|
+
reap [--older-than H] [--dry-run] [--yes]
|
|
55
|
+
Kill processes orphaned by removed/non-assigned
|
|
56
|
+
worktrees, older than H hours (default 24)
|
|
31
57
|
init Configure pool directory for this project
|
|
32
58
|
detect [dir] Print detected package manager env as JSON
|
|
33
59
|
|
|
34
60
|
The pool only ever removes worktrees it created. Worktrees sharing the pool
|
|
35
61
|
directory that the pool did not create are reported as "foreign, skipped" and
|
|
36
|
-
are never touched. gc
|
|
62
|
+
are never touched. gc and reap require --yes when stdin is not a TTY.
|
|
37
63
|
|
|
38
64
|
A failed 'return' leaves its pool entry marked 'broken' (never 'assigned' or
|
|
39
65
|
'warm') and exits non-zero naming the step that failed — except for a path that
|
|
40
66
|
is not in the pool at all, which fails before there is any entry to mark. The
|
|
41
67
|
worktree directory is left on disk for inspection; 'status --json' carries the
|
|
42
|
-
failed step, and gc clears the entry
|
|
68
|
+
failed step, and gc clears the entry.
|
|
69
|
+
|
|
70
|
+
'return' and 'gc' kill any process still running out of a worktree before
|
|
71
|
+
recycling/removing it (a dev server, jest run, or vite server a verification
|
|
72
|
+
step started and never stopped — imboard-ai/ai-dossier#760). 'reap' is the
|
|
73
|
+
sweep for what escaped that: processes rooted in worktrees that are already
|
|
74
|
+
gone, or in pool entries that are not actively assigned/recycling/creating/
|
|
75
|
+
warming, regardless of when they were last touched by return/gc. It never
|
|
76
|
+
touches a worktree the pool did not create, and never a currently-registered
|
|
77
|
+
worktree in an active pool status — that is active work, not an orphan.`);
|
|
43
78
|
}
|
|
44
79
|
/** A flag is set when present as `--x` or given the literal string 'true'. */
|
|
45
80
|
function boolFlag(value) {
|
|
@@ -163,11 +198,12 @@ async function main() {
|
|
|
163
198
|
}
|
|
164
199
|
// Failures fall through to the outer catch, which prints the step and
|
|
165
200
|
// exits 1 (#453). The entry is left `broken`, never `assigned`.
|
|
166
|
-
const returned = (0, pool_actions_1.returnWorktree)(wtPath);
|
|
201
|
+
const returned = await (0, pool_actions_1.returnWorktree)(wtPath);
|
|
167
202
|
if (boolFlag(flags.json)) {
|
|
168
203
|
console.log(JSON.stringify(returned, null, 2));
|
|
169
204
|
break;
|
|
170
205
|
}
|
|
206
|
+
printKilledProcesses(returned.killedProcesses, returned.killErrors, returned.skippedSelfOrAncestor, '', ' ');
|
|
171
207
|
const v = returned.verification;
|
|
172
208
|
console.error('Worktree returned to pool');
|
|
173
209
|
console.error('Self-check:');
|
|
@@ -209,6 +245,39 @@ async function main() {
|
|
|
209
245
|
if (result.orphanIds.length > 0) {
|
|
210
246
|
console.error(` Orphans: ${result.orphanIds.join(', ')}`);
|
|
211
247
|
}
|
|
248
|
+
printKilledProcesses(result.killedProcesses, [], result.skippedSelfOrAncestor, ' ', ' ');
|
|
249
|
+
}
|
|
250
|
+
if (result.errors.length > 0) {
|
|
251
|
+
for (const err of result.errors) {
|
|
252
|
+
console.error(` Error: ${err}`);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
if (result.aborted) {
|
|
256
|
+
process.exit(1);
|
|
257
|
+
}
|
|
258
|
+
break;
|
|
259
|
+
}
|
|
260
|
+
case 'reap': {
|
|
261
|
+
const dryRun = boolFlag(flags['dry-run']);
|
|
262
|
+
const yes = boolFlag(flags.yes) || flags.force === true;
|
|
263
|
+
let olderThanHours;
|
|
264
|
+
if (flags['older-than'] !== undefined) {
|
|
265
|
+
olderThanHours = Number.parseFloat(String(flags['older-than']));
|
|
266
|
+
if (!Number.isFinite(olderThanHours) || olderThanHours < 0) {
|
|
267
|
+
console.error(`Error: --older-than must be a non-negative number of hours, got "${flags['older-than']}"`);
|
|
268
|
+
process.exit(1);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
const result = await (0, pool_actions_1.reap)({ dryRun, yes, olderThanHours });
|
|
272
|
+
if (!result.dryRun && !result.aborted && result.candidates.length > 0) {
|
|
273
|
+
console.error(`Killed ${result.killed.length}/${result.candidates.length} process(es):`);
|
|
274
|
+
for (const c of result.candidates) {
|
|
275
|
+
const label = result.killed.some((k) => k.pid === c.pid) ? 'killed' : 'FAILED';
|
|
276
|
+
console.error(` pid ${c.pid} age ${(0, pool_actions_1.formatAge)(c.ageMs)} worktree ${c.worktree} [${label}] ${c.command.slice(0, 80)}`);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
if (result.skippedSelfOrAncestor.length > 0) {
|
|
280
|
+
console.error(`skipped self/ancestors: ${result.skippedSelfOrAncestor.join(', ')}`);
|
|
212
281
|
}
|
|
213
282
|
if (result.errors.length > 0) {
|
|
214
283
|
for (const err of result.errors) {
|
|
@@ -242,6 +311,7 @@ async function main() {
|
|
|
242
311
|
// Say plainly what state the pool is in, so a caller cannot read a
|
|
243
312
|
// non-zero exit as "nothing happened" (#453). Never assert the entry was
|
|
244
313
|
// marked without knowing it was — that claim being false is the bug.
|
|
314
|
+
printKilledProcesses(err.killedProcesses, err.killErrors, err.skippedSelfOrAncestor, '', ' ');
|
|
245
315
|
if (err.entryId === null) {
|
|
246
316
|
console.error('No pool entry was modified.');
|
|
247
317
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { claim, detect, gc, init, ReturnFailure, type ReturnResult, type ReturnVerification, readPoolFileConfig, refresh, replenish, resolvePoolDir, returnWorktree, status, WARM_COMMAND_TIMEOUT_MS, } from './pool-actions';
|
|
1
|
+
export { claim, detect, formatAge, type GcResult, gc, init, type ReapCandidate, type ReapOptions, type ReapResult, ReturnFailure, type ReturnResult, type ReturnVerification, readPoolFileConfig, reap, refresh, replenish, resolvePoolDir, returnWorktree, status, WARM_COMMAND_TIMEOUT_MS, } from './pool-actions';
|
|
2
2
|
export * from './pool-state';
|
|
3
|
+
export * from './process-scan';
|
|
3
4
|
export * from './project-env';
|
|
4
5
|
export * from './types';
|
|
5
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,MAAM,EACN,EAAE,EACF,IAAI,EACJ,aAAa,EACb,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,OAAO,EACP,SAAS,EACT,cAAc,EACd,cAAc,EACd,MAAM,EACN,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,QAAQ,EACb,EAAE,EACF,IAAI,EACJ,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,aAAa,EACb,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,IAAI,EACJ,OAAO,EACP,SAAS,EACT,cAAc,EACd,cAAc,EACd,MAAM,EACN,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -14,14 +14,16 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.WARM_COMMAND_TIMEOUT_MS = exports.status = exports.returnWorktree = exports.resolvePoolDir = exports.replenish = exports.refresh = exports.readPoolFileConfig = exports.ReturnFailure = exports.init = exports.gc = exports.detect = exports.claim = void 0;
|
|
17
|
+
exports.WARM_COMMAND_TIMEOUT_MS = exports.status = exports.returnWorktree = exports.resolvePoolDir = exports.replenish = exports.refresh = exports.reap = exports.readPoolFileConfig = exports.ReturnFailure = exports.init = exports.gc = exports.formatAge = exports.detect = exports.claim = void 0;
|
|
18
18
|
var pool_actions_1 = require("./pool-actions");
|
|
19
19
|
Object.defineProperty(exports, "claim", { enumerable: true, get: function () { return pool_actions_1.claim; } });
|
|
20
20
|
Object.defineProperty(exports, "detect", { enumerable: true, get: function () { return pool_actions_1.detect; } });
|
|
21
|
+
Object.defineProperty(exports, "formatAge", { enumerable: true, get: function () { return pool_actions_1.formatAge; } });
|
|
21
22
|
Object.defineProperty(exports, "gc", { enumerable: true, get: function () { return pool_actions_1.gc; } });
|
|
22
23
|
Object.defineProperty(exports, "init", { enumerable: true, get: function () { return pool_actions_1.init; } });
|
|
23
24
|
Object.defineProperty(exports, "ReturnFailure", { enumerable: true, get: function () { return pool_actions_1.ReturnFailure; } });
|
|
24
25
|
Object.defineProperty(exports, "readPoolFileConfig", { enumerable: true, get: function () { return pool_actions_1.readPoolFileConfig; } });
|
|
26
|
+
Object.defineProperty(exports, "reap", { enumerable: true, get: function () { return pool_actions_1.reap; } });
|
|
25
27
|
Object.defineProperty(exports, "refresh", { enumerable: true, get: function () { return pool_actions_1.refresh; } });
|
|
26
28
|
Object.defineProperty(exports, "replenish", { enumerable: true, get: function () { return pool_actions_1.replenish; } });
|
|
27
29
|
Object.defineProperty(exports, "resolvePoolDir", { enumerable: true, get: function () { return pool_actions_1.resolvePoolDir; } });
|
|
@@ -29,6 +31,7 @@ Object.defineProperty(exports, "returnWorktree", { enumerable: true, get: functi
|
|
|
29
31
|
Object.defineProperty(exports, "status", { enumerable: true, get: function () { return pool_actions_1.status; } });
|
|
30
32
|
Object.defineProperty(exports, "WARM_COMMAND_TIMEOUT_MS", { enumerable: true, get: function () { return pool_actions_1.WARM_COMMAND_TIMEOUT_MS; } });
|
|
31
33
|
__exportStar(require("./pool-state"), exports);
|
|
34
|
+
__exportStar(require("./process-scan"), exports);
|
|
32
35
|
__exportStar(require("./project-env"), exports);
|
|
33
36
|
__exportStar(require("./types"), exports);
|
|
34
37
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+CAqBwB;AApBtB,qGAAA,KAAK,OAAA;AACL,sGAAA,MAAM,OAAA;AACN,yGAAA,SAAS,OAAA;AAET,kGAAA,EAAE,OAAA;AACF,oGAAA,IAAI,OAAA;AAIJ,6GAAA,aAAa,OAAA;AAGb,kHAAA,kBAAkB,OAAA;AAClB,oGAAA,IAAI,OAAA;AACJ,uGAAA,OAAO,OAAA;AACP,yGAAA,SAAS,OAAA;AACT,8GAAA,cAAc,OAAA;AACd,8GAAA,cAAc,OAAA;AACd,sGAAA,MAAM,OAAA;AACN,uHAAA,uBAAuB,OAAA;AAEzB,+CAA6B;AAC7B,iDAA+B;AAC/B,gDAA8B;AAC9B,0CAAwB"}
|
package/dist/pool-actions.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getPoolStatus, type PoolDirClassification } from './pool-state';
|
|
2
|
+
import { type KilledProcess } from './process-scan';
|
|
2
3
|
import { type PoolFileConfig, type ProjectEnv, type ReturnStep, type WorktreeStatus } from './types';
|
|
3
4
|
/** Per-command budget for a warm-up install/build (#561: also the floor `packages/sched`'s batch-setup warm step should give its own exec). */
|
|
4
5
|
export declare const WARM_COMMAND_TIMEOUT_MS = 300000;
|
|
@@ -70,6 +71,29 @@ export interface ReturnResult {
|
|
|
70
71
|
path: string;
|
|
71
72
|
/** The self-check that ran before this result was returned. */
|
|
72
73
|
verification: ReturnVerification;
|
|
74
|
+
/**
|
|
75
|
+
* Processes killed before the recycle (imboard-ai/ai-dossier#760) — a dev
|
|
76
|
+
* server, jest run, or vite server started inside the worktree by a
|
|
77
|
+
* verification step, which would otherwise outlive it. Empty when nothing
|
|
78
|
+
* was found running.
|
|
79
|
+
*/
|
|
80
|
+
killedProcesses: KilledProcess[];
|
|
81
|
+
/**
|
|
82
|
+
* Non-fatal kill failures (e.g. EPERM sending a signal) — a process that
|
|
83
|
+
* could not be confirmed dead. Empty on a clean kill or when nothing was
|
|
84
|
+
* found running; never throws the return over this, but an operator
|
|
85
|
+
* reading only `killedProcesses` would otherwise see `[]` and read a
|
|
86
|
+
* refused kill as "nothing was running."
|
|
87
|
+
*/
|
|
88
|
+
killErrors: string[];
|
|
89
|
+
/**
|
|
90
|
+
* Pids that matched but were excluded because they are this process or an
|
|
91
|
+
* ancestor of it (imboard-ai/ai-dossier#763) — reported so an operator can
|
|
92
|
+
* see the exclusion happened rather than reading a shorter-than-expected
|
|
93
|
+
* `killedProcesses` list as a scan failure. Routinely non-empty: the CLI's
|
|
94
|
+
* own invocation (`return --path <wt>`) has `<wt>` in its own command line.
|
|
95
|
+
*/
|
|
96
|
+
skippedSelfOrAncestor: number[];
|
|
73
97
|
}
|
|
74
98
|
/**
|
|
75
99
|
* A `return` that failed, tagged with the step that failed (#453 AC1). The
|
|
@@ -87,7 +111,13 @@ export declare class ReturnFailure extends Error {
|
|
|
87
111
|
readonly worktreePath: string;
|
|
88
112
|
/** Why the entry could NOT be marked broken, or `null` when it was marked. */
|
|
89
113
|
readonly markError: string | null;
|
|
90
|
-
|
|
114
|
+
/** Processes killed before the failure (imboard-ai/ai-dossier#760), if any. */
|
|
115
|
+
readonly killedProcesses: KilledProcess[];
|
|
116
|
+
/** Non-fatal kill failures before the failure, if any — see `ReturnResult.killErrors`. */
|
|
117
|
+
readonly killErrors: string[];
|
|
118
|
+
/** See `ReturnResult.skippedSelfOrAncestor` (imboard-ai/ai-dossier#763). */
|
|
119
|
+
readonly skippedSelfOrAncestor: number[];
|
|
120
|
+
constructor(step: ReturnStep, worktreePath: string, entryId: string | null, cause: unknown, markError?: string | null, killedProcesses?: KilledProcess[], killErrors?: string[], skippedSelfOrAncestor?: number[]);
|
|
91
121
|
}
|
|
92
122
|
/**
|
|
93
123
|
* Recycle an assigned worktree back to `warm`.
|
|
@@ -100,7 +130,7 @@ export declare class ReturnFailure extends Error {
|
|
|
100
130
|
* (recorded id, actual on-disk path, a pool-owned temp branch) so `status`
|
|
101
131
|
* shows it and `gc` can remove it.
|
|
102
132
|
*/
|
|
103
|
-
export declare function returnWorktree(worktreePath: string): ReturnResult
|
|
133
|
+
export declare function returnWorktree(worktreePath: string): Promise<ReturnResult>;
|
|
104
134
|
export interface RefreshResult {
|
|
105
135
|
refreshed: number;
|
|
106
136
|
/** Worktrees left untouched because provenance could not be confirmed. */
|
|
@@ -149,8 +179,64 @@ export interface GcResult {
|
|
|
149
179
|
/** `true` when confirmation was missing and nothing was removed. */
|
|
150
180
|
aborted: boolean;
|
|
151
181
|
errors: string[];
|
|
182
|
+
/**
|
|
183
|
+
* Processes killed before their worktree was destroyed (#760), across all
|
|
184
|
+
* removed candidates. Empty on a dry run — nothing is killed until the
|
|
185
|
+
* removal actually happens.
|
|
186
|
+
*/
|
|
187
|
+
killedProcesses: KilledProcess[];
|
|
188
|
+
/** See `ReturnResult.skippedSelfOrAncestor` (#763), aggregated across all candidates. */
|
|
189
|
+
skippedSelfOrAncestor: number[];
|
|
152
190
|
}
|
|
153
191
|
export declare function gc(opts?: GcOptions): Promise<GcResult>;
|
|
192
|
+
export interface ReapOptions {
|
|
193
|
+
/** Only kill processes at least this many hours old. Default 24. */
|
|
194
|
+
olderThanHours?: number;
|
|
195
|
+
/** Report what would be killed and exit without touching anything. */
|
|
196
|
+
dryRun?: boolean;
|
|
197
|
+
/** Approve the kill list without prompting. */
|
|
198
|
+
yes?: boolean;
|
|
199
|
+
/** Override TTY detection for the confirmation prompt. */
|
|
200
|
+
interactive?: boolean;
|
|
201
|
+
}
|
|
202
|
+
export interface ReapCandidate {
|
|
203
|
+
pid: number;
|
|
204
|
+
/** Directory name directly inside the pool directory this process is rooted in. */
|
|
205
|
+
worktree: string;
|
|
206
|
+
/** Best-effort command line. */
|
|
207
|
+
command: string;
|
|
208
|
+
/** Milliseconds since process start, or `null` when it could not be determined. */
|
|
209
|
+
ageMs: number | null;
|
|
210
|
+
}
|
|
211
|
+
export interface ReapResult {
|
|
212
|
+
/** Orphaned processes meeting the `--older-than` age threshold — what a real run would kill. */
|
|
213
|
+
candidates: ReapCandidate[];
|
|
214
|
+
/** The subset actually killed (empty on a dry run or an aborted run). */
|
|
215
|
+
killed: ReapCandidate[];
|
|
216
|
+
dryRun: boolean;
|
|
217
|
+
/** `true` when confirmation was missing and nothing was killed. */
|
|
218
|
+
aborted: boolean;
|
|
219
|
+
errors: string[];
|
|
220
|
+
/** See `ReturnResult.skippedSelfOrAncestor` (#763) — computed over the whole pool directory. */
|
|
221
|
+
skippedSelfOrAncestor: number[];
|
|
222
|
+
}
|
|
223
|
+
/** Human-readable age for CLI/plan output — hours to one decimal, or 'unknown'. */
|
|
224
|
+
export declare function formatAge(ageMs: number | null): string;
|
|
225
|
+
/**
|
|
226
|
+
* Collect processes rooted in worktrees the pool owns that are no longer
|
|
227
|
+
* legitimately running — a removed worktree (no longer a registered git
|
|
228
|
+
* worktree), or a pool entry that is not `assigned` (imboard-ai/ai-dossier#760).
|
|
229
|
+
* A currently-assigned, still-registered worktree is active work and is
|
|
230
|
+
* always out of scope here — `return`'s kill-on-recycle covers it once it is
|
|
231
|
+
* actually returned. A worktree the pool does not own (a developer's own
|
|
232
|
+
* checkout sharing the pool directory) is never touched, matching every
|
|
233
|
+
* other command's ownership rule (#438).
|
|
234
|
+
*
|
|
235
|
+
* This is what a host timer calls (`reap --older-than 24`, cron-driven) to
|
|
236
|
+
* collect processes that outlived the worktree, branch, and issue that
|
|
237
|
+
* spawned them.
|
|
238
|
+
*/
|
|
239
|
+
export declare function reap(opts?: ReapOptions): Promise<ReapResult>;
|
|
154
240
|
export declare function status(): ReturnType<typeof getPoolStatus> & {
|
|
155
241
|
pool_dir: string;
|
|
156
242
|
/** Worktrees sharing the pool directory that the pool did not create. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-actions.d.ts","sourceRoot":"","sources":["../src/pool-actions.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,aAAa,
|
|
1
|
+
{"version":3,"file":"pool-actions.d.ts","sourceRoot":"","sources":["../src/pool-actions.ts"],"names":[],"mappings":"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"}
|