ai-sdlc 0.2.0-alpha.9 → 0.2.0-beta.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 +53 -1058
- package/dist/agents/implementation.d.ts +6 -0
- package/dist/agents/implementation.d.ts.map +1 -1
- package/dist/agents/implementation.js +87 -13
- package/dist/agents/implementation.js.map +1 -1
- package/dist/agents/planning.d.ts.map +1 -1
- package/dist/agents/planning.js +22 -3
- package/dist/agents/planning.js.map +1 -1
- package/dist/agents/refinement.d.ts.map +1 -1
- package/dist/agents/refinement.js +22 -3
- package/dist/agents/refinement.js.map +1 -1
- package/dist/agents/research.d.ts +85 -1
- package/dist/agents/research.d.ts.map +1 -1
- package/dist/agents/research.js +506 -16
- package/dist/agents/research.js.map +1 -1
- package/dist/agents/review.d.ts +67 -2
- package/dist/agents/review.d.ts.map +1 -1
- package/dist/agents/review.js +477 -68
- package/dist/agents/review.js.map +1 -1
- package/dist/agents/rework.d.ts.map +1 -1
- package/dist/agents/rework.js +22 -3
- package/dist/agents/rework.js.map +1 -1
- package/dist/agents/state-assessor.d.ts +3 -3
- package/dist/agents/state-assessor.d.ts.map +1 -1
- package/dist/agents/state-assessor.js +6 -6
- package/dist/agents/state-assessor.js.map +1 -1
- package/dist/agents/test-pattern-detector.d.ts +49 -0
- package/dist/agents/test-pattern-detector.d.ts.map +1 -0
- package/dist/agents/test-pattern-detector.js +273 -0
- package/dist/agents/test-pattern-detector.js.map +1 -0
- package/dist/agents/verification.d.ts +11 -0
- package/dist/agents/verification.d.ts.map +1 -1
- package/dist/agents/verification.js +74 -1
- package/dist/agents/verification.js.map +1 -1
- package/dist/cli/commands/migrate.js +1 -1
- package/dist/cli/commands/migrate.js.map +1 -1
- package/dist/cli/commands.d.ts +43 -3
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +588 -150
- package/dist/cli/commands.js.map +1 -1
- package/dist/cli/daemon.d.ts.map +1 -1
- package/dist/cli/daemon.js +20 -3
- package/dist/cli/daemon.js.map +1 -1
- package/dist/cli/runner.d.ts.map +1 -1
- package/dist/cli/runner.js +18 -6
- package/dist/cli/runner.js.map +1 -1
- package/dist/core/auth.d.ts +43 -0
- package/dist/core/auth.d.ts.map +1 -1
- package/dist/core/auth.js +105 -1
- package/dist/core/auth.js.map +1 -1
- package/dist/core/client.d.ts +6 -0
- package/dist/core/client.d.ts.map +1 -1
- package/dist/core/client.js +57 -3
- package/dist/core/client.js.map +1 -1
- package/dist/core/config.d.ts +5 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +27 -0
- package/dist/core/config.js.map +1 -1
- package/dist/core/conflict-detector.d.ts +108 -0
- package/dist/core/conflict-detector.d.ts.map +1 -0
- package/dist/core/conflict-detector.js +413 -0
- package/dist/core/conflict-detector.js.map +1 -0
- package/dist/core/git-utils.d.ts +10 -1
- package/dist/core/git-utils.d.ts.map +1 -1
- package/dist/core/git-utils.js +55 -4
- package/dist/core/git-utils.js.map +1 -1
- package/dist/core/index.d.ts +17 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +17 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/kanban.d.ts +1 -1
- package/dist/core/kanban.d.ts.map +1 -1
- package/dist/core/kanban.js +3 -3
- package/dist/core/kanban.js.map +1 -1
- package/dist/core/logger.d.ts +92 -0
- package/dist/core/logger.d.ts.map +1 -0
- package/dist/core/logger.js +221 -0
- package/dist/core/logger.js.map +1 -0
- package/dist/core/story-logger.d.ts +102 -0
- package/dist/core/story-logger.d.ts.map +1 -0
- package/dist/core/story-logger.js +265 -0
- package/dist/core/story-logger.js.map +1 -0
- package/dist/core/story.d.ts +79 -20
- package/dist/core/story.d.ts.map +1 -1
- package/dist/core/story.js +221 -39
- package/dist/core/story.js.map +1 -1
- package/dist/core/workflow-state.d.ts +45 -6
- package/dist/core/workflow-state.d.ts.map +1 -1
- package/dist/core/workflow-state.js +201 -12
- package/dist/core/workflow-state.js.map +1 -1
- package/dist/core/worktree.d.ts +9 -0
- package/dist/core/worktree.d.ts.map +1 -1
- package/dist/core/worktree.js +52 -1
- package/dist/core/worktree.js.map +1 -1
- package/dist/index.js +112 -6
- package/dist/index.js.map +1 -1
- package/dist/types/index.d.ts +123 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/package.json +3 -1
|
@@ -147,9 +147,15 @@ export declare function sanitizeTestOutput(output: string): string;
|
|
|
147
147
|
* @returns Truncated and sanitized output with notice if truncated
|
|
148
148
|
*/
|
|
149
149
|
export declare function truncateTestOutput(output: string, maxLength?: number): string;
|
|
150
|
+
/**
|
|
151
|
+
* Detect if errors are related to missing dependencies
|
|
152
|
+
* Returns module names that are missing, if any
|
|
153
|
+
*/
|
|
154
|
+
export declare function detectMissingDependencies(output: string): string[];
|
|
150
155
|
/**
|
|
151
156
|
* Build retry prompt for implementation agent
|
|
152
157
|
* @param testOutput Test failure output
|
|
158
|
+
* @param buildOutput Build output
|
|
153
159
|
* @param attemptNumber Current attempt number (1-indexed)
|
|
154
160
|
* @param maxRetries Maximum number of retries
|
|
155
161
|
* @returns Prompt string for retry attempt
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"implementation.d.ts","sourceRoot":"","sources":["../../src/agents/implementation.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"implementation.d.ts","sourceRoot":"","sources":["../../src/agents/implementation.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAa,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAM7C,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,WAAW,CAAC,EAAE,OAAO,WAAW,CAAC;IACjC,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC;AAED,eAAO,MAAM,iBAAiB,8zBAuB+B,CAAC;AAsB9D;;GAEG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAgD9C;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAgD9C;AAWD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,UAAU,GAAE,OAAO,WAAyB,GAC3C,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAiDlD;AAmDD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CAqCzB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CAoCzB;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CAwCzB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,cAAc,EACzB,WAAW,EAAE,cAAc,EAC3B,cAAc,EAAE,cAAc,GAC7B,YAAY,CAYd;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAuBrD;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,WAAW,CAAC,CA6ItB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC;AAaD;;;;;;;;;GASG;AACH,wBAAsB,gCAAgC,CACpD,OAAO,EAAE,mBAAmB,EAC5B,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,WAAW,CAAC,CA2MtB;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,WAAW,CAAC,CA6MtB;AAgCD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAuBjE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAErF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAkBzD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,MAAa,GAAG,MAAM,CAYnF;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAqClE;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,GACjB,MAAM,CAwDR"}
|
|
@@ -2,6 +2,7 @@ import { spawn, spawnSync } from 'child_process';
|
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import { parseStory, writeStory, updateStoryStatus, updateStoryField, resetImplementationRetryCount, incrementImplementationRetryCount, getEffectiveMaxImplementationRetries, } from '../core/story.js';
|
|
4
4
|
import { runAgentQuery } from '../core/client.js';
|
|
5
|
+
import { getLogger } from '../core/logger.js';
|
|
5
6
|
import { loadConfig, DEFAULT_TDD_CONFIG } from '../core/config.js';
|
|
6
7
|
import { verifyImplementation } from './verification.js';
|
|
7
8
|
import { createHash } from 'crypto';
|
|
@@ -508,7 +509,7 @@ export async function runTDDImplementation(story, sdlcRoot, options = {}) {
|
|
|
508
509
|
story.frontmatter.tdd_test_history = history.slice(-100);
|
|
509
510
|
story.frontmatter.tdd_current_test = cycle;
|
|
510
511
|
// Persist the TDD cycle history to disk
|
|
511
|
-
writeStory(story);
|
|
512
|
+
await writeStory(story);
|
|
512
513
|
changesMade.push(`Completed TDD cycle ${cycleNumber}`);
|
|
513
514
|
// Check if all AC are now covered
|
|
514
515
|
// Re-read story to get latest content (agent may have updated checkboxes)
|
|
@@ -606,18 +607,18 @@ ${implementationResult}
|
|
|
606
607
|
// Append to story content
|
|
607
608
|
const updatedStory = parseStory(storyPath);
|
|
608
609
|
updatedStory.content += '\n\n' + implementationNotes;
|
|
609
|
-
writeStory(updatedStory);
|
|
610
|
+
await writeStory(updatedStory);
|
|
610
611
|
changesMade.push(attemptNumber > 1 ? `Added retry ${attemptNumber - 1} notes` : 'Added implementation notes');
|
|
611
612
|
changesMade.push('Running verification before marking complete...');
|
|
612
613
|
const verification = await verifyImplementation(updatedStory, workingDir);
|
|
613
|
-
updateStoryField(updatedStory, 'last_test_run', {
|
|
614
|
+
await updateStoryField(updatedStory, 'last_test_run', {
|
|
614
615
|
passed: verification.passed,
|
|
615
616
|
failures: verification.failures,
|
|
616
617
|
timestamp: verification.timestamp,
|
|
617
618
|
});
|
|
618
619
|
if (verification.passed) {
|
|
619
620
|
// Success! Reset retry count and return success
|
|
620
|
-
resetImplementationRetryCount(updatedStory);
|
|
621
|
+
await resetImplementationRetryCount(updatedStory);
|
|
621
622
|
changesMade.push('Verification passed - implementation successful');
|
|
622
623
|
// Send success progress callback
|
|
623
624
|
if (onProgress) {
|
|
@@ -634,7 +635,7 @@ ${implementationResult}
|
|
|
634
635
|
// Capture current diff hash for no-change detection
|
|
635
636
|
const currentDiffHash = captureCurrentDiffHash(workingDir);
|
|
636
637
|
// Track retry attempt
|
|
637
|
-
incrementImplementationRetryCount(updatedStory);
|
|
638
|
+
await incrementImplementationRetryCount(updatedStory);
|
|
638
639
|
// Extract first 100 chars of test and build output for history
|
|
639
640
|
const testSnippet = verification.testsOutput.substring(0, 100).replace(/\n/g, ' ');
|
|
640
641
|
const buildSnippet = verification.buildOutput.substring(0, 100).replace(/\n/g, ' ');
|
|
@@ -720,10 +721,16 @@ ${implementationResult}
|
|
|
720
721
|
* Executes the implementation plan, creating code changes and tests.
|
|
721
722
|
*/
|
|
722
723
|
export async function runImplementationAgent(storyPath, sdlcRoot, options = {}) {
|
|
724
|
+
const logger = getLogger();
|
|
725
|
+
const startTime = Date.now();
|
|
723
726
|
let story = parseStory(storyPath);
|
|
724
727
|
let currentStoryPath = storyPath;
|
|
725
728
|
const changesMade = [];
|
|
726
729
|
const workingDir = path.dirname(sdlcRoot);
|
|
730
|
+
logger.info('implementation', 'Starting implementation phase', {
|
|
731
|
+
storyId: story.frontmatter.id,
|
|
732
|
+
retryCount: story.frontmatter.implementation_retry_count || 0,
|
|
733
|
+
});
|
|
727
734
|
try {
|
|
728
735
|
// Security: Validate working directory before git operations
|
|
729
736
|
validateWorkingDir(workingDir);
|
|
@@ -767,7 +774,7 @@ export async function runImplementationAgent(storyPath, sdlcRoot, options = {})
|
|
|
767
774
|
}
|
|
768
775
|
}
|
|
769
776
|
// Update story with branch info
|
|
770
|
-
updateStoryField(story, 'branch', branchName);
|
|
777
|
+
await updateStoryField(story, 'branch', branchName);
|
|
771
778
|
}
|
|
772
779
|
}
|
|
773
780
|
catch {
|
|
@@ -776,7 +783,7 @@ export async function runImplementationAgent(storyPath, sdlcRoot, options = {})
|
|
|
776
783
|
}
|
|
777
784
|
// Update status to in-progress if not already there
|
|
778
785
|
if (story.frontmatter.status !== 'in-progress') {
|
|
779
|
-
story = updateStoryStatus(story, 'in-progress');
|
|
786
|
+
story = await updateStoryStatus(story, 'in-progress');
|
|
780
787
|
currentStoryPath = story.path;
|
|
781
788
|
changesMade.push('Updated status to in-progress');
|
|
782
789
|
}
|
|
@@ -795,7 +802,7 @@ export async function runImplementationAgent(storyPath, sdlcRoot, options = {})
|
|
|
795
802
|
// TDD completed all cycles - now verify with retry support
|
|
796
803
|
changesMade.push('Running final verification...');
|
|
797
804
|
const verification = await verifyImplementation(tddResult.story, workingDir);
|
|
798
|
-
updateStoryField(tddResult.story, 'last_test_run', {
|
|
805
|
+
await updateStoryField(tddResult.story, 'last_test_run', {
|
|
799
806
|
passed: verification.passed,
|
|
800
807
|
failures: verification.failures,
|
|
801
808
|
timestamp: verification.timestamp,
|
|
@@ -803,7 +810,7 @@ export async function runImplementationAgent(storyPath, sdlcRoot, options = {})
|
|
|
803
810
|
if (!verification.passed) {
|
|
804
811
|
// TDD final verification failed - this is unexpected since TDD should ensure all tests pass
|
|
805
812
|
// Reset retry count since this is the first failure at this stage
|
|
806
|
-
resetImplementationRetryCount(tddResult.story);
|
|
813
|
+
await resetImplementationRetryCount(tddResult.story);
|
|
807
814
|
return {
|
|
808
815
|
success: false,
|
|
809
816
|
story: parseStory(currentStoryPath),
|
|
@@ -812,8 +819,8 @@ export async function runImplementationAgent(storyPath, sdlcRoot, options = {})
|
|
|
812
819
|
};
|
|
813
820
|
}
|
|
814
821
|
// Success - reset retry count
|
|
815
|
-
resetImplementationRetryCount(tddResult.story);
|
|
816
|
-
updateStoryField(tddResult.story, 'implementation_complete', true);
|
|
822
|
+
await resetImplementationRetryCount(tddResult.story);
|
|
823
|
+
await updateStoryField(tddResult.story, 'implementation_complete', true);
|
|
817
824
|
changesMade.push('Marked implementation_complete: true');
|
|
818
825
|
return {
|
|
819
826
|
success: true,
|
|
@@ -862,8 +869,13 @@ export async function runImplementationAgent(storyPath, sdlcRoot, options = {})
|
|
|
862
869
|
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
863
870
|
changesMade.push(`Commit warning: ${errorMsg} (continuing implementation)`);
|
|
864
871
|
}
|
|
865
|
-
updateStoryField(updatedStory, 'implementation_complete', true);
|
|
872
|
+
await updateStoryField(updatedStory, 'implementation_complete', true);
|
|
866
873
|
changesMade.push('Marked implementation_complete: true');
|
|
874
|
+
logger.info('implementation', 'Implementation phase complete', {
|
|
875
|
+
storyId: story.frontmatter.id,
|
|
876
|
+
durationMs: Date.now() - startTime,
|
|
877
|
+
changesCount: changesMade.length,
|
|
878
|
+
});
|
|
867
879
|
return {
|
|
868
880
|
success: true,
|
|
869
881
|
story: parseStory(currentStoryPath),
|
|
@@ -871,11 +883,17 @@ export async function runImplementationAgent(storyPath, sdlcRoot, options = {})
|
|
|
871
883
|
};
|
|
872
884
|
}
|
|
873
885
|
catch (error) {
|
|
886
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
887
|
+
logger.error('implementation', 'Implementation phase failed', {
|
|
888
|
+
storyId: story.frontmatter.id,
|
|
889
|
+
durationMs: Date.now() - startTime,
|
|
890
|
+
error: errorMessage,
|
|
891
|
+
});
|
|
874
892
|
return {
|
|
875
893
|
success: false,
|
|
876
894
|
story,
|
|
877
895
|
changesMade,
|
|
878
|
-
error:
|
|
896
|
+
error: errorMessage,
|
|
879
897
|
};
|
|
880
898
|
}
|
|
881
899
|
}
|
|
@@ -982,9 +1000,49 @@ export function truncateTestOutput(output, maxLength = 5000) {
|
|
|
982
1000
|
const truncated = sanitized.substring(0, maxLength);
|
|
983
1001
|
return truncated + `\n\n[Output truncated. Showing first ${maxLength} characters of ${sanitized.length} total.]`;
|
|
984
1002
|
}
|
|
1003
|
+
/**
|
|
1004
|
+
* Detect if errors are related to missing dependencies
|
|
1005
|
+
* Returns module names that are missing, if any
|
|
1006
|
+
*/
|
|
1007
|
+
export function detectMissingDependencies(output) {
|
|
1008
|
+
if (!output)
|
|
1009
|
+
return [];
|
|
1010
|
+
const missingModules = [];
|
|
1011
|
+
// Pattern: Cannot find module 'package-name'
|
|
1012
|
+
const cannotFindPattern = /Cannot find module ['"]([^'"]+)['"]/g;
|
|
1013
|
+
let match;
|
|
1014
|
+
while ((match = cannotFindPattern.exec(output)) !== null) {
|
|
1015
|
+
const moduleName = match[1];
|
|
1016
|
+
// Only include external packages, not relative imports
|
|
1017
|
+
if (!moduleName.startsWith('.') && !moduleName.startsWith('/')) {
|
|
1018
|
+
// Extract base package name (handle scoped packages like @types/foo)
|
|
1019
|
+
const baseName = moduleName.startsWith('@')
|
|
1020
|
+
? moduleName.split('/').slice(0, 2).join('/')
|
|
1021
|
+
: moduleName.split('/')[0];
|
|
1022
|
+
if (!missingModules.includes(baseName)) {
|
|
1023
|
+
missingModules.push(baseName);
|
|
1024
|
+
}
|
|
1025
|
+
}
|
|
1026
|
+
}
|
|
1027
|
+
// Pattern: Module not found: Error: Can't resolve 'package-name'
|
|
1028
|
+
const cantResolvePattern = /(?:Module not found|Can't resolve)[:\s]+['"]([^'"]+)['"]/g;
|
|
1029
|
+
while ((match = cantResolvePattern.exec(output)) !== null) {
|
|
1030
|
+
const moduleName = match[1];
|
|
1031
|
+
if (!moduleName.startsWith('.') && !moduleName.startsWith('/')) {
|
|
1032
|
+
const baseName = moduleName.startsWith('@')
|
|
1033
|
+
? moduleName.split('/').slice(0, 2).join('/')
|
|
1034
|
+
: moduleName.split('/')[0];
|
|
1035
|
+
if (!missingModules.includes(baseName)) {
|
|
1036
|
+
missingModules.push(baseName);
|
|
1037
|
+
}
|
|
1038
|
+
}
|
|
1039
|
+
}
|
|
1040
|
+
return missingModules;
|
|
1041
|
+
}
|
|
985
1042
|
/**
|
|
986
1043
|
* Build retry prompt for implementation agent
|
|
987
1044
|
* @param testOutput Test failure output
|
|
1045
|
+
* @param buildOutput Build output
|
|
988
1046
|
* @param attemptNumber Current attempt number (1-indexed)
|
|
989
1047
|
* @param maxRetries Maximum number of retries
|
|
990
1048
|
* @returns Prompt string for retry attempt
|
|
@@ -992,11 +1050,27 @@ export function truncateTestOutput(output, maxLength = 5000) {
|
|
|
992
1050
|
export function buildRetryPrompt(testOutput, buildOutput, attemptNumber, maxRetries) {
|
|
993
1051
|
const truncatedTestOutput = truncateTestOutput(testOutput);
|
|
994
1052
|
const truncatedBuildOutput = truncateTestOutput(buildOutput);
|
|
1053
|
+
// Detect if this is a dependency issue
|
|
1054
|
+
const combinedOutput = (buildOutput || '') + '\n' + (testOutput || '');
|
|
1055
|
+
const missingDeps = detectMissingDependencies(combinedOutput);
|
|
995
1056
|
let prompt = `CRITICAL: Tests are failing. You attempted implementation but verification failed.
|
|
996
1057
|
|
|
997
1058
|
This is retry attempt ${attemptNumber} of ${maxRetries}. Previous attempts failed with similar errors.
|
|
998
1059
|
|
|
999
1060
|
`;
|
|
1061
|
+
// Add special guidance for missing dependencies
|
|
1062
|
+
if (missingDeps.length > 0) {
|
|
1063
|
+
prompt += `**DEPENDENCY ISSUE DETECTED**
|
|
1064
|
+
|
|
1065
|
+
The errors indicate missing npm packages: ${missingDeps.join(', ')}
|
|
1066
|
+
|
|
1067
|
+
This is NOT a code bug - the packages need to be installed. Before making any code changes:
|
|
1068
|
+
1. Run \`npm install ${missingDeps.join(' ')}\` to add the missing packages
|
|
1069
|
+
2. If these are type definitions, also run \`npm install -D @types/${missingDeps.filter(d => !d.startsWith('@')).join(' @types/')}\`
|
|
1070
|
+
3. Re-run the build/tests after installing
|
|
1071
|
+
|
|
1072
|
+
`;
|
|
1073
|
+
}
|
|
1000
1074
|
if (buildOutput && buildOutput.trim().length > 0) {
|
|
1001
1075
|
prompt += `Build Output:
|
|
1002
1076
|
\`\`\`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"implementation.js","sourceRoot":"","sources":["../../src/agents/implementation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"implementation.js","sourceRoot":"","sources":["../../src/agents/implementation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../src/agents/planning.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../src/agents/planning.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,sBAAsB,uiBASuF,CAAC;AAE3H;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,+xCAyBuB,CAAC;AAE9D;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,OAAO,EAC3B,aAAa,CAAC,EAAE,MAAM,GACrB,MAAM,CA+CR;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,WAAW,CAAC,CAmEtB"}
|
package/dist/agents/planning.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { parseStory, appendToSection, updateStoryField } from '../core/story.js';
|
|
2
2
|
import { runAgentQuery } from '../core/client.js';
|
|
3
|
+
import { getLogger } from '../core/logger.js';
|
|
3
4
|
import path from 'path';
|
|
4
5
|
/**
|
|
5
6
|
* System prompt for the planning agent
|
|
@@ -102,9 +103,15 @@ Format the plan with markdown checkboxes like:
|
|
|
102
103
|
* Creates a step-by-step implementation plan from the research findings.
|
|
103
104
|
*/
|
|
104
105
|
export async function runPlanningAgent(storyPath, sdlcRoot, options = {}) {
|
|
106
|
+
const logger = getLogger();
|
|
107
|
+
const startTime = Date.now();
|
|
105
108
|
const story = parseStory(storyPath);
|
|
106
109
|
const changesMade = [];
|
|
107
110
|
const workingDir = path.dirname(sdlcRoot);
|
|
111
|
+
logger.info('planning', 'Starting planning phase', {
|
|
112
|
+
storyId: story.frontmatter.id,
|
|
113
|
+
hasReworkContext: !!options.reworkContext,
|
|
114
|
+
});
|
|
108
115
|
try {
|
|
109
116
|
// Load config to check if TDD is enabled globally
|
|
110
117
|
const { loadConfig } = await import('../core/config.js');
|
|
@@ -114,6 +121,7 @@ export async function runPlanningAgent(storyPath, sdlcRoot, options = {}) {
|
|
|
114
121
|
const prompt = buildPlanningPrompt(story, tddEnabledInConfig, options.reworkContext);
|
|
115
122
|
if (story.frontmatter.tdd_enabled ?? tddEnabledInConfig) {
|
|
116
123
|
changesMade.push('TDD mode enabled - plan will use Red-Green-Refactor structure');
|
|
124
|
+
logger.debug('planning', 'TDD mode enabled for planning');
|
|
117
125
|
}
|
|
118
126
|
const planContent = await runAgentQuery({
|
|
119
127
|
prompt,
|
|
@@ -122,11 +130,16 @@ export async function runPlanningAgent(storyPath, sdlcRoot, options = {}) {
|
|
|
122
130
|
onProgress: options.onProgress,
|
|
123
131
|
});
|
|
124
132
|
// Append plan to the story
|
|
125
|
-
appendToSection(story, 'Implementation Plan', planContent);
|
|
133
|
+
await appendToSection(story, 'Implementation Plan', planContent);
|
|
126
134
|
changesMade.push('Added implementation plan');
|
|
127
135
|
// Mark plan as complete
|
|
128
|
-
updateStoryField(story, 'plan_complete', true);
|
|
136
|
+
await updateStoryField(story, 'plan_complete', true);
|
|
129
137
|
changesMade.push('Marked plan_complete: true');
|
|
138
|
+
logger.info('planning', 'Planning phase complete', {
|
|
139
|
+
storyId: story.frontmatter.id,
|
|
140
|
+
durationMs: Date.now() - startTime,
|
|
141
|
+
planLength: planContent.length,
|
|
142
|
+
});
|
|
130
143
|
return {
|
|
131
144
|
success: true,
|
|
132
145
|
story: parseStory(storyPath), // Re-read to get updated content
|
|
@@ -134,11 +147,17 @@ export async function runPlanningAgent(storyPath, sdlcRoot, options = {}) {
|
|
|
134
147
|
};
|
|
135
148
|
}
|
|
136
149
|
catch (error) {
|
|
150
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
151
|
+
logger.error('planning', 'Planning phase failed', {
|
|
152
|
+
storyId: story.frontmatter.id,
|
|
153
|
+
durationMs: Date.now() - startTime,
|
|
154
|
+
error: errorMessage,
|
|
155
|
+
});
|
|
137
156
|
return {
|
|
138
157
|
success: false,
|
|
139
158
|
story,
|
|
140
159
|
changesMade,
|
|
141
|
-
error:
|
|
160
|
+
error: errorMessage,
|
|
142
161
|
};
|
|
143
162
|
}
|
|
144
163
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planning.js","sourceRoot":"","sources":["../../src/agents/planning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAc,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"planning.js","sourceRoot":"","sources":["../../src/agents/planning.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refinement.d.ts","sourceRoot":"","sources":["../../src/agents/refinement.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"refinement.d.ts","sourceRoot":"","sources":["../../src/agents/refinement.ts"],"names":[],"mappings":"AAGA,OAAO,EAAS,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAiB7C;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,WAAW,CAAC,CA2FtB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { parseStory, writeStory, updateStoryStatus } from '../core/story.js';
|
|
2
2
|
import { runAgentQuery } from '../core/client.js';
|
|
3
|
+
import { getLogger } from '../core/logger.js';
|
|
3
4
|
import path from 'path';
|
|
4
5
|
const REFINEMENT_SYSTEM_PROMPT = `You are a product refinement specialist. Your job is to take raw story ideas from the backlog and transform them into well-defined, actionable user stories.
|
|
5
6
|
|
|
@@ -22,8 +23,14 @@ At the end of your response, include:
|
|
|
22
23
|
* ready-to-implement user story.
|
|
23
24
|
*/
|
|
24
25
|
export async function runRefinementAgent(storyPath, sdlcRoot, options = {}) {
|
|
26
|
+
const logger = getLogger();
|
|
27
|
+
const startTime = Date.now();
|
|
25
28
|
const story = parseStory(storyPath);
|
|
26
29
|
const changesMade = [];
|
|
30
|
+
logger.info('refinement', 'Starting refinement phase', {
|
|
31
|
+
storyId: story.frontmatter.id,
|
|
32
|
+
status: story.frontmatter.status,
|
|
33
|
+
});
|
|
27
34
|
try {
|
|
28
35
|
const prompt = `Please refine this story:
|
|
29
36
|
|
|
@@ -65,10 +72,16 @@ Format your response as markdown that will replace the story content.`;
|
|
|
65
72
|
// Update timestamp
|
|
66
73
|
story.frontmatter.updated = new Date().toISOString().split('T')[0];
|
|
67
74
|
// Write the story
|
|
68
|
-
writeStory(story);
|
|
75
|
+
await writeStory(story);
|
|
69
76
|
// Update status to ready
|
|
70
|
-
const movedStory = updateStoryStatus(story, 'ready');
|
|
77
|
+
const movedStory = await updateStoryStatus(story, 'ready');
|
|
71
78
|
changesMade.push('Updated status to ready');
|
|
79
|
+
logger.info('refinement', 'Refinement phase complete', {
|
|
80
|
+
storyId: story.frontmatter.id,
|
|
81
|
+
durationMs: Date.now() - startTime,
|
|
82
|
+
newStatus: 'ready',
|
|
83
|
+
changesCount: changesMade.length,
|
|
84
|
+
});
|
|
72
85
|
return {
|
|
73
86
|
success: true,
|
|
74
87
|
story: movedStory,
|
|
@@ -76,11 +89,17 @@ Format your response as markdown that will replace the story content.`;
|
|
|
76
89
|
};
|
|
77
90
|
}
|
|
78
91
|
catch (error) {
|
|
92
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
93
|
+
logger.error('refinement', 'Refinement phase failed', {
|
|
94
|
+
storyId: story.frontmatter.id,
|
|
95
|
+
durationMs: Date.now() - startTime,
|
|
96
|
+
error: errorMessage,
|
|
97
|
+
});
|
|
79
98
|
return {
|
|
80
99
|
success: false,
|
|
81
100
|
story,
|
|
82
101
|
changesMade,
|
|
83
|
-
error:
|
|
102
|
+
error: errorMessage,
|
|
84
103
|
};
|
|
85
104
|
}
|
|
86
105
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refinement.js","sourceRoot":"","sources":["../../src/agents/refinement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAyB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"refinement.js","sourceRoot":"","sources":["../../src/agents/refinement.ts"],"names":[],"mappings":"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"}
|