@cluesmith/codev 3.0.0-rc.0 → 3.0.0-rc.2
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/bin/team.js +7 -0
- package/dashboard/dist/assets/{index-CiIBsixF.js → index-CndFKfXA.js} +41 -41
- package/dashboard/dist/assets/index-CndFKfXA.js.map +1 -0
- package/dashboard/dist/index.html +1 -1
- package/dist/agent-farm/cli.d.ts.map +1 -1
- package/dist/agent-farm/cli.js +11 -2
- package/dist/agent-farm/cli.js.map +1 -1
- package/dist/agent-farm/commands/cleanup.d.ts.map +1 -1
- package/dist/agent-farm/commands/cleanup.js +10 -5
- package/dist/agent-farm/commands/cleanup.js.map +1 -1
- package/dist/agent-farm/commands/spawn-roles.d.ts +1 -0
- package/dist/agent-farm/commands/spawn-roles.d.ts.map +1 -1
- package/dist/agent-farm/commands/spawn-roles.js.map +1 -1
- package/dist/agent-farm/commands/spawn-worktree.d.ts +48 -9
- package/dist/agent-farm/commands/spawn-worktree.d.ts.map +1 -1
- package/dist/agent-farm/commands/spawn-worktree.js +262 -37
- package/dist/agent-farm/commands/spawn-worktree.js.map +1 -1
- package/dist/agent-farm/commands/spawn.d.ts.map +1 -1
- package/dist/agent-farm/commands/spawn.js +98 -27
- package/dist/agent-farm/commands/spawn.js.map +1 -1
- package/dist/agent-farm/commands/team-update.d.ts.map +1 -1
- package/dist/agent-farm/commands/team-update.js +7 -4
- package/dist/agent-farm/commands/team-update.js.map +1 -1
- package/dist/agent-farm/commands/team.d.ts +6 -0
- package/dist/agent-farm/commands/team.d.ts.map +1 -1
- package/dist/agent-farm/commands/team.js +35 -3
- package/dist/agent-farm/commands/team.js.map +1 -1
- package/dist/agent-farm/commands/tower.d.ts +1 -0
- package/dist/agent-farm/commands/tower.d.ts.map +1 -1
- package/dist/agent-farm/commands/tower.js +52 -1
- package/dist/agent-farm/commands/tower.js.map +1 -1
- package/dist/agent-farm/servers/overview.d.ts +7 -7
- package/dist/agent-farm/servers/overview.d.ts.map +1 -1
- package/dist/agent-farm/servers/overview.js +35 -33
- package/dist/agent-farm/servers/overview.js.map +1 -1
- package/dist/agent-farm/servers/tower-instances.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-instances.js +9 -2
- package/dist/agent-farm/servers/tower-instances.js.map +1 -1
- package/dist/agent-farm/servers/tower-server.js +14 -0
- package/dist/agent-farm/servers/tower-server.js.map +1 -1
- package/dist/agent-farm/types.d.ts +4 -0
- package/dist/agent-farm/types.d.ts.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +78 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/consult/index.d.ts.map +1 -1
- package/dist/commands/consult/index.js +86 -69
- package/dist/commands/consult/index.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +67 -23
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/porch/checks.d.ts +6 -2
- package/dist/commands/porch/checks.d.ts.map +1 -1
- package/dist/commands/porch/checks.js +52 -3
- package/dist/commands/porch/checks.js.map +1 -1
- package/dist/commands/porch/next.d.ts.map +1 -1
- package/dist/commands/porch/next.js +8 -1
- package/dist/commands/porch/next.js.map +1 -1
- package/dist/commands/porch/prompts.js +2 -2
- package/dist/commands/porch/prompts.js.map +1 -1
- package/dist/commands/porch/state.d.ts.map +1 -1
- package/dist/commands/porch/state.js +7 -3
- package/dist/commands/porch/state.js.map +1 -1
- package/dist/lib/forge-contracts.d.ts +94 -0
- package/dist/lib/forge-contracts.d.ts.map +1 -0
- package/dist/lib/forge-contracts.js +35 -0
- package/dist/lib/forge-contracts.js.map +1 -0
- package/dist/lib/forge.d.ts +102 -0
- package/dist/lib/forge.d.ts.map +1 -0
- package/dist/lib/forge.js +384 -0
- package/dist/lib/forge.js.map +1 -0
- package/dist/lib/github.d.ts +68 -60
- package/dist/lib/github.d.ts.map +1 -1
- package/dist/lib/github.js +160 -169
- package/dist/lib/github.js.map +1 -1
- package/dist/lib/team-github.d.ts +5 -3
- package/dist/lib/team-github.d.ts.map +1 -1
- package/dist/lib/team-github.js +25 -15
- package/dist/lib/team-github.js.map +1 -1
- package/dist/lib/team.d.ts.map +1 -1
- package/dist/lib/team.js +4 -1
- package/dist/lib/team.js.map +1 -1
- package/package.json +4 -2
- package/scripts/forge/gitea/auth-status.sh +3 -0
- package/scripts/forge/gitea/issue-comment.sh +3 -0
- package/scripts/forge/gitea/issue-list.sh +3 -0
- package/scripts/forge/gitea/issue-view.sh +3 -0
- package/scripts/forge/gitea/pr-exists.sh +3 -0
- package/scripts/forge/gitea/pr-list.sh +3 -0
- package/scripts/forge/gitea/pr-merge.sh +3 -0
- package/scripts/forge/gitea/pr-view.sh +3 -0
- package/scripts/forge/gitea/recently-closed.sh +3 -0
- package/scripts/forge/gitea/recently-merged.sh +3 -0
- package/scripts/forge/gitea/user-identity.sh +3 -0
- package/scripts/forge/github/auth-status.sh +4 -0
- package/scripts/forge/github/issue-comment.sh +5 -0
- package/scripts/forge/github/issue-list.sh +4 -0
- package/scripts/forge/github/issue-view.sh +5 -0
- package/scripts/forge/github/on-it-timestamps.sh +8 -0
- package/scripts/forge/github/pr-diff.sh +10 -0
- package/scripts/forge/github/pr-exists.sh +5 -0
- package/scripts/forge/github/pr-list.sh +4 -0
- package/scripts/forge/github/pr-merge.sh +5 -0
- package/scripts/forge/github/pr-search.sh +5 -0
- package/scripts/forge/github/pr-view.sh +11 -0
- package/scripts/forge/github/recently-closed.sh +15 -0
- package/scripts/forge/github/recently-merged.sh +15 -0
- package/scripts/forge/github/team-activity.sh +5 -0
- package/scripts/forge/github/user-identity.sh +4 -0
- package/scripts/forge/gitlab/auth-status.sh +3 -0
- package/scripts/forge/gitlab/issue-comment.sh +3 -0
- package/scripts/forge/gitlab/issue-list.sh +3 -0
- package/scripts/forge/gitlab/issue-view.sh +3 -0
- package/scripts/forge/gitlab/pr-diff.sh +3 -0
- package/scripts/forge/gitlab/pr-exists.sh +3 -0
- package/scripts/forge/gitlab/pr-list.sh +3 -0
- package/scripts/forge/gitlab/pr-merge.sh +3 -0
- package/scripts/forge/gitlab/pr-search.sh +3 -0
- package/scripts/forge/gitlab/pr-view.sh +3 -0
- package/scripts/forge/gitlab/recently-closed.sh +3 -0
- package/scripts/forge/gitlab/recently-merged.sh +3 -0
- package/scripts/forge/gitlab/user-identity.sh +3 -0
- package/skeleton/roles/architect.md +18 -6
- package/dashboard/dist/assets/index-CiIBsixF.js.map +0 -1
package/dist/cli.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Codev CLI - Unified entry point for codev framework
|
|
4
4
|
*/
|
|
5
|
+
import { existsSync } from 'node:fs';
|
|
6
|
+
import { join } from 'node:path';
|
|
5
7
|
import { Command } from 'commander';
|
|
6
8
|
import { doctor } from './commands/doctor.js';
|
|
7
9
|
import { init } from './commands/init.js';
|
|
@@ -14,6 +16,19 @@ import { importCommand } from './commands/import.js';
|
|
|
14
16
|
import { generateImage } from './commands/generate-image.js';
|
|
15
17
|
import { runAgentFarm } from './agent-farm/cli.js';
|
|
16
18
|
import { version } from './version.js';
|
|
19
|
+
import { findWorkspaceRoot } from './agent-farm/utils/index.js';
|
|
20
|
+
/**
|
|
21
|
+
* Validate that we're inside a Codev workspace.
|
|
22
|
+
* Uses the worktree-aware findWorkspaceRoot from agent-farm (issue #407).
|
|
23
|
+
*/
|
|
24
|
+
function requireWorkspace() {
|
|
25
|
+
const root = findWorkspaceRoot();
|
|
26
|
+
if (!existsSync(join(root, 'codev'))) {
|
|
27
|
+
console.error('Error: Not inside a Codev workspace. Run from a project that has a codev/ directory.');
|
|
28
|
+
process.exit(1);
|
|
29
|
+
}
|
|
30
|
+
return root;
|
|
31
|
+
}
|
|
17
32
|
const program = new Command();
|
|
18
33
|
program
|
|
19
34
|
.name('codev')
|
|
@@ -238,6 +253,69 @@ program
|
|
|
238
253
|
process.exit(1);
|
|
239
254
|
}
|
|
240
255
|
});
|
|
256
|
+
// Team command group (standalone CLI, Spec 599)
|
|
257
|
+
const teamCmd = program
|
|
258
|
+
.command('team')
|
|
259
|
+
.description('Team coordination — manage members and messages');
|
|
260
|
+
teamCmd
|
|
261
|
+
.command('list')
|
|
262
|
+
.description('List team members from codev/team/people/')
|
|
263
|
+
.action(async () => {
|
|
264
|
+
try {
|
|
265
|
+
requireWorkspace();
|
|
266
|
+
const { teamList } = await import('./agent-farm/commands/team.js');
|
|
267
|
+
await teamList({ cwd: process.cwd() });
|
|
268
|
+
}
|
|
269
|
+
catch (error) {
|
|
270
|
+
console.error(`Error: ${error instanceof Error ? error.message : String(error)}`);
|
|
271
|
+
process.exit(1);
|
|
272
|
+
}
|
|
273
|
+
});
|
|
274
|
+
teamCmd
|
|
275
|
+
.command('message <text>')
|
|
276
|
+
.description('Post a message to the team message log')
|
|
277
|
+
.option('-a, --author <name>', 'Override author (default: auto-detect from gh/git)')
|
|
278
|
+
.action(async (text, options) => {
|
|
279
|
+
try {
|
|
280
|
+
requireWorkspace();
|
|
281
|
+
const { teamMessage } = await import('./agent-farm/commands/team.js');
|
|
282
|
+
await teamMessage({ text, author: options.author, cwd: process.cwd() });
|
|
283
|
+
}
|
|
284
|
+
catch (error) {
|
|
285
|
+
console.error(`Error: ${error instanceof Error ? error.message : String(error)}`);
|
|
286
|
+
process.exit(1);
|
|
287
|
+
}
|
|
288
|
+
});
|
|
289
|
+
teamCmd
|
|
290
|
+
.command('update')
|
|
291
|
+
.description('Post hourly activity summary (used by cron, can run manually)')
|
|
292
|
+
.action(async () => {
|
|
293
|
+
try {
|
|
294
|
+
requireWorkspace();
|
|
295
|
+
const { teamUpdate } = await import('./agent-farm/commands/team-update.js');
|
|
296
|
+
await teamUpdate({ cwd: process.cwd() });
|
|
297
|
+
}
|
|
298
|
+
catch (error) {
|
|
299
|
+
console.error(`Error: ${error instanceof Error ? error.message : String(error)}`);
|
|
300
|
+
process.exit(1);
|
|
301
|
+
}
|
|
302
|
+
});
|
|
303
|
+
teamCmd
|
|
304
|
+
.command('add <github-handle>')
|
|
305
|
+
.description('Scaffold a new team member file')
|
|
306
|
+
.option('-n, --name <name>', 'Full name (default: github handle)')
|
|
307
|
+
.option('-r, --role <role>', 'Role (default: Team Member)')
|
|
308
|
+
.action(async (handle, options) => {
|
|
309
|
+
try {
|
|
310
|
+
requireWorkspace();
|
|
311
|
+
const { teamAdd } = await import('./agent-farm/commands/team.js');
|
|
312
|
+
await teamAdd({ handle, name: options.name, role: options.role, cwd: process.cwd() });
|
|
313
|
+
}
|
|
314
|
+
catch (error) {
|
|
315
|
+
console.error(`Error: ${error instanceof Error ? error.message : String(error)}`);
|
|
316
|
+
process.exit(1);
|
|
317
|
+
}
|
|
318
|
+
});
|
|
241
319
|
// Agent-farm command (delegates to existing agent-farm CLI)
|
|
242
320
|
program
|
|
243
321
|
.command('agent-farm', { hidden: false })
|
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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/consult/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/consult/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAuCH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IAEd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB;AA4KD,UAAU,mBAAmB;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAwED;;;;;;;;;;GAUG;AACH,iBAAS,2BAA2B,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAItF;AAsCD;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,cAAc,GAC1B,OAAO,CAAC,IAAI,CAAC,CAwFf;AAiQD;;GAEG;AACH,iBAAS,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAK1F;AA2GD;;GAEG;AACH,iBAAS,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAoCzE;AAkFD;;GAEG;AACH,iBAAS,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAoCzE;AAsOD;;GAEG;AACH,wBAAsB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAsJpE;AAGD,OAAO,EACL,WAAW,IAAI,YAAY,EAC3B,cAAc,IAAI,eAAe,EACjC,cAAc,IAAI,eAAe,EACjC,2BAA2B,IAAI,4BAA4B,GAC5D,CAAC"}
|
|
@@ -16,6 +16,7 @@ import { Codex } from '@openai/codex-sdk';
|
|
|
16
16
|
import { readCodevFile, findWorkspaceRoot } from '../../lib/skeleton.js';
|
|
17
17
|
import { MetricsDB } from './metrics.js';
|
|
18
18
|
import { extractUsage, extractReviewText } from './usage-extractor.js';
|
|
19
|
+
import { executeForgeCommandSync } from '../../lib/forge.js';
|
|
19
20
|
const MODEL_CONFIGS = {
|
|
20
21
|
gemini: { cli: 'gemini', args: ['--model', 'gemini-3-pro-preview'], envVar: 'GEMINI_SYSTEM_MD' },
|
|
21
22
|
};
|
|
@@ -132,9 +133,9 @@ function loadDotenv(workspaceRoot) {
|
|
|
132
133
|
* Find a spec file by number. Returns null if not found.
|
|
133
134
|
* Errors if multiple matches found.
|
|
134
135
|
*/
|
|
135
|
-
function findSpec(workspaceRoot,
|
|
136
|
+
function findSpec(workspaceRoot, id) {
|
|
136
137
|
const specsDir = path.join(workspaceRoot, 'codev', 'specs');
|
|
137
|
-
const unpadded =
|
|
138
|
+
const unpadded = id.replace(/^0+/, '') || '0';
|
|
138
139
|
const padded = unpadded.padStart(4, '0');
|
|
139
140
|
if (fs.existsSync(specsDir)) {
|
|
140
141
|
const files = fs.readdirSync(specsDir).filter(f => f.endsWith('.md'));
|
|
@@ -153,9 +154,9 @@ function findSpec(workspaceRoot, number) {
|
|
|
153
154
|
* Find a plan file by number. Returns null if not found.
|
|
154
155
|
* Errors if multiple matches found.
|
|
155
156
|
*/
|
|
156
|
-
function findPlan(workspaceRoot,
|
|
157
|
+
function findPlan(workspaceRoot, id) {
|
|
157
158
|
const plansDir = path.join(workspaceRoot, 'codev', 'plans');
|
|
158
|
-
const unpadded =
|
|
159
|
+
const unpadded = id.replace(/^0+/, '') || '0';
|
|
159
160
|
const padded = unpadded.padStart(4, '0');
|
|
160
161
|
if (fs.existsSync(plansDir)) {
|
|
161
162
|
const files = fs.readdirSync(plansDir).filter(f => f.endsWith('.md'));
|
|
@@ -609,17 +610,31 @@ function getDiffStat(workspaceRoot, ref) {
|
|
|
609
610
|
return { stat, files };
|
|
610
611
|
}
|
|
611
612
|
/**
|
|
612
|
-
* Fetch PR metadata (no diff — that's fetched separately)
|
|
613
|
+
* Fetch PR metadata via forge concept commands (no diff — that's fetched separately).
|
|
613
614
|
*/
|
|
614
|
-
function fetchPRData(
|
|
615
|
-
console.error(`Fetching PR #${
|
|
615
|
+
function fetchPRData(prId) {
|
|
616
|
+
console.error(`Fetching PR #${prId} data...`);
|
|
616
617
|
try {
|
|
617
|
-
const
|
|
618
|
-
|
|
618
|
+
const prView = executeForgeCommandSync('pr-view', {
|
|
619
|
+
CODEV_PR_NUMBER: prId,
|
|
620
|
+
});
|
|
621
|
+
const info = typeof prView === 'string' ? prView : JSON.stringify(prView);
|
|
622
|
+
const diffResult = executeForgeCommandSync('pr-diff', {
|
|
623
|
+
CODEV_PR_NUMBER: prId,
|
|
624
|
+
CODEV_DIFF_NAME_ONLY: '1',
|
|
625
|
+
}, { raw: true });
|
|
626
|
+
const nameOnly = typeof diffResult === 'string' ? diffResult : '';
|
|
619
627
|
const changedFiles = nameOnly.trim().split('\n').filter(Boolean);
|
|
620
628
|
let comments = '(No comments)';
|
|
621
629
|
try {
|
|
622
|
-
comments
|
|
630
|
+
// Fetch PR comments via pr-view concept with CODEV_INCLUDE_COMMENTS flag
|
|
631
|
+
const commentsResult = executeForgeCommandSync('pr-view', {
|
|
632
|
+
CODEV_PR_NUMBER: prId,
|
|
633
|
+
CODEV_INCLUDE_COMMENTS: '1',
|
|
634
|
+
}, { raw: true });
|
|
635
|
+
if (commentsResult && typeof commentsResult === 'string' && commentsResult.trim()) {
|
|
636
|
+
comments = commentsResult;
|
|
637
|
+
}
|
|
623
638
|
}
|
|
624
639
|
catch {
|
|
625
640
|
// No comments or error fetching
|
|
@@ -631,25 +646,28 @@ function fetchPRData(prNumber) {
|
|
|
631
646
|
}
|
|
632
647
|
}
|
|
633
648
|
/**
|
|
634
|
-
* Fetch the full PR diff via
|
|
649
|
+
* Fetch the full PR diff via the pr-diff forge concept command.
|
|
635
650
|
*/
|
|
636
|
-
function fetchPRDiff(
|
|
651
|
+
function fetchPRDiff(prId) {
|
|
637
652
|
try {
|
|
638
|
-
|
|
653
|
+
const result = executeForgeCommandSync('pr-diff', {
|
|
654
|
+
CODEV_PR_NUMBER: prId,
|
|
655
|
+
}, { raw: true });
|
|
656
|
+
return typeof result === 'string' ? result : '';
|
|
639
657
|
}
|
|
640
658
|
catch (err) {
|
|
641
|
-
throw new Error(`Failed to fetch PR diff for #${
|
|
659
|
+
throw new Error(`Failed to fetch PR diff for #${prId}: ${err}`);
|
|
642
660
|
}
|
|
643
661
|
}
|
|
644
662
|
/**
|
|
645
663
|
* Build query for PR review.
|
|
646
664
|
* Includes full PR diff + file list; model reads surrounding context from disk.
|
|
647
665
|
*/
|
|
648
|
-
function buildPRQuery(
|
|
649
|
-
const prData = fetchPRData(
|
|
650
|
-
const diff = fetchPRDiff(
|
|
666
|
+
function buildPRQuery(prId) {
|
|
667
|
+
const prData = fetchPRData(prId);
|
|
668
|
+
const diff = fetchPRDiff(prId);
|
|
651
669
|
const fileList = prData.changedFiles.map(f => `- ${f}`).join('\n');
|
|
652
|
-
return `Review Pull Request #${
|
|
670
|
+
return `Review Pull Request #${prId}
|
|
653
671
|
|
|
654
672
|
## PR Info
|
|
655
673
|
\`\`\`json
|
|
@@ -885,61 +903,63 @@ KEY_ISSUES: [List of critical issues if any, or "None"]`;
|
|
|
885
903
|
return query;
|
|
886
904
|
}
|
|
887
905
|
/**
|
|
888
|
-
* Find PR number for the current branch
|
|
906
|
+
* Find PR number for the current branch via pr-search forge concept.
|
|
889
907
|
*/
|
|
890
908
|
function findPRForCurrentBranch(workspaceRoot) {
|
|
891
909
|
const branchName = execSync('git branch --show-current', { cwd: workspaceRoot, encoding: 'utf-8' }).trim();
|
|
892
|
-
const
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
if (isNaN(prNumber)) {
|
|
910
|
+
const result = executeForgeCommandSync('pr-search', {
|
|
911
|
+
CODEV_SEARCH_QUERY: `head:${branchName}`,
|
|
912
|
+
}, { cwd: workspaceRoot });
|
|
913
|
+
const prs = Array.isArray(result) ? result : [];
|
|
914
|
+
if (prs.length === 0 || !prs[0]?.number) {
|
|
898
915
|
throw new Error(`No PR found for branch: ${branchName}`);
|
|
899
916
|
}
|
|
900
|
-
return
|
|
917
|
+
return String(prs[0].number);
|
|
901
918
|
}
|
|
902
919
|
/**
|
|
903
|
-
* Find PR number for a given issue number (architect mode)
|
|
920
|
+
* Find PR number for a given issue number (architect mode) via pr-search forge concept.
|
|
904
921
|
*/
|
|
905
|
-
function findPRForIssue(workspaceRoot,
|
|
906
|
-
const
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
922
|
+
function findPRForIssue(workspaceRoot, issueId) {
|
|
923
|
+
const result = executeForgeCommandSync('pr-search', {
|
|
924
|
+
CODEV_SEARCH_QUERY: issueId,
|
|
925
|
+
}, { cwd: workspaceRoot });
|
|
926
|
+
const prs = Array.isArray(result) ? result : [];
|
|
927
|
+
if (prs.length === 0 || !prs[0]?.number) {
|
|
928
|
+
throw new Error(`No PR found for issue #${issueId}`);
|
|
929
|
+
}
|
|
930
|
+
return prs[0];
|
|
911
931
|
}
|
|
912
932
|
/**
|
|
913
933
|
* Resolve query for builder context (auto-detected from porch state)
|
|
914
934
|
*/
|
|
915
935
|
function resolveBuilderQuery(workspaceRoot, type, options) {
|
|
916
936
|
const projectState = getBuilderProjectState(workspaceRoot, options.projectId);
|
|
917
|
-
const
|
|
937
|
+
const projectId = projectState.id;
|
|
918
938
|
switch (type) {
|
|
919
939
|
case 'spec': {
|
|
920
|
-
const specPath = findSpec(workspaceRoot,
|
|
940
|
+
const specPath = findSpec(workspaceRoot, projectId);
|
|
921
941
|
if (!specPath)
|
|
922
|
-
throw new Error(`Spec ${
|
|
923
|
-
const planPath = findPlan(workspaceRoot,
|
|
942
|
+
throw new Error(`Spec ${projectId} not found in codev/specs/`);
|
|
943
|
+
const planPath = findPlan(workspaceRoot, projectId);
|
|
924
944
|
console.error(`Spec: ${specPath}`);
|
|
925
945
|
if (planPath)
|
|
926
946
|
console.error(`Plan: ${planPath}`);
|
|
927
947
|
return buildSpecQuery(specPath, planPath);
|
|
928
948
|
}
|
|
929
949
|
case 'plan': {
|
|
930
|
-
const planPath = findPlan(workspaceRoot,
|
|
950
|
+
const planPath = findPlan(workspaceRoot, projectId);
|
|
931
951
|
if (!planPath)
|
|
932
|
-
throw new Error(`Plan ${
|
|
933
|
-
const specPath = findSpec(workspaceRoot,
|
|
952
|
+
throw new Error(`Plan ${projectId} not found in codev/plans/`);
|
|
953
|
+
const specPath = findSpec(workspaceRoot, projectId);
|
|
934
954
|
console.error(`Plan: ${planPath}`);
|
|
935
955
|
if (specPath)
|
|
936
956
|
console.error(`Spec: ${specPath}`);
|
|
937
957
|
return buildPlanQuery(planPath, specPath);
|
|
938
958
|
}
|
|
939
959
|
case 'impl': {
|
|
940
|
-
const specPath = findSpec(workspaceRoot,
|
|
941
|
-
const planPath = findPlan(workspaceRoot,
|
|
942
|
-
console.error(`Project: ${
|
|
960
|
+
const specPath = findSpec(workspaceRoot, projectId);
|
|
961
|
+
const planPath = findPlan(workspaceRoot, projectId);
|
|
962
|
+
console.error(`Project: ${projectId}`);
|
|
943
963
|
if (specPath)
|
|
944
964
|
console.error(`Spec: ${specPath}`);
|
|
945
965
|
if (planPath)
|
|
@@ -949,17 +969,17 @@ function resolveBuilderQuery(workspaceRoot, type, options) {
|
|
|
949
969
|
return buildImplQuery(workspaceRoot, specPath, planPath, options.planPhase);
|
|
950
970
|
}
|
|
951
971
|
case 'pr': {
|
|
952
|
-
const
|
|
953
|
-
console.error(`PR: #${
|
|
954
|
-
return buildPRQuery(
|
|
972
|
+
const prId = findPRForCurrentBranch(workspaceRoot);
|
|
973
|
+
console.error(`PR: #${prId}`);
|
|
974
|
+
return buildPRQuery(prId);
|
|
955
975
|
}
|
|
956
976
|
case 'phase': {
|
|
957
977
|
const currentPhase = options.planPhase ?? projectState.currentPlanPhase;
|
|
958
978
|
if (!currentPhase) {
|
|
959
979
|
throw new Error('No current plan phase detected. Use --plan-phase to specify.');
|
|
960
980
|
}
|
|
961
|
-
const specPath = findSpec(workspaceRoot,
|
|
962
|
-
const planPath = findPlan(workspaceRoot,
|
|
981
|
+
const specPath = findSpec(workspaceRoot, projectId);
|
|
982
|
+
const planPath = findPlan(workspaceRoot, projectId);
|
|
963
983
|
console.error(`Phase: ${currentPhase}`);
|
|
964
984
|
if (specPath)
|
|
965
985
|
console.error(`Spec: ${specPath}`);
|
|
@@ -968,9 +988,9 @@ function resolveBuilderQuery(workspaceRoot, type, options) {
|
|
|
968
988
|
return buildPhaseQuery(workspaceRoot, currentPhase, specPath, planPath);
|
|
969
989
|
}
|
|
970
990
|
case 'integration': {
|
|
971
|
-
const
|
|
972
|
-
console.error(`PR: #${
|
|
973
|
-
return buildPRQuery(
|
|
991
|
+
const prId = findPRForCurrentBranch(workspaceRoot);
|
|
992
|
+
console.error(`PR: #${prId} (integration review)`);
|
|
993
|
+
return buildPRQuery(prId);
|
|
974
994
|
}
|
|
975
995
|
default:
|
|
976
996
|
throw new Error(`Unknown review type: ${type}\nValid types: spec, plan, impl, pr, phase, integration`);
|
|
@@ -987,33 +1007,30 @@ function resolveArchitectQuery(workspaceRoot, type, options) {
|
|
|
987
1007
|
throw new Error(`--issue is required from architect context for --type ${type}.\n` +
|
|
988
1008
|
`Example: consult -m gemini --protocol spir --type ${type} --issue 42`);
|
|
989
1009
|
}
|
|
990
|
-
const
|
|
991
|
-
if (isNaN(issueNumber)) {
|
|
992
|
-
throw new Error(`Invalid issue number: ${options.issue}`);
|
|
993
|
-
}
|
|
1010
|
+
const issueId = options.issue;
|
|
994
1011
|
switch (type) {
|
|
995
1012
|
case 'spec': {
|
|
996
|
-
const specPath = findSpec(workspaceRoot,
|
|
1013
|
+
const specPath = findSpec(workspaceRoot, issueId);
|
|
997
1014
|
if (!specPath)
|
|
998
|
-
throw new Error(`Spec ${
|
|
999
|
-
const planPath = findPlan(workspaceRoot,
|
|
1015
|
+
throw new Error(`Spec ${issueId} not found in codev/specs/`);
|
|
1016
|
+
const planPath = findPlan(workspaceRoot, issueId);
|
|
1000
1017
|
console.error(`Spec: ${specPath}`);
|
|
1001
1018
|
if (planPath)
|
|
1002
1019
|
console.error(`Plan: ${planPath}`);
|
|
1003
1020
|
return buildSpecQuery(specPath, planPath);
|
|
1004
1021
|
}
|
|
1005
1022
|
case 'plan': {
|
|
1006
|
-
const planPath = findPlan(workspaceRoot,
|
|
1023
|
+
const planPath = findPlan(workspaceRoot, issueId);
|
|
1007
1024
|
if (!planPath)
|
|
1008
|
-
throw new Error(`Plan ${
|
|
1009
|
-
const specPath = findSpec(workspaceRoot,
|
|
1025
|
+
throw new Error(`Plan ${issueId} not found in codev/plans/`);
|
|
1026
|
+
const specPath = findSpec(workspaceRoot, issueId);
|
|
1010
1027
|
console.error(`Plan: ${planPath}`);
|
|
1011
1028
|
if (specPath)
|
|
1012
1029
|
console.error(`Spec: ${specPath}`);
|
|
1013
1030
|
return buildPlanQuery(planPath, specPath);
|
|
1014
1031
|
}
|
|
1015
1032
|
case 'impl': {
|
|
1016
|
-
const pr = findPRForIssue(workspaceRoot,
|
|
1033
|
+
const pr = findPRForIssue(workspaceRoot, issueId);
|
|
1017
1034
|
// Fetch the branch and diff from merge-base
|
|
1018
1035
|
try {
|
|
1019
1036
|
execSync(`git fetch origin ${pr.headRefName}`, { cwd: workspaceRoot, stdio: 'pipe' });
|
|
@@ -1022,9 +1039,9 @@ function resolveArchitectQuery(workspaceRoot, type, options) {
|
|
|
1022
1039
|
// May already be fetched
|
|
1023
1040
|
}
|
|
1024
1041
|
const mergeBase = execSync(`git merge-base main origin/${pr.headRefName}`, { cwd: workspaceRoot, encoding: 'utf-8' }).trim();
|
|
1025
|
-
const specPath = findSpec(workspaceRoot,
|
|
1026
|
-
const planPath = findPlan(workspaceRoot,
|
|
1027
|
-
console.error(`Project: ${
|
|
1042
|
+
const specPath = findSpec(workspaceRoot, issueId);
|
|
1043
|
+
const planPath = findPlan(workspaceRoot, issueId);
|
|
1044
|
+
console.error(`Project: ${issueId} (PR #${pr.number}, branch: ${pr.headRefName})`);
|
|
1028
1045
|
if (specPath)
|
|
1029
1046
|
console.error(`Spec: ${specPath}`);
|
|
1030
1047
|
if (planPath)
|
|
@@ -1032,14 +1049,14 @@ function resolveArchitectQuery(workspaceRoot, type, options) {
|
|
|
1032
1049
|
return buildImplQuery(workspaceRoot, specPath, planPath, options.planPhase, `${mergeBase}..origin/${pr.headRefName}`);
|
|
1033
1050
|
}
|
|
1034
1051
|
case 'pr': {
|
|
1035
|
-
const pr = findPRForIssue(workspaceRoot,
|
|
1052
|
+
const pr = findPRForIssue(workspaceRoot, issueId);
|
|
1036
1053
|
console.error(`PR: #${pr.number}`);
|
|
1037
|
-
return buildPRQuery(pr.number);
|
|
1054
|
+
return buildPRQuery(String(pr.number));
|
|
1038
1055
|
}
|
|
1039
1056
|
case 'integration': {
|
|
1040
|
-
const pr = findPRForIssue(workspaceRoot,
|
|
1057
|
+
const pr = findPRForIssue(workspaceRoot, issueId);
|
|
1041
1058
|
console.error(`PR: #${pr.number} (integration review)`);
|
|
1042
|
-
return buildPRQuery(pr.number);
|
|
1059
|
+
return buildPRQuery(String(pr.number));
|
|
1043
1060
|
}
|
|
1044
1061
|
default:
|
|
1045
1062
|
throw new Error(`Unknown review type: ${type}\nValid types: spec, plan, impl, pr, phase, integration`);
|