@cluesmith/codev 3.3.5 → 3.3.6
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/dashboard-dist/assets/{index-r3bZzLmX.css → index-BjcqV9Vv.css} +1 -1
- package/dashboard-dist/assets/{index-BuflRUi6.js → index-b7GnZV2i.js} +55 -55
- package/dashboard-dist/assets/index-b7GnZV2i.js.map +1 -0
- package/dashboard-dist/index.html +2 -2
- package/dist/agent-farm/cli.d.ts.map +1 -1
- package/dist/agent-farm/cli.js +50 -17
- package/dist/agent-farm/cli.js.map +1 -1
- package/dist/agent-farm/commands/architect.d.ts.map +1 -1
- package/dist/agent-farm/commands/architect.js +5 -1
- package/dist/agent-farm/commands/architect.js.map +1 -1
- package/dist/agent-farm/commands/attach.d.ts +1 -1
- package/dist/agent-farm/commands/attach.d.ts.map +1 -1
- package/dist/agent-farm/commands/cleanup.d.ts +1 -1
- package/dist/agent-farm/commands/cleanup.d.ts.map +1 -1
- package/dist/agent-farm/commands/cleanup.js +2 -1
- package/dist/agent-farm/commands/cleanup.js.map +1 -1
- package/dist/agent-farm/commands/decisions.d.ts +25 -0
- package/dist/agent-farm/commands/decisions.d.ts.map +1 -0
- package/dist/agent-farm/commands/decisions.js +54 -0
- package/dist/agent-farm/commands/decisions.js.map +1 -0
- package/dist/agent-farm/commands/ide.d.ts +32 -3
- package/dist/agent-farm/commands/ide.d.ts.map +1 -1
- package/dist/agent-farm/commands/ide.js +180 -19
- package/dist/agent-farm/commands/ide.js.map +1 -1
- package/dist/agent-farm/commands/reset/context.d.ts +4 -2
- package/dist/agent-farm/commands/reset/context.d.ts.map +1 -1
- package/dist/agent-farm/commands/reset/context.js +12 -4
- package/dist/agent-farm/commands/reset/context.js.map +1 -1
- package/dist/agent-farm/commands/send.d.ts.map +1 -1
- package/dist/agent-farm/commands/send.js +13 -18
- package/dist/agent-farm/commands/send.js.map +1 -1
- package/dist/agent-farm/commands/spawn-worktree.d.ts +7 -0
- package/dist/agent-farm/commands/spawn-worktree.d.ts.map +1 -1
- package/dist/agent-farm/commands/spawn-worktree.js +51 -18
- package/dist/agent-farm/commands/spawn-worktree.js.map +1 -1
- package/dist/agent-farm/commands/spawn.d.ts +17 -0
- package/dist/agent-farm/commands/spawn.d.ts.map +1 -1
- package/dist/agent-farm/commands/spawn.js +41 -19
- package/dist/agent-farm/commands/spawn.js.map +1 -1
- package/dist/agent-farm/lib/builder-lookup.d.ts +3 -2
- package/dist/agent-farm/lib/builder-lookup.d.ts.map +1 -1
- package/dist/agent-farm/lib/builder-lookup.js +24 -9
- package/dist/agent-farm/lib/builder-lookup.js.map +1 -1
- package/dist/agent-farm/lib/ide-extensions.d.ts +82 -0
- package/dist/agent-farm/lib/ide-extensions.d.ts.map +1 -0
- package/dist/agent-farm/lib/ide-extensions.js +179 -0
- package/dist/agent-farm/lib/ide-extensions.js.map +1 -0
- package/dist/agent-farm/lib/ide-record.d.ts +6 -1
- package/dist/agent-farm/lib/ide-record.d.ts.map +1 -1
- package/dist/agent-farm/lib/ide-record.js +8 -1
- package/dist/agent-farm/lib/ide-record.js.map +1 -1
- package/dist/agent-farm/lib/ide-version.d.ts +97 -0
- package/dist/agent-farm/lib/ide-version.d.ts.map +1 -0
- package/dist/agent-farm/lib/ide-version.js +224 -0
- package/dist/agent-farm/lib/ide-version.js.map +1 -0
- package/dist/agent-farm/lib/tunnel-client.d.ts.map +1 -1
- package/dist/agent-farm/lib/tunnel-client.js +7 -3
- package/dist/agent-farm/lib/tunnel-client.js.map +1 -1
- package/dist/agent-farm/servers/agent-state/broadcast.d.ts +19 -0
- package/dist/agent-farm/servers/agent-state/broadcast.d.ts.map +1 -0
- package/dist/agent-farm/servers/agent-state/broadcast.js +30 -0
- package/dist/agent-farm/servers/agent-state/broadcast.js.map +1 -0
- package/dist/agent-farm/servers/agent-state/identity.d.ts +50 -0
- package/dist/agent-farm/servers/agent-state/identity.d.ts.map +1 -0
- package/dist/agent-farm/servers/agent-state/identity.js +120 -0
- package/dist/agent-farm/servers/agent-state/identity.js.map +1 -0
- package/dist/agent-farm/servers/agent-state/liveness.d.ts +107 -0
- package/dist/agent-farm/servers/agent-state/liveness.d.ts.map +1 -0
- package/dist/agent-farm/servers/agent-state/liveness.js +224 -0
- package/dist/agent-farm/servers/agent-state/liveness.js.map +1 -0
- package/dist/agent-farm/servers/agent-state/route.d.ts +38 -0
- package/dist/agent-farm/servers/agent-state/route.d.ts.map +1 -0
- package/dist/agent-farm/servers/agent-state/route.js +170 -0
- package/dist/agent-farm/servers/agent-state/route.js.map +1 -0
- package/dist/agent-farm/servers/agent-state/serve.d.ts +31 -0
- package/dist/agent-farm/servers/agent-state/serve.d.ts.map +1 -0
- package/dist/agent-farm/servers/agent-state/serve.js +49 -0
- package/dist/agent-farm/servers/agent-state/serve.js.map +1 -0
- package/dist/agent-farm/servers/agent-state/store.d.ts +76 -0
- package/dist/agent-farm/servers/agent-state/store.d.ts.map +1 -0
- package/dist/agent-farm/servers/agent-state/store.js +157 -0
- package/dist/agent-farm/servers/agent-state/store.js.map +1 -0
- package/dist/agent-farm/servers/decisions/parse.d.ts.map +1 -1
- package/dist/agent-farm/servers/decisions/parse.js +45 -15
- package/dist/agent-farm/servers/decisions/parse.js.map +1 -1
- package/dist/agent-farm/servers/decisions/stamp.d.ts +6 -2
- package/dist/agent-farm/servers/decisions/stamp.d.ts.map +1 -1
- package/dist/agent-farm/servers/decisions/stamp.js +53 -29
- package/dist/agent-farm/servers/decisions/stamp.js.map +1 -1
- package/dist/agent-farm/servers/decisions/template.d.ts +2 -0
- package/dist/agent-farm/servers/decisions/template.d.ts.map +1 -0
- package/dist/agent-farm/servers/decisions/template.js +15 -0
- package/dist/agent-farm/servers/decisions/template.js.map +1 -0
- package/dist/agent-farm/servers/ide-server.d.ts +28 -8
- package/dist/agent-farm/servers/ide-server.d.ts.map +1 -1
- package/dist/agent-farm/servers/ide-server.js +147 -50
- package/dist/agent-farm/servers/ide-server.js.map +1 -1
- package/dist/agent-farm/servers/overview.d.ts +27 -1
- package/dist/agent-farm/servers/overview.d.ts.map +1 -1
- package/dist/agent-farm/servers/overview.js +184 -31
- package/dist/agent-farm/servers/overview.js.map +1 -1
- package/dist/agent-farm/servers/tower-instances.d.ts +14 -1
- package/dist/agent-farm/servers/tower-instances.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-instances.js +51 -9
- package/dist/agent-farm/servers/tower-instances.js.map +1 -1
- package/dist/agent-farm/servers/tower-routes.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-routes.js +50 -9
- package/dist/agent-farm/servers/tower-routes.js.map +1 -1
- package/dist/agent-farm/servers/tower-server.js +35 -1
- package/dist/agent-farm/servers/tower-server.js.map +1 -1
- package/dist/agent-farm/servers/tower-terminals.d.ts +25 -0
- package/dist/agent-farm/servers/tower-terminals.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-terminals.js +128 -4
- package/dist/agent-farm/servers/tower-terminals.js.map +1 -1
- package/dist/agent-farm/servers/tower-utils.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-utils.js +18 -5
- package/dist/agent-farm/servers/tower-utils.js.map +1 -1
- package/dist/agent-farm/utils/builder-worktree-identity.d.ts +39 -0
- package/dist/agent-farm/utils/builder-worktree-identity.d.ts.map +1 -0
- package/dist/agent-farm/utils/builder-worktree-identity.js +42 -0
- package/dist/agent-farm/utils/builder-worktree-identity.js.map +1 -0
- package/dist/agent-farm/utils/harness.d.ts +71 -0
- package/dist/agent-farm/utils/harness.d.ts.map +1 -1
- package/dist/agent-farm/utils/harness.js +153 -0
- package/dist/agent-farm/utils/harness.js.map +1 -1
- package/dist/agent-farm/utils/lifecycle-reporter.d.ts +79 -0
- package/dist/agent-farm/utils/lifecycle-reporter.d.ts.map +1 -0
- package/dist/agent-farm/utils/lifecycle-reporter.js +347 -0
- package/dist/agent-farm/utils/lifecycle-reporter.js.map +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +17 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/adopt.d.ts +16 -2
- package/dist/commands/adopt.d.ts.map +1 -1
- package/dist/commands/adopt.js +67 -23
- package/dist/commands/adopt.js.map +1 -1
- package/dist/commands/bootstrap-docs.d.ts +132 -0
- package/dist/commands/bootstrap-docs.d.ts.map +1 -0
- package/dist/commands/bootstrap-docs.js +725 -0
- package/dist/commands/bootstrap-docs.js.map +1 -0
- package/dist/commands/consult/index.d.ts.map +1 -1
- package/dist/commands/consult/index.js +14 -1
- package/dist/commands/consult/index.js.map +1 -1
- package/dist/commands/consult/tree-tripwire.d.ts +2 -75
- package/dist/commands/consult/tree-tripwire.d.ts.map +1 -1
- package/dist/commands/consult/tree-tripwire.js +7 -184
- package/dist/commands/consult/tree-tripwire.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +36 -4
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/porch/state.d.ts +0 -4
- package/dist/commands/porch/state.d.ts.map +1 -1
- package/dist/commands/porch/state.js +23 -10
- package/dist/commands/porch/state.js.map +1 -1
- package/dist/commands/update.d.ts +5 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +73 -18
- package/dist/commands/update.js.map +1 -1
- package/dist/lib/agent-env.d.ts +22 -1
- package/dist/lib/agent-env.d.ts.map +1 -1
- package/dist/lib/agent-env.js +27 -1
- package/dist/lib/agent-env.js.map +1 -1
- package/dist/lib/agent-process.d.ts +23 -0
- package/dist/lib/agent-process.d.ts.map +1 -0
- package/dist/lib/agent-process.js +24 -0
- package/dist/lib/agent-process.js.map +1 -0
- package/dist/lib/forge-contracts.d.ts +9 -3
- package/dist/lib/forge-contracts.d.ts.map +1 -1
- package/dist/lib/forge-contracts.js.map +1 -1
- package/dist/lib/forge.d.ts +8 -5
- package/dist/lib/forge.d.ts.map +1 -1
- package/dist/lib/forge.js +57 -1
- package/dist/lib/forge.js.map +1 -1
- package/dist/lib/github.d.ts.map +1 -1
- package/dist/lib/github.js +38 -0
- package/dist/lib/github.js.map +1 -1
- package/dist/lib/governance-bootstrap.d.ts +155 -0
- package/dist/lib/governance-bootstrap.d.ts.map +1 -0
- package/dist/lib/governance-bootstrap.js +469 -0
- package/dist/lib/governance-bootstrap.js.map +1 -0
- package/dist/lib/issue-id.d.ts +34 -0
- package/dist/lib/issue-id.d.ts.map +1 -0
- package/dist/lib/issue-id.js +61 -0
- package/dist/lib/issue-id.js.map +1 -0
- package/dist/lib/scaffold.d.ts +4 -0
- package/dist/lib/scaffold.d.ts.map +1 -1
- package/dist/lib/scaffold.js +29 -5
- package/dist/lib/scaffold.js.map +1 -1
- package/dist/lib/shipped-skill-hashes.d.ts +10 -0
- package/dist/lib/shipped-skill-hashes.d.ts.map +1 -0
- package/dist/lib/shipped-skill-hashes.js +197 -0
- package/dist/lib/shipped-skill-hashes.js.map +1 -0
- package/dist/lib/skill-refresh.d.ts +90 -0
- package/dist/lib/skill-refresh.d.ts.map +1 -0
- package/dist/lib/skill-refresh.js +267 -0
- package/dist/lib/skill-refresh.js.map +1 -0
- package/dist/lib/tree-snapshot.d.ts +172 -0
- package/dist/lib/tree-snapshot.d.ts.map +1 -0
- package/dist/lib/tree-snapshot.js +393 -0
- package/dist/lib/tree-snapshot.js.map +1 -0
- package/dist/terminal/pty-session.d.ts +5 -0
- package/dist/terminal/pty-session.d.ts.map +1 -1
- package/dist/terminal/pty-session.js +7 -0
- package/dist/terminal/pty-session.js.map +1 -1
- package/ide-extension/codev-vscode.vsix +0 -0
- package/ide-extension/manifest.json +7 -0
- package/package.json +8 -6
- package/scripts/forge/jira/_lib.sh +113 -0
- package/scripts/forge/jira/auth-status.sh +29 -0
- package/scripts/forge/jira/issue-comment.sh +23 -0
- package/scripts/forge/jira/issue-list.sh +32 -0
- package/scripts/forge/jira/issue-search.sh +40 -0
- package/scripts/forge/jira/issue-view.sh +41 -0
- package/scripts/forge/jira/recently-closed.sh +81 -0
- package/scripts/forge/jira/user-identity.sh +18 -0
- package/skeleton/.claude/skills/afx/SKILL.md +36 -0
- package/skeleton/.claude/skills/codev/SKILL.md +18 -2
- package/skeleton/.claude/skills/update-arch-docs/SKILL.md +28 -2
- package/skeleton/.codex/skills/afx/SKILL.md +36 -0
- package/skeleton/.codex/skills/codev/SKILL.md +18 -2
- package/skeleton/.codex/skills/update-arch-docs/SKILL.md +28 -2
- package/skeleton/resources/commands/agent-farm.md +112 -0
- package/skeleton/resources/commands/codev.md +47 -0
- package/skeleton/resources/commands/overview.md +1 -0
- package/skeleton/resources/decision-protocol.md +215 -0
- package/skeleton/resources/workflow-reference.md +12 -0
- package/skeleton/roles/architect.md +6 -0
- package/skeleton/templates/bootstrap-docs-prompt.md +16 -0
- package/skeleton/templates/bootstrap-docs-review-prompt.md +19 -0
- package/skeleton/templates/cheatsheet.md +1 -0
- package/dashboard-dist/assets/index-BuflRUi6.js.map +0 -1
|
@@ -39,128 +39,11 @@
|
|
|
39
39
|
*/
|
|
40
40
|
import * as fs from 'node:fs';
|
|
41
41
|
import * as path from 'node:path';
|
|
42
|
-
import
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
reason,
|
|
48
|
-
entries: new Map(),
|
|
49
|
-
identity: NO_IDENTITY,
|
|
50
|
-
});
|
|
51
|
-
/**
|
|
52
|
-
* Read HEAD and the branch name in one `git rev-parse`.
|
|
53
|
-
*
|
|
54
|
-
* Failure is not fatal to the snapshot. A freshly `git init`ed repository has no
|
|
55
|
-
* HEAD to resolve, and the file-level half of the tripwire works there perfectly
|
|
56
|
-
* well; refusing to watch the tree because the repo has no commits would trade a
|
|
57
|
-
* real check for a missing one.
|
|
58
|
-
*/
|
|
59
|
-
function readIdentity(workspaceRoot) {
|
|
60
|
-
try {
|
|
61
|
-
const raw = execFileSync('git', ['rev-parse', 'HEAD', '--abbrev-ref', 'HEAD'], {
|
|
62
|
-
cwd: workspaceRoot,
|
|
63
|
-
encoding: 'utf-8',
|
|
64
|
-
stdio: ['ignore', 'pipe', 'pipe'],
|
|
65
|
-
});
|
|
66
|
-
if (typeof raw !== 'string')
|
|
67
|
-
return NO_IDENTITY;
|
|
68
|
-
const [head, branch] = raw.trim().split('\n');
|
|
69
|
-
return { head: head || null, branch: branch || null };
|
|
70
|
-
}
|
|
71
|
-
catch {
|
|
72
|
-
return NO_IDENTITY;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Hash a working-tree file, or mark it absent.
|
|
77
|
-
*
|
|
78
|
-
* Absent is a real state, not an error: a path can appear in porcelain output
|
|
79
|
-
* as a staged deletion, and a lane that *deletes* a file is precisely what we
|
|
80
|
-
* are watching for.
|
|
81
|
-
*/
|
|
82
|
-
function hashPath(absolute) {
|
|
83
|
-
try {
|
|
84
|
-
const stat = fs.lstatSync(absolute);
|
|
85
|
-
if (!stat.isFile())
|
|
86
|
-
return `<${stat.isDirectory() ? 'dir' : 'special'}>`;
|
|
87
|
-
return crypto.createHash('sha256').update(fs.readFileSync(absolute)).digest('hex');
|
|
88
|
-
}
|
|
89
|
-
catch {
|
|
90
|
-
return '<absent>';
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Snapshot the working tree of `workspaceRoot`.
|
|
95
|
-
*
|
|
96
|
-
* `-z` (NUL-separated) rather than plain `--porcelain` because git C-quotes
|
|
97
|
-
* paths containing spaces or non-ASCII in the human-readable form, and a quoted
|
|
98
|
-
* path cannot be handed back to `fs.readFileSync`. `--untracked-files=all` so
|
|
99
|
-
* a newly created file is listed individually instead of being collapsed into
|
|
100
|
-
* a single `?? dir/` entry.
|
|
101
|
-
*
|
|
102
|
-
* Records HEAD and the branch alongside the paths, so a lane that commits or
|
|
103
|
-
* switches refs is caught even when no file ends up looking different.
|
|
104
|
-
*/
|
|
105
|
-
export function snapshotTree(workspaceRoot) {
|
|
106
|
-
// Typed `unknown` rather than `string` so the guard below is a real check and
|
|
107
|
-
// not a comparison TypeScript has already narrowed away.
|
|
108
|
-
let raw;
|
|
109
|
-
try {
|
|
110
|
-
raw = execFileSync('git', ['status', '--porcelain', '-z', '--untracked-files=all'], {
|
|
111
|
-
cwd: workspaceRoot,
|
|
112
|
-
encoding: 'utf-8',
|
|
113
|
-
maxBuffer: 32 * 1024 * 1024,
|
|
114
|
-
// Capture git's stderr instead of inheriting it. Otherwise a workspace
|
|
115
|
-
// that is not a repository prints a bare `fatal: not a git repository`
|
|
116
|
-
// over the top of the message we actually mean to show.
|
|
117
|
-
stdio: ['ignore', 'pipe', 'pipe'],
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
catch (err) {
|
|
121
|
-
return UNAVAILABLE(err instanceof Error ? err.message.split('\n')[0] : String(err));
|
|
122
|
-
}
|
|
123
|
-
// The tripwire is a diagnostic wrapped around every lane, so it must never be
|
|
124
|
-
// the thing that breaks a consultation. If `git status` came back as anything
|
|
125
|
-
// other than text — a stubbed `execFileSync` under a test, a Buffer if the
|
|
126
|
-
// encoding option is ever dropped — report the snapshot as unavailable rather
|
|
127
|
-
// than throwing out of the wrapper and taking the review down with it.
|
|
128
|
-
if (typeof raw !== 'string') {
|
|
129
|
-
return UNAVAILABLE(`git status returned ${typeof raw}, not text`);
|
|
130
|
-
}
|
|
131
|
-
const entries = new Map();
|
|
132
|
-
// Each record is `XY <path>`; rename/copy records are followed by a second
|
|
133
|
-
// NUL-terminated field holding the ORIGINAL path, which must be consumed so
|
|
134
|
-
// it is not mistaken for the next record's status code.
|
|
135
|
-
const fields = raw.split('\0').filter((f) => f.length > 0);
|
|
136
|
-
for (let i = 0; i < fields.length; i++) {
|
|
137
|
-
const field = fields[i];
|
|
138
|
-
const status = field.slice(0, 2);
|
|
139
|
-
const rel = field.slice(3);
|
|
140
|
-
if (!rel)
|
|
141
|
-
continue;
|
|
142
|
-
entries.set(rel, `${status}:${hashPath(path.join(workspaceRoot, rel))}`);
|
|
143
|
-
if (status[0] === 'R' || status[0] === 'C') {
|
|
144
|
-
const origin = fields[++i];
|
|
145
|
-
if (origin !== undefined) {
|
|
146
|
-
entries.set(origin, `${status}-from:${hashPath(path.join(workspaceRoot, origin))}`);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
return { available: true, entries, identity: readIdentity(workspaceRoot) };
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Paths `consult` writes itself on every run, and which therefore are not
|
|
154
|
-
* evidence of anything.
|
|
155
|
-
*
|
|
156
|
-
* `.consult/history.log` is appended by `logQuery()` after the lane returns, so
|
|
157
|
-
* it lands inside the window this module measures. In this repo `.consult/` is
|
|
158
|
-
* gitignored and never surfaces — which is exactly why it was not obvious. A
|
|
159
|
-
* live run against a scratch repo without that entry reported the log file as a
|
|
160
|
-
* mutation on the very first try. An adopter's `.gitignore` is not something to
|
|
161
|
-
* depend on for correctness here.
|
|
162
|
-
*/
|
|
163
|
-
const CONSULT_OWNED_PREFIXES = ['.consult/'];
|
|
42
|
+
import { CONSULT_OWNED_PREFIXES, diffSnapshotEntries, escapeControlChars, } from '../../lib/tree-snapshot.js';
|
|
43
|
+
// The snapshot core lives in lib/tree-snapshot.ts (shared with `codev bootstrap-docs`);
|
|
44
|
+
// re-exported so consult callers and tests keep one import site. This module keeps what is
|
|
45
|
+
// consult's own: which paths a lane may write, and the warnings it prints.
|
|
46
|
+
export { CONSULT_OWNED_PREFIXES, snapshotTree, diffRepositoryIdentity, escapeControlChars, } from '../../lib/tree-snapshot.js';
|
|
164
47
|
/**
|
|
165
48
|
* Review files written by consultation lanes, which are not evidence either.
|
|
166
49
|
*
|
|
@@ -213,70 +96,10 @@ export function relativeOutputPath(workspaceRoot, outputPath, cwd = process.cwd(
|
|
|
213
96
|
* cries wolf about its own output would be trained away within a week.
|
|
214
97
|
*/
|
|
215
98
|
export function diffTreeSnapshots(before, after, ignore = []) {
|
|
216
|
-
if (!before.available || !after.available)
|
|
217
|
-
return [];
|
|
218
99
|
const ignored = new Set(ignore);
|
|
219
|
-
|
|
100
|
+
return diffSnapshotEntries(before, after, rel => ignored.has(rel) ||
|
|
220
101
|
CONSULT_OWNED_PREFIXES.some(prefix => rel.startsWith(prefix)) ||
|
|
221
|
-
LANE_REVIEW_FILE.test(rel);
|
|
222
|
-
const changed = new Set();
|
|
223
|
-
for (const [rel, sig] of after.entries) {
|
|
224
|
-
if (isOurs(rel))
|
|
225
|
-
continue;
|
|
226
|
-
if (before.entries.get(rel) !== sig)
|
|
227
|
-
changed.add(rel);
|
|
228
|
-
}
|
|
229
|
-
for (const rel of before.entries.keys()) {
|
|
230
|
-
if (isOurs(rel))
|
|
231
|
-
continue;
|
|
232
|
-
if (!after.entries.has(rel))
|
|
233
|
-
changed.add(rel);
|
|
234
|
-
}
|
|
235
|
-
return [...changed].sort();
|
|
236
|
-
}
|
|
237
|
-
/**
|
|
238
|
-
* Repository identity fields that differ between two snapshots.
|
|
239
|
-
*
|
|
240
|
-
* A field that was unreadable at either end is skipped rather than reported as
|
|
241
|
-
* a change: "we could not tell" and "it moved" are different claims, and only
|
|
242
|
-
* one of them is evidence.
|
|
243
|
-
*/
|
|
244
|
-
export function diffRepositoryIdentity(before, after) {
|
|
245
|
-
if (!before.available || !after.available)
|
|
246
|
-
return [];
|
|
247
|
-
const changes = [];
|
|
248
|
-
const fields = [
|
|
249
|
-
['HEAD', 'head'],
|
|
250
|
-
['branch', 'branch'],
|
|
251
|
-
];
|
|
252
|
-
for (const [label, key] of fields) {
|
|
253
|
-
const a = before.identity[key];
|
|
254
|
-
const b = after.identity[key];
|
|
255
|
-
if (a === null || b === null)
|
|
256
|
-
continue;
|
|
257
|
-
if (a !== b)
|
|
258
|
-
changes.push({ field: label, before: a, after: b });
|
|
259
|
-
}
|
|
260
|
-
return changes;
|
|
261
|
-
}
|
|
262
|
-
/**
|
|
263
|
-
* Render a string safe to print to a terminal.
|
|
264
|
-
*
|
|
265
|
-
* Git path names are bytes, and almost anything that is not `/` or NUL is legal
|
|
266
|
-
* in one — including newlines and ESC. Printing such a name raw lets it forge
|
|
267
|
-
* the rest of the banner: a file called `\n - harmless.ts` adds a line to the
|
|
268
|
-
* list, and one containing a CSI sequence can repaint or erase what is above it.
|
|
269
|
-
* The warning exists to be trusted, so nothing it prints gets to move the
|
|
270
|
-
* cursor. C0, DEL and C1 are escaped; ordinary Unicode is left alone.
|
|
271
|
-
*/
|
|
272
|
-
export function escapeControlChars(value) {
|
|
273
|
-
const named = {
|
|
274
|
-
'\n': '\\n',
|
|
275
|
-
'\r': '\\r',
|
|
276
|
-
'\t': '\\t',
|
|
277
|
-
};
|
|
278
|
-
// eslint-disable-next-line no-control-regex
|
|
279
|
-
return value.replace(/[\x00-\x1f\x7f-\x9f]/g, ch => named[ch] ?? `\\x${ch.charCodeAt(0).toString(16).padStart(2, '0')}`);
|
|
102
|
+
LANE_REVIEW_FILE.test(rel));
|
|
280
103
|
}
|
|
281
104
|
/**
|
|
282
105
|
* The warning for a repository that moved under the reviewer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-tripwire.js","sourceRoot":"","sources":["../../../src/commands/consult/tree-tripwire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"tree-tripwire.js","sourceRoot":"","sources":["../../../src/commands/consult/tree-tripwire.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8DH;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAyB,CAAC;AAE7D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,eAAe,CAgCjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAClC,qEAAqE;IACrE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,oEAAoE;IACpE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,QAE6C,CAAC;AAEjF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,QAE2C,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,aAAa,CAC3B,YAAY,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,EACjD,eAAe,GAAE,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAY,GAC9D,aAAa,CAwCf;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAO3C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAoBzE;
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8DH;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAyB,CAAC;AAE7D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,eAAe,CAgCjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAClC,qEAAqE;IACrE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,oEAAoE;IACpE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,QAE6C,CAAC;AAEjF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,QAE2C,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,aAAa,CAC3B,YAAY,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,EACjD,eAAe,GAAE,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAY,GAC9D,aAAa,CAwCf;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAO3C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAoBzE;AA6hBD;;GAEG;AACH,wBAAsB,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAsjB9C"}
|
package/dist/commands/doctor.js
CHANGED
|
@@ -9,7 +9,7 @@ import { dirname, resolve } from 'node:path';
|
|
|
9
9
|
import { fileURLToPath } from 'node:url';
|
|
10
10
|
import chalk from 'chalk';
|
|
11
11
|
import { query as claudeQuery } from '@anthropic-ai/claude-agent-sdk';
|
|
12
|
-
import { executeForgeCommandSync, loadForgeConfig, validateForgeConfig, resolveAllConcepts } from '../lib/forge.js';
|
|
12
|
+
import { executeForgeCommandSync, loadForgeConfig, validateForgeConfig, resolveAllConcepts, isHybridProvider } from '../lib/forge.js';
|
|
13
13
|
import { detectHarnessFromCommand, getRetirement } from '../agent-farm/utils/harness.js';
|
|
14
14
|
import { auditPrGates, formatPrGateWarning } from '../lib/pr-gate-audit.js';
|
|
15
15
|
import { auditStateFileIgnore } from '../lib/gitignore.js';
|
|
@@ -496,6 +496,11 @@ function verifyAiModel(modelName) {
|
|
|
496
496
|
return { status: 'fail', version: 'error', note: `${config.authHint} (${errMsg})` };
|
|
497
497
|
}
|
|
498
498
|
}
|
|
499
|
+
/** How to log in to each hybrid provider's tracker, for the doctor auth line (#1740). */
|
|
500
|
+
const TRACKER_LOGIN_HINTS = {
|
|
501
|
+
jira: 'run: acli jira auth login (with a standard user account; service accounts are not supported)',
|
|
502
|
+
linear: 'set LINEAR_API_KEY',
|
|
503
|
+
};
|
|
499
504
|
const AGY_INSTALL_HINT = 'install: curl -fsSL https://antigravity.google/cli/install.sh | bash, then run `agy` once to sign in';
|
|
500
505
|
/**
|
|
501
506
|
* Presence check for the Antigravity CLI (agy) — the gemini lane's backend.
|
|
@@ -1100,10 +1105,37 @@ export async function doctor() {
|
|
|
1100
1105
|
recommendation: `Install missing tools or adjust forge config`,
|
|
1101
1106
|
});
|
|
1102
1107
|
}
|
|
1103
|
-
//
|
|
1104
|
-
|
|
1108
|
+
// Tracker auth for hybrid providers (spec 719, #1740): they hold the issues,
|
|
1109
|
+
// so report their own login. Skipped when the tracker's CLI is missing (the
|
|
1110
|
+
// executable warning above already says so) or auth-status is disabled.
|
|
1111
|
+
const trackerAuth = resolutions.find((r) => r.concept === 'auth-status');
|
|
1112
|
+
if (isHybridProvider(provider) && trackerAuth?.command && (!trackerAuth.executable || !missingExecs.has(trackerAuth.executable))) {
|
|
1113
|
+
const label = `${provider} auth`;
|
|
1114
|
+
const recommendation = TRACKER_LOGIN_HINTS[provider.toLowerCase()] ?? `check the ${provider} credentials`;
|
|
1115
|
+
let authOutput = null;
|
|
1116
|
+
try {
|
|
1117
|
+
authOutput = executeForgeCommandSync('auth-status', {}, { raw: true, forgeConfig, cwd: workspaceRoot });
|
|
1118
|
+
}
|
|
1119
|
+
catch {
|
|
1120
|
+
authOutput = null;
|
|
1121
|
+
}
|
|
1122
|
+
if (authOutput !== null) {
|
|
1123
|
+
const accountMatch = typeof authOutput === 'string' ? authOutput.match(/^\s*Email:\s*(\S+)/m) : null;
|
|
1124
|
+
console.log(` ${chalk.green('✓')} ${label.padEnd(20)} ${accountMatch ? `authenticated as ${accountMatch[1]}` : 'authenticated'}`);
|
|
1125
|
+
}
|
|
1126
|
+
else {
|
|
1127
|
+
console.log(` ${chalk.yellow('⚠')} ${label.padEnd(20)} not authenticated`);
|
|
1128
|
+
warnings++;
|
|
1129
|
+
warningDetails.push({ name: label, issue: 'not authenticated', recommendation });
|
|
1130
|
+
}
|
|
1131
|
+
}
|
|
1132
|
+
// gh auth check — for GitHub, and for hybrid providers, whose PR concepts
|
|
1133
|
+
// all run gh (the github default scripts), so a missing gh login means no PRs.
|
|
1134
|
+
const hybrid = isHybridProvider(provider);
|
|
1135
|
+
if ((provider === 'github' || hybrid) && commandExists('gh')) {
|
|
1105
1136
|
try {
|
|
1106
|
-
const
|
|
1137
|
+
const ghOptions = hybrid ? { raw: true, forgeConfig: { provider: 'github' }, cwd: workspaceRoot } : { raw: true };
|
|
1138
|
+
const result = executeForgeCommandSync('auth-status', {}, ghOptions);
|
|
1107
1139
|
if (result) {
|
|
1108
1140
|
const authOutput = typeof result === 'string' ? result : '';
|
|
1109
1141
|
const accountMatch = authOutput.match(/Logged in to .+ account (\S+)/);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -109,9 +109,5 @@ export type ResolvedProjectId = {
|
|
|
109
109
|
* 4. Error if none succeed
|
|
110
110
|
*/
|
|
111
111
|
export declare function resolveProjectId(provided: string | undefined, cwd: string, workspaceRoot: string): ResolvedProjectId;
|
|
112
|
-
/**
|
|
113
|
-
* Auto-detect project ID when only one project exists.
|
|
114
|
-
* Returns null if zero or multiple projects found.
|
|
115
|
-
*/
|
|
116
112
|
export declare function detectProjectId(workspaceRoot: string): string | null;
|
|
117
113
|
//# sourceMappingURL=state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAa,MAAM,YAAY,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAa,MAAM,YAAY,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKvD,6DAA6D;AAC7D,eAAO,MAAM,YAAY,mBAAmB,CAAC;AAM7C;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGtE;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EACvD,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,MAAM,CAiCR;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5F;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5F;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE1D;AAMD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,CAgC1D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAmBxE;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,cAAc,CAAC,EAAE,MAAM,GACtB,YAAY,CA2Bd;AA0BD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkBtF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,aAAa,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;CAAE,GACnE,KAAK,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,CAAC,CAkCpD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyBjE;AAID,MAAM,MAAM,iBAAiB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,UAAU,GAAG,KAAK,GAAG,YAAY,CAAA;CAAE,CAAC;AAE1F;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,GACpB,iBAAiB,CAcnB;AASD,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA0BpE"}
|
|
@@ -9,6 +9,7 @@ import * as path from 'node:path';
|
|
|
9
9
|
import * as yaml from 'js-yaml';
|
|
10
10
|
import { execFile } from 'node:child_process';
|
|
11
11
|
import { promisify } from 'node:util';
|
|
12
|
+
import { CANONICAL_KEY_SOURCE, ISSUE_KEY_SOURCE, canonicalIssueId } from '../../lib/issue-id.js';
|
|
12
13
|
const execFileAsync = promisify(execFile);
|
|
13
14
|
/** Directory for project state (relative to project root) */
|
|
14
15
|
export const PROJECTS_DIR = 'codev/projects';
|
|
@@ -319,17 +320,27 @@ export function detectProjectIdFromCwd(cwd) {
|
|
|
319
320
|
// porch project ID is the bare numeric ID.
|
|
320
321
|
// Spec worktrees (legacy): .builders/{NNNN} (bare 4-digit ID, no slug)
|
|
321
322
|
const match = normalized.match(/\/\.builders\/(bugfix-(\d+)(?:-[^/]*)?|(?:aspir|spir|air|pir)-(\d+)(?:-[^/]*)?|(\d{4}))(\/|$)/);
|
|
322
|
-
if (
|
|
323
|
+
if (match) {
|
|
324
|
+
// bugfix uses "bugfix-N" as the porch project ID
|
|
325
|
+
if (match[2])
|
|
326
|
+
return `bugfix-${match[2]}`;
|
|
327
|
+
// Protocol worktrees (aspir, spir, air, pir) use the bare numeric ID
|
|
328
|
+
if (match[3])
|
|
329
|
+
return match[3];
|
|
330
|
+
// Spec worktrees use zero-padded numeric IDs
|
|
331
|
+
return match[4];
|
|
332
|
+
}
|
|
333
|
+
// Tracker keys (#1740): .builders/bugfix-ENG-123[-slug] → "bugfix-ENG-123",
|
|
334
|
+
// .builders/pir-ENG-123[-slug] → "ENG-123", canonical upper case.
|
|
335
|
+
const keyMatch = normalized.match(CWD_KEY_WORKTREE);
|
|
336
|
+
if (!keyMatch)
|
|
323
337
|
return null;
|
|
324
|
-
|
|
325
|
-
if (
|
|
326
|
-
return `bugfix-${
|
|
327
|
-
|
|
328
|
-
if (match[3])
|
|
329
|
-
return match[3];
|
|
330
|
-
// Spec worktrees use zero-padded numeric IDs
|
|
331
|
-
return match[4];
|
|
338
|
+
const key = canonicalIssueId(keyMatch[2]);
|
|
339
|
+
if (keyMatch[1].toLowerCase() === 'bugfix')
|
|
340
|
+
return `bugfix-${key}`;
|
|
341
|
+
return key;
|
|
332
342
|
}
|
|
343
|
+
const CWD_KEY_WORKTREE = new RegExp(`/\\.builders/(bugfix|aspir|spir|air|pir)-(${ISSUE_KEY_SOURCE})(?:-[^/]*)?(?:/|$)`, 'i');
|
|
333
344
|
/**
|
|
334
345
|
* Resolve project ID using the priority chain:
|
|
335
346
|
* 1. Explicit CLI argument (highest priority)
|
|
@@ -356,6 +367,8 @@ export function resolveProjectId(provided, cwd, workspaceRoot) {
|
|
|
356
367
|
* Auto-detect project ID when only one project exists.
|
|
357
368
|
* Returns null if zero or multiple projects found.
|
|
358
369
|
*/
|
|
370
|
+
/** Project dir id prefix: `bugfix-237`, `0076`, or a tracker key `ENG-123` / `bugfix-ENG-123` (#1740). */
|
|
371
|
+
const PROJECT_DIR_ID = new RegExp(`^(bugfix-\\d+|\\d{4}|(?:bugfix-)?${CANONICAL_KEY_SOURCE})-`);
|
|
359
372
|
export function detectProjectId(workspaceRoot) {
|
|
360
373
|
const projectsDir = path.join(workspaceRoot, PROJECTS_DIR);
|
|
361
374
|
if (!fs.existsSync(projectsDir)) {
|
|
@@ -367,7 +380,7 @@ export function detectProjectId(workspaceRoot) {
|
|
|
367
380
|
if (entry.isDirectory()) {
|
|
368
381
|
// Extract project ID from directory name
|
|
369
382
|
// Matches: "0076-skip-close" -> "0076", "bugfix-237-fix-name" -> "bugfix-237"
|
|
370
|
-
const match = entry.name.match(
|
|
383
|
+
const match = entry.name.match(PROJECT_DIR_ID);
|
|
371
384
|
if (match) {
|
|
372
385
|
const statusPath = path.join(projectsDir, entry.name, 'status.yaml');
|
|
373
386
|
if (fs.existsSync(statusPath)) {
|