crewly 1.20.157 → 1.20.159
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 +1 -0
- package/config/skills/registry.json +55 -4
- package/config/templates/growth-marketing-team.json +5 -5
- package/config/templates/personal-assistant-team.json +5 -5
- package/dist/backend/backend/src/constants.d.ts +120 -5
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +145 -8
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/worktree-janitor/worktree-janitor.routes.d.ts +2 -1
- package/dist/backend/backend/src/controllers/worktree-janitor/worktree-janitor.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/worktree-janitor/worktree-janitor.routes.js +4 -2
- package/dist/backend/backend/src/controllers/worktree-janitor/worktree-janitor.routes.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +17 -2
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +9 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js +34 -29
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/codex-runtime.service.d.ts +4 -3
- package/dist/backend/backend/src/services/agent/codex-runtime.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/codex-runtime.service.js +48 -3
- package/dist/backend/backend/src/services/agent/codex-runtime.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts +9 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js +18 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js.map +1 -1
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js +5 -1
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +14 -4
- package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
- package/dist/backend/backend/src/services/agent/tmux-command.service.d.ts +14 -2
- package/dist/backend/backend/src/services/agent/tmux-command.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/tmux-command.service.js +24 -5
- package/dist/backend/backend/src/services/agent/tmux-command.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/tmux.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/tmux.service.js +14 -9
- package/dist/backend/backend/src/services/agent/tmux.service.js.map +1 -1
- package/dist/backend/backend/src/services/backup/backup-archive.service.d.ts +8 -0
- package/dist/backend/backend/src/services/backup/backup-archive.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/backup/backup-archive.service.js +16 -8
- package/dist/backend/backend/src/services/backup/backup-archive.service.js.map +1 -1
- package/dist/backend/backend/src/services/backup/backup.types.d.ts +19 -0
- package/dist/backend/backend/src/services/backup/backup.types.d.ts.map +1 -1
- package/dist/backend/backend/src/services/backup/backup.types.js +19 -0
- package/dist/backend/backend/src/services/backup/backup.types.js.map +1 -1
- package/dist/backend/backend/src/services/security/secret-scrub.service.d.ts +108 -0
- package/dist/backend/backend/src/services/security/secret-scrub.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/security/secret-scrub.service.js +200 -0
- package/dist/backend/backend/src/services/security/secret-scrub.service.js.map +1 -0
- package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts +13 -9
- package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/pty/pty-session-backend.js +30 -14
- package/dist/backend/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
- package/dist/backend/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/pty/pty-session.js +6 -1
- package/dist/backend/backend/src/services/session/pty/pty-session.js.map +1 -1
- package/dist/backend/backend/src/services/session/session-command-helper.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/session-command-helper.js +3 -2
- package/dist/backend/backend/src/services/session/session-command-helper.js.map +1 -1
- package/dist/backend/backend/src/services/worktree/low-disk-guard.d.ts +109 -0
- package/dist/backend/backend/src/services/worktree/low-disk-guard.d.ts.map +1 -0
- package/dist/backend/backend/src/services/worktree/low-disk-guard.js +148 -0
- package/dist/backend/backend/src/services/worktree/low-disk-guard.js.map +1 -0
- package/dist/backend/backend/src/services/worktree/scratch-janitor.d.ts +140 -0
- package/dist/backend/backend/src/services/worktree/scratch-janitor.d.ts.map +1 -0
- package/dist/backend/backend/src/services/worktree/scratch-janitor.js +249 -0
- package/dist/backend/backend/src/services/worktree/scratch-janitor.js.map +1 -0
- package/dist/backend/backend/src/services/worktree/worktree-janitor.git.d.ts +92 -1
- package/dist/backend/backend/src/services/worktree/worktree-janitor.git.d.ts.map +1 -1
- package/dist/backend/backend/src/services/worktree/worktree-janitor.git.js +207 -1
- package/dist/backend/backend/src/services/worktree/worktree-janitor.git.js.map +1 -1
- package/dist/backend/backend/src/services/worktree/worktree-janitor.service.d.ts +135 -28
- package/dist/backend/backend/src/services/worktree/worktree-janitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/worktree/worktree-janitor.service.js +248 -39
- package/dist/backend/backend/src/services/worktree/worktree-janitor.service.js.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.d.ts +1 -1
- package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/backend/backend/src/utils/secret-redactor.d.ts +131 -0
- package/dist/backend/backend/src/utils/secret-redactor.d.ts.map +1 -0
- package/dist/backend/backend/src/utils/secret-redactor.js +233 -0
- package/dist/backend/backend/src/utils/secret-redactor.js.map +1 -0
- package/dist/backend/backend/src/utils/shell-history.d.ts +48 -0
- package/dist/backend/backend/src/utils/shell-history.d.ts.map +1 -0
- package/dist/backend/backend/src/utils/shell-history.js +65 -0
- package/dist/backend/backend/src/utils/shell-history.js.map +1 -0
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +120 -5
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +145 -8
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +9 -0
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.js +34 -29
- package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/codex-runtime.service.d.ts +4 -3
- package/dist/cli/backend/src/services/agent/codex-runtime.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/codex-runtime.service.js +48 -3
- package/dist/cli/backend/src/services/agent/codex-runtime.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts +9 -0
- package/dist/cli/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/crewly-agent/in-process-log-buffer.js +18 -1
- package/dist/cli/backend/src/services/agent/crewly-agent/in-process-log-buffer.js.map +1 -1
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js +5 -1
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js +14 -4
- package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
- package/dist/cli/backend/src/services/backup/backup-archive.service.d.ts +8 -0
- package/dist/cli/backend/src/services/backup/backup-archive.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/backup/backup-archive.service.js +16 -8
- package/dist/cli/backend/src/services/backup/backup-archive.service.js.map +1 -1
- package/dist/cli/backend/src/services/backup/backup.types.d.ts +19 -0
- package/dist/cli/backend/src/services/backup/backup.types.d.ts.map +1 -1
- package/dist/cli/backend/src/services/backup/backup.types.js +19 -0
- package/dist/cli/backend/src/services/backup/backup.types.js.map +1 -1
- package/dist/cli/backend/src/services/security/secret-scrub.service.d.ts +108 -0
- package/dist/cli/backend/src/services/security/secret-scrub.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/security/secret-scrub.service.js +200 -0
- package/dist/cli/backend/src/services/security/secret-scrub.service.js.map +1 -0
- package/dist/cli/backend/src/services/session/pty/pty-session-backend.d.ts +13 -9
- package/dist/cli/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
- package/dist/cli/backend/src/services/session/pty/pty-session-backend.js +30 -14
- package/dist/cli/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
- package/dist/cli/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
- package/dist/cli/backend/src/services/session/pty/pty-session.js +6 -1
- package/dist/cli/backend/src/services/session/pty/pty-session.js.map +1 -1
- package/dist/cli/backend/src/services/session/session-command-helper.d.ts.map +1 -1
- package/dist/cli/backend/src/services/session/session-command-helper.js +3 -2
- package/dist/cli/backend/src/services/session/session-command-helper.js.map +1 -1
- package/dist/cli/backend/src/types/team-template.types.d.ts +1 -1
- package/dist/cli/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/cli/backend/src/utils/secret-redactor.d.ts +131 -0
- package/dist/cli/backend/src/utils/secret-redactor.d.ts.map +1 -0
- package/dist/cli/backend/src/utils/secret-redactor.js +233 -0
- package/dist/cli/backend/src/utils/secret-redactor.js.map +1 -0
- package/dist/cli/backend/src/utils/shell-history.d.ts +48 -0
- package/dist/cli/backend/src/utils/shell-history.d.ts.map +1 -0
- package/dist/cli/backend/src/utils/shell-history.js +65 -0
- package/dist/cli/backend/src/utils/shell-history.js.map +1 -0
- package/dist/cli/cli/src/commands/security.d.ts +41 -0
- package/dist/cli/cli/src/commands/security.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/security.js +81 -0
- package/dist/cli/cli/src/commands/security.js.map +1 -0
- package/dist/cli/cli/src/index.js +9 -0
- package/dist/cli/cli/src/index.js.map +1 -1
- package/frontend/dist/assets/index-edd6f262.css +42 -0
- package/frontend/dist/assets/{index-8d4b3ad2.js → index-f79676aa.js} +268 -268
- package/frontend/dist/index.html +2 -2
- package/package.json +1 -1
- package/frontend/dist/assets/index-b6aded4c.css +0 -42
|
@@ -1,43 +1,47 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Disk janitor — removes git worktrees whose work has landed, stale Claude
|
|
3
|
+
* Code session scratch dirs, and watches free disk space.
|
|
3
4
|
*
|
|
4
|
-
* Agents create a worktree per code task
|
|
5
|
-
* `/tmp/crewly-worktrees
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* Agents create a worktree per code task and never delete it — under
|
|
6
|
+
* `<repo>/.claude/worktrees/`, `/tmp/crewly-worktrees/`, but also at
|
|
7
|
+
* arbitrary paths (`/private/tmp/claude-501/visa-cm-wt`, `../crewly-wt-805`),
|
|
8
|
+
* each with its own node_modules. They also clone whole repos into Claude
|
|
9
|
+
* Code's per-session temp dirs. A Mac filled its disk (ENOSPC) with both.
|
|
10
|
+
* Owner decision: finished work goes away by itself.
|
|
8
11
|
*
|
|
9
12
|
* ## Which repos
|
|
10
13
|
* Every registered project path (projects store) that is inside a git repo,
|
|
11
|
-
*
|
|
12
|
-
*
|
|
14
|
+
* the Crewly package root when it is a dev checkout, and every repo that owns
|
|
15
|
+
* a linked worktree found under the temp roots (`/tmp`, os.tmpdir(), and the
|
|
16
|
+
* Claude scratch roots `<tmp>/claude-<uid>`, searched a few levels deep) — so
|
|
17
|
+
* a repo that is not a registered project still gets its temp worktrees
|
|
18
|
+
* cleaned. Repos are de-duplicated by their main worktree.
|
|
13
19
|
*
|
|
14
|
-
* ##
|
|
20
|
+
* ## Worktree removal rules — a worktree is removed only when ALL hold
|
|
15
21
|
* 1. It is not the main worktree, not bare, and not `prunable` (a missing
|
|
16
|
-
* directory is left to `git worktree prune`).
|
|
22
|
+
* directory is left to `git worktree prune`). Any other linked worktree of
|
|
23
|
+
* a known repo is a candidate, wherever it lives and whatever its branch.
|
|
17
24
|
* 2. It is not locked (`git worktree lock`; Claude Code locks the worktree of
|
|
18
25
|
* a running subagent).
|
|
19
26
|
* 3. It is not under `<repo>/.crewly/worktrees/` — that directory belongs to
|
|
20
27
|
* the per-WorkItem worktree feature (#814), which does its own
|
|
21
28
|
* WorkItem-aware cleanup.
|
|
22
|
-
* 4.
|
|
23
|
-
* or `<tmp>/crewly-worktrees/` (`/tmp` and `os.tmpdir()`), OR its branch
|
|
24
|
-
* starts with an agent-only prefix (`worktree-agent-`, Claude Code's
|
|
25
|
-
* automatic subagent branch). Human-made worktrees such as
|
|
26
|
-
* `../crewly-wt-805` on `fix/...` are never touched. Deliberately narrow:
|
|
27
|
-
* a false "keep" costs disk, a false "remove" costs work.
|
|
28
|
-
* 5. Nothing is working in it: no Crewly agent session was started in it and
|
|
29
|
+
* 4. Nothing is working in it: no Crewly agent session was started in it and
|
|
29
30
|
* no process of this user (PTY shells, runtimes, editors, test runners)
|
|
30
31
|
* has its cwd inside it. If the process probe fails, everything is kept.
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
32
|
+
* 5. It is idle: last touched (newest mtime of the directory and its git
|
|
33
|
+
* dir's index / HEAD / logs/HEAD) more than 2 hours ago in a known agent
|
|
34
|
+
* location (`<main>/.claude/worktrees/`, `<tmp>/crewly-worktrees/`, or a
|
|
35
|
+
* `worktree-agent-*` branch), more than 24 hours ago anywhere else.
|
|
36
|
+
* 6. `git status --porcelain --untracked-files=all` is empty: no tracked
|
|
34
37
|
* change and no untracked file. Ignored files (node_modules, dist) do not
|
|
35
38
|
* count. A failing status keeps it.
|
|
36
|
-
*
|
|
39
|
+
* 7. Its work has landed: HEAD is an ancestor of `origin/<default branch>`
|
|
37
40
|
* after a quiet `git fetch` (fetch errors ignored), OR — when `gh` is
|
|
38
41
|
* installed and authenticated — a MERGED PR has this branch as head AND
|
|
39
42
|
* its head commit equals the worktree HEAD (squash merges; commits made
|
|
40
|
-
* after the merge keep the worktree).
|
|
43
|
+
* after the merge keep the worktree). A repo without an origin (not on
|
|
44
|
+
* GitHub) only has the ancestor check, so its worktrees are kept.
|
|
41
45
|
*
|
|
42
46
|
* ## Removal
|
|
43
47
|
* `git worktree remove <path>` without `--force`. If git refuses although
|
|
@@ -45,8 +49,24 @@
|
|
|
45
49
|
* no submodules, it is retried once with `--force`. Then the local branch is
|
|
46
50
|
* deleted (never a protected name), and `git worktree prune` runs per repo.
|
|
47
51
|
*
|
|
52
|
+
* ## Scratch sweep
|
|
53
|
+
* After the worktrees, stale Claude Code session dirs
|
|
54
|
+
* (`<tmp>/claude-<uid>/<slug>/<uuid>/`) are deleted when idle for 3 days,
|
|
55
|
+
* unused, and every git repo inside is clean and fully pushed. See
|
|
56
|
+
* {@link module:services/worktree/scratch-janitor} for the rules.
|
|
57
|
+
*
|
|
58
|
+
* ## Low-disk guard
|
|
59
|
+
* Every 10 minutes the free space of the volume holding CREWLY_HOME is read.
|
|
60
|
+
* Below 15 GB a pass runs at once (at most one per 30 minutes) with every
|
|
61
|
+
* idle threshold halved (never below 2 h); every pass started while space is
|
|
62
|
+
* low uses the halved thresholds. If space is still below 15 GB the owner is
|
|
63
|
+
* told, at most once per 24 h, with the free space and the 5 biggest items
|
|
64
|
+
* the janitor left and why; below 5 GB the notice is urgent and repeats at
|
|
65
|
+
* most every 6 h.
|
|
66
|
+
*
|
|
48
67
|
* Runs every 30 minutes (first run 10 minutes after boot). Kill switch:
|
|
49
|
-
* `CREWLY_WORKTREE_JANITOR=0
|
|
68
|
+
* `CREWLY_WORKTREE_JANITOR=0` (also stops the low-disk guard). Never throws;
|
|
69
|
+
* logs one summary line per sweep.
|
|
50
70
|
*
|
|
51
71
|
* @module services/worktree/worktree-janitor.service
|
|
52
72
|
*/
|
|
@@ -55,7 +75,13 @@ import * as os from 'os';
|
|
|
55
75
|
import * as path from 'path';
|
|
56
76
|
import { WORKTREE_JANITOR_CONSTANTS } from '../../constants.js';
|
|
57
77
|
import { LoggerService } from '../core/logger.service.js';
|
|
58
|
-
import {
|
|
78
|
+
import { getCrewlyHomePath } from '../core/crewly-home.utils.js';
|
|
79
|
+
import { safeReadJson, modifyJsonFile } from '../../utils/file-io.utils.js';
|
|
80
|
+
import { buildLowDiskNotice, diskLevel, idleThreshold, noticeToSend, readFreeBytes, recordNotice, } from './low-disk-guard.js';
|
|
81
|
+
import { defaultScratchRoots, sweepScratch } from './scratch-janitor.js';
|
|
82
|
+
import { canonicalPath, diskUsageBytes, discoverLinkedWorktreeRepos, formatBytes, isJanitorDisabled, isPathInside, latestWorktreeMtimeMs, listProcessCwds, parsePorcelainWorktrees, runCommand, } from './worktree-janitor.git.js';
|
|
83
|
+
/** Milliseconds per minute (for the `recent` detail text). */
|
|
84
|
+
const MS_PER_MINUTE = 60 * 1000;
|
|
59
85
|
/**
|
|
60
86
|
* Periodic cleaner of finished agent worktrees. See the module JSDoc for the
|
|
61
87
|
* exact rules.
|
|
@@ -77,11 +103,26 @@ export class WorktreeJanitorService {
|
|
|
77
103
|
ghUsable;
|
|
78
104
|
lastSummary = null;
|
|
79
105
|
loggerInstance = null;
|
|
106
|
+
diskTimer = null;
|
|
107
|
+
diskCheckInFlight = null;
|
|
108
|
+
lastPassAt = null;
|
|
109
|
+
memoryNoticeState = {};
|
|
110
|
+
notifier;
|
|
80
111
|
/**
|
|
81
112
|
* @param options - Injectable dependencies; defaults use the live backend
|
|
82
113
|
*/
|
|
83
114
|
constructor(options = {}) {
|
|
84
115
|
this.opts = options;
|
|
116
|
+
this.notifier = options.notifyOwner ?? null;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Set how the owner is told about low disk (the server wires the existing
|
|
120
|
+
* Slack owner-notification path here).
|
|
121
|
+
*
|
|
122
|
+
* @param notifier - Sender, or null to disable notices
|
|
123
|
+
*/
|
|
124
|
+
setLowDiskNotifier(notifier) {
|
|
125
|
+
this.notifier = notifier;
|
|
85
126
|
}
|
|
86
127
|
/**
|
|
87
128
|
* Process-wide instance used by the server and the HTTP routes.
|
|
@@ -108,7 +149,8 @@ export class WorktreeJanitorService {
|
|
|
108
149
|
}
|
|
109
150
|
/**
|
|
110
151
|
* Schedule the periodic pass: first after FIRST_RUN_DELAY_MS, then every
|
|
111
|
-
* INTERVAL_MS
|
|
152
|
+
* INTERVAL_MS; plus the low-disk check every LOW_DISK_CHECK_INTERVAL_MS.
|
|
153
|
+
* No-op when disabled or already started. Timers are unref'd.
|
|
112
154
|
*
|
|
113
155
|
* @returns True when scheduled
|
|
114
156
|
*/
|
|
@@ -122,6 +164,8 @@ export class WorktreeJanitorService {
|
|
|
122
164
|
this.intervalTimer.unref?.();
|
|
123
165
|
}, WORKTREE_JANITOR_CONSTANTS.FIRST_RUN_DELAY_MS);
|
|
124
166
|
this.firstRunTimer.unref?.();
|
|
167
|
+
this.diskTimer = setInterval(() => void this.checkDisk(), WORKTREE_JANITOR_CONSTANTS.LOW_DISK_CHECK_INTERVAL_MS);
|
|
168
|
+
this.diskTimer.unref?.();
|
|
125
169
|
return true;
|
|
126
170
|
}
|
|
127
171
|
/** Cancel scheduled passes. */
|
|
@@ -130,8 +174,37 @@ export class WorktreeJanitorService {
|
|
|
130
174
|
clearTimeout(this.firstRunTimer);
|
|
131
175
|
if (this.intervalTimer)
|
|
132
176
|
clearInterval(this.intervalTimer);
|
|
177
|
+
if (this.diskTimer)
|
|
178
|
+
clearInterval(this.diskTimer);
|
|
133
179
|
this.firstRunTimer = null;
|
|
134
180
|
this.intervalTimer = null;
|
|
181
|
+
this.diskTimer = null;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Current free space of the watched volume.
|
|
185
|
+
*
|
|
186
|
+
* @returns Watched path, free bytes (null when unknown) and level
|
|
187
|
+
*/
|
|
188
|
+
async diskStatus() {
|
|
189
|
+
const p = this.diskPath();
|
|
190
|
+
const freeBytes = await readFreeBytes(p, this.opts.statfs);
|
|
191
|
+
return { path: p, freeBytes, level: freeBytes === null ? 'unknown' : diskLevel(freeBytes) };
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Low-disk check: read free space; below LOW_DISK_BYTES run a pass now
|
|
195
|
+
* (unless one ran within LOW_DISK_PASS_GAP_MS), then, if space is still
|
|
196
|
+
* short, tell the owner within the notice cadence. Never throws. Honours
|
|
197
|
+
* the kill switch. Concurrent calls share the check in flight.
|
|
198
|
+
*
|
|
199
|
+
* @returns What the check did
|
|
200
|
+
*/
|
|
201
|
+
async checkDisk() {
|
|
202
|
+
if (this.diskCheckInFlight)
|
|
203
|
+
return this.diskCheckInFlight;
|
|
204
|
+
this.diskCheckInFlight = this.doCheckDisk().finally(() => {
|
|
205
|
+
this.diskCheckInFlight = null;
|
|
206
|
+
});
|
|
207
|
+
return this.diskCheckInFlight;
|
|
135
208
|
}
|
|
136
209
|
/**
|
|
137
210
|
* Summary of the last completed real pass, if any.
|
|
@@ -163,8 +236,10 @@ export class WorktreeJanitorService {
|
|
|
163
236
|
this.inFlight = null;
|
|
164
237
|
});
|
|
165
238
|
const summary = await this.inFlight;
|
|
166
|
-
if (!summary.dryRun && !summary.disabled)
|
|
239
|
+
if (!summary.dryRun && !summary.disabled) {
|
|
167
240
|
this.lastSummary = summary;
|
|
241
|
+
this.lastPassAt = this.now();
|
|
242
|
+
}
|
|
168
243
|
return summary;
|
|
169
244
|
}
|
|
170
245
|
// ---------------------------------------------------------------------
|
|
@@ -175,6 +250,108 @@ export class WorktreeJanitorService {
|
|
|
175
250
|
this.loggerInstance = LoggerService.getInstance().createComponentLogger('WorktreeJanitor');
|
|
176
251
|
return this.loggerInstance;
|
|
177
252
|
}
|
|
253
|
+
now() {
|
|
254
|
+
return (this.opts.now ?? Date.now)();
|
|
255
|
+
}
|
|
256
|
+
diskPath() {
|
|
257
|
+
return this.opts.diskPath ?? getCrewlyHomePath();
|
|
258
|
+
}
|
|
259
|
+
scratchRoots() {
|
|
260
|
+
return this.opts.scratchRoots ?? defaultScratchRoots();
|
|
261
|
+
}
|
|
262
|
+
tmpRoots() {
|
|
263
|
+
return this.opts.tmpRoots ?? ['/tmp', os.tmpdir()];
|
|
264
|
+
}
|
|
265
|
+
statePath() {
|
|
266
|
+
if (this.opts.statePath !== undefined)
|
|
267
|
+
return this.opts.statePath;
|
|
268
|
+
return path.join(getCrewlyHomePath(), WORKTREE_JANITOR_CONSTANTS.STATE_FILENAME);
|
|
269
|
+
}
|
|
270
|
+
async readNoticeState() {
|
|
271
|
+
const p = this.statePath();
|
|
272
|
+
const mem = this.memoryNoticeState;
|
|
273
|
+
if (!p)
|
|
274
|
+
return mem;
|
|
275
|
+
const file = (await safeReadJson(p, null)) ?? {};
|
|
276
|
+
// Memory wins when a save failed (full disk), so the owner is not re-told every check.
|
|
277
|
+
const latest = (a, b) => a === undefined ? b : b === undefined ? a : Math.max(a, b);
|
|
278
|
+
return { lastNoticeAt: latest(file.lastNoticeAt, mem.lastNoticeAt), lastUrgentAt: latest(file.lastUrgentAt, mem.lastUrgentAt) };
|
|
279
|
+
}
|
|
280
|
+
async writeNoticeState(state) {
|
|
281
|
+
const p = this.statePath();
|
|
282
|
+
this.memoryNoticeState = state;
|
|
283
|
+
if (!p)
|
|
284
|
+
return;
|
|
285
|
+
try {
|
|
286
|
+
await modifyJsonFile(p, null, () => state);
|
|
287
|
+
}
|
|
288
|
+
catch (err) {
|
|
289
|
+
// A full disk can refuse the write; the in-memory copy still holds for this process.
|
|
290
|
+
this.logger.warn('Could not save disk janitor state', { error: err instanceof Error ? err.message : String(err) });
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
async doCheckDisk() {
|
|
294
|
+
const result = { freeBytesBefore: null, freeBytesAfter: null, ranPass: false, notified: null };
|
|
295
|
+
try {
|
|
296
|
+
if (this.isDisabled())
|
|
297
|
+
return result;
|
|
298
|
+
const before = await readFreeBytes(this.diskPath(), this.opts.statfs);
|
|
299
|
+
result.freeBytesBefore = before;
|
|
300
|
+
result.freeBytesAfter = before;
|
|
301
|
+
if (before === null || diskLevel(before) === 'ok')
|
|
302
|
+
return result;
|
|
303
|
+
let summary = this.lastSummary;
|
|
304
|
+
const gapOk = this.lastPassAt === null || this.now() - this.lastPassAt >= WORKTREE_JANITOR_CONSTANTS.LOW_DISK_PASS_GAP_MS;
|
|
305
|
+
if (gapOk) {
|
|
306
|
+
summary = await this.run();
|
|
307
|
+
result.ranPass = true;
|
|
308
|
+
result.freeBytesAfter = await readFreeBytes(this.diskPath(), this.opts.statfs);
|
|
309
|
+
}
|
|
310
|
+
const after = result.freeBytesAfter;
|
|
311
|
+
if (after === null || !this.notifier)
|
|
312
|
+
return result;
|
|
313
|
+
const state = await this.readNoticeState();
|
|
314
|
+
const kind = noticeToSend(diskLevel(after), state, this.now());
|
|
315
|
+
if (!kind)
|
|
316
|
+
return result;
|
|
317
|
+
const items = summary ? await this.keptItems(summary) : [];
|
|
318
|
+
// What the volume actually gained covers worktrees and scratch alike.
|
|
319
|
+
const freed = result.ranPass ? Math.max(0, after - before) : 0;
|
|
320
|
+
const notice = buildLowDiskNotice({ freeBytes: after, urgent: kind === 'urgent', freedBytes: freed, items });
|
|
321
|
+
const delivered = await this.notifier({ ...notice, urgent: kind === 'urgent' }).catch(() => false);
|
|
322
|
+
if (delivered) {
|
|
323
|
+
await this.writeNoticeState(recordNotice(state, kind, this.now()));
|
|
324
|
+
result.notified = kind;
|
|
325
|
+
}
|
|
326
|
+
this.logger.warn(`Low disk: ${formatBytes(after)} free${delivered ? `, owner notified (${kind})` : ', owner notice not delivered'}`);
|
|
327
|
+
}
|
|
328
|
+
catch (err) {
|
|
329
|
+
this.logger.warn('Low-disk check failed', { error: err instanceof Error ? err.message : String(err) });
|
|
330
|
+
}
|
|
331
|
+
return result;
|
|
332
|
+
}
|
|
333
|
+
/** Sizes of everything a pass left on disk that the owner could act on. */
|
|
334
|
+
async keptItems(summary) {
|
|
335
|
+
const skip = new Set(['main-worktree', 'bare', 'prunable']);
|
|
336
|
+
const candidates = [];
|
|
337
|
+
for (const w of summary.worktrees) {
|
|
338
|
+
if (!w.removed && !skip.has(w.reason) && (w.decision === 'keep' || w.error)) {
|
|
339
|
+
candidates.push({ path: w.path, reason: w.error ? 'remove-failed' : w.reason });
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
for (const s of summary.scratch?.sessions ?? []) {
|
|
343
|
+
if (!s.removed)
|
|
344
|
+
candidates.push({ path: s.path, reason: s.error ? 'remove-failed' : s.reason });
|
|
345
|
+
}
|
|
346
|
+
const sizeOf = this.opts.sizeOf ?? diskUsageBytes;
|
|
347
|
+
const items = [];
|
|
348
|
+
for (const c of candidates) {
|
|
349
|
+
const bytes = await sizeOf(c.path);
|
|
350
|
+
if (bytes !== null)
|
|
351
|
+
items.push({ ...c, bytes });
|
|
352
|
+
}
|
|
353
|
+
return items;
|
|
354
|
+
}
|
|
178
355
|
git(args, options = {}) {
|
|
179
356
|
return runCommand(this.opts.gitBin ?? 'git', args, options);
|
|
180
357
|
}
|
|
@@ -191,6 +368,9 @@ export class WorktreeJanitorService {
|
|
|
191
368
|
kept: 0,
|
|
192
369
|
keptReasons: {},
|
|
193
370
|
worktrees: [],
|
|
371
|
+
lowDisk: false,
|
|
372
|
+
freeBytes: null,
|
|
373
|
+
scratch: null,
|
|
194
374
|
};
|
|
195
375
|
if (!dryRun && this.isDisabled()) {
|
|
196
376
|
summary.disabled = true;
|
|
@@ -198,13 +378,15 @@ export class WorktreeJanitorService {
|
|
|
198
378
|
}
|
|
199
379
|
try {
|
|
200
380
|
this.ghUsable = undefined;
|
|
381
|
+
summary.freeBytes = await readFreeBytes(this.diskPath(), this.opts.statfs);
|
|
382
|
+
summary.lowDisk = summary.freeBytes !== null && diskLevel(summary.freeBytes) !== 'ok';
|
|
201
383
|
const repos = await this.resolveRepos();
|
|
202
384
|
summary.repos = repos.map((r) => r.main);
|
|
203
385
|
const busy = await this.safeBusyCwds();
|
|
204
386
|
for (const repo of repos) {
|
|
205
387
|
let removedHere = 0;
|
|
206
388
|
for (const entry of repo.entries) {
|
|
207
|
-
const verdict = await this.evaluate(repo, entry, busy);
|
|
389
|
+
const verdict = await this.evaluate(repo, entry, busy, summary.lowDisk);
|
|
208
390
|
const outcome = { ...verdict, removed: false, forced: false, branchDeleted: false };
|
|
209
391
|
if (verdict.decision === 'remove' && !dryRun) {
|
|
210
392
|
await this.remove(repo, outcome);
|
|
@@ -229,6 +411,15 @@ export class WorktreeJanitorService {
|
|
|
229
411
|
}
|
|
230
412
|
}
|
|
231
413
|
}
|
|
414
|
+
summary.scratch = await sweepScratch({
|
|
415
|
+
roots: this.scratchRoots(),
|
|
416
|
+
busy,
|
|
417
|
+
now: this.now(),
|
|
418
|
+
minIdleMs: idleThreshold(this.opts.scratchMinIdleMs ?? WORKTREE_JANITOR_CONSTANTS.SCRATCH_MIN_IDLE_MS, summary.lowDisk),
|
|
419
|
+
dryRun,
|
|
420
|
+
git: (args) => this.git(args),
|
|
421
|
+
sizeOf: this.opts.sizeOf,
|
|
422
|
+
});
|
|
232
423
|
}
|
|
233
424
|
catch (err) {
|
|
234
425
|
this.logger.warn('Worktree janitor pass failed', { error: err instanceof Error ? err.message : String(err) });
|
|
@@ -239,12 +430,28 @@ export class WorktreeJanitorService {
|
|
|
239
430
|
.sort((a, b) => b[1] - a[1])
|
|
240
431
|
.map(([k, v]) => `${k}: ${v}`)
|
|
241
432
|
.join(', ');
|
|
242
|
-
this.logger.info(`Worktree janitor: removed ${summary.removed}, kept ${summary.kept}${reasons ? ` (${reasons})` : ''} across ${summary.repos.length} repo(s) in ${summary.durationMs}ms`, { removed: summary.worktrees.filter((w) => w.removed).map((w) => w.path) });
|
|
433
|
+
this.logger.info(`Worktree janitor: removed ${summary.removed}, kept ${summary.kept}${reasons ? ` (${reasons})` : ''} across ${summary.repos.length} repo(s) in ${summary.durationMs}ms`, { removed: summary.worktrees.filter((w) => w.removed).map((w) => w.path), lowDisk: summary.lowDisk });
|
|
434
|
+
const sc = summary.scratch;
|
|
435
|
+
if (sc) {
|
|
436
|
+
const scReasons = Object.entries(sc.keptReasons)
|
|
437
|
+
.sort((a, b) => b[1] - a[1])
|
|
438
|
+
.map(([k, v]) => `${k}: ${v}`)
|
|
439
|
+
.join(', ');
|
|
440
|
+
this.logger.info(`Scratch janitor: removed ${sc.removed} session dir(s), freed ${formatBytes(sc.freedBytes)}, kept ${sc.kept}${scReasons ? ` (${scReasons})` : ''}`, { removed: sc.sessions.filter((s) => s.removed).map((s) => s.path), freedBytes: sc.freedBytes });
|
|
441
|
+
}
|
|
243
442
|
}
|
|
244
443
|
return summary;
|
|
245
444
|
}
|
|
246
445
|
async resolveRepos() {
|
|
247
|
-
const
|
|
446
|
+
const registered = await (this.opts.listRepoPaths ?? defaultListRepoPaths)().catch(() => []);
|
|
447
|
+
let discovered = [];
|
|
448
|
+
try {
|
|
449
|
+
discovered = await discoverLinkedWorktreeRepos([...this.tmpRoots(), ...this.scratchRoots()]);
|
|
450
|
+
}
|
|
451
|
+
catch {
|
|
452
|
+
// discovery is best effort
|
|
453
|
+
}
|
|
454
|
+
const candidates = [...registered, ...discovered];
|
|
248
455
|
const seen = new Map();
|
|
249
456
|
for (const candidate of candidates) {
|
|
250
457
|
if (!candidate || !fs.existsSync(candidate))
|
|
@@ -271,11 +478,11 @@ export class WorktreeJanitorService {
|
|
|
271
478
|
return null;
|
|
272
479
|
}
|
|
273
480
|
}
|
|
274
|
-
|
|
481
|
+
/** Known agent location (short idle threshold) vs anywhere else (long one). */
|
|
482
|
+
isAgentLocation(repo, entry) {
|
|
275
483
|
if (isPathInside(entry.path, path.join(repo.main, WORKTREE_JANITOR_CONSTANTS.AGENT_WORKTREE_DIR)))
|
|
276
484
|
return true;
|
|
277
|
-
const
|
|
278
|
-
for (const root of tmpRoots) {
|
|
485
|
+
for (const root of this.tmpRoots()) {
|
|
279
486
|
if (isPathInside(entry.path, path.join(root, WORKTREE_JANITOR_CONSTANTS.TMP_WORKTREE_DIR)))
|
|
280
487
|
return true;
|
|
281
488
|
}
|
|
@@ -285,7 +492,7 @@ export class WorktreeJanitorService {
|
|
|
285
492
|
/**
|
|
286
493
|
* Apply the removal rules to one worktree (read-only apart from fetch).
|
|
287
494
|
*/
|
|
288
|
-
async evaluate(repo, entry, busy) {
|
|
495
|
+
async evaluate(repo, entry, busy, lowDisk) {
|
|
289
496
|
const base = { repo: repo.main, path: entry.path, branch: entry.branch, head: entry.head };
|
|
290
497
|
const keep = (reason, detail, idleMs) => ({
|
|
291
498
|
...base,
|
|
@@ -305,8 +512,6 @@ export class WorktreeJanitorService {
|
|
|
305
512
|
if (isPathInside(entry.path, path.join(repo.main, WORKTREE_JANITOR_CONSTANTS.MANAGED_WORKTREE_DIR))) {
|
|
306
513
|
return keep('managed-by-workitem-worktrees');
|
|
307
514
|
}
|
|
308
|
-
if (!this.isAgentWorktree(repo, entry))
|
|
309
|
-
return keep('not-agent-worktree');
|
|
310
515
|
if (busy === null)
|
|
311
516
|
return keep('cwd-probe-failed');
|
|
312
517
|
const hit = busy.find((b) => isPathInside(b.cwd, entry.path));
|
|
@@ -315,11 +520,15 @@ export class WorktreeJanitorService {
|
|
|
315
520
|
const gitDirR = await this.git(['-C', entry.path, 'rev-parse', '--absolute-git-dir']);
|
|
316
521
|
const gitDir = gitDirR.code === 0 ? gitDirR.stdout.trim() : null;
|
|
317
522
|
const mtime = latestWorktreeMtimeMs(entry.path, gitDir);
|
|
318
|
-
const
|
|
319
|
-
const
|
|
320
|
-
const
|
|
321
|
-
|
|
322
|
-
|
|
523
|
+
const idleMs = mtime === null ? undefined : Math.max(0, this.now() - mtime);
|
|
524
|
+
const agentLocation = this.isAgentLocation(repo, entry);
|
|
525
|
+
const normalIdle = agentLocation
|
|
526
|
+
? (this.opts.minIdleMs ?? WORKTREE_JANITOR_CONSTANTS.MIN_IDLE_MS)
|
|
527
|
+
: (this.opts.minIdleOtherMs ?? WORKTREE_JANITOR_CONSTANTS.MIN_IDLE_OTHER_MS);
|
|
528
|
+
const minIdle = idleThreshold(normalIdle, lowDisk);
|
|
529
|
+
if (idleMs === undefined || idleMs < minIdle) {
|
|
530
|
+
return keep('recent', `needs ${Math.round(minIdle / MS_PER_MINUTE)} min idle (${agentLocation ? 'agent location' : 'other location'})`, idleMs);
|
|
531
|
+
}
|
|
323
532
|
const status = await this.git(['-C', entry.path, 'status', '--porcelain', '--untracked-files=all']);
|
|
324
533
|
if (status.code !== 0)
|
|
325
534
|
return keep('status-failed', status.stderr.trim().slice(0, 200), idleMs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-janitor.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/worktree/worktree-janitor.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worktree-janitor.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/worktree/worktree-janitor.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -141,7 +141,7 @@ export interface TemplateOnboarding {
|
|
|
141
141
|
order: number;
|
|
142
142
|
/** The default starter (exactly one template sets this) */
|
|
143
143
|
recommended: boolean;
|
|
144
|
-
/** Short
|
|
144
|
+
/** Short display name, e.g. Personal Assistant */
|
|
145
145
|
label: string;
|
|
146
146
|
/** One-line pitch shown under the label */
|
|
147
147
|
tagline: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"team-template.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/team-template.types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"team-template.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/team-template.types.ts"],"names":[],"mappings":"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"}
|