sdd-mcp-server 1.5.0 → 1.6.0
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/adapters/cli/SDDToolAdapter.js +1 -1
- package/dist/adapters/cli/SDDToolAdapter.js.map +1 -1
- package/dist/application/services/AnswerValidator.d.ts +7 -0
- package/dist/application/services/AnswerValidator.js +52 -0
- package/dist/application/services/AnswerValidator.js.map +1 -0
- package/dist/application/services/DescriptionAnalyzer.d.ts +28 -0
- package/dist/application/services/DescriptionAnalyzer.js +184 -0
- package/dist/application/services/DescriptionAnalyzer.js.map +1 -0
- package/dist/application/services/DescriptionEnricher.d.ts +15 -0
- package/dist/application/services/DescriptionEnricher.js +77 -0
- package/dist/application/services/DescriptionEnricher.js.map +1 -0
- package/dist/application/services/QuestionGenerator.d.ts +7 -0
- package/dist/application/services/QuestionGenerator.js +30 -0
- package/dist/application/services/QuestionGenerator.js.map +1 -0
- package/dist/application/services/RequirementsClarificationService.d.ts +24 -59
- package/dist/application/services/RequirementsClarificationService.js +55 -467
- package/dist/application/services/RequirementsClarificationService.js.map +1 -1
- package/dist/application/services/SteeringContextLoader.d.ts +11 -0
- package/dist/application/services/SteeringContextLoader.js +90 -0
- package/dist/application/services/SteeringContextLoader.js.map +1 -0
- package/dist/application/services/clarification-constants.d.ts +54 -0
- package/dist/application/services/clarification-constants.js +106 -0
- package/dist/application/services/clarification-constants.js.map +1 -0
- package/dist/application/services/clarification-questions.d.ts +15 -0
- package/dist/application/services/clarification-questions.js +99 -0
- package/dist/application/services/clarification-questions.js.map +1 -0
- package/dist/domain/types.d.ts +28 -0
- package/dist/infrastructure/di/container.js +18 -0
- package/dist/infrastructure/di/container.js.map +1 -1
- package/dist/infrastructure/di/types.d.ts +5 -0
- package/dist/infrastructure/di/types.js +5 -0
- package/dist/infrastructure/di/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequirementsClarificationService.js","sourceRoot":"","sources":["../../../src/application/services/RequirementsClarificationService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RequirementsClarificationService.js","sourceRoot":"","sources":["../../../src/application/services/RequirementsClarificationService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { FileSystemPort, LoggerPort } from "../../domain/ports.js";
|
|
2
|
+
import { SteeringContext } from "../../domain/types.js";
|
|
3
|
+
export declare class SteeringContextLoader {
|
|
4
|
+
private readonly fileSystem;
|
|
5
|
+
private readonly logger;
|
|
6
|
+
constructor(fileSystem: FileSystemPort, logger: LoggerPort);
|
|
7
|
+
/**
|
|
8
|
+
* Load steering documents from filesystem
|
|
9
|
+
*/
|
|
10
|
+
loadContext(projectPath?: string): Promise<SteeringContext>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
+
};
|
|
13
|
+
import { injectable, inject } from "inversify";
|
|
14
|
+
import { TYPES } from "../../infrastructure/di/types.js";
|
|
15
|
+
import { QUALITY_SCORE_WEIGHTS, PATTERN_DETECTION, } from "./clarification-constants.js";
|
|
16
|
+
let SteeringContextLoader = class SteeringContextLoader {
|
|
17
|
+
fileSystem;
|
|
18
|
+
logger;
|
|
19
|
+
constructor(fileSystem, logger) {
|
|
20
|
+
this.fileSystem = fileSystem;
|
|
21
|
+
this.logger = logger;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Load steering documents from filesystem
|
|
25
|
+
*/
|
|
26
|
+
async loadContext(projectPath) {
|
|
27
|
+
const defaultContext = {
|
|
28
|
+
hasProductContext: false,
|
|
29
|
+
hasTargetUsers: false,
|
|
30
|
+
hasTechContext: false,
|
|
31
|
+
};
|
|
32
|
+
if (!projectPath) {
|
|
33
|
+
return defaultContext;
|
|
34
|
+
}
|
|
35
|
+
try {
|
|
36
|
+
let hasProductContext = false;
|
|
37
|
+
let hasTargetUsers = false;
|
|
38
|
+
let hasTechContext = false;
|
|
39
|
+
// Load product.md with individual error handling
|
|
40
|
+
const productPath = `${projectPath}/.kiro/steering/product.md`;
|
|
41
|
+
if (await this.fileSystem.exists(productPath)) {
|
|
42
|
+
try {
|
|
43
|
+
const content = await this.fileSystem.readFile(productPath);
|
|
44
|
+
hasProductContext =
|
|
45
|
+
content.length > QUALITY_SCORE_WEIGHTS.MIN_STEERING_CONTENT_LENGTH;
|
|
46
|
+
hasTargetUsers = PATTERN_DETECTION.TARGET_USERS_PATTERN.test(content);
|
|
47
|
+
}
|
|
48
|
+
catch (err) {
|
|
49
|
+
this.logger.debug("Failed to load product.md", {
|
|
50
|
+
error: err.message,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
// Load tech.md with individual error handling
|
|
55
|
+
const techPath = `${projectPath}/.kiro/steering/tech.md`;
|
|
56
|
+
if (await this.fileSystem.exists(techPath)) {
|
|
57
|
+
try {
|
|
58
|
+
const content = await this.fileSystem.readFile(techPath);
|
|
59
|
+
hasTechContext =
|
|
60
|
+
content.length > QUALITY_SCORE_WEIGHTS.MIN_STEERING_CONTENT_LENGTH;
|
|
61
|
+
}
|
|
62
|
+
catch (err) {
|
|
63
|
+
this.logger.debug("Failed to load tech.md", {
|
|
64
|
+
error: err.message,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
hasProductContext,
|
|
70
|
+
hasTargetUsers,
|
|
71
|
+
hasTechContext,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
this.logger.warn("Failed to load steering context, using defaults", {
|
|
76
|
+
error: err.message,
|
|
77
|
+
projectPath,
|
|
78
|
+
});
|
|
79
|
+
return defaultContext;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
SteeringContextLoader = __decorate([
|
|
84
|
+
injectable(),
|
|
85
|
+
__param(0, inject(TYPES.FileSystemPort)),
|
|
86
|
+
__param(1, inject(TYPES.LoggerPort)),
|
|
87
|
+
__metadata("design:paramtypes", [Object, Object])
|
|
88
|
+
], SteeringContextLoader);
|
|
89
|
+
export { SteeringContextLoader };
|
|
90
|
+
//# sourceMappingURL=SteeringContextLoader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SteeringContextLoader.js","sourceRoot":"","sources":["../../../src/application/services/SteeringContextLoader.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAGzD,OAAO,EACL,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AAG/B,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAEiB;IACJ;IAF7C,YACiD,UAA0B,EAC9B,MAAkB;QADd,eAAU,GAAV,UAAU,CAAgB;QAC9B,WAAM,GAAN,MAAM,CAAY;IAC5D,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,WAAoB;QACpC,MAAM,cAAc,GAAoB;YACtC,iBAAiB,EAAE,KAAK;YACxB,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,KAAK;SACtB,CAAC;QAEF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,IAAI,CAAC;YACH,IAAI,iBAAiB,GAAG,KAAK,CAAC;YAC9B,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,IAAI,cAAc,GAAG,KAAK,CAAC;YAE3B,iDAAiD;YACjD,MAAM,WAAW,GAAG,GAAG,WAAW,4BAA4B,CAAC;YAC/D,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC9C,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;oBAC5D,iBAAiB;wBACf,OAAO,CAAC,MAAM,GAAG,qBAAqB,CAAC,2BAA2B,CAAC;oBACrE,cAAc,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxE,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE;wBAC7C,KAAK,EAAG,GAAa,CAAC,OAAO;qBAC9B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,8CAA8C;YAC9C,MAAM,QAAQ,GAAG,GAAG,WAAW,yBAAyB,CAAC;YACzD,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3C,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBACzD,cAAc;wBACZ,OAAO,CAAC,MAAM,GAAG,qBAAqB,CAAC,2BAA2B,CAAC;gBACvE,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE;wBAC1C,KAAK,EAAG,GAAa,CAAC,OAAO;qBAC9B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,OAAO;gBACL,iBAAiB;gBACjB,cAAc;gBACd,cAAc;aACf,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE;gBAClE,KAAK,EAAG,GAAa,CAAC,OAAO;gBAC7B,WAAW;aACZ,CAAC,CAAC;YACH,OAAO,cAAc,CAAC;QACxB,CAAC;IACH,CAAC;CACF,CAAA;AAnEY,qBAAqB;IADjC,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IAC5B,WAAA,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;;GAHhB,qBAAqB,CAmEjC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constants for Requirements Clarification Service
|
|
3
|
+
* Extracted from inline magic numbers to improve maintainability
|
|
4
|
+
*/
|
|
5
|
+
export declare const QUALITY_SCORE_WEIGHTS: {
|
|
6
|
+
readonly HAS_WHY: 30;
|
|
7
|
+
readonly HAS_WHO: 20;
|
|
8
|
+
readonly HAS_WHAT: 20;
|
|
9
|
+
readonly HAS_SUCCESS: 15;
|
|
10
|
+
readonly AMBIGUITY_PENALTY: 5;
|
|
11
|
+
readonly MAX_AMBIGUITY_PENALTY: 15;
|
|
12
|
+
readonly LENGTH_BONUS_THRESHOLD_1: 100;
|
|
13
|
+
readonly LENGTH_BONUS_THRESHOLD_2: 300;
|
|
14
|
+
readonly LENGTH_BONUS_THRESHOLD_3: 500;
|
|
15
|
+
readonly LENGTH_BONUS_POINTS: 5;
|
|
16
|
+
readonly MIN_ACCEPTABLE_SCORE: 70;
|
|
17
|
+
readonly MIN_STEERING_CONTENT_LENGTH: 200;
|
|
18
|
+
};
|
|
19
|
+
export declare const ANSWER_VALIDATION: {
|
|
20
|
+
readonly MIN_ANSWER_LENGTH: 10;
|
|
21
|
+
readonly INVALID_CONTENT_PATTERN: RegExp;
|
|
22
|
+
};
|
|
23
|
+
export declare const PATTERN_DETECTION: {
|
|
24
|
+
readonly WHY_PATTERNS: readonly [RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp];
|
|
25
|
+
readonly WHO_PATTERNS: readonly [RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp];
|
|
26
|
+
readonly WHAT_PATTERNS: readonly [RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp];
|
|
27
|
+
readonly SUCCESS_PATTERNS: readonly [RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp];
|
|
28
|
+
readonly TARGET_USERS_PATTERN: RegExp;
|
|
29
|
+
};
|
|
30
|
+
export declare const AMBIGUOUS_TERMS: readonly [{
|
|
31
|
+
readonly pattern: RegExp;
|
|
32
|
+
readonly suggestion: "Can you specify a target response time? (e.g., \"< 200ms API response\", \"page loads in 2s\")";
|
|
33
|
+
}, {
|
|
34
|
+
readonly pattern: RegExp;
|
|
35
|
+
readonly suggestion: "What scale do you need to support? (e.g., \"1000 concurrent users\", \"100k requests/hour\")";
|
|
36
|
+
}, {
|
|
37
|
+
readonly pattern: RegExp;
|
|
38
|
+
readonly suggestion: "What makes it user-friendly? (e.g., \"3-click checkout\", \"mobile-responsive\", \"keyboard shortcuts\")";
|
|
39
|
+
}, {
|
|
40
|
+
readonly pattern: RegExp;
|
|
41
|
+
readonly suggestion: "What does easy mean for your users? (e.g., \"no training required\", \"5-minute onboarding\", \"intuitive navigation\")";
|
|
42
|
+
}, {
|
|
43
|
+
readonly pattern: RegExp;
|
|
44
|
+
readonly suggestion: "How do you define quality? (e.g., \"zero critical bugs in production\", \"90% test coverage\", \"< 5% error rate\")";
|
|
45
|
+
}, {
|
|
46
|
+
readonly pattern: RegExp;
|
|
47
|
+
readonly suggestion: "What reliability level do you need? (e.g., \"99.9% uptime\", \"zero data loss\", \"automatic failover\")";
|
|
48
|
+
}, {
|
|
49
|
+
readonly pattern: RegExp;
|
|
50
|
+
readonly suggestion: "What security requirements apply? (e.g., \"SOC 2 compliant\", \"end-to-end encryption\", \"OAuth 2.0\")";
|
|
51
|
+
}, {
|
|
52
|
+
readonly pattern: RegExp;
|
|
53
|
+
readonly suggestion: "What technologies or approaches are you considering? (e.g., \"React + TypeScript\", \"microservices\", \"serverless\")";
|
|
54
|
+
}];
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constants for Requirements Clarification Service
|
|
3
|
+
* Extracted from inline magic numbers to improve maintainability
|
|
4
|
+
*/
|
|
5
|
+
export const QUALITY_SCORE_WEIGHTS = {
|
|
6
|
+
HAS_WHY: 30, // Business justification - Most critical
|
|
7
|
+
HAS_WHO: 20, // Target users - Essential
|
|
8
|
+
HAS_WHAT: 20, // Feature scope - Essential
|
|
9
|
+
HAS_SUCCESS: 15, // Success criteria - Important
|
|
10
|
+
AMBIGUITY_PENALTY: 5,
|
|
11
|
+
MAX_AMBIGUITY_PENALTY: 15,
|
|
12
|
+
LENGTH_BONUS_THRESHOLD_1: 100,
|
|
13
|
+
LENGTH_BONUS_THRESHOLD_2: 300,
|
|
14
|
+
LENGTH_BONUS_THRESHOLD_3: 500,
|
|
15
|
+
LENGTH_BONUS_POINTS: 5,
|
|
16
|
+
MIN_ACCEPTABLE_SCORE: 70,
|
|
17
|
+
MIN_STEERING_CONTENT_LENGTH: 200,
|
|
18
|
+
};
|
|
19
|
+
export const ANSWER_VALIDATION = {
|
|
20
|
+
MIN_ANSWER_LENGTH: 10,
|
|
21
|
+
INVALID_CONTENT_PATTERN: /<script|javascript:|onerror=/i,
|
|
22
|
+
};
|
|
23
|
+
export const PATTERN_DETECTION = {
|
|
24
|
+
WHY_PATTERNS: [
|
|
25
|
+
/\bproblem\b/i,
|
|
26
|
+
/\bsolve[sd]?\b/i,
|
|
27
|
+
/\bchallenge\b/i,
|
|
28
|
+
/\bpain\s+point/i,
|
|
29
|
+
/\bissue\b/i,
|
|
30
|
+
/\bwhy\b/i,
|
|
31
|
+
/\bbecause\b/i,
|
|
32
|
+
/\benables?\b/i,
|
|
33
|
+
/\bvalue\s+proposition/i,
|
|
34
|
+
/\bbenefit/i,
|
|
35
|
+
/\bjustification/i,
|
|
36
|
+
/\bgoal\b/i,
|
|
37
|
+
/\bobjective\b/i,
|
|
38
|
+
/\bpurpose\b/i,
|
|
39
|
+
],
|
|
40
|
+
WHO_PATTERNS: [
|
|
41
|
+
/\buser[s]?\b/i,
|
|
42
|
+
/\bcustomer[s]?\b/i,
|
|
43
|
+
/\btarget\s+(audience|users?|customers?)/i,
|
|
44
|
+
/\bpersona[s]?\b/i,
|
|
45
|
+
/\bstakeholder[s]?\b/i,
|
|
46
|
+
/\b(developer|designer|admin|manager)[s]?\b/i,
|
|
47
|
+
/\bfor\s+(teams?|companies|individuals)/i,
|
|
48
|
+
],
|
|
49
|
+
WHAT_PATTERNS: [
|
|
50
|
+
/\bfeature[s]?\b/i,
|
|
51
|
+
/\bfunctionality\b/i,
|
|
52
|
+
/\bcapabilit(y|ies)/i,
|
|
53
|
+
/\bprovides?\b/i,
|
|
54
|
+
/\binclude[s]?\b/i,
|
|
55
|
+
/\bsupport[s]?\b/i,
|
|
56
|
+
/\ballow[s]?\b/i,
|
|
57
|
+
/\benable[s]?\b/i,
|
|
58
|
+
/\bMVP\b/i,
|
|
59
|
+
/\bscope\b/i,
|
|
60
|
+
],
|
|
61
|
+
SUCCESS_PATTERNS: [
|
|
62
|
+
/\bmetric[s]?\b/i,
|
|
63
|
+
/\bKPI[s]?\b/i,
|
|
64
|
+
/\bmeasure[sd]?\b/i,
|
|
65
|
+
/\bsuccess\s+(criteria|metric)/i,
|
|
66
|
+
/\b\d+%/,
|
|
67
|
+
/\bperformance\s+target/i,
|
|
68
|
+
/\bgoal[s]?\b.*\d+/i,
|
|
69
|
+
],
|
|
70
|
+
TARGET_USERS_PATTERN: /target\s+users|user\s+persona/i,
|
|
71
|
+
};
|
|
72
|
+
export const AMBIGUOUS_TERMS = [
|
|
73
|
+
{
|
|
74
|
+
pattern: /\bfast\b/gi,
|
|
75
|
+
suggestion: 'Can you specify a target response time? (e.g., "< 200ms API response", "page loads in 2s")',
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
pattern: /\bscalable\b/gi,
|
|
79
|
+
suggestion: 'What scale do you need to support? (e.g., "1000 concurrent users", "100k requests/hour")',
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
pattern: /\buser[- ]friendly\b/gi,
|
|
83
|
+
suggestion: 'What makes it user-friendly? (e.g., "3-click checkout", "mobile-responsive", "keyboard shortcuts")',
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
pattern: /\beasy\s+to\s+use\b/gi,
|
|
87
|
+
suggestion: 'What does easy mean for your users? (e.g., "no training required", "5-minute onboarding", "intuitive navigation")',
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
pattern: /\bhigh\s+quality\b/gi,
|
|
91
|
+
suggestion: 'How do you define quality? (e.g., "zero critical bugs in production", "90% test coverage", "< 5% error rate")',
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
pattern: /\breliable\b/gi,
|
|
95
|
+
suggestion: 'What reliability level do you need? (e.g., "99.9% uptime", "zero data loss", "automatic failover")',
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
pattern: /\bsecure\b/gi,
|
|
99
|
+
suggestion: 'What security requirements apply? (e.g., "SOC 2 compliant", "end-to-end encryption", "OAuth 2.0")',
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
pattern: /\bmodern\b/gi,
|
|
103
|
+
suggestion: 'What technologies or approaches are you considering? (e.g., "React + TypeScript", "microservices", "serverless")',
|
|
104
|
+
},
|
|
105
|
+
];
|
|
106
|
+
//# sourceMappingURL=clarification-constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clarification-constants.js","sourceRoot":"","sources":["../../../src/application/services/clarification-constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,OAAO,EAAE,EAAE,EAAE,yCAAyC;IACtD,OAAO,EAAE,EAAE,EAAE,2BAA2B;IACxC,QAAQ,EAAE,EAAE,EAAE,4BAA4B;IAC1C,WAAW,EAAE,EAAE,EAAE,+BAA+B;IAChD,iBAAiB,EAAE,CAAC;IACpB,qBAAqB,EAAE,EAAE;IACzB,wBAAwB,EAAE,GAAG;IAC7B,wBAAwB,EAAE,GAAG;IAC7B,wBAAwB,EAAE,GAAG;IAC7B,mBAAmB,EAAE,CAAC;IACtB,oBAAoB,EAAE,EAAE;IACxB,2BAA2B,EAAE,GAAG;CACxB,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,iBAAiB,EAAE,EAAE;IACrB,uBAAuB,EAAE,+BAA+B;CAChD,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,YAAY,EAAE;QACZ,cAAc;QACd,iBAAiB;QACjB,gBAAgB;QAChB,iBAAiB;QACjB,YAAY;QACZ,UAAU;QACV,cAAc;QACd,eAAe;QACf,wBAAwB;QACxB,YAAY;QACZ,kBAAkB;QAClB,WAAW;QACX,gBAAgB;QAChB,cAAc;KACf;IACD,YAAY,EAAE;QACZ,eAAe;QACf,mBAAmB;QACnB,0CAA0C;QAC1C,kBAAkB;QAClB,sBAAsB;QACtB,6CAA6C;QAC7C,yCAAyC;KAC1C;IACD,aAAa,EAAE;QACb,kBAAkB;QAClB,oBAAoB;QACpB,qBAAqB;QACrB,gBAAgB;QAChB,kBAAkB;QAClB,kBAAkB;QAClB,gBAAgB;QAChB,iBAAiB;QACjB,UAAU;QACV,YAAY;KACb;IACD,gBAAgB,EAAE;QAChB,iBAAiB;QACjB,cAAc;QACd,mBAAmB;QACnB,gCAAgC;QAChC,QAAQ;QACR,yBAAyB;QACzB,oBAAoB;KACrB;IACD,oBAAoB,EAAE,gCAAgC;CAC9C,CAAC;AAEX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B;QACE,OAAO,EAAE,YAAY;QACrB,UAAU,EACR,4FAA4F;KAC/F;IACD;QACE,OAAO,EAAE,gBAAgB;QACzB,UAAU,EACR,0FAA0F;KAC7F;IACD;QACE,OAAO,EAAE,wBAAwB;QACjC,UAAU,EACR,oGAAoG;KACvG;IACD;QACE,OAAO,EAAE,uBAAuB;QAChC,UAAU,EACR,mHAAmH;KACtH;IACD;QACE,OAAO,EAAE,sBAAsB;QAC/B,UAAU,EACR,+GAA+G;KAClH;IACD;QACE,OAAO,EAAE,gBAAgB;QACzB,UAAU,EACR,oGAAoG;KACvG;IACD;QACE,OAAO,EAAE,cAAc;QACvB,UAAU,EACR,mGAAmG;KACtG;IACD;QACE,OAAO,EAAE,cAAc;QACvB,UAAU,EACR,kHAAkH;KACrH;CACO,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clarification Question Templates Configuration
|
|
3
|
+
* Externalized from service logic for maintainability
|
|
4
|
+
*/
|
|
5
|
+
import { QuestionCategory, ClarificationAnalysis, SteeringContext } from "../../domain/types.js";
|
|
6
|
+
export interface QuestionTemplate {
|
|
7
|
+
readonly id: string;
|
|
8
|
+
readonly category: QuestionCategory;
|
|
9
|
+
readonly question: string;
|
|
10
|
+
readonly rationale: string;
|
|
11
|
+
readonly examples: string[];
|
|
12
|
+
readonly required: boolean;
|
|
13
|
+
readonly condition: (analysis: ClarificationAnalysis, context: SteeringContext) => boolean;
|
|
14
|
+
}
|
|
15
|
+
export declare const CLARIFICATION_QUESTIONS: Record<string, QuestionTemplate>;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clarification Question Templates Configuration
|
|
3
|
+
* Externalized from service logic for maintainability
|
|
4
|
+
*/
|
|
5
|
+
import { QuestionCategory, } from "../../domain/types.js";
|
|
6
|
+
export const CLARIFICATION_QUESTIONS = {
|
|
7
|
+
why_problem: {
|
|
8
|
+
id: "why_problem",
|
|
9
|
+
category: QuestionCategory.WHY,
|
|
10
|
+
question: "What business problem does this project solve? Why is it needed?",
|
|
11
|
+
rationale: "Understanding the business justification ensures we build the right solution",
|
|
12
|
+
examples: [
|
|
13
|
+
"Our customer support team spends 5 hours/day on repetitive inquiries",
|
|
14
|
+
"Users are abandoning checkout because the process takes too long",
|
|
15
|
+
"Developers waste time searching for undocumented APIs",
|
|
16
|
+
],
|
|
17
|
+
required: true,
|
|
18
|
+
condition: (analysis, context) => !analysis.hasWhy && !context.hasProductContext,
|
|
19
|
+
},
|
|
20
|
+
why_value: {
|
|
21
|
+
id: "why_value",
|
|
22
|
+
category: QuestionCategory.WHY,
|
|
23
|
+
question: "What value does this project provide to users or the business?",
|
|
24
|
+
rationale: "Clarifying value proposition helps prioritize features and measure success",
|
|
25
|
+
examples: [
|
|
26
|
+
"Reduce support ticket volume by 40%",
|
|
27
|
+
"Increase conversion rate by improving checkout speed",
|
|
28
|
+
"Save developers 2 hours/week with better documentation",
|
|
29
|
+
],
|
|
30
|
+
required: true,
|
|
31
|
+
condition: (analysis, context) => !analysis.hasWhy && !context.hasProductContext,
|
|
32
|
+
},
|
|
33
|
+
who_users: {
|
|
34
|
+
id: "who_users",
|
|
35
|
+
category: QuestionCategory.WHO,
|
|
36
|
+
question: "Who are the primary users of this project?",
|
|
37
|
+
rationale: "Knowing the target users shapes UX, features, and technical decisions",
|
|
38
|
+
examples: [
|
|
39
|
+
"Customer support agents using ticketing systems",
|
|
40
|
+
"E-commerce shoppers on mobile devices",
|
|
41
|
+
"Backend developers integrating APIs",
|
|
42
|
+
],
|
|
43
|
+
required: true,
|
|
44
|
+
condition: (analysis, context) => !analysis.hasWho && !context.hasTargetUsers,
|
|
45
|
+
},
|
|
46
|
+
what_mvp_features: {
|
|
47
|
+
id: "what_mvp_features",
|
|
48
|
+
category: QuestionCategory.WHAT,
|
|
49
|
+
question: "What are the 3-5 core features for the MVP?",
|
|
50
|
+
rationale: "Defining MVP scope prevents scope creep and ensures focused delivery",
|
|
51
|
+
examples: [
|
|
52
|
+
"Auto-response system, ticket categorization, analytics dashboard",
|
|
53
|
+
"Product search, cart management, payment integration",
|
|
54
|
+
"API explorer, code examples, interactive documentation",
|
|
55
|
+
],
|
|
56
|
+
required: true,
|
|
57
|
+
condition: (analysis, _context) => !analysis.hasWhat,
|
|
58
|
+
},
|
|
59
|
+
what_out_of_scope: {
|
|
60
|
+
id: "what_out_of_scope",
|
|
61
|
+
category: QuestionCategory.WHAT,
|
|
62
|
+
question: "What is explicitly OUT OF SCOPE for this project?",
|
|
63
|
+
rationale: "Boundary definition prevents feature creep and manages expectations",
|
|
64
|
+
examples: [
|
|
65
|
+
"Admin panel (future phase)",
|
|
66
|
+
"Mobile app (web only for MVP)",
|
|
67
|
+
"Multi-language support (English only initially)",
|
|
68
|
+
],
|
|
69
|
+
required: false,
|
|
70
|
+
condition: (analysis, _context) => !analysis.hasWhat,
|
|
71
|
+
},
|
|
72
|
+
success_metrics: {
|
|
73
|
+
id: "success_metrics",
|
|
74
|
+
category: QuestionCategory.SUCCESS,
|
|
75
|
+
question: "How will you measure if this project is successful?",
|
|
76
|
+
rationale: "Quantifiable metrics enable objective evaluation and iteration",
|
|
77
|
+
examples: [
|
|
78
|
+
"Support ticket volume reduced by 30% within 3 months",
|
|
79
|
+
"Page load time under 2 seconds, conversion rate > 3%",
|
|
80
|
+
"API documentation rated 4.5/5 stars by developers",
|
|
81
|
+
],
|
|
82
|
+
required: true,
|
|
83
|
+
condition: (analysis, _context) => !analysis.hasSuccessCriteria,
|
|
84
|
+
},
|
|
85
|
+
how_tech_constraints: {
|
|
86
|
+
id: "how_tech_constraints",
|
|
87
|
+
category: QuestionCategory.HOW,
|
|
88
|
+
question: "Are there any technical constraints or preferences? (language, platform, existing systems)",
|
|
89
|
+
rationale: "Technical constraints shape architecture and technology choices",
|
|
90
|
+
examples: [
|
|
91
|
+
"Must integrate with existing Salesforce CRM",
|
|
92
|
+
"TypeScript + React preferred, hosted on AWS",
|
|
93
|
+
"Python-based, needs to run on-premise",
|
|
94
|
+
],
|
|
95
|
+
required: false,
|
|
96
|
+
condition: (_analysis, context) => !context.hasTechContext,
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=clarification-questions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clarification-questions.js","sourceRoot":"","sources":["../../../src/application/services/clarification-questions.ts"],"names":[],"mappings":"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"}
|
package/dist/domain/types.d.ts
CHANGED
|
@@ -130,6 +130,10 @@ export declare enum QuestionCategory {
|
|
|
130
130
|
}
|
|
131
131
|
export interface ClarificationAnalysis {
|
|
132
132
|
readonly qualityScore: number;
|
|
133
|
+
readonly whyScore: number;
|
|
134
|
+
readonly whoScore: number;
|
|
135
|
+
readonly whatScore: number;
|
|
136
|
+
readonly successScore: number;
|
|
133
137
|
readonly missingElements: string[];
|
|
134
138
|
readonly ambiguousTerms: AmbiguousTerm[];
|
|
135
139
|
readonly needsClarification: boolean;
|
|
@@ -160,3 +164,27 @@ export interface ClarificationResult {
|
|
|
160
164
|
readonly analysis?: ClarificationAnalysis;
|
|
161
165
|
readonly enrichedDescription?: EnrichedProjectDescription;
|
|
162
166
|
}
|
|
167
|
+
export type ClarificationAnswers = Record<string, string>;
|
|
168
|
+
export interface AnswerValidationResult {
|
|
169
|
+
readonly valid: boolean;
|
|
170
|
+
readonly missingRequired: string[];
|
|
171
|
+
readonly tooShort: Array<{
|
|
172
|
+
question: string;
|
|
173
|
+
minLength: number;
|
|
174
|
+
currentLength: number;
|
|
175
|
+
}>;
|
|
176
|
+
readonly containsInvalidContent: string[];
|
|
177
|
+
}
|
|
178
|
+
export interface SteeringContext {
|
|
179
|
+
readonly hasProductContext: boolean;
|
|
180
|
+
readonly hasTargetUsers: boolean;
|
|
181
|
+
readonly hasTechContext: boolean;
|
|
182
|
+
}
|
|
183
|
+
export interface DescriptionComponents {
|
|
184
|
+
readonly original: string;
|
|
185
|
+
readonly why: string;
|
|
186
|
+
readonly who: string;
|
|
187
|
+
readonly what: string;
|
|
188
|
+
readonly how: string;
|
|
189
|
+
readonly successCriteria: string;
|
|
190
|
+
}
|
|
@@ -47,6 +47,11 @@ import { CodebaseAnalysisService } from "../../application/services/CodebaseAnal
|
|
|
47
47
|
import { SteeringDocumentService } from "../../application/services/SteeringDocumentService.js";
|
|
48
48
|
import { ProjectContextService } from "../../application/services/ProjectContextService.js";
|
|
49
49
|
import { RequirementsClarificationService } from "../../application/services/RequirementsClarificationService.js";
|
|
50
|
+
import { SteeringContextLoader } from "../../application/services/SteeringContextLoader.js";
|
|
51
|
+
import { DescriptionAnalyzer } from "../../application/services/DescriptionAnalyzer.js";
|
|
52
|
+
import { QuestionGenerator } from "../../application/services/QuestionGenerator.js";
|
|
53
|
+
import { AnswerValidator } from "../../application/services/AnswerValidator.js";
|
|
54
|
+
import { DescriptionEnricher } from "../../application/services/DescriptionEnricher.js";
|
|
50
55
|
import { SDDToolAdapter } from "../../adapters/cli/SDDToolAdapter.js";
|
|
51
56
|
export function createContainer() {
|
|
52
57
|
const container = new Container();
|
|
@@ -135,6 +140,19 @@ export function createContainer() {
|
|
|
135
140
|
container
|
|
136
141
|
.bind(TYPES.RequirementsClarificationService)
|
|
137
142
|
.to(RequirementsClarificationService);
|
|
143
|
+
container
|
|
144
|
+
.bind(TYPES.SteeringContextLoader)
|
|
145
|
+
.to(SteeringContextLoader);
|
|
146
|
+
container
|
|
147
|
+
.bind(TYPES.DescriptionAnalyzer)
|
|
148
|
+
.to(DescriptionAnalyzer);
|
|
149
|
+
container
|
|
150
|
+
.bind(TYPES.QuestionGenerator)
|
|
151
|
+
.to(QuestionGenerator);
|
|
152
|
+
container.bind(TYPES.AnswerValidator).to(AnswerValidator);
|
|
153
|
+
container
|
|
154
|
+
.bind(TYPES.DescriptionEnricher)
|
|
155
|
+
.to(DescriptionEnricher);
|
|
138
156
|
// Bind adapters
|
|
139
157
|
container.bind(TYPES.SDDToolAdapter).to(SDDToolAdapter);
|
|
140
158
|
return container;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/infrastructure/di/container.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/infrastructure/di/container.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,11 @@ export declare const TYPES: {
|
|
|
26
26
|
readonly SteeringDocumentService: symbol;
|
|
27
27
|
readonly ProjectContextService: symbol;
|
|
28
28
|
readonly RequirementsClarificationService: symbol;
|
|
29
|
+
readonly SteeringContextLoader: symbol;
|
|
30
|
+
readonly DescriptionAnalyzer: symbol;
|
|
31
|
+
readonly QuestionGenerator: symbol;
|
|
32
|
+
readonly AnswerValidator: symbol;
|
|
33
|
+
readonly DescriptionEnricher: symbol;
|
|
29
34
|
readonly MCPServer: symbol;
|
|
30
35
|
readonly MCPErrorHandler: symbol;
|
|
31
36
|
readonly CapabilityNegotiator: symbol;
|
|
@@ -29,6 +29,11 @@ export const TYPES = {
|
|
|
29
29
|
SteeringDocumentService: Symbol.for("SteeringDocumentService"),
|
|
30
30
|
ProjectContextService: Symbol.for("ProjectContextService"),
|
|
31
31
|
RequirementsClarificationService: Symbol.for("RequirementsClarificationService"),
|
|
32
|
+
SteeringContextLoader: Symbol.for("SteeringContextLoader"),
|
|
33
|
+
DescriptionAnalyzer: Symbol.for("DescriptionAnalyzer"),
|
|
34
|
+
QuestionGenerator: Symbol.for("QuestionGenerator"),
|
|
35
|
+
AnswerValidator: Symbol.for("AnswerValidator"),
|
|
36
|
+
DescriptionEnricher: Symbol.for("DescriptionEnricher"),
|
|
32
37
|
// MCP components
|
|
33
38
|
MCPServer: Symbol.for("MCPServer"),
|
|
34
39
|
MCPErrorHandler: Symbol.for("MCPErrorHandler"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/infrastructure/di/types.ts"],"names":[],"mappings":"AAAA,wCAAwC;AAExC,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,eAAe;IACf,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClD,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5C,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5C,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClD,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;IACpC,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5C,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC9C,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IACtC,oBAAoB,EAAE,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC;IACxD,mBAAmB,EAAE,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC;IACtD,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClD,uBAAuB,EAAE,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC;IAC9D,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IACtC,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC9C,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAE9C,uBAAuB;IACvB,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5C,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC9C,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC9C,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5C,kBAAkB,EAAE,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC;IACpD,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC;IAC1D,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC;IACxE,yBAAyB,EAAE,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC;IAClE,uBAAuB,EAAE,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC;IAC9D,uBAAuB,EAAE,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC;IAC9D,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC;IAC1D,gCAAgC,EAAE,MAAM,CAAC,GAAG,CAC1C,kCAAkC,CACnC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/infrastructure/di/types.ts"],"names":[],"mappings":"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"}
|