UNPKG

@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
# 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.