sdd-mcp-server 1.4.2 → 1.4.4
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 +122 -61
- package/dist/application/services/SteeringDocumentService.js +1 -2
- package/dist/application/services/SteeringDocumentService.js.map +1 -1
- package/dist/index.js +48 -264
- package/dist/index.js.map +1 -1
- package/dist/utils/specGenerator.js +178 -22
- package/dist/utils/specGenerator.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -479,252 +479,9 @@ Generated on: ${new Date().toISOString()}
|
|
|
479
479
|
if (!fs.existsSync(securityPath)) {
|
|
480
480
|
fs.writeFileSync(securityPath, `# Security Check (OWASP Top 10 Aligned)\n\nUse this checklist during code generation and review. Avoid OWASP Top 10 issues by design.\n\n## A01: Broken Access Control\n- Enforce least privilege; validate authorization on every request/path\n- No client-side trust; never rely on hidden fields or disabled UI\n\n## A02: Cryptographic Failures\n- Use HTTPS/TLS; do not roll your own crypto\n- Store secrets in env vars/secret stores; never commit secrets\n\n## A03: Injection\n- Use parameterized queries/ORM and safe template APIs\n- Sanitize/validate untrusted input; avoid string concatenation in queries\n\n## A04: Insecure Design\n- Threat model critical flows; add security requirements to design\n- Fail secure; disable features by default until explicitly enabled\n\n## A05: Security Misconfiguration\n- Disable debug modes in prod; set secure headers (CSP, HSTS, X-Content-Type-Options)\n- Pin dependencies and lock versions; no default credentials\n\n## A06: Vulnerable & Outdated Components\n- Track SBOM/dependencies; run npm audit or a scanner regularly and patch\n- Prefer maintained libraries; remove unused deps\n\n## A07: Identification & Authentication Failures\n- Use vetted auth (OIDC/OAuth2); enforce MFA where applicable\n- Secure session handling (HttpOnly, Secure, SameSite cookies)\n\n## A08: Software & Data Integrity Failures\n- Verify integrity of third-party artifacts; signed releases when possible\n- Protect CI/CD: signed commits/tags, restricted tokens, principle of least privilege\n\n## A09: Security Logging & Monitoring Failures\n- Log authz/authn events and errors without sensitive data\n- Add alerts for suspicious activity; retain logs per policy\n\n## A10: Server-Side Request Forgery (SSRF)\n- Validate/deny-list outbound destinations; no direct fetch to arbitrary URLs\n- Use network egress controls; fetch via vetted proxies when needed\n\n## General Practices\n- Validate inputs (schema, length, type) and outputs (encoding)\n- Handle errors without leaking stack traces or secrets\n- Use content security best practices for templates/HTML\n- Add security tests where feasible (authz, input validation)\n`);
|
|
481
481
|
}
|
|
482
|
-
const
|
|
483
|
-
if (!fs.existsSync(
|
|
484
|
-
fs.writeFileSync(
|
|
485
|
-
|
|
486
|
-
## Purpose
|
|
487
|
-
This steering document defines TDD practices and workflow to ensure test-first development throughout the project lifecycle.
|
|
488
|
-
|
|
489
|
-
## TDD Fundamentals
|
|
490
|
-
|
|
491
|
-
### Red-Green-Refactor Cycle
|
|
492
|
-
1. **Red**: Write a failing test that defines desired behavior
|
|
493
|
-
2. **Green**: Write minimal code to make the test pass
|
|
494
|
-
3. **Refactor**: Improve code quality while keeping tests green
|
|
495
|
-
|
|
496
|
-
### Core Principles
|
|
497
|
-
- Write tests before implementation code
|
|
498
|
-
- Test one thing at a time
|
|
499
|
-
- Keep tests simple, readable, and maintainable
|
|
500
|
-
- Run tests frequently during development
|
|
501
|
-
- Never commit failing tests
|
|
502
|
-
|
|
503
|
-
## Test-First Development Approach
|
|
504
|
-
|
|
505
|
-
### Before Writing Code
|
|
506
|
-
1. Understand the requirement/user story
|
|
507
|
-
2. Define expected behavior and edge cases
|
|
508
|
-
3. Write test cases that verify the behavior
|
|
509
|
-
4. Run tests to confirm they fail (Red phase)
|
|
510
|
-
|
|
511
|
-
### Implementation Flow
|
|
512
|
-
\`\`\`
|
|
513
|
-
Requirement → Test Case → Failing Test → Implementation → Passing Test → Refactor → Commit
|
|
514
|
-
\`\`\`
|
|
515
|
-
|
|
516
|
-
### Test Pyramid Strategy
|
|
517
|
-
- **Unit Tests (70%)**: Test individual functions/methods in isolation
|
|
518
|
-
- **Integration Tests (20%)**: Test component interactions and workflows
|
|
519
|
-
- **E2E Tests (10%)**: Test complete user scenarios
|
|
520
|
-
|
|
521
|
-
## Test Organization
|
|
522
|
-
|
|
523
|
-
### Directory Structure
|
|
524
|
-
\`\`\`
|
|
525
|
-
src/
|
|
526
|
-
├── module/
|
|
527
|
-
│ ├── service.ts
|
|
528
|
-
│ └── service.test.ts # Unit tests co-located
|
|
529
|
-
└── __tests__/
|
|
530
|
-
├── integration/ # Integration tests
|
|
531
|
-
└── e2e/ # End-to-end tests
|
|
532
|
-
\`\`\`
|
|
533
|
-
|
|
534
|
-
### Naming Conventions
|
|
535
|
-
- Test files: \`*.test.ts\` or \`*.spec.ts\`
|
|
536
|
-
- Test suites: \`describe('ComponentName', () => {...})\`
|
|
537
|
-
- Test cases: \`it('should behave in expected way', () => {...})\` or \`test('description', () => {...})\`
|
|
538
|
-
- Use clear, descriptive names that explain what is being tested
|
|
539
|
-
|
|
540
|
-
## Coverage Requirements
|
|
541
|
-
|
|
542
|
-
### Minimum Thresholds
|
|
543
|
-
- **Overall Coverage**: ≥ 80%
|
|
544
|
-
- **Statements**: ≥ 80%
|
|
545
|
-
- **Branches**: ≥ 75%
|
|
546
|
-
- **Functions**: ≥ 80%
|
|
547
|
-
- **Lines**: ≥ 80%
|
|
548
|
-
|
|
549
|
-
### Critical Code Requirements
|
|
550
|
-
- All public APIs: 100% coverage
|
|
551
|
-
- Business logic: ≥ 90% coverage
|
|
552
|
-
- Error handling: All error paths tested
|
|
553
|
-
- Edge cases: All identified edge cases tested
|
|
554
|
-
|
|
555
|
-
## Best Practices
|
|
556
|
-
|
|
557
|
-
### Writing Good Tests
|
|
558
|
-
- **Arrange-Act-Assert (AAA)**: Structure tests clearly
|
|
559
|
-
- **Single Assertion**: Focus each test on one behavior
|
|
560
|
-
- **Independence**: Tests should not depend on each other
|
|
561
|
-
- **Repeatability**: Tests should produce same results every time
|
|
562
|
-
- **Fast Execution**: Keep tests fast (< 100ms for unit tests)
|
|
563
|
-
|
|
564
|
-
### Test Data Management
|
|
565
|
-
- Use factories or builders for test data creation
|
|
566
|
-
- Avoid hardcoded values; use constants or fixtures
|
|
567
|
-
- Clean up test data after execution
|
|
568
|
-
- Mock external dependencies (APIs, databases, file system)
|
|
569
|
-
|
|
570
|
-
### Mocking and Stubbing
|
|
571
|
-
- Mock external dependencies to isolate unit under test
|
|
572
|
-
- Use dependency injection to enable testability
|
|
573
|
-
- Stub time-dependent functions for deterministic tests
|
|
574
|
-
- Verify mock interactions when testing behavior
|
|
575
|
-
|
|
576
|
-
### Assertion Guidelines
|
|
577
|
-
- Use specific, meaningful assertions
|
|
578
|
-
- Prefer semantic matchers (\`toEqual\`, \`toContain\`, \`toThrow\`)
|
|
579
|
-
- Include error messages for custom assertions
|
|
580
|
-
- Test both positive and negative cases
|
|
581
|
-
|
|
582
|
-
## Anti-Patterns to Avoid
|
|
583
|
-
|
|
584
|
-
### Test Smells
|
|
585
|
-
- ❌ **Testing Implementation Details**: Test behavior, not internals
|
|
586
|
-
- ❌ **Fragile Tests**: Tests that break with minor refactoring
|
|
587
|
-
- ❌ **Slow Tests**: Tests that take too long to execute
|
|
588
|
-
- ❌ **Flaky Tests**: Tests with inconsistent results
|
|
589
|
-
- ❌ **Overmocking**: Excessive mocking that tests mocks instead of code
|
|
590
|
-
|
|
591
|
-
### Bad Practices
|
|
592
|
-
- ❌ Writing tests after code is complete
|
|
593
|
-
- ❌ Skipping tests for "simple" functions
|
|
594
|
-
- ❌ Ignoring failing tests
|
|
595
|
-
- ❌ Writing tests that depend on execution order
|
|
596
|
-
- ❌ Testing framework code instead of application code
|
|
597
|
-
|
|
598
|
-
## Integration with SDD Workflow
|
|
599
|
-
|
|
600
|
-
### Requirements Phase
|
|
601
|
-
- Define testability requirements
|
|
602
|
-
- Identify test scenarios in acceptance criteria
|
|
603
|
-
- Document edge cases that need testing
|
|
604
|
-
- Specify performance/quality test requirements
|
|
605
|
-
|
|
606
|
-
### Design Phase
|
|
607
|
-
- Design for testability (SOLID principles)
|
|
608
|
-
- Plan test strategy (unit/integration/e2e mix)
|
|
609
|
-
- Identify mockable dependencies
|
|
610
|
-
- Document test data requirements
|
|
611
|
-
|
|
612
|
-
### Tasks Phase
|
|
613
|
-
- Break down implementation tasks with test-first approach
|
|
614
|
-
- Each task includes: Write test → Implement → Refactor
|
|
615
|
-
- Estimate includes time for writing tests
|
|
616
|
-
- Define "done" criteria including test coverage
|
|
617
|
-
|
|
618
|
-
### Implementation Phase
|
|
619
|
-
- Follow TDD cycle strictly: Red → Green → Refactor
|
|
620
|
-
- Write failing test before any production code
|
|
621
|
-
- Run tests continuously (watch mode recommended)
|
|
622
|
-
- Commit only when all tests pass
|
|
623
|
-
|
|
624
|
-
### Code Review Phase
|
|
625
|
-
- Verify test coverage meets thresholds
|
|
626
|
-
- Review test quality and clarity
|
|
627
|
-
- Check for test smells and anti-patterns
|
|
628
|
-
- Ensure tests validate requirements
|
|
629
|
-
|
|
630
|
-
## Testing Tools and Configuration
|
|
631
|
-
|
|
632
|
-
### Recommended Tools
|
|
633
|
-
- **Test Framework**: Jest (for JavaScript/TypeScript projects)
|
|
634
|
-
- **Assertion Library**: Jest built-in matchers
|
|
635
|
-
- **Mocking**: Jest mock functions
|
|
636
|
-
- **Coverage**: Jest coverage reporting
|
|
637
|
-
- **Watch Mode**: \`npm test -- --watch\`
|
|
638
|
-
|
|
639
|
-
### Running Tests
|
|
640
|
-
\`\`\`bash
|
|
641
|
-
# Run all tests
|
|
642
|
-
npm test
|
|
643
|
-
|
|
644
|
-
# Run tests in watch mode
|
|
645
|
-
npm test -- --watch
|
|
646
|
-
|
|
647
|
-
# Run with coverage
|
|
648
|
-
npm test -- --coverage
|
|
649
|
-
|
|
650
|
-
# Run specific test file
|
|
651
|
-
npm test path/to/test.test.ts
|
|
652
|
-
\`\`\`
|
|
653
|
-
|
|
654
|
-
## Quality Gates
|
|
655
|
-
|
|
656
|
-
### Pre-Commit
|
|
657
|
-
- All tests must pass
|
|
658
|
-
- Coverage thresholds must be met
|
|
659
|
-
- No skipped or pending tests
|
|
660
|
-
|
|
661
|
-
### Pre-Merge
|
|
662
|
-
- Full test suite passes
|
|
663
|
-
- Integration tests pass
|
|
664
|
-
- Coverage report reviewed
|
|
665
|
-
- No decrease in coverage percentage
|
|
666
|
-
|
|
667
|
-
### Continuous Integration
|
|
668
|
-
- Automated test execution on every push
|
|
669
|
-
- Coverage reporting in CI pipeline
|
|
670
|
-
- Block merge if tests fail
|
|
671
|
-
- Publish test results for visibility
|
|
672
|
-
|
|
673
|
-
## TDD Benefits
|
|
674
|
-
|
|
675
|
-
### Code Quality
|
|
676
|
-
- Higher code quality through upfront design
|
|
677
|
-
- Better error handling (tested edge cases)
|
|
678
|
-
- More maintainable code
|
|
679
|
-
- Self-documenting through tests
|
|
680
|
-
|
|
681
|
-
### Development Speed
|
|
682
|
-
- Faster debugging (tests pinpoint issues)
|
|
683
|
-
- Confident refactoring with safety net
|
|
684
|
-
- Reduced regression bugs
|
|
685
|
-
- Earlier defect detection
|
|
686
|
-
|
|
687
|
-
### Design Improvement
|
|
688
|
-
- Forces modular, testable design
|
|
689
|
-
- Encourages loose coupling
|
|
690
|
-
- Promotes single responsibility
|
|
691
|
-
- Results in cleaner interfaces
|
|
692
|
-
|
|
693
|
-
## Getting Started with TDD
|
|
694
|
-
|
|
695
|
-
### For New Features
|
|
696
|
-
1. Read and understand the requirement
|
|
697
|
-
2. Write test cases covering expected behavior
|
|
698
|
-
3. Run tests to see them fail
|
|
699
|
-
4. Implement minimal code to pass tests
|
|
700
|
-
5. Refactor and improve while keeping tests green
|
|
701
|
-
6. Commit when all tests pass
|
|
702
|
-
|
|
703
|
-
### For Bug Fixes
|
|
704
|
-
1. Write a test that reproduces the bug (failing test)
|
|
705
|
-
2. Fix the bug to make test pass
|
|
706
|
-
3. Add additional tests for related edge cases
|
|
707
|
-
4. Refactor if needed
|
|
708
|
-
5. Commit fix with passing tests
|
|
709
|
-
|
|
710
|
-
### For Legacy Code
|
|
711
|
-
1. Identify the module/function to modify
|
|
712
|
-
2. Write characterization tests (document current behavior)
|
|
713
|
-
3. Refactor for testability if needed
|
|
714
|
-
4. Add new tests for new behavior
|
|
715
|
-
5. Implement changes following TDD cycle
|
|
716
|
-
6. Ensure all tests pass
|
|
717
|
-
|
|
718
|
-
## Continuous Improvement
|
|
719
|
-
- Review test failures to improve test quality
|
|
720
|
-
- Refactor tests as code evolves
|
|
721
|
-
- Update coverage thresholds as project matures
|
|
722
|
-
- Share TDD learnings with team
|
|
723
|
-
- Celebrate improved code quality metrics
|
|
724
|
-
|
|
725
|
-
## Enforcement
|
|
726
|
-
This document is **always** active and applies to all development phases. Every code change should follow TDD principles as defined here.
|
|
727
|
-
`);
|
|
482
|
+
const principlesPath = path.join(steeringDir, 'principles.md');
|
|
483
|
+
if (!fs.existsSync(principlesPath)) {
|
|
484
|
+
fs.writeFileSync(principlesPath, `# Core Coding Principles and Patterns\n\nFollow SOLID, DRY, KISS, YAGNI, Separation of Concerns, and Modularity in all code.\n\n## SOLID Principles\n- **S**ingle Responsibility: One class, one reason to change\n- **O**pen/Closed: Open for extension, closed for modification\n- **L**iskov Substitution: Subtypes must be substitutable for base types\n- **I**nterface Segregation: Small, focused interfaces\n- **D**ependency Inversion: Depend on abstractions, not concretions\n\n## DRY (Don't Repeat Yourself)\nExtract common logic. Every knowledge piece has one authoritative representation.\n\n## KISS (Keep It Simple, Stupid)\nSimplicity over complexity. Avoid over-engineering.\n\n## YAGNI (You Aren't Gonna Need It)\nImplement only what's needed now. No speculative features.\n\n## Separation of Concerns\nSeparate presentation, business logic, and data access layers.\n\n## Modularity\nHigh cohesion, low coupling. Encapsulate implementation details.\n\n## Review Checklist\n- [ ] Single Responsibility (SRP)\n- [ ] Can extend without modifying (OCP)\n- [ ] Dependencies use abstractions (DIP)\n- [ ] No duplicated logic (DRY)\n- [ ] Simple solution (KISS)\n- [ ] Only needed features (YAGNI)\n- [ ] Concerns separated (SoC)\n- [ ] Modules cohesive & loosely coupled\n\nRefer to full principles.md for detailed examples and language-specific guidance.\n`);
|
|
728
485
|
}
|
|
729
486
|
return {
|
|
730
487
|
content: [{
|
|
@@ -740,6 +497,10 @@ This document is **always** active and applies to all development phases. Every
|
|
|
740
497
|
- \`.kiro/steering/product.md\` - Product overview and business context (dynamically generated)
|
|
741
498
|
- \`.kiro/steering/tech.md\` - Technology stack and development environment (dynamically generated)
|
|
742
499
|
- \`.kiro/steering/structure.md\` - Project organization and architectural decisions (dynamically generated)
|
|
500
|
+
- \`.kiro/steering/linus-review.md\` - Code quality review principles (static)
|
|
501
|
+
- \`.kiro/steering/commit.md\` - Commit message standards (static)
|
|
502
|
+
- \`.kiro/steering/security-check.md\` - OWASP Top 10 security checklist (static)
|
|
503
|
+
- \`.kiro/steering/principles.md\` - Core coding principles: SOLID, DRY, KISS, YAGNI, SoC, Modularity (static)
|
|
743
504
|
|
|
744
505
|
**Dynamic Analysis Results**:
|
|
745
506
|
- **Language**: ${projectAnalysis.language === 'typescript' ? 'TypeScript' : 'JavaScript'}
|
|
@@ -1062,17 +823,24 @@ async function handleRequirementsSimplified(args) {
|
|
|
1062
823
|
projectDescription = descMatch[1].trim();
|
|
1063
824
|
}
|
|
1064
825
|
}
|
|
1065
|
-
// Generate analysis-backed requirements
|
|
826
|
+
// Generate analysis-backed requirements with proper error handling
|
|
1066
827
|
let requirementsContent;
|
|
828
|
+
let analysisUsed = false;
|
|
1067
829
|
try {
|
|
830
|
+
console.error('[SDD-DEBUG] Attempting to import specGenerator for comprehensive analysis...');
|
|
1068
831
|
const { generateRequirementsDocument } = await import('./utils/specGenerator.js');
|
|
832
|
+
console.error('[SDD-DEBUG] specGenerator imported successfully, generating requirements...');
|
|
1069
833
|
requirementsContent = await generateRequirementsDocument(process.cwd(), featureName);
|
|
834
|
+
analysisUsed = true;
|
|
835
|
+
console.error('[SDD-DEBUG] ✅ Requirements generated using comprehensive codebase analysis');
|
|
1070
836
|
}
|
|
1071
837
|
catch (genErr) {
|
|
838
|
+
console.error('[SDD-DEBUG] ⚠️ Comprehensive analysis failed, using fallback template');
|
|
839
|
+
console.error('[SDD-DEBUG] Error details:', genErr.message);
|
|
840
|
+
console.error('[SDD-DEBUG] Stack:', genErr.stack);
|
|
1072
841
|
requirementsContent = `# Requirements Document
|
|
1073
842
|
|
|
1074
|
-
<!--
|
|
1075
|
-
<!-- Error: ${genErr.message} -->
|
|
843
|
+
<!-- Note: Using basic template due to analysis error: ${genErr.message} -->
|
|
1076
844
|
|
|
1077
845
|
## Introduction
|
|
1078
846
|
${generateIntroductionFromDescription(projectDescription)}
|
|
@@ -1126,12 +894,14 @@ ${generateEARSRequirements(projectDescription).map((req, index) => `${index + 1}
|
|
|
1126
894
|
**Feature**: \`${featureName}\`
|
|
1127
895
|
**File**: \`.kiro/specs/${featureName}/requirements.md\`
|
|
1128
896
|
|
|
897
|
+
**Analysis Method**: ${analysisUsed ? '✅ Comprehensive codebase analysis (multi-language support)' : '⚠️ Basic template (analysis failed)'}
|
|
898
|
+
|
|
1129
899
|
**Generated Requirements**:
|
|
1130
900
|
- Core functionality requirements with EARS format
|
|
1131
|
-
- System quality and reliability requirements
|
|
901
|
+
- System quality and reliability requirements
|
|
1132
902
|
- Usability and user experience requirements
|
|
1133
903
|
|
|
1134
|
-
**Project Description
|
|
904
|
+
**Project Description**: "${projectDescription.substring(0, 100)}${projectDescription.length > 100 ? '...' : ''}"
|
|
1135
905
|
|
|
1136
906
|
**Workflow Phase**: Requirements Generated
|
|
1137
907
|
**Next Step**: Run \`sdd-design ${featureName}\` to create technical design (after requirements review)`
|
|
@@ -1173,21 +943,26 @@ async function handleDesignSimplified(args) {
|
|
|
1173
943
|
projectDescription = descMatch[1].trim();
|
|
1174
944
|
}
|
|
1175
945
|
}
|
|
1176
|
-
// Generate analysis-backed design
|
|
946
|
+
// Generate analysis-backed design with proper error handling
|
|
1177
947
|
let designContent;
|
|
948
|
+
let analysisUsed = false;
|
|
1178
949
|
try {
|
|
950
|
+
console.error('[SDD-DEBUG] Attempting to import specGenerator for comprehensive design analysis...');
|
|
1179
951
|
const { generateDesignDocument } = await import('./utils/specGenerator.js');
|
|
952
|
+
console.error('[SDD-DEBUG] specGenerator imported successfully, generating design...');
|
|
1180
953
|
designContent = await generateDesignDocument(process.cwd(), featureName);
|
|
954
|
+
analysisUsed = true;
|
|
955
|
+
console.error('[SDD-DEBUG] ✅ Design generated using comprehensive codebase analysis');
|
|
1181
956
|
}
|
|
1182
957
|
catch (genErr) {
|
|
1183
|
-
|
|
958
|
+
console.error('[SDD-DEBUG] ⚠️ Comprehensive analysis failed, using fallback template');
|
|
959
|
+
console.error('[SDD-DEBUG] Error details:', genErr.message);
|
|
1184
960
|
designContent = `# Technical Design Document
|
|
1185
961
|
|
|
1186
|
-
<!--
|
|
1187
|
-
<!-- Error: ${genErr.message} -->
|
|
962
|
+
<!-- Note: Using basic template due to analysis error: ${genErr.message} -->
|
|
1188
963
|
|
|
1189
964
|
## Overview
|
|
1190
|
-
This design document specifies the technical implementation approach for ${spec.feature_name}.
|
|
965
|
+
This design document specifies the technical implementation approach for ${spec.feature_name}.
|
|
1191
966
|
|
|
1192
967
|
**Purpose**: ${projectDescription}
|
|
1193
968
|
|
|
@@ -1222,6 +997,8 @@ This design document specifies the technical implementation approach for ${spec.
|
|
|
1222
997
|
**Feature**: \`${featureName}\`
|
|
1223
998
|
**File**: \`.kiro/specs/${featureName}/design.md\`
|
|
1224
999
|
|
|
1000
|
+
**Analysis Method**: ${analysisUsed ? '✅ Comprehensive codebase analysis (architecture patterns detected)' : '⚠️ Basic template (analysis failed)'}
|
|
1001
|
+
|
|
1225
1002
|
**Design Elements**:
|
|
1226
1003
|
- Modular architecture with clear component separation
|
|
1227
1004
|
- Comprehensive interface specifications
|
|
@@ -1230,7 +1007,7 @@ This design document specifies the technical implementation approach for ${spec.
|
|
|
1230
1007
|
|
|
1231
1008
|
**Project Description**: "${projectDescription.substring(0, 100)}${projectDescription.length > 100 ? '...' : ''}"
|
|
1232
1009
|
|
|
1233
|
-
**Workflow Phase**: Design Generated
|
|
1010
|
+
**Workflow Phase**: Design Generated
|
|
1234
1011
|
**Next Step**: Run \`sdd-tasks ${featureName}\` to generate implementation tasks (after design review)`
|
|
1235
1012
|
}]
|
|
1236
1013
|
};
|
|
@@ -1262,17 +1039,23 @@ async function handleTasksSimplified(args) {
|
|
|
1262
1039
|
if (!spec.approvals?.design?.generated) {
|
|
1263
1040
|
throw new Error(`Design must be generated before tasks. Run sdd-design ${featureName} first.`);
|
|
1264
1041
|
}
|
|
1265
|
-
// Generate analysis-backed tasks
|
|
1042
|
+
// Generate analysis-backed tasks with proper error handling
|
|
1266
1043
|
let tasksContent;
|
|
1044
|
+
let analysisUsed = false;
|
|
1267
1045
|
try {
|
|
1046
|
+
console.error('[SDD-DEBUG] Attempting to import specGenerator for comprehensive task analysis...');
|
|
1268
1047
|
const { generateTasksDocument } = await import('./utils/specGenerator.js');
|
|
1048
|
+
console.error('[SDD-DEBUG] specGenerator imported successfully, generating tasks...');
|
|
1269
1049
|
tasksContent = await generateTasksDocument(process.cwd(), featureName);
|
|
1050
|
+
analysisUsed = true;
|
|
1051
|
+
console.error('[SDD-DEBUG] ✅ Tasks generated using comprehensive codebase analysis');
|
|
1270
1052
|
}
|
|
1271
1053
|
catch (genErr) {
|
|
1054
|
+
console.error('[SDD-DEBUG] ⚠️ Comprehensive analysis failed, using fallback template');
|
|
1055
|
+
console.error('[SDD-DEBUG] Error details:', genErr.message);
|
|
1272
1056
|
tasksContent = `# Implementation Plan
|
|
1273
1057
|
|
|
1274
|
-
<!--
|
|
1275
|
-
<!-- Error: ${genErr.message} -->
|
|
1058
|
+
<!-- Note: Using basic template due to analysis error: ${genErr.message} -->
|
|
1276
1059
|
|
|
1277
1060
|
- [ ] 1. Set up project foundation and infrastructure
|
|
1278
1061
|
- [ ] 2. Implement core functionality
|
|
@@ -1306,11 +1089,13 @@ async function handleTasksSimplified(args) {
|
|
|
1306
1089
|
**Feature**: \`${featureName}\`
|
|
1307
1090
|
**File**: \`.kiro/specs/${featureName}/tasks.md\`
|
|
1308
1091
|
|
|
1092
|
+
**Analysis Method**: ${analysisUsed ? '✅ Comprehensive codebase analysis (tech stack-aware tasks)' : '⚠️ Basic template (analysis failed)'}
|
|
1093
|
+
|
|
1309
1094
|
**Generated Tasks**:
|
|
1310
|
-
-
|
|
1311
|
-
-
|
|
1095
|
+
- Development, integration, quality, and deployment phases
|
|
1096
|
+
- Sequenced with dependency tracking
|
|
1312
1097
|
- Requirement traceability for all tasks
|
|
1313
|
-
- Coverage
|
|
1098
|
+
- Coverage based on detected tech stack
|
|
1314
1099
|
|
|
1315
1100
|
**Workflow Phase**: Tasks Generated
|
|
1316
1101
|
**Status**: Ready for Implementation
|
|
@@ -1827,7 +1612,6 @@ Managed by \`/kiro:steering\` command. Updates here reflect command changes.
|
|
|
1827
1612
|
- \`structure.md\`: Always included - File organization and code patterns
|
|
1828
1613
|
- \`linus-review.md\`: Always included - Ensuring code quality of the projects
|
|
1829
1614
|
- \`commit.md\`: Always included - Ensuring the commit / merge request / pull request title and message context.
|
|
1830
|
-
- \`tdd-guideline.md\`: Always included - Test-Driven Development practices and workflow
|
|
1831
1615
|
|
|
1832
1616
|
### Custom Steering Files
|
|
1833
1617
|
<!-- Added by /kiro:steering-custom command -->
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|