ai-sdlc 0.2.0 → 0.3.0-alpha.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/README.md +19 -6
- package/dist/agents/implementation.d.ts +30 -1
- package/dist/agents/implementation.d.ts.map +1 -1
- package/dist/agents/implementation.js +172 -17
- package/dist/agents/implementation.js.map +1 -1
- package/dist/agents/index.d.ts +2 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +2 -0
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/orchestrator.d.ts +61 -0
- package/dist/agents/orchestrator.d.ts.map +1 -0
- package/dist/agents/orchestrator.js +443 -0
- package/dist/agents/orchestrator.js.map +1 -0
- package/dist/agents/planning.d.ts +1 -1
- package/dist/agents/planning.d.ts.map +1 -1
- package/dist/agents/planning.js +33 -1
- package/dist/agents/planning.js.map +1 -1
- package/dist/agents/review.d.ts +50 -1
- package/dist/agents/review.d.ts.map +1 -1
- package/dist/agents/review.js +389 -44
- package/dist/agents/review.js.map +1 -1
- package/dist/agents/rework.d.ts.map +1 -1
- package/dist/agents/rework.js +3 -1
- package/dist/agents/rework.js.map +1 -1
- package/dist/agents/single-task.d.ts +41 -0
- package/dist/agents/single-task.d.ts.map +1 -0
- package/dist/agents/single-task.js +357 -0
- package/dist/agents/single-task.js.map +1 -0
- package/dist/agents/verification.d.ts.map +1 -1
- package/dist/agents/verification.js +26 -12
- package/dist/agents/verification.js.map +1 -1
- package/dist/cli/batch-processor.d.ts +64 -0
- package/dist/cli/batch-processor.d.ts.map +1 -0
- package/dist/cli/batch-processor.js +85 -0
- package/dist/cli/batch-processor.js.map +1 -0
- package/dist/cli/batch-validator.d.ts +80 -0
- package/dist/cli/batch-validator.d.ts.map +1 -0
- package/dist/cli/batch-validator.js +121 -0
- package/dist/cli/batch-validator.js.map +1 -0
- package/dist/cli/commands.d.ts +8 -0
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +777 -48
- package/dist/cli/commands.js.map +1 -1
- package/dist/cli/daemon.d.ts.map +1 -1
- package/dist/cli/daemon.js +5 -0
- package/dist/cli/daemon.js.map +1 -1
- package/dist/cli/runner.d.ts.map +1 -1
- package/dist/cli/runner.js +20 -9
- package/dist/cli/runner.js.map +1 -1
- package/dist/core/client.d.ts +19 -1
- package/dist/core/client.d.ts.map +1 -1
- package/dist/core/client.js +191 -5
- package/dist/core/client.js.map +1 -1
- package/dist/core/config.d.ts +9 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +51 -2
- package/dist/core/config.js.map +1 -1
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +2 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/llm-utils.d.ts +103 -0
- package/dist/core/llm-utils.d.ts.map +1 -0
- package/dist/core/llm-utils.js +368 -0
- package/dist/core/llm-utils.js.map +1 -0
- package/dist/core/process-manager.d.ts +15 -0
- package/dist/core/process-manager.d.ts.map +1 -0
- package/dist/core/process-manager.js +132 -0
- package/dist/core/process-manager.js.map +1 -0
- package/dist/core/story.d.ts +35 -1
- package/dist/core/story.d.ts.map +1 -1
- package/dist/core/story.js +107 -1
- package/dist/core/story.js.map +1 -1
- package/dist/core/task-parser.d.ts +59 -0
- package/dist/core/task-parser.d.ts.map +1 -0
- package/dist/core/task-parser.js +235 -0
- package/dist/core/task-parser.js.map +1 -0
- package/dist/core/task-progress.d.ts +92 -0
- package/dist/core/task-progress.d.ts.map +1 -0
- package/dist/core/task-progress.js +280 -0
- package/dist/core/task-progress.js.map +1 -0
- package/dist/core/worktree.d.ts +111 -2
- package/dist/core/worktree.d.ts.map +1 -1
- package/dist/core/worktree.js +310 -2
- package/dist/core/worktree.js.map +1 -1
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -1
- package/dist/services/error-classifier.d.ts +119 -0
- package/dist/services/error-classifier.d.ts.map +1 -0
- package/dist/services/error-classifier.js +182 -0
- package/dist/services/error-classifier.js.map +1 -0
- package/dist/types/index.d.ts +230 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +3 -2
- package/templates/story.md +5 -0
package/dist/cli/runner.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import ora from 'ora';
|
|
2
2
|
import { getSdlcRoot, loadConfig, isStageGateEnabled } from '../core/config.js';
|
|
3
3
|
import { assessState, kanbanExists } from '../core/kanban.js';
|
|
4
|
-
import { parseStory, resetRPIVCycle,
|
|
4
|
+
import { parseStory, resetRPIVCycle, isAtMaxRetries, getStory, incrementImplementationRetryCount, autoCompleteStoryAfterReview, isAtGlobalRecoveryLimit, getTotalRecoveryAttempts, incrementTotalRecoveryAttempts, moveToBlocked } from '../core/story.js';
|
|
5
5
|
import { ReviewDecision } from '../types/index.js';
|
|
6
6
|
import { runRefinementAgent } from '../agents/refinement.js';
|
|
7
7
|
import { runResearchAgent } from '../agents/research.js';
|
|
@@ -136,8 +136,9 @@ export class WorkflowRunner {
|
|
|
136
136
|
const config = loadConfig();
|
|
137
137
|
// Resolve story by ID to get current path (handles moves between folders)
|
|
138
138
|
let currentStoryPath;
|
|
139
|
+
let story;
|
|
139
140
|
try {
|
|
140
|
-
|
|
141
|
+
story = getStory(this.sdlcRoot, action.storyId);
|
|
141
142
|
currentStoryPath = story.path;
|
|
142
143
|
}
|
|
143
144
|
catch (error) {
|
|
@@ -150,6 +151,16 @@ export class WorkflowRunner {
|
|
|
150
151
|
}
|
|
151
152
|
return { success: false, error: error instanceof Error ? error.message : 'Story not found', changesMade: [] };
|
|
152
153
|
}
|
|
154
|
+
// Check global recovery circuit breaker
|
|
155
|
+
if (isAtGlobalRecoveryLimit(story)) {
|
|
156
|
+
const c = getThemedChalk(config);
|
|
157
|
+
const currentAttempts = getTotalRecoveryAttempts(story);
|
|
158
|
+
const reason = `Global recovery limit exceeded (${currentAttempts}/10)`;
|
|
159
|
+
console.log(c.error(`\n⚠️ ${reason}`));
|
|
160
|
+
console.log(c.warning('Story has been blocked. Use "ai-sdlc unblock --reset-retries" to reset the counter.'));
|
|
161
|
+
await moveToBlocked(currentStoryPath, reason);
|
|
162
|
+
return { success: false, error: reason, changesMade: [] };
|
|
163
|
+
}
|
|
153
164
|
switch (action.type) {
|
|
154
165
|
case 'refine':
|
|
155
166
|
return runRefinementAgent(currentStoryPath, this.sdlcRoot);
|
|
@@ -210,15 +221,11 @@ export class WorkflowRunner {
|
|
|
210
221
|
const c = getThemedChalk(config);
|
|
211
222
|
let story = parseStory(storyPath);
|
|
212
223
|
if (reviewResult.decision === ReviewDecision.APPROVED) {
|
|
213
|
-
// Auto-complete on approval
|
|
224
|
+
// Auto-complete on approval using shared helper
|
|
214
225
|
if (config.reviewConfig.autoCompleteOnApproval) {
|
|
215
226
|
console.log(c.success(`\n✅ Review approved! Auto-completing story "${story.frontmatter.title}"`));
|
|
216
|
-
await
|
|
217
|
-
|
|
218
|
-
if (story.frontmatter.status === 'in-progress') {
|
|
219
|
-
story = await updateStoryStatus(story, 'done');
|
|
220
|
-
console.log(c.success(`Updated story status to done`));
|
|
221
|
-
}
|
|
227
|
+
story = await autoCompleteStoryAfterReview(story, config, reviewResult);
|
|
228
|
+
console.log(c.success(`Updated story status to done`));
|
|
222
229
|
}
|
|
223
230
|
}
|
|
224
231
|
else if (reviewResult.decision === ReviewDecision.REJECTED) {
|
|
@@ -241,6 +248,8 @@ export class WorkflowRunner {
|
|
|
241
248
|
// Display executive summary
|
|
242
249
|
const summary = generateReviewSummary(reviewResult.issues, getTerminalWidth());
|
|
243
250
|
console.log(c.dim(` Summary: ${summary}`));
|
|
251
|
+
// Increment global recovery counter
|
|
252
|
+
await incrementTotalRecoveryAttempts(story);
|
|
244
253
|
await resetRPIVCycle(story, reviewResult.feedback);
|
|
245
254
|
console.log(c.info('RPIV cycle reset. Planning phase will restart on next run.'));
|
|
246
255
|
}
|
|
@@ -255,6 +264,8 @@ export class WorkflowRunner {
|
|
|
255
264
|
story = parseStory(storyPath);
|
|
256
265
|
// Increment implementation retry count
|
|
257
266
|
await incrementImplementationRetryCount(story);
|
|
267
|
+
// Increment global recovery counter
|
|
268
|
+
await incrementTotalRecoveryAttempts(story);
|
|
258
269
|
console.log(c.info('Implementation phase will re-run on next execution.'));
|
|
259
270
|
}
|
|
260
271
|
else if (reviewResult.decision === ReviewDecision.FAILED) {
|
package/dist/cli/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/cli/runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/cli/runner.ts"],"names":[],"mappings":"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"}
|
package/dist/core/client.d.ts
CHANGED
|
@@ -33,6 +33,12 @@ export type AgentProgressEvent = {
|
|
|
33
33
|
} | {
|
|
34
34
|
type: 'error';
|
|
35
35
|
message: string;
|
|
36
|
+
} | {
|
|
37
|
+
type: 'retry';
|
|
38
|
+
attempt: number;
|
|
39
|
+
delay: number;
|
|
40
|
+
error: string;
|
|
41
|
+
errorType: string;
|
|
36
42
|
};
|
|
37
43
|
/**
|
|
38
44
|
* Callback for receiving real-time progress from agent execution
|
|
@@ -67,7 +73,19 @@ export interface AgentMessage {
|
|
|
67
73
|
session_id?: string;
|
|
68
74
|
}
|
|
69
75
|
/**
|
|
70
|
-
*
|
|
76
|
+
* Classify an error as transient (should retry) or permanent (fail immediately)
|
|
77
|
+
*/
|
|
78
|
+
export declare function classifyApiError(error: Error): 'transient' | 'permanent';
|
|
79
|
+
/**
|
|
80
|
+
* Determine if an error should be retried based on classification and attempt count
|
|
81
|
+
*/
|
|
82
|
+
export declare function shouldRetry(error: Error, attemptNumber: number, maxRetries: number): boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Calculate exponential backoff delay with jitter
|
|
85
|
+
*/
|
|
86
|
+
export declare function calculateBackoff(attemptNumber: number, initialDelay: number, maxDelay: number): number;
|
|
87
|
+
/**
|
|
88
|
+
* Run an agent query using the Claude Agent SDK with automatic retry logic.
|
|
71
89
|
* Automatically configures authentication from environment or keychain.
|
|
72
90
|
* CLAUDE.md discovery is handled automatically by the SDK when settingSources includes 'project'.
|
|
73
91
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAuD,cAAc,EAA0B,MAAM,WAAW,CAAC;AAMxH;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,SAAS,EAAE,MAAM;CAK9B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GACzE;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAuD,cAAc,EAA0B,MAAM,WAAW,CAAC;AAMxH;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,SAAS,EAAE,MAAM;CAK9B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GACzE;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAExF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;AAExE,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAgBD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,WAAW,GAAG,WAAW,CAsCxE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAS5F;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYtG;AA6MD;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CA8F/E;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,cAAc,CAEzD"}
|
package/dist/core/client.js
CHANGED
|
@@ -38,13 +38,116 @@ function isValidWorkingDirectory(workingDir) {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
*
|
|
42
|
-
* Automatically configures authentication from environment or keychain.
|
|
43
|
-
* CLAUDE.md discovery is handled automatically by the SDK when settingSources includes 'project'.
|
|
41
|
+
* Classify an error as transient (should retry) or permanent (fail immediately)
|
|
44
42
|
*/
|
|
45
|
-
export
|
|
43
|
+
export function classifyApiError(error) {
|
|
44
|
+
// Check for HTTP status codes
|
|
45
|
+
if ('status' in error && typeof error.status === 'number') {
|
|
46
|
+
const status = error.status;
|
|
47
|
+
// Transient errors (should retry)
|
|
48
|
+
if (status === 429)
|
|
49
|
+
return 'transient'; // Rate limit
|
|
50
|
+
if (status === 503)
|
|
51
|
+
return 'transient'; // Service unavailable
|
|
52
|
+
if (status >= 500 && status < 600)
|
|
53
|
+
return 'transient'; // Server errors
|
|
54
|
+
// Permanent errors (don't retry)
|
|
55
|
+
if (status === 400)
|
|
56
|
+
return 'permanent'; // Bad request
|
|
57
|
+
if (status === 401)
|
|
58
|
+
return 'permanent'; // Unauthorized
|
|
59
|
+
if (status === 403)
|
|
60
|
+
return 'permanent'; // Forbidden
|
|
61
|
+
if (status === 404)
|
|
62
|
+
return 'permanent'; // Not found
|
|
63
|
+
}
|
|
64
|
+
// Check for AuthenticationError
|
|
65
|
+
if (error instanceof AuthenticationError) {
|
|
66
|
+
return 'permanent';
|
|
67
|
+
}
|
|
68
|
+
// Check for network errors (should retry)
|
|
69
|
+
if ('code' in error) {
|
|
70
|
+
const code = error.code;
|
|
71
|
+
const transientNetworkCodes = [
|
|
72
|
+
'ETIMEDOUT',
|
|
73
|
+
'ECONNRESET',
|
|
74
|
+
'ENOTFOUND',
|
|
75
|
+
'ECONNREFUSED',
|
|
76
|
+
'EHOSTUNREACH',
|
|
77
|
+
'EPIPE',
|
|
78
|
+
];
|
|
79
|
+
if (transientNetworkCodes.includes(code))
|
|
80
|
+
return 'transient';
|
|
81
|
+
}
|
|
82
|
+
// Default to permanent (fail-safe)
|
|
83
|
+
return 'permanent';
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Determine if an error should be retried based on classification and attempt count
|
|
87
|
+
*/
|
|
88
|
+
export function shouldRetry(error, attemptNumber, maxRetries) {
|
|
89
|
+
// Check if we've exceeded max retries
|
|
90
|
+
if (attemptNumber >= maxRetries) {
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
93
|
+
// Check error classification
|
|
94
|
+
const classification = classifyApiError(error);
|
|
95
|
+
return classification === 'transient';
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Calculate exponential backoff delay with jitter
|
|
99
|
+
*/
|
|
100
|
+
export function calculateBackoff(attemptNumber, initialDelay, maxDelay) {
|
|
101
|
+
// Exponential backoff: initialDelay * 2^attemptNumber
|
|
102
|
+
const exponentialDelay = initialDelay * Math.pow(2, attemptNumber);
|
|
103
|
+
// Cap at maxDelay
|
|
104
|
+
const cappedDelay = Math.min(exponentialDelay, maxDelay);
|
|
105
|
+
// Apply jitter (±20% variance)
|
|
106
|
+
const jitterFactor = 0.8 + Math.random() * 0.4; // Range: 0.8 to 1.2
|
|
107
|
+
const delayWithJitter = cappedDelay * jitterFactor;
|
|
108
|
+
return Math.round(delayWithJitter);
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Sleep for a specified number of milliseconds
|
|
112
|
+
*/
|
|
113
|
+
function sleep(ms) {
|
|
114
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Get human-readable error type label for display
|
|
118
|
+
*/
|
|
119
|
+
function getErrorTypeLabel(error) {
|
|
120
|
+
if ('status' in error && typeof error.status === 'number') {
|
|
121
|
+
const status = error.status;
|
|
122
|
+
if (status === 429)
|
|
123
|
+
return 'rate limit';
|
|
124
|
+
if (status === 503)
|
|
125
|
+
return 'service unavailable';
|
|
126
|
+
if (status >= 500)
|
|
127
|
+
return 'server error';
|
|
128
|
+
}
|
|
129
|
+
if ('code' in error) {
|
|
130
|
+
const code = error.code;
|
|
131
|
+
if (code === 'ETIMEDOUT')
|
|
132
|
+
return 'network timeout';
|
|
133
|
+
if (code === 'ECONNRESET')
|
|
134
|
+
return 'connection reset';
|
|
135
|
+
if (code === 'ENOTFOUND')
|
|
136
|
+
return 'DNS lookup failed';
|
|
137
|
+
if (code === 'ECONNREFUSED')
|
|
138
|
+
return 'connection refused';
|
|
139
|
+
if (code === 'EHOSTUNREACH')
|
|
140
|
+
return 'host unreachable';
|
|
141
|
+
if (code === 'EPIPE')
|
|
142
|
+
return 'broken pipe';
|
|
143
|
+
}
|
|
144
|
+
return 'error';
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Execute the agent query (internal implementation, no retry logic)
|
|
148
|
+
*/
|
|
149
|
+
async function executeAgentQuery(options, queryStartTime) {
|
|
46
150
|
const logger = getLogger();
|
|
47
|
-
const queryStartTime = Date.now();
|
|
48
151
|
// Configure authentication
|
|
49
152
|
const authResult = configureAgentSdkAuth();
|
|
50
153
|
if (!authResult.configured) {
|
|
@@ -195,6 +298,89 @@ export async function runAgentQuery(options) {
|
|
|
195
298
|
throw error;
|
|
196
299
|
}
|
|
197
300
|
}
|
|
301
|
+
/**
|
|
302
|
+
* Run an agent query using the Claude Agent SDK with automatic retry logic.
|
|
303
|
+
* Automatically configures authentication from environment or keychain.
|
|
304
|
+
* CLAUDE.md discovery is handled automatically by the SDK when settingSources includes 'project'.
|
|
305
|
+
*/
|
|
306
|
+
export async function runAgentQuery(options) {
|
|
307
|
+
const logger = getLogger();
|
|
308
|
+
const config = loadConfig(options.workingDirectory || process.cwd());
|
|
309
|
+
const retryConfig = config.retry || { maxRetries: 3, initialDelay: 2000, maxDelay: 32000, maxTotalDuration: 60000 };
|
|
310
|
+
const overallStartTime = Date.now();
|
|
311
|
+
let lastError;
|
|
312
|
+
// Retry loop: attempt 0 is the initial try, attempts 1+ are retries
|
|
313
|
+
for (let attempt = 0; attempt <= retryConfig.maxRetries; attempt++) {
|
|
314
|
+
const queryStartTime = Date.now();
|
|
315
|
+
try {
|
|
316
|
+
// Execute the query
|
|
317
|
+
const result = await executeAgentQuery(options, queryStartTime);
|
|
318
|
+
return result;
|
|
319
|
+
}
|
|
320
|
+
catch (error) {
|
|
321
|
+
lastError = error instanceof Error ? error : new Error(String(error));
|
|
322
|
+
// Check if we should retry
|
|
323
|
+
if (!shouldRetry(lastError, attempt, retryConfig.maxRetries)) {
|
|
324
|
+
// Check if this is a permanent error (not retryable) vs max retries exceeded
|
|
325
|
+
const errorType = classifyApiError(lastError);
|
|
326
|
+
if (errorType === 'permanent') {
|
|
327
|
+
// Permanent error - fail immediately with original error
|
|
328
|
+
throw lastError;
|
|
329
|
+
}
|
|
330
|
+
// Max retries exceeded for transient error - break to enhance the error message
|
|
331
|
+
break;
|
|
332
|
+
}
|
|
333
|
+
// Check total duration cap
|
|
334
|
+
const elapsedTime = Date.now() - overallStartTime;
|
|
335
|
+
if (elapsedTime >= retryConfig.maxTotalDuration) {
|
|
336
|
+
logger.warn('agent-sdk', 'Total retry duration exceeded', {
|
|
337
|
+
elapsedMs: elapsedTime,
|
|
338
|
+
maxDurationMs: retryConfig.maxTotalDuration,
|
|
339
|
+
attempt,
|
|
340
|
+
});
|
|
341
|
+
throw lastError;
|
|
342
|
+
}
|
|
343
|
+
// Calculate backoff delay
|
|
344
|
+
const delay = calculateBackoff(attempt, retryConfig.initialDelay, retryConfig.maxDelay);
|
|
345
|
+
// Get error type label for logging/display
|
|
346
|
+
const errorTypeLabel = getErrorTypeLabel(lastError);
|
|
347
|
+
// Log retry attempt
|
|
348
|
+
logger.info('agent-sdk', 'Retrying after transient error', {
|
|
349
|
+
attempt: attempt + 1,
|
|
350
|
+
maxRetries: retryConfig.maxRetries,
|
|
351
|
+
delayMs: delay,
|
|
352
|
+
errorType: errorTypeLabel,
|
|
353
|
+
error: lastError.message,
|
|
354
|
+
});
|
|
355
|
+
// Notify progress callback
|
|
356
|
+
options.onProgress?.({
|
|
357
|
+
type: 'retry',
|
|
358
|
+
attempt: attempt + 1,
|
|
359
|
+
delay,
|
|
360
|
+
error: lastError.message,
|
|
361
|
+
errorType: errorTypeLabel,
|
|
362
|
+
});
|
|
363
|
+
// Show warning after 2nd retry (attempt 2+)
|
|
364
|
+
if (attempt >= 2) {
|
|
365
|
+
console.warn('⚠️ Experiencing temporary issues with API...');
|
|
366
|
+
}
|
|
367
|
+
// Wait before retry
|
|
368
|
+
await sleep(delay);
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
// If we get here, we've exhausted retries - enhance error message with context
|
|
372
|
+
if (lastError) {
|
|
373
|
+
const errorTypeLabel = getErrorTypeLabel(lastError);
|
|
374
|
+
const isRateLimit = 'status' in lastError && lastError.status === 429;
|
|
375
|
+
if (isRateLimit) {
|
|
376
|
+
throw new Error(`Rate limit exceeded after ${retryConfig.maxRetries} retry attempts. ` +
|
|
377
|
+
`API may be rate limiting your requests. Try again in a few minutes or reduce concurrent requests.`);
|
|
378
|
+
}
|
|
379
|
+
throw new Error(`API request failed after ${retryConfig.maxRetries} retry attempts. ` +
|
|
380
|
+
`Last error (${errorTypeLabel}): ${lastError.message}`);
|
|
381
|
+
}
|
|
382
|
+
throw new Error('Max retries exceeded');
|
|
383
|
+
}
|
|
198
384
|
/**
|
|
199
385
|
* Get the current credential type being used
|
|
200
386
|
*/
|
package/dist/core/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,iBAAiB,EAAkB,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACxH,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AACvC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C,YAAY,SAAiB;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;QAChD,KAAK,CAAC,+BAA+B,UAAU,wEAAwE,CAAC,CAAC;QACzH,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAyCD;;GAEG;AACH,SAAS,uBAAuB,CAAC,UAAkB;IACjD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAChD,qEAAqE;QACrE,OAAO,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,UAAU,KAAK,WAAW,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAY;IAC3C,8BAA8B;IAC9B,IAAI,QAAQ,IAAI,KAAK,IAAI,OAAQ,KAAa,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnE,MAAM,MAAM,GAAI,KAAa,CAAC,MAAM,CAAC;QAErC,kCAAkC;QAClC,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,aAAa;QACrD,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,sBAAsB;QAC9D,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,gBAAgB;QAEvE,iCAAiC;QACjC,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,cAAc;QACtD,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,eAAe;QACvD,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,YAAY;QACpD,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,YAAY;IACtD,CAAC;IAED,gCAAgC;IAChC,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;QACzC,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,0CAA0C;IAC1C,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,GAAI,KAAa,CAAC,IAAI,CAAC;QACjC,MAAM,qBAAqB,GAAG;YAC5B,WAAW;YACX,YAAY;YACZ,WAAW;YACX,cAAc;YACd,cAAc;YACd,OAAO;SACR,CAAC;QACF,IAAI,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,WAAW,CAAC;IAC/D,CAAC;IAED,mCAAmC;IACnC,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAY,EAAE,aAAqB,EAAE,UAAkB;IACjF,sCAAsC;IACtC,IAAI,aAAa,IAAI,UAAU,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,6BAA6B;IAC7B,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC/C,OAAO,cAAc,KAAK,WAAW,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,aAAqB,EAAE,YAAoB,EAAE,QAAgB;IAC5F,sDAAsD;IACtD,MAAM,gBAAgB,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAEnE,kBAAkB;IAClB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAEzD,+BAA+B;IAC/B,MAAM,YAAY,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,oBAAoB;IACpE,MAAM,eAAe,GAAG,WAAW,GAAG,YAAY,CAAC;IAEnD,OAAO,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,KAAY;IACrC,IAAI,QAAQ,IAAI,KAAK,IAAI,OAAQ,KAAa,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnE,MAAM,MAAM,GAAI,KAAa,CAAC,MAAM,CAAC;QACrC,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,YAAY,CAAC;QACxC,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,qBAAqB,CAAC;QACjD,IAAI,MAAM,IAAI,GAAG;YAAE,OAAO,cAAc,CAAC;IAC3C,CAAC;IAED,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,GAAI,KAAa,CAAC,IAAI,CAAC;QACjC,IAAI,IAAI,KAAK,WAAW;YAAE,OAAO,iBAAiB,CAAC;QACnD,IAAI,IAAI,KAAK,YAAY;YAAE,OAAO,kBAAkB,CAAC;QACrD,IAAI,IAAI,KAAK,WAAW;YAAE,OAAO,mBAAmB,CAAC;QACrD,IAAI,IAAI,KAAK,cAAc;YAAE,OAAO,oBAAoB,CAAC;QACzD,IAAI,IAAI,KAAK,cAAc;YAAE,OAAO,kBAAkB,CAAC;QACvD,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,aAAa,CAAC;IAC7C,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAAC,OAA0B,EAAE,cAAsB;IACjF,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,2BAA2B;IAC3B,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,QAAQ,EAAE,KAAK,QAAQ,CAAC;QAEzC,IAAI,YAAY,GAAG,mCAAmC,CAAC;QACvD,YAAY,IAAI,8CAA8C,CAAC;QAC/D,YAAY,IAAI,kDAAkD,cAAc,EAAE,CAAC;QACnF,IAAI,QAAQ,EAAE,CAAC;YACb,YAAY,IAAI,wDAAwD,CAAC;QAC3E,CAAC;QACD,YAAY,IAAI,GAAG,CAAC;QAEpB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IAED,sEAAsE;IACtE,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,sBAAsB,EAAE,CAAC;QAE3C,kDAAkD;QAClD,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;YACnF,MAAM,IAAI,mBAAmB,CAC3B,GAAG,MAAM,wEAAwE,CAClF,CAAC;QACJ,CAAC;QAED,8DAA8D;QAC9D,IAAI,SAAS,CAAC,WAAW,KAAK,IAAI,IAAI,SAAS,CAAC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;YAC5E,OAAO,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAC;QACnG,CAAC;IACH,CAAC;IAED,2CAA2C;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3E,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IAED,uDAAuD;IACvD,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,YAAY,IAAI,gBAAgB,CAAC,YAAY,CAAC;IAElG,kBAAkB;IAClB,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,sBAAsB,EAAE;QAChD,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,4BAA4B;QACpD,gBAAgB,EAAE,UAAU;QAC5B,SAAS,EAAE,OAAO;QAClB,QAAQ,EAAE,UAAU,CAAC,IAAI;QACzB,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;KACpC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,MAAM,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE;YACP,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,4BAA4B;YACpD,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,GAAG,EAAE,UAAU;YACf,cAAc,EAAE,aAAa;YAC7B,cAAc,EAAE,cAAc;SAC/B;KACF,CAAC,CAAC;IAEH,2BAA2B;IAC3B,IAAI,SAAqC,CAAC;IAC1C,MAAM,cAAc,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QACtD,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,MAAM,CAAC,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;QACzC,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,2CAA2C;IAC3C,MAAM,eAAe,GAAG,KAAK,IAAqB,EAAE;QAClD,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,QAAwC,EAAE,CAAC;gBACrE,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;oBACrB,KAAK,QAAQ;wBACX,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;4BACrD,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;wBACjF,CAAC;6BAAM,IAAI,OAAO,CAAC,OAAO,KAAK,YAAY,EAAE,CAAC;4BAC5C,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;wBAC/C,CAAC;wBACD,MAAM;oBAER,KAAK,WAAW;wBACd,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;wBAChC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;4BAChC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;4BACtB,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,CAAC;wBAC/D,CAAC;6BAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;4BAClC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gCAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oCACxC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oCACzB,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gCAC3E,CAAC;qCAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oCACnD,kCAAkC;oCAClC,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gCACrE,CAAC;4BACH,CAAC;wBACH,CAAC;wBACD,MAAM;oBAER,KAAK,WAAW;wBACd,OAAO,CAAC,UAAU,EAAE,CAAC;4BACnB,IAAI,EAAE,YAAY;4BAClB,QAAQ,EAAE,OAAO,CAAC,SAAS,IAAI,SAAS;4BACxC,KAAK,EAAE,OAAO,CAAC,KAAK;yBACrB,CAAC,CAAC;wBACH,MAAM;oBAER,KAAK,aAAa;wBAChB,OAAO,CAAC,UAAU,EAAE,CAAC;4BACnB,IAAI,EAAE,UAAU;4BAChB,QAAQ,EAAE,OAAO,CAAC,SAAS,IAAI,SAAS;4BACxC,MAAM,EAAE,OAAO,CAAC,MAAM;yBACvB,CAAC,CAAC;wBACH,MAAM;oBAER,KAAK,QAAQ;wBACX,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;4BACxE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;wBAC/B,CAAC;wBACD,MAAM;oBAER,KAAK,OAAO;wBACV,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,aAAa,EAAE,CAAC,CAAC;wBAC1F,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,aAAa,CAAC,CAAC;wBACtE,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,mBAAmB,EAAE;4BAC7C,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc;4BACvC,KAAK,EAAE,UAAU,CAAC,OAAO;yBAC1B,CAAC,CAAC;wBACH,MAAM,UAAU,CAAC;gBACrB,CAAC;YACH,CAAC;YACD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC;YAClD,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,uBAAuB,EAAE;gBAChD,UAAU,EAAE,aAAa;gBACzB,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;aACxC,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;gBAAS,CAAC;YACT,IAAI,SAAS,EAAE,CAAC;gBACd,YAAY,CAAC,SAAS,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,+CAA+C;IAC/C,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;YACvC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,uBAAuB,EAAE;gBACjD,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc;gBACvC,SAAS,EAAE,OAAO;aACnB,CAAC,CAAC;QACL,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAA0B;IAC5D,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;IAEpH,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACpC,IAAI,SAA4B,CAAC;IAEjC,oEAAoE;IACpE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;QACnE,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAElC,IAAI,CAAC;YACH,oBAAoB;YACpB,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAChE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAEtE,2BAA2B;YAC3B,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7D,6EAA6E;gBAC7E,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBAC9C,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;oBAC9B,yDAAyD;oBACzD,MAAM,SAAS,CAAC;gBAClB,CAAC;gBACD,gFAAgF;gBAChF,MAAM;YACR,CAAC;YAED,2BAA2B;YAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC;YAClD,IAAI,WAAW,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBAChD,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,+BAA+B,EAAE;oBACxD,SAAS,EAAE,WAAW;oBACtB,aAAa,EAAE,WAAW,CAAC,gBAAgB;oBAC3C,OAAO;iBACR,CAAC,CAAC;gBACH,MAAM,SAAS,CAAC;YAClB,CAAC;YAED,0BAA0B;YAC1B,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;YAExF,2CAA2C;YAC3C,MAAM,cAAc,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAEpD,oBAAoB;YACpB,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,gCAAgC,EAAE;gBACzD,OAAO,EAAE,OAAO,GAAG,CAAC;gBACpB,UAAU,EAAE,WAAW,CAAC,UAAU;gBAClC,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,cAAc;gBACzB,KAAK,EAAE,SAAS,CAAC,OAAO;aACzB,CAAC,CAAC;YAEH,2BAA2B;YAC3B,OAAO,CAAC,UAAU,EAAE,CAAC;gBACnB,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,OAAO,GAAG,CAAC;gBACpB,KAAK;gBACL,KAAK,EAAE,SAAS,CAAC,OAAO;gBACxB,SAAS,EAAE,cAAc;aAC1B,CAAC,CAAC;YAEH,4CAA4C;YAC5C,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;gBACjB,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;YAChE,CAAC;YAED,oBAAoB;YACpB,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,cAAc,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,WAAW,GAAG,QAAQ,IAAI,SAAS,IAAK,SAAiB,CAAC,MAAM,KAAK,GAAG,CAAC;QAE/E,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,6BAA6B,WAAW,CAAC,UAAU,mBAAmB;gBACtE,mGAAmG,CACpG,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,KAAK,CACb,4BAA4B,WAAW,CAAC,UAAU,mBAAmB;YACrE,eAAe,cAAc,MAAM,SAAS,CAAC,OAAO,EAAE,CACvD,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB;IACtC,OAAO,iBAAiB,CAAC,SAAS,EAAE,CAAC,CAAC;AACxC,CAAC"}
|
package/dist/core/config.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Config, StageGateConfig, RefinementConfig, ReviewConfig, ImplementationConfig, TimeoutConfig, DaemonConfig, TDDConfig, WorktreeConfig, LogConfig } from '../types/index.js';
|
|
1
|
+
import { Config, StageGateConfig, RefinementConfig, ReviewConfig, ImplementationConfig, TimeoutConfig, DaemonConfig, TDDConfig, WorktreeConfig, LogConfig, RetryConfig } from '../types/index.js';
|
|
2
2
|
/**
|
|
3
3
|
* Default timeout configuration
|
|
4
4
|
*/
|
|
@@ -23,6 +23,10 @@ export declare const DEFAULT_IMPLEMENTATION_CONFIG: ImplementationConfig;
|
|
|
23
23
|
* Default logging configuration
|
|
24
24
|
*/
|
|
25
25
|
export declare const DEFAULT_LOGGING_CONFIG: LogConfig;
|
|
26
|
+
/**
|
|
27
|
+
* Default retry configuration
|
|
28
|
+
*/
|
|
29
|
+
export declare const DEFAULT_RETRY_CONFIG: RetryConfig;
|
|
26
30
|
export declare const DEFAULT_CONFIG: Config;
|
|
27
31
|
/**
|
|
28
32
|
* Get the SDLC root folder path
|
|
@@ -65,6 +69,10 @@ export declare function validateReviewConfig(reviewConfig: ReviewConfig): Review
|
|
|
65
69
|
* Update review configuration
|
|
66
70
|
*/
|
|
67
71
|
export declare function updateReviewConfig(reviewConfig: Partial<ReviewConfig>, workingDir?: string): Config;
|
|
72
|
+
/**
|
|
73
|
+
* Validate retry configuration
|
|
74
|
+
*/
|
|
75
|
+
export declare function validateRetryConfig(retryConfig: RetryConfig): RetryConfig;
|
|
68
76
|
/**
|
|
69
77
|
* Validate implementation configuration
|
|
70
78
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,YAAY,EAAE,oBAAoB,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,YAAY,EAAE,oBAAoB,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIlM;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,aAI9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,YAQnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAMhC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,cAGrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,6BAA6B,EAAE,oBAG3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAKpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,WAKlC,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MA4C5B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,WAAW,CAAC,UAAU,GAAE,MAAsB,GAAG,MAAM,CAOtE;AAiMD;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,GAAE,MAAsB,GAAG,MAAM,CA+IrE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,MAAsB,GAAG,IAAI,CAGnF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,EAC/B,UAAU,GAAE,MAAsB,GACjC,MAAM,CAQR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,eAAe,EAC3B,UAAU,GAAE,MAAsB,GACjC,OAAO,CAGT;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,GAAE,MAAsB,GAAG,MAAM,CAQrE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAC3C,UAAU,GAAE,MAAsB,GACjC,MAAM,CAQR;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,GAAE,MAAsB,GAAG,MAAM,CAGrF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,YAAY,GAAG,YAAY,CA8B7E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,EACnC,UAAU,GAAE,MAAsB,GACjC,MAAM,CASR;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,WAAW,CA4BzE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,oBAAoB,EAAE,oBAAoB,GAAG,oBAAoB,CA8B7G;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC,EACnD,UAAU,GAAE,MAAsB,GACjC,MAAM,CASR;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAYtF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,cAAc,CAOrF"}
|
package/dist/core/config.js
CHANGED
|
@@ -54,6 +54,15 @@ export const DEFAULT_LOGGING_CONFIG = {
|
|
|
54
54
|
maxFileSizeMb: 10,
|
|
55
55
|
maxFiles: 5,
|
|
56
56
|
};
|
|
57
|
+
/**
|
|
58
|
+
* Default retry configuration
|
|
59
|
+
*/
|
|
60
|
+
export const DEFAULT_RETRY_CONFIG = {
|
|
61
|
+
maxRetries: 3,
|
|
62
|
+
initialDelay: 2000,
|
|
63
|
+
maxDelay: 32000,
|
|
64
|
+
maxTotalDuration: 60000,
|
|
65
|
+
};
|
|
57
66
|
export const DEFAULT_CONFIG = {
|
|
58
67
|
sdlcFolder: '.ai-sdlc',
|
|
59
68
|
stageGates: {
|
|
@@ -74,6 +83,7 @@ export const DEFAULT_CONFIG = {
|
|
|
74
83
|
autoCompleteOnApproval: true,
|
|
75
84
|
autoRestartOnRejection: true,
|
|
76
85
|
detectTestAntipatterns: true,
|
|
86
|
+
autoCreatePROnApproval: false, // Set to true in automated mode at runtime
|
|
77
87
|
},
|
|
78
88
|
implementation: { ...DEFAULT_IMPLEMENTATION_CONFIG },
|
|
79
89
|
defaultLabels: [],
|
|
@@ -81,10 +91,12 @@ export const DEFAULT_CONFIG = {
|
|
|
81
91
|
// Test and build commands - auto-detected from package.json if present
|
|
82
92
|
testCommand: 'npm test',
|
|
83
93
|
buildCommand: 'npm run build',
|
|
84
|
-
// Agent SDK settings sources -
|
|
85
|
-
settingSources: [],
|
|
94
|
+
// Agent SDK settings sources - enables Skills discovery from .claude/skills/
|
|
95
|
+
settingSources: ['project'],
|
|
86
96
|
// Timeout configuration
|
|
87
97
|
timeouts: { ...DEFAULT_TIMEOUTS },
|
|
98
|
+
// Retry configuration
|
|
99
|
+
retry: { ...DEFAULT_RETRY_CONFIG },
|
|
88
100
|
// Daemon configuration
|
|
89
101
|
daemon: { ...DEFAULT_DAEMON_CONFIG },
|
|
90
102
|
// TDD configuration
|
|
@@ -93,6 +105,8 @@ export const DEFAULT_CONFIG = {
|
|
|
93
105
|
worktree: { ...DEFAULT_WORKTREE_CONFIG },
|
|
94
106
|
// Logging configuration
|
|
95
107
|
logging: { ...DEFAULT_LOGGING_CONFIG },
|
|
108
|
+
// Orchestrator configuration
|
|
109
|
+
useOrchestrator: false,
|
|
96
110
|
};
|
|
97
111
|
/**
|
|
98
112
|
* Get the SDLC root folder path
|
|
@@ -311,6 +325,10 @@ export function loadConfig(workingDir = process.cwd()) {
|
|
|
311
325
|
...DEFAULT_TIMEOUTS,
|
|
312
326
|
...userConfig.timeouts,
|
|
313
327
|
},
|
|
328
|
+
retry: {
|
|
329
|
+
...DEFAULT_RETRY_CONFIG,
|
|
330
|
+
...userConfig.retry,
|
|
331
|
+
},
|
|
314
332
|
daemon: {
|
|
315
333
|
...DEFAULT_DAEMON_CONFIG,
|
|
316
334
|
...userConfig.daemon,
|
|
@@ -400,6 +418,10 @@ export function loadConfig(workingDir = process.cwd()) {
|
|
|
400
418
|
config.reviewConfig = validateReviewConfig(config.reviewConfig);
|
|
401
419
|
// Validate implementation config
|
|
402
420
|
config.implementation = validateImplementationConfig(config.implementation);
|
|
421
|
+
// Validate retry config
|
|
422
|
+
if (config.retry) {
|
|
423
|
+
config.retry = validateRetryConfig(config.retry);
|
|
424
|
+
}
|
|
403
425
|
return config;
|
|
404
426
|
}
|
|
405
427
|
/**
|
|
@@ -497,6 +519,33 @@ export function updateReviewConfig(reviewConfig, workingDir = process.cwd()) {
|
|
|
497
519
|
saveConfig(config, workingDir);
|
|
498
520
|
return config;
|
|
499
521
|
}
|
|
522
|
+
/**
|
|
523
|
+
* Validate retry configuration
|
|
524
|
+
*/
|
|
525
|
+
export function validateRetryConfig(retryConfig) {
|
|
526
|
+
const validated = { ...retryConfig };
|
|
527
|
+
// Validate maxRetries
|
|
528
|
+
if (typeof validated.maxRetries !== 'number' || validated.maxRetries < 0) {
|
|
529
|
+
console.warn('Warning: retry.maxRetries must be non-negative number, using 3');
|
|
530
|
+
validated.maxRetries = 3;
|
|
531
|
+
}
|
|
532
|
+
// Validate initialDelay
|
|
533
|
+
if (typeof validated.initialDelay !== 'number' || validated.initialDelay < 0) {
|
|
534
|
+
console.warn('Warning: retry.initialDelay must be non-negative number, using 2000');
|
|
535
|
+
validated.initialDelay = 2000;
|
|
536
|
+
}
|
|
537
|
+
// Validate maxDelay
|
|
538
|
+
if (typeof validated.maxDelay !== 'number' || validated.maxDelay < validated.initialDelay) {
|
|
539
|
+
console.warn('Warning: retry.maxDelay must be >= initialDelay, using 32000');
|
|
540
|
+
validated.maxDelay = 32000;
|
|
541
|
+
}
|
|
542
|
+
// Validate maxTotalDuration
|
|
543
|
+
if (typeof validated.maxTotalDuration !== 'number' || validated.maxTotalDuration < 0) {
|
|
544
|
+
console.warn('Warning: retry.maxTotalDuration must be non-negative number, using 60000');
|
|
545
|
+
validated.maxTotalDuration = 60000;
|
|
546
|
+
}
|
|
547
|
+
return validated;
|
|
548
|
+
}
|
|
500
549
|
/**
|
|
501
550
|
* Validate implementation configuration
|
|
502
551
|
*/
|