@specforge/mcp 3.1.0 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/autopilot/agents/agent-runner.d.ts.map +1 -1
- package/dist/autopilot/agents/agent-runner.js +7 -0
- package/dist/autopilot/agents/agent-runner.js.map +1 -1
- package/dist/autopilot/api/autopilot-api-client.d.ts +5 -4
- package/dist/autopilot/api/autopilot-api-client.d.ts.map +1 -1
- package/dist/autopilot/api/autopilot-api-client.js +21 -26
- package/dist/autopilot/api/autopilot-api-client.js.map +1 -1
- package/dist/autopilot/cli/run.d.ts.map +1 -1
- package/dist/autopilot/cli/run.js +28 -0
- package/dist/autopilot/cli/run.js.map +1 -1
- package/dist/autopilot/core/dependency-resolver.d.ts +10 -1
- package/dist/autopilot/core/dependency-resolver.d.ts.map +1 -1
- package/dist/autopilot/core/dependency-resolver.js +27 -1
- package/dist/autopilot/core/dependency-resolver.js.map +1 -1
- package/dist/autopilot/core/dispatcher.d.ts +26 -0
- package/dist/autopilot/core/dispatcher.d.ts.map +1 -1
- package/dist/autopilot/core/dispatcher.js +116 -6
- package/dist/autopilot/core/dispatcher.js.map +1 -1
- package/dist/autopilot/readiness/aggregation.d.ts +56 -0
- package/dist/autopilot/readiness/aggregation.d.ts.map +1 -0
- package/dist/autopilot/readiness/aggregation.js +94 -0
- package/dist/autopilot/readiness/aggregation.js.map +1 -0
- package/dist/autopilot/readiness/config.d.ts +15 -0
- package/dist/autopilot/readiness/config.d.ts.map +1 -0
- package/dist/autopilot/readiness/config.js +76 -0
- package/dist/autopilot/readiness/config.js.map +1 -0
- package/dist/autopilot/readiness/index.d.ts +16 -0
- package/dist/autopilot/readiness/index.d.ts.map +1 -0
- package/dist/autopilot/readiness/index.js +11 -0
- package/dist/autopilot/readiness/index.js.map +1 -0
- package/dist/autopilot/readiness/post-scoring.d.ts +28 -0
- package/dist/autopilot/readiness/post-scoring.d.ts.map +1 -0
- package/dist/autopilot/readiness/post-scoring.js +41 -0
- package/dist/autopilot/readiness/post-scoring.js.map +1 -0
- package/dist/autopilot/readiness/preflight.d.ts +36 -0
- package/dist/autopilot/readiness/preflight.d.ts.map +1 -0
- package/dist/autopilot/readiness/preflight.js +93 -0
- package/dist/autopilot/readiness/preflight.js.map +1 -0
- package/dist/autopilot/readiness/prompt-section.d.ts +19 -0
- package/dist/autopilot/readiness/prompt-section.d.ts.map +1 -0
- package/dist/autopilot/readiness/prompt-section.js +33 -0
- package/dist/autopilot/readiness/prompt-section.js.map +1 -0
- package/dist/autopilot/readiness/types.d.ts +25 -0
- package/dist/autopilot/readiness/types.d.ts.map +1 -0
- package/dist/autopilot/readiness/types.js +8 -0
- package/dist/autopilot/readiness/types.js.map +1 -0
- package/dist/autopilot/sync/sync-manager.d.ts.map +1 -1
- package/dist/autopilot/sync/sync-manager.js +2 -1
- package/dist/autopilot/sync/sync-manager.js.map +1 -1
- package/dist/autopilot/types.d.ts +28 -0
- package/dist/autopilot/types.d.ts.map +1 -1
- package/dist/autopilot/types.js.map +1 -1
- package/dist/cli/commands/index.d.ts +3 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +3 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/review-implementation.d.ts +16 -0
- package/dist/cli/commands/review-implementation.d.ts.map +1 -0
- package/dist/cli/commands/review-implementation.js +226 -0
- package/dist/cli/commands/review-implementation.js.map +1 -0
- package/dist/cli/commands/review-planning.d.ts +15 -0
- package/dist/cli/commands/review-planning.d.ts.map +1 -0
- package/dist/cli/commands/review-planning.js +177 -0
- package/dist/cli/commands/review-planning.js.map +1 -0
- package/dist/cli/commands/score/display.d.ts +20 -0
- package/dist/cli/commands/score/display.d.ts.map +1 -0
- package/dist/cli/commands/score/display.js +111 -0
- package/dist/cli/commands/score/display.js.map +1 -0
- package/dist/cli/commands/score/index.d.ts +9 -0
- package/dist/cli/commands/score/index.d.ts.map +1 -0
- package/dist/cli/commands/score/index.js +12 -0
- package/dist/cli/commands/score/index.js.map +1 -0
- package/dist/cli/commands/score/score.d.ts +17 -0
- package/dist/cli/commands/score/score.d.ts.map +1 -0
- package/dist/cli/commands/score/score.js +144 -0
- package/dist/cli/commands/score/score.js.map +1 -0
- package/dist/cli/commands/score/types.d.ts +79 -0
- package/dist/cli/commands/score/types.d.ts.map +1 -0
- package/dist/cli/commands/score/types.js +51 -0
- package/dist/cli/commands/score/types.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +6 -8
- package/dist/cli/index.js.map +1 -1
- package/dist/lib/prompt-generator.d.ts.map +1 -1
- package/dist/lib/prompt-generator.js +3 -1
- package/dist/lib/prompt-generator.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Score Command Implementation
|
|
3
|
+
*
|
|
4
|
+
* Main entry point for the score command that fetches and displays
|
|
5
|
+
* readiness scores for specifications, epics, and tickets.
|
|
6
|
+
*/
|
|
7
|
+
import chalk from 'chalk';
|
|
8
|
+
import ora from 'ora';
|
|
9
|
+
import { resolveConfig } from '../../config/index.js';
|
|
10
|
+
import { ApiClient } from '../../../client/api-client.js';
|
|
11
|
+
import { withErrorHandler, CliError } from '../../middleware/error-handler.js';
|
|
12
|
+
import { isValidEntityType, getOperationForType, getParamNameForType, getFullTypeName, VALID_ENTITY_TYPES, } from './types.js';
|
|
13
|
+
import { formatScoreResult, formatScoreReport } from './display.js';
|
|
14
|
+
/**
|
|
15
|
+
* Main score command handler
|
|
16
|
+
*/
|
|
17
|
+
export async function scoreCommand(entityType, entityId, options) {
|
|
18
|
+
const config = resolveConfig();
|
|
19
|
+
if (!config.apiKey) {
|
|
20
|
+
throw new CliError('Not authenticated', 1, 'Run `specforge login` to authenticate first');
|
|
21
|
+
}
|
|
22
|
+
// If no entity type specified, default to active specification
|
|
23
|
+
if (!entityType) {
|
|
24
|
+
if (!config.specificationId) {
|
|
25
|
+
console.error(chalk.red('\nError: No entity specified and no active specification.'));
|
|
26
|
+
console.error('Usage: specforge score [spec|epic|ticket] [id]');
|
|
27
|
+
console.error(chalk.dim("Run 'specforge init' or 'specforge switch' to set an active specification."));
|
|
28
|
+
process.exit(1);
|
|
29
|
+
}
|
|
30
|
+
entityType = 'spec';
|
|
31
|
+
entityId = config.specificationId;
|
|
32
|
+
}
|
|
33
|
+
if (!isValidEntityType(entityType)) {
|
|
34
|
+
console.error(chalk.red(`\nError: Unknown entity type "${entityType}"`));
|
|
35
|
+
console.error(`Valid types: ${VALID_ENTITY_TYPES.join(', ')}`);
|
|
36
|
+
process.exit(1);
|
|
37
|
+
}
|
|
38
|
+
if (!entityId) {
|
|
39
|
+
console.error(chalk.red(`\nError: Entity ID is required.`));
|
|
40
|
+
console.error(`Usage: specforge score ${entityType} <id>`);
|
|
41
|
+
process.exit(1);
|
|
42
|
+
}
|
|
43
|
+
const spinner = options.json ? null : ora('Fetching readiness score...').start();
|
|
44
|
+
try {
|
|
45
|
+
const client = new ApiClient({
|
|
46
|
+
apiKey: config.apiKey,
|
|
47
|
+
apiUrl: config.apiUrl,
|
|
48
|
+
debug: config.debug,
|
|
49
|
+
});
|
|
50
|
+
// Fetch the entity
|
|
51
|
+
const operation = getOperationForType(entityType);
|
|
52
|
+
const paramName = getParamNameForType(entityType);
|
|
53
|
+
const entity = await client.call(operation, {
|
|
54
|
+
[paramName]: entityId,
|
|
55
|
+
});
|
|
56
|
+
const result = {
|
|
57
|
+
id: entity.id,
|
|
58
|
+
title: entity.title,
|
|
59
|
+
type: getFullTypeName(entityType),
|
|
60
|
+
readinessScore: typeof entity.readinessScore === 'number' ? entity.readinessScore : null,
|
|
61
|
+
readinessLevel: typeof entity.readinessLevel === 'string' ? entity.readinessLevel : null,
|
|
62
|
+
};
|
|
63
|
+
spinner?.stop();
|
|
64
|
+
// Output based on format
|
|
65
|
+
if (options.json && !options.report) {
|
|
66
|
+
console.log(JSON.stringify(result, null, 2));
|
|
67
|
+
}
|
|
68
|
+
else if (!options.report) {
|
|
69
|
+
console.log(formatScoreResult(result));
|
|
70
|
+
}
|
|
71
|
+
// Fetch and display full report if requested
|
|
72
|
+
if (options.report) {
|
|
73
|
+
const reportSpinner = options.json ? null : ora('Fetching readiness report...').start();
|
|
74
|
+
try {
|
|
75
|
+
const report = await client.call('get_report', {
|
|
76
|
+
type: 'readiness',
|
|
77
|
+
scope: getFullTypeName(entityType),
|
|
78
|
+
scopeId: entityId,
|
|
79
|
+
format: 'json',
|
|
80
|
+
});
|
|
81
|
+
reportSpinner?.stop();
|
|
82
|
+
if (options.json) {
|
|
83
|
+
console.log(JSON.stringify({ score: result, report }, null, 2));
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
console.log(formatScoreResult(result));
|
|
87
|
+
console.log(formatScoreReport(report));
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
catch (reportError) {
|
|
91
|
+
reportSpinner?.fail('Failed to fetch readiness report');
|
|
92
|
+
// Still show the score even if report fails
|
|
93
|
+
if (!options.json) {
|
|
94
|
+
console.log(formatScoreResult(result));
|
|
95
|
+
}
|
|
96
|
+
const msg = reportError instanceof Error ? reportError.message : 'Unknown error';
|
|
97
|
+
console.error(chalk.dim(`\nReport unavailable: ${msg}`));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
spinner?.fail('Failed to fetch score');
|
|
103
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
104
|
+
console.error(chalk.red(`\nError: ${message}`));
|
|
105
|
+
if (!options.json) {
|
|
106
|
+
console.error(chalk.dim('\nPossible causes:'));
|
|
107
|
+
console.error(chalk.dim(' - Invalid entity ID'));
|
|
108
|
+
console.error(chalk.dim(' - Network connectivity issues'));
|
|
109
|
+
console.error(chalk.dim(' - Authentication expired (try: specforge login)'));
|
|
110
|
+
}
|
|
111
|
+
process.exit(1);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Register score command with Commander
|
|
116
|
+
*/
|
|
117
|
+
export function registerScoreCommand(program) {
|
|
118
|
+
program
|
|
119
|
+
.command('score [type] [id]')
|
|
120
|
+
.description('Display readiness score for a specification, epic, or ticket')
|
|
121
|
+
.addHelpText('after', `
|
|
122
|
+
Arguments:
|
|
123
|
+
type Entity type: spec, epic, or ticket (default: spec)
|
|
124
|
+
id Entity ID (defaults to active specification)
|
|
125
|
+
|
|
126
|
+
Examples:
|
|
127
|
+
$ specforge score # Score for active specification
|
|
128
|
+
$ specforge score spec spec_abc123 # Score for specific specification
|
|
129
|
+
$ specforge score epic epic_def456 # Score for specific epic
|
|
130
|
+
$ specforge score ticket ticket_ghi789 # Score for specific ticket
|
|
131
|
+
$ specforge score --report # Full readiness report
|
|
132
|
+
$ specforge score --json # JSON output
|
|
133
|
+
|
|
134
|
+
Score Levels:
|
|
135
|
+
exemplary 90-100 Outstanding readiness
|
|
136
|
+
complete 70-89 Good readiness
|
|
137
|
+
partial 40-69 Needs improvement
|
|
138
|
+
minimal 0-39 Significant gaps
|
|
139
|
+
`)
|
|
140
|
+
.option('--report', 'Show full readiness report')
|
|
141
|
+
.option('--json', 'Output as JSON')
|
|
142
|
+
.action(withErrorHandler(scoreCommand));
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=score.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"score.js","sourceRoot":"","sources":["../../../../src/cli/commands/score/score.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Score Command Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the score command which displays
|
|
5
|
+
* readiness scores for specifications, epics, and tickets.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Score command options from Commander
|
|
9
|
+
*/
|
|
10
|
+
export interface ScoreDisplayOptions {
|
|
11
|
+
/** Entity type to fetch (spec, epic, ticket) */
|
|
12
|
+
entityType?: string;
|
|
13
|
+
/** Entity ID */
|
|
14
|
+
entityId?: string;
|
|
15
|
+
/** Generate full readiness report */
|
|
16
|
+
report?: boolean;
|
|
17
|
+
/** Output as JSON */
|
|
18
|
+
json?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Score result for a single entity
|
|
22
|
+
*/
|
|
23
|
+
export interface ScoreResult {
|
|
24
|
+
/** Entity ID */
|
|
25
|
+
id: string;
|
|
26
|
+
/** Entity title */
|
|
27
|
+
title: string;
|
|
28
|
+
/** Entity type */
|
|
29
|
+
type: 'specification' | 'epic' | 'ticket';
|
|
30
|
+
/** Readiness score (0-100 or null if unscored) */
|
|
31
|
+
readinessScore: number | null;
|
|
32
|
+
/** Readiness level (exemplary, complete, partial, minimal) */
|
|
33
|
+
readinessLevel: string | null;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* API response with readiness fields
|
|
37
|
+
*/
|
|
38
|
+
export interface EntityWithReadiness {
|
|
39
|
+
id: string;
|
|
40
|
+
title: string;
|
|
41
|
+
readinessScore?: number | null;
|
|
42
|
+
readinessLevel?: string | null;
|
|
43
|
+
[key: string]: unknown;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Readiness report from get_report API
|
|
47
|
+
*/
|
|
48
|
+
export interface ReadinessReportResponse {
|
|
49
|
+
[key: string]: unknown;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Valid entity types for the score command
|
|
53
|
+
*/
|
|
54
|
+
export type ScoreEntityType = 'spec' | 'epic' | 'ticket';
|
|
55
|
+
/**
|
|
56
|
+
* Valid readiness levels
|
|
57
|
+
*/
|
|
58
|
+
export declare const READINESS_LEVELS: readonly ["exemplary", "complete", "partial", "minimal"];
|
|
59
|
+
/**
|
|
60
|
+
* Valid entity types
|
|
61
|
+
*/
|
|
62
|
+
export declare const VALID_ENTITY_TYPES: ScoreEntityType[];
|
|
63
|
+
/**
|
|
64
|
+
* Check if a string is a valid entity type
|
|
65
|
+
*/
|
|
66
|
+
export declare function isValidEntityType(type: string): type is ScoreEntityType;
|
|
67
|
+
/**
|
|
68
|
+
* Map short entity type to API operation name
|
|
69
|
+
*/
|
|
70
|
+
export declare function getOperationForType(type: ScoreEntityType): string;
|
|
71
|
+
/**
|
|
72
|
+
* Map short entity type to API parameter name
|
|
73
|
+
*/
|
|
74
|
+
export declare function getParamNameForType(type: ScoreEntityType): string;
|
|
75
|
+
/**
|
|
76
|
+
* Map short entity type to full type name
|
|
77
|
+
*/
|
|
78
|
+
export declare function getFullTypeName(type: ScoreEntityType): 'specification' | 'epic' | 'ticket';
|
|
79
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/score/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qBAAqB;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC1C,kDAAkD;IAClD,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,8DAA8D;IAC9D,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,gBAAgB,0DAA2D,CAAC;AAEzF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,eAAe,EAA+B,CAAC;AAEhF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,eAAe,CAEvE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAMjE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAMjE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,GAAG,MAAM,GAAG,QAAQ,CAM1F"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Score Command Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the score command which displays
|
|
5
|
+
* readiness scores for specifications, epics, and tickets.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Valid readiness levels
|
|
9
|
+
*/
|
|
10
|
+
export const READINESS_LEVELS = ['exemplary', 'complete', 'partial', 'minimal'];
|
|
11
|
+
/**
|
|
12
|
+
* Valid entity types
|
|
13
|
+
*/
|
|
14
|
+
export const VALID_ENTITY_TYPES = ['spec', 'epic', 'ticket'];
|
|
15
|
+
/**
|
|
16
|
+
* Check if a string is a valid entity type
|
|
17
|
+
*/
|
|
18
|
+
export function isValidEntityType(type) {
|
|
19
|
+
return VALID_ENTITY_TYPES.includes(type);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Map short entity type to API operation name
|
|
23
|
+
*/
|
|
24
|
+
export function getOperationForType(type) {
|
|
25
|
+
switch (type) {
|
|
26
|
+
case 'spec': return 'get_specification';
|
|
27
|
+
case 'epic': return 'get_epic';
|
|
28
|
+
case 'ticket': return 'get_ticket';
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Map short entity type to API parameter name
|
|
33
|
+
*/
|
|
34
|
+
export function getParamNameForType(type) {
|
|
35
|
+
switch (type) {
|
|
36
|
+
case 'spec': return 'specificationId';
|
|
37
|
+
case 'epic': return 'epicId';
|
|
38
|
+
case 'ticket': return 'ticketId';
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Map short entity type to full type name
|
|
43
|
+
*/
|
|
44
|
+
export function getFullTypeName(type) {
|
|
45
|
+
switch (type) {
|
|
46
|
+
case 'spec': return 'specification';
|
|
47
|
+
case 'epic': return 'epic';
|
|
48
|
+
case 'ticket': return 'ticket';
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/cli/commands/score/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuDH;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AAEzF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;AAEhF;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,kBAAkB,CAAC,QAAQ,CAAC,IAAuB,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAqB;IACvD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,OAAO,mBAAmB,CAAC;QACxC,KAAK,MAAM,CAAC,CAAC,OAAO,UAAU,CAAC;QAC/B,KAAK,QAAQ,CAAC,CAAC,OAAO,YAAY,CAAC;IACrC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAqB;IACvD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,OAAO,iBAAiB,CAAC;QACtC,KAAK,MAAM,CAAC,CAAC,OAAO,QAAQ,CAAC;QAC7B,KAAK,QAAQ,CAAC,CAAC,OAAO,UAAU,CAAC;IACnC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAqB;IACnD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,OAAO,eAAe,CAAC;QACpC,KAAK,MAAM,CAAC,CAAC,OAAO,MAAM,CAAC;QAC3B,KAAK,QAAQ,CAAC,CAAC,OAAO,QAAQ,CAAC;IACjC,CAAC;AACH,CAAC"}
|
package/dist/cli/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqCpC;;GAEG;AACH,QAAA,MAAM,WAAW,UAAU,CAAC;AA+L5B;;GAEG;AACH,QAAA,MAAM,OAAO,SAAkB,CAAC;AAShC;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,IAAI,GAAE,MAAM,EAAiB,GAAG,IAAI,CAQ1D;AAED;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,CAAC;AAEnB;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -9,7 +9,7 @@ import { authGuardHook } from './middleware/auth-guard.js';
|
|
|
9
9
|
import { withErrorHandler, debugLog } from './middleware/error-handler.js';
|
|
10
10
|
import { resolveConfig } from './config/loader.js';
|
|
11
11
|
import { colors } from './ui/index.js';
|
|
12
|
-
import { registerLoginCommand, registerInitCommand, registerConfigureCommand, registerDoctorCommand, registerStatusCommand, registerProjectsCommand, registerSpecsCommand, registerSwitchCommand, registerTicketsCommand, registerNextCommand, registerBlockedCommand, registerFeedbackCommand, registerBlueprintsCommand, registerMembersCommand, registerInvitationsCommand, registerCheckCircularCommand, registerTreeCommand, registerCriticalPathCommand, registerSpecActivateCommand, registerPlanCommand, } from './commands/index.js';
|
|
12
|
+
import { registerLoginCommand, registerInitCommand, registerConfigureCommand, registerDoctorCommand, registerStatusCommand, registerProjectsCommand, registerSpecsCommand, registerSwitchCommand, registerTicketsCommand, registerNextCommand, registerBlockedCommand, registerFeedbackCommand, registerBlueprintsCommand, registerMembersCommand, registerInvitationsCommand, registerCheckCircularCommand, registerTreeCommand, registerCriticalPathCommand, registerSpecActivateCommand, registerPlanCommand, registerScoreCommand, registerReviewPlanningCommand, registerReviewImplementationCommand, } from './commands/index.js';
|
|
13
13
|
import { registerTicketCommand } from './commands/ticket/index.js';
|
|
14
14
|
import { registerSessionCommands } from './commands/session/index.js';
|
|
15
15
|
import { registerDebugCommands } from './commands/debug/index.js';
|
|
@@ -119,6 +119,8 @@ function registerCommands(program) {
|
|
|
119
119
|
registerSpecActivateCommand(program);
|
|
120
120
|
// Plan Command - Preview Agent Teams implementation plan
|
|
121
121
|
registerPlanCommand(program);
|
|
122
|
+
// Score Command - Display readiness scores
|
|
123
|
+
registerScoreCommand(program);
|
|
122
124
|
// E11 - Ticket Command (implemented)
|
|
123
125
|
registerTicketCommand(program);
|
|
124
126
|
// E12 - Session Commands (implemented)
|
|
@@ -129,13 +131,9 @@ function registerCommands(program) {
|
|
|
129
131
|
registerScaffoldCommand(program);
|
|
130
132
|
// E15 - MCP Docs Command (implemented)
|
|
131
133
|
registerDocumentationCommands(program);
|
|
132
|
-
//
|
|
133
|
-
program
|
|
134
|
-
|
|
135
|
-
.description('Review implementation progress')
|
|
136
|
-
.action(() => {
|
|
137
|
-
console.log(colors.muted('Review command will be implemented in E16'));
|
|
138
|
-
});
|
|
134
|
+
// Lifecycle Review Gate Commands
|
|
135
|
+
registerReviewPlanningCommand(program);
|
|
136
|
+
registerReviewImplementationCommand(program);
|
|
139
137
|
// Feedback Command
|
|
140
138
|
registerFeedbackCommand(program);
|
|
141
139
|
// Autopilot Commands
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,EAC1B,4BAA4B,EAC5B,mBAAmB,EACnB,2BAA2B,EAC3B,2BAA2B,EAC3B,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-generator.d.ts","sourceRoot":"","sources":["../../src/lib/prompt-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE;QACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,GAAG,IAAI,CAAC;IACT,kBAAkB,CAAC,EAAE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;IAC3D,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC/B,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,qCAAqC;IACrC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,2BAA2B;IAC3B,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAMD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,EACnC,WAAW,CAAC,EAAE,kBAAkB,GAAG,IAAI,GACtC,MAAM,
|
|
1
|
+
{"version":3,"file":"prompt-generator.d.ts","sourceRoot":"","sources":["../../src/lib/prompt-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE;QACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,GAAG,IAAI,CAAC;IACT,kBAAkB,CAAC,EAAE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;IAC3D,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC/B,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,qCAAqC;IACrC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,2BAA2B;IAC3B,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAMD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,EACnC,WAAW,CAAC,EAAE,kBAAkB,GAAG,IAAI,GACtC,MAAM,CAiHR;AAMD;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,WAAW,EACjB,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,IAAI,EAC9C,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,GAClC,MAAM,CAiER"}
|
|
@@ -88,7 +88,9 @@ export function generateWorkerPrompt(ticket, epic, spec, workspace, conventions)
|
|
|
88
88
|
'Only modify files listed in the implementation guide unless necessary',
|
|
89
89
|
"Follow the project's coding conventions",
|
|
90
90
|
'Write tests for new functionality',
|
|
91
|
-
'
|
|
91
|
+
'BEFORE starting implementation: call `start_work_session` with the ticketId to mark it active',
|
|
92
|
+
'AFTER completing implementation and tests: call `complete_work_session` with ticketId, summary of work done, filesCreated, filesModified, filesDeleted, and validated: true',
|
|
93
|
+
'If blocked: call `report_progress` with ticketId and a description of the blocker',
|
|
92
94
|
'Report any blockers or discoveries to team-lead immediately',
|
|
93
95
|
];
|
|
94
96
|
if (workspace) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-generator.js","sourceRoot":"","sources":["../../src/lib/prompt-generator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prompt-generator.js","sourceRoot":"","sources":["../../src/lib/prompt-generator.ts"],"names":[],"mappings":"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"}
|