- Version: 2.0
Analyzes completed stories to identify reusable technical patterns, success strategies, and anti-patterns.
/plugin marketplace add ninthspace/claude-code-marketplace/plugin install sdd@ninthspace-marketplacePurpose: Analyze completed stories to discover technical patterns, common problems, success strategies, code reusability opportunities, and anti-patterns.
Syntax: /sdd:story-patterns [category]
| Parameter | Type | Required | Default | Description | Validation |
|---|---|---|---|---|---|
| category | string | No | "all" | Pattern category to analyze (technical, problems, success, code, process, all) | One of: technical, problems, success, code, process, all |
/docs/stories/completed/SCAN /docs/stories/completed/ directory for all .md files
PARSE each story file to extract:
CATEGORIZE extracted data by type:
FILTER by category if specified
IDENTIFY common implementation approaches:
DETECT recurring architectures:
ANALYZE technology combinations:
DISPLAY technical patterns:
š§ TECHNICAL PATTERNS FOUND
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Common Implementations:
Pattern: JWT Authentication with Refresh Tokens
- Used in: [X] stories ([STORY-IDs])
- Success rate: [X]%
- Avg implementation time: [X] days
- Reusability: High
- Action: Extract as auth module
Pattern: Queue-based Background Processing
- Used in: [X] stories ([STORY-IDs])
- Success rate: [X]%
- Technologies: Laravel Queue, Redis
- Action: Create template
Recurring Architectures:
- Service Layer Pattern: [X] stories
- Repository Pattern: [X] stories
- Event-Driven: [X] stories
Technology Combinations:
- Livewire + Alpine.js: [X] stories
- Pest + Browser Tests: [X] stories
EXTRACT problems from progress logs
CATEGORIZE problems by type:
COUNT frequency of each problem type
LINK problems to solutions
IDENTIFY root causes
DISPLAY problem patterns:
ā ļø RECURRING CHALLENGES
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Common Problems:
Problem: N+1 Query Performance Issues
- Occurred: [X] times
- Stories: [STORY-IDs]
- Root cause: Missing eager loading
- Solution pattern: Add `with()` to queries
- Prevention: Code review checklist item
Problem: CORS Issues in API Integration
- Occurred: [X] times
- Stories: [STORY-IDs]
- Root cause: Middleware configuration
- Solution pattern: Configure cors.php
- Prevention: API setup template
Frequent Blockers:
- Third-party API rate limits: [X] occurrences
Mitigation: Implement caching layer
- Test environment setup: [X] occurrences
Mitigation: Docker compose template
IDENTIFY high-performing stories:
EXTRACT success factors:
CALCULATE success rates by pattern
DETERMINE velocity impact
DISPLAY success patterns:
ā
SUCCESS PATTERNS
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
High-Velocity Patterns:
Approach: TDD with Feature Tests First
- Used in: [X] stories
- Success rate: [X]%
- Avg completion: [X] days faster
- Key factors:
⢠Clear test cases upfront
⢠Fewer bugs in QA
⢠Confident refactoring
- Recommendation: Adopt as standard
Approach: Component-First UI Development
- Used in: [X] stories
- Success rate: [X]%
- Benefits:
⢠Reusable components
⢠Consistent design
⢠Faster iterations
- Best for: UI-heavy features
High-Quality Patterns:
- Livewire component testing: [X]% fewer bugs
- Browser E2E tests: [X]% fewer production issues
- Code review with checklist: [X]% first-time pass
SCAN for reusable code structures:
COUNT instances of each pattern
EVALUATE reusability potential
SUGGEST extraction opportunities
DISPLAY code patterns:
š» CODE PATTERNS
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Reusable Components Identified:
Pattern: Form Validation Request Classes
- Instances: [X] similar implementations
- Stories: [STORY-IDs]
- Commonality: [X]% code overlap
- Candidate for: Base FormRequest class
- Estimated savings: [X] hours per story
Pattern: Livewire CRUD Components
- Instances: [X] similar implementations
- Stories: [STORY-IDs]
- Commonality: [X]% code overlap
- Candidate for: CRUD trait or base class
- Estimated savings: [X] hours per story
Pattern: API Response Formatters
- Instances: [X] similar implementations
- Candidate for: Shared utility package
- Extraction priority: High
Common Integrations:
- External API clients: [X] instances
Standard approach: Guzzle + DTO pattern
Template available: No
Action: Create API client template
ANALYZE workflow patterns:
IDENTIFY effective practices:
CALCULATE process effectiveness metrics
DISPLAY process patterns:
š PROCESS PATTERNS
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Effective Workflows:
Workflow: Same-day Review
- Stories: [X] with review within 24h
- Success rate: [X]%
- Avg cycle time: [X] days faster
- Recommendation: Target same-day reviews
Practice: Incremental Commits
- Stories: [X] with frequent commits
- Impact: [X]% easier code review
- Recommendation: Commit every feature increment
Timing Patterns:
- Stories started Monday: [X]% completion rate
- Stories started Friday: [X]% completion rate
- Optimal story size: [X] days
Risk Factors:
- Stories > 5 days: [X]% higher bug rate
- Stories with > 3 dependencies: [X]% longer cycle
ANALYZE all discovered patterns
PRIORITIZE by impact and effort:
GENERATE specific, actionable recommendations:
DISPLAY recommendations:
š” PATTERN-BASED RECOMMENDATIONS
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
CREATE TEMPLATES FOR:
Priority: High
1. Authentication flow template
- Used in: [X] stories
- Estimated savings: [X] hours per story
- Template location: /templates/auth-flow.md
2. API integration template
- Used in: [X] stories
- Estimated savings: [X] hours per story
- Template location: /templates/api-integration.md
EXTRACT LIBRARIES FOR:
Priority: High
1. Form validation utilities
- Instances: [X] similar implementations
- Estimated savings: [X] hours per story
- Package name: app/Utils/FormValidation
2. API response formatters
- Instances: [X] similar implementations
- Estimated savings: [X] hours per story
- Package name: app/Http/Responses
STANDARDIZE PROCESSES:
Priority: Medium
1. Code review checklist
- Include: Performance checks, test coverage
- Expected impact: [X]% fewer QA bugs
2. Story sizing guidelines
- Optimal size: [X] days
- Expected impact: [X]% faster velocity
DOCUMENT PATTERNS:
Priority: Medium
1. JWT authentication pattern
- Location: /patterns/auth-jwt.md
- Include: Setup, usage, edge cases
COMPILE patterns into structured library
CATEGORIZE by domain:
TRACK usage and availability:
DISPLAY pattern library:
š PATTERN LIBRARY
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Category: Authentication
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Pattern: JWT with Refresh Tokens
- Used in: 5 stories
- Success rate: 100%
- Template available: Yes (/templates/auth-jwt.md)
- Documentation: Yes (/patterns/auth-jwt.md)
Pattern: Social OAuth Integration
- Used in: 3 stories
- Success rate: 100%
- Template available: No
- Action: Create template
Category: Data Processing
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Pattern: Queue-based Background Jobs
- Used in: 7 stories
- Success rate: 95%
- Template available: Yes (/templates/queue-job.md)
- Documentation: Yes (/patterns/queue-jobs.md)
Pattern: Batch Processing with Progress
- Used in: 3 stories
- Template available: No
- Action: Create template
Category: UI Components
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Pattern: Livewire CRUD Components
- Used in: 12 stories
- Template available: No
- Action: Create base component trait
[Additional categories...]
IDENTIFY problematic patterns:
ANALYZE negative impact:
SUGGEST better alternatives
DISPLAY anti-patterns:
ā ANTI-PATTERNS TO AVOID
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Anti-pattern: Direct DB Queries in Controllers
- Found in: [X] stories
- Problems caused:
⢠Difficult to test
⢠No reusability
⢠N+1 query issues
- Better approach: Use Repository or Query Builder
- Stories affected: [STORY-IDs]
Anti-pattern: Missing Validation in Livewire
- Found in: [X] stories
- Problems caused:
⢠Security vulnerabilities
⢠Data integrity issues
⢠Poor UX
- Better approach: Use #[Validate] attributes
- Stories affected: [STORY-IDs]
Anti-pattern: Monolithic Livewire Components
- Found in: [X] stories
- Problems caused:
⢠Hard to maintain
⢠Difficult to test
⢠Poor reusability
- Better approach: Break into smaller components
OFFER to export patterns to structured files
CREATE pattern directory structure:
/patterns/
āāā technical-patterns.md
āāā success-patterns.md
āāā anti-patterns.md
āāā templates/
āāā auth-flow.md
āāā api-integration.md
āāā queue-job.md
GENERATE markdown files with:
DISPLAY export summary:
š¾ EXPORT PATTERNS
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Files created:
ā /patterns/technical-patterns.md (15 patterns)
ā /patterns/success-patterns.md (8 patterns)
ā /patterns/anti-patterns.md (5 patterns)
ā /patterns/process-patterns.md (6 patterns)
Templates needed:
ā /templates/auth-jwt.md (create)
ā /templates/api-integration.md (create)
Next steps:
1. Review exported patterns
2. Create missing templates
3. Update coding standards
4. Share with team
/patterns/ directory/templates/ directory/docs/stories/completed/)INPUT:
/sdd:story-patterns
OUTPUT:
ā Scanning completed stories...
ā Found 42 completed stories
ā Analyzing patterns across all categories...
š§ TECHNICAL PATTERNS FOUND
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Pattern: JWT Authentication with Refresh Tokens
- Used in: 5 stories (STORY-2025-001, 012, 023, 034, 041)
- Success rate: 100%
- Avg implementation time: 2.4 days
- Reusability: High
- Action: Template available at /templates/auth-jwt.md
[Additional sections...]
š” PATTERN-BASED RECOMMENDATIONS
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
CREATE TEMPLATES FOR:
1. API integration with retry logic (used in 8 stories)
2. Livewire form with validation (used in 15 stories)
[Additional recommendations...]
š¾ Export patterns to /patterns/ directory? (y/n)
INPUT:
/sdd:story-patterns technical
OUTPUT:
ā Scanning completed stories...
ā Analyzing technical patterns only...
š§ TECHNICAL PATTERNS FOUND
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Common Implementations:
Pattern: Livewire Component with Alpine.js Enhancement
- Used in: 18 stories
- Technologies: Livewire 3, Alpine.js 3
- Success rate: 95%
- Common structure:
⢠Server-side state management
⢠Client-side UX enhancements
⢠Device-responsive behavior
[Additional technical patterns...]
INPUT:
/sdd:story-patterns
OUTPUT:
ā Scanning completed stories...
ā Found 3 completed stories
ā Analyzing patterns...
ā ļø INSUFFICIENT DATA
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Not enough completed stories to identify patterns.
Patterns require at least 2 occurrences across multiple stories.
Current completed stories: 3
Minimum recommended: 10
Suggestions:
- Complete more stories to build pattern data
- Run /sdd:story-metrics to see development progress
- Check if stories are in /docs/stories/completed/
/sdd:story-metrics - Calculate velocity and quality metrics/sdd:story-tech-debt - Analyze technical debt/sdd:project-status - View current story statuses/sdd:story-list - List and filter stories