@cloudkinetix/bmad-enhanced
Version:
Cloud-Kinetix enhanced fork of BMAD-METHOD - Breakthrough Method of Agile AI-driven Development with robust versioning and unified validation.
371 lines (273 loc) • 6.68 kB
Markdown
# Smart Defaults Configuration
## Purpose
Provide intelligent defaults throughout the JIRA integration to minimize configuration and maximize success. Defaults adapt based on context, team size, and detected patterns.
## Default Strategies
### By Team Size
#### Solo Developer (1 person)
```yaml
sync:
mode: manual # Sync when ready
validation: minimal # Trust the developer
preview: false # Skip previews
standup:
format: brief # Quick personal update
include_git: true # Show code activity
reports:
frequency: weekly # Less formal reporting
detail: summary # High-level only
```
#### Small Team (2-5 people)
```yaml
sync:
mode: manual # Sync on demand
validation: preview # Show changes first
batch_size: 10 # Handle multiple stories
standup:
format: standard # Traditional format
timezone: local # Single timezone
reports:
frequency: sprint # Sprint-based
detail: balanced # Mix of summary and detail
```
#### Medium Team (6-20 people)
```yaml
sync:
mode: scheduled # Hourly sync
validation: smart # Validate risky changes
batch_size: 25 # Larger batches
standup:
format: grouped # By epic/component
timezone: multi # Handle 2-3 timezones
reports:
frequency: weekly # Regular cadence
detail: detailed # More metrics
```
#### Large Team (20+ people)
```yaml
sync:
mode: real-time # Continuous sync
validation: strict # Validate everything
batch_size: 50 # Maximum efficiency
standup:
format: distributed # Async-friendly
timezone: global # Full coverage
reports:
frequency: daily # Close monitoring
detail: executive # Dashboard style
```
### By Project Type
#### Greenfield Project
```yaml
defaults:
issue_type: Story
initial_status: "To Do"
story_points: 3 # Medium default
sprint_length: 2 # Two weeks
field_defaults:
priority: Medium
components: ["New Development"]
```
#### Maintenance Project
```yaml
defaults:
issue_type: Bug
initial_status: "Triage"
story_points: 1 # Small fixes
sprint_length: 1 # One week
field_defaults:
priority: High
components: ["Maintenance"]
```
#### Platform/Infrastructure
```yaml
defaults:
issue_type: Task
initial_status: "Backlog"
story_points: 5 # Larger work
sprint_length: 3 # Three weeks
field_defaults:
priority: Medium
components: ["Platform"]
```
### By Time Context
#### Morning (6-10 AM)
```yaml
suggestions:
primary: "create standup"
secondary: "sync overnight changes"
reports: "daily summary"
```
#### Midday (10 AM-2 PM)
```yaml
suggestions:
primary: "sync current work"
secondary: "update ticket status"
reports: "progress check"
```
#### Afternoon (2-6 PM)
```yaml
suggestions:
primary: "sync completed work"
secondary: "plan tomorrow"
reports: "end of day summary"
```
#### End of Sprint
```yaml
suggestions:
primary: "sprint health report"
secondary: "close completed stories"
reports: "sprint retrospective"
```
## Smart Field Defaults
### Story Title Generation
[[LLM: When creating JIRA issues, intelligently generate titles:
From: "1.2.3 User Authentication Story"
To: "Implement OAuth2 authentication flow"
Rules:
- Remove BMAD numbering
- Use active voice
- Be specific but concise
- Include key technical terms
]]
### Description Formatting
```markdown
## Summary
{{first_paragraph_from_bmad}}
## Acceptance Criteria
{{bullets_from_bmad_criteria}}
## Technical Notes
{{technical_approach_if_exists}}
_Synced from BMAD: {{bmad_file_path}}_
```
### Story Points Estimation
[[LLM: Estimate based on:
- Word count: <500 words = 1-2 points
- Criteria count: 3-5 criteria = 3 points
- Technical complexity keywords
- Historical similar stories
]]
### Component Detection
[[LLM: Auto-assign components based on:
- File path (frontend/, backend/, etc.)
- Technology mentions (React, API, Database)
- Epic association
- Previous patterns
]]
## Sync Behavior Defaults
### Initial Sync
```yaml
first_sync:
preview: true # Always preview first
batch_size: 5 # Start small
fields: minimal # Just core fields
confirmation: required # Explicit approval
```
### Regular Sync
```yaml
regular_sync:
preview: false # Trust established patterns
batch_size: auto # Based on change count
fields: full # All mapped fields
confirmation: summary # Just show results
```
### Bulk Operations
```yaml
bulk_sync:
preview: true # Always preview bulk
batch_size: 25 # Reasonable chunks
parallel: true # Use concurrent requests
retry: 3 # Automatic retries
```
## Report Defaults
### Standup Reports
```yaml
standup:
sections:
- yesterday # What was done
- today # What's planned
- blockers # Issues/dependencies
data_sources:
- jira: primary
- git: supporting
- bmad: reference
time_window: 24h
format: markdown
```
### Sprint Reports
```yaml
sprint:
metrics:
- velocity
- burndown
- completion_rate
- bug_discovery
visualizations:
- burndown_chart
- velocity_trend
- pie_charts
comparison: last_3_sprints
```
## Error Handling Defaults
### Retry Strategy
```yaml
retries:
network_errors: 3
rate_limits:
wait: exponential
max_wait: 60s
auth_errors: 1
field_errors: 0
```
### Validation Rules
```yaml
validation:
require_description: true
min_description_length: 50
require_acceptance_criteria: true
require_story_points: false
max_title_length: 100
```
## Progressive Enhancement
### Week 1 Defaults
- Manual sync only
- Preview everything
- Minimal fields
- Extra confirmations
### Week 2 Defaults
- Scheduled sync option
- Preview important only
- Standard fields
- Normal confirmations
### Month 2 Defaults
- Auto-sync available
- Preview on request
- All fields mapped
- Minimal confirmations
## Implementation
[[LLM: When applying defaults:
1. Detect context:
- Team size from git contributors
- Project type from structure
- Time of day
- User experience level
2. Apply appropriate defaults:
- Don't mention they're defaults
- Present as recommendations
- Allow easy override
3. Learn from overrides:
- Track user preferences
- Adapt defaults over time
- Suggest better patterns
4. Explain when asked:
- "Why this suggestion?"
- Show reasoning
- Offer alternatives
]]
## Benefits
1. **Faster Onboarding**: Works well out of the box
2. **Fewer Decisions**: Reduces configuration fatigue
3. **Best Practices**: Embeds proven patterns
4. **Adaptive**: Improves with usage
5. **Contextual**: Right defaults for situation
These smart defaults make the JIRA integration feel intelligent and helpful, reducing friction while maintaining flexibility for power users.