Initial commit
This commit is contained in:
134
commands/speckit-analyze.md
Normal file
134
commands/speckit-analyze.md
Normal file
@@ -0,0 +1,134 @@
|
||||
---
|
||||
description: Validate specifications against implementation
|
||||
---
|
||||
|
||||
# Spec Kit: Analyze Specifications
|
||||
|
||||
Compare specifications in `specs/` against the actual codebase implementation.
|
||||
|
||||
## Analysis Steps
|
||||
|
||||
### 1. Load All Specifications
|
||||
|
||||
Read all files in `specs/`:
|
||||
- Note status markers (✅ COMPLETE / ⚠️ PARTIAL / ❌ MISSING)
|
||||
- Identify dependencies between specs
|
||||
- List acceptance criteria
|
||||
|
||||
### 2. Validate Each Specification
|
||||
|
||||
For each spec marked **✅ COMPLETE:**
|
||||
- **Verify implementation exists:**
|
||||
- Check file paths mentioned in spec
|
||||
- Verify API endpoints exist
|
||||
- Confirm database models match schema
|
||||
- Test that features actually work
|
||||
|
||||
- **If implementation missing:**
|
||||
```
|
||||
⚠️ Inconsistency: spec-name.md marked COMPLETE
|
||||
Reality: Implementation not found
|
||||
Files checked: [list]
|
||||
Recommendation: Update status to PARTIAL or MISSING
|
||||
```
|
||||
|
||||
For each spec marked **⚠️ PARTIAL:**
|
||||
- **Verify what's listed as implemented actually exists**
|
||||
- **Verify what's listed as missing is actually missing**
|
||||
- **Check for implementation drift** (code changed since spec written)
|
||||
|
||||
For each spec marked **❌ MISSING:**
|
||||
- **Check if implementation exists anyway** (orphaned code)
|
||||
```
|
||||
⚠️ Orphaned Implementation: user-notifications feature
|
||||
Spec: Marked MISSING
|
||||
Reality: Implementation found in src/notifications/
|
||||
Recommendation: Create specification or remove code
|
||||
```
|
||||
|
||||
### 3. Check for Inconsistencies
|
||||
|
||||
- **Conflicting requirements** between related specs
|
||||
- **Broken dependencies** (spec A requires spec B, but B is MISSING)
|
||||
- **Version mismatches** (spec requires v2.0, code uses v1.5)
|
||||
- **Outdated technical details** (for brownfield specs)
|
||||
|
||||
### 4. Generate Report
|
||||
|
||||
Output format:
|
||||
|
||||
```markdown
|
||||
# Specification Analysis Results
|
||||
|
||||
**Date:** [current date]
|
||||
**Specifications analyzed:** X total
|
||||
|
||||
## Summary
|
||||
|
||||
- ✅ COMPLETE features: X (fully aligned)
|
||||
- ⚠️ PARTIAL features: X (some gaps)
|
||||
- ❌ MISSING features: X (not started)
|
||||
- 🔴 Inconsistencies found: X
|
||||
|
||||
## Issues Detected
|
||||
|
||||
### High Priority (Blocking)
|
||||
|
||||
1. **user-authentication.md** (COMPLETE → should be PARTIAL)
|
||||
- Spec says: Frontend login UI required
|
||||
- Reality: No login components found
|
||||
- Impact: Users cannot authenticate
|
||||
- Recommendation: Implement login UI or update spec status
|
||||
|
||||
2. **photo-upload.md → fish-management.md**
|
||||
- Dependency broken
|
||||
- fish-management requires photo-upload
|
||||
- photo-upload marked PARTIAL (API incomplete)
|
||||
- Impact: Fish photos cannot be uploaded
|
||||
- Recommendation: Complete photo-upload API first
|
||||
|
||||
### Medium Priority
|
||||
|
||||
[...]
|
||||
|
||||
### Low Priority (Minor)
|
||||
|
||||
[...]
|
||||
|
||||
## Orphaned Implementations
|
||||
|
||||
Code exists without specifications:
|
||||
|
||||
1. **src/api/notifications.ts** (156 lines)
|
||||
- No specification found
|
||||
- Recommendation: Create specification or remove code
|
||||
|
||||
## Alignment Score
|
||||
|
||||
- Specifications ↔ Code: X% aligned
|
||||
- No issues found: ✅ / Issues require attention: ⚠️
|
||||
|
||||
## Recommendations
|
||||
|
||||
1. Update status markers for inconsistent specs
|
||||
2. Create specifications for orphaned code
|
||||
3. Complete high-priority implementations
|
||||
4. Re-run `/speckit.analyze` after fixes
|
||||
|
||||
## Next Steps
|
||||
|
||||
- Fix high-priority issues first
|
||||
- Update specification status markers
|
||||
- Re-run analysis to validate fixes
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Notes
|
||||
|
||||
- This analysis should be thorough but not modify any files
|
||||
- Report inconsistencies, don't auto-fix
|
||||
- Cross-reference related specifications
|
||||
- Check both directions (spec → code and code → spec)
|
||||
- For brownfield: Verify exact versions and file paths
|
||||
- For greenfield: Check if business requirements are met (ignore implementation details)
|
||||
Reference in New Issue
Block a user