@cloudkinetix/bmad-enhanced
Version:
Cloud-Kinetix enhanced fork of BMAD-METHOD - Breakthrough Method of Agile AI-driven Development with robust versioning and unified validation.
257 lines (229 loc) • 8.88 kB
YAML
# JIRA Expansion Pack Configuration
# Unified configuration for JIRA integration including project mapping, team roles, and expansion settings
# JIRA Project Configuration
jira:
project_key: {{project_key}} # e.g., "PROJ", "AUTH", "CORE"
project_name: {{project_name}} # e.g., "Authentication Service"
instance_url: {{instance_url}} # e.g., "https://company.atlassian.net"
# Git Repository Mappings
git:
# Git Flow Configuration (REQUIRED)
flow:
main_branch: {{main_branch}} # Default: "master" or "main"
develop_branch: {{develop_branch}} # Default: "develop"
# Primary repository (current working directory) - REQUIRED
primary:
name: {{repo_name}} # Repository name
path: {{current_directory}} # Auto-detected: current working directory
remote_url: {{primary_remote}} # Auto-detected from git remote
# Additional repositories that belong to this JIRA project
repositories:
{{#each repositories}}
- name: {{name}} # Repository identifier
path: {{path}} # Absolute path to repository
remote_url: {{remote_url}} # Git remote URL
include_patterns: # Optional: specific paths to include
{{#each include_patterns}}
- {{this}}
{{/each}}
exclude_patterns: # Optional: paths to exclude
{{#each exclude_patterns}}
- {{this}}
{{/each}}
{{/each}}
# Git Submodules (auto-detected)
{{#if submodules}}
submodules:
{{#each submodules}}
- name: {{name}}
path: {{path}}
{{/each}}
{{/if}}
# Mapping Rules
mapping:
# How to extract JIRA ticket references from git commits
ticket_pattern: {{ticket_pattern}} # Default: "{{project_key}}-\\d+"
# Branch naming conventions
branch_patterns:
feature: "feature/{{project_key}}-*"
bugfix: "bugfix/{{project_key}}-*"
hotfix: "hotfix/{{project_key}}-*"
# Commit message format
commit_format: "{{project_key}}-{{ticket_number}}: {{message}}"
# Sync Configuration
sync:
# Directories to scan for BMAD stories
story_paths:
- "docs/epics/"
- "docs/stories/"
- ".bmad-core/stories/"
# Fields to sync
field_mappings:
epic_link: {{epic_field}} # Auto-detected custom field
story_points: {{points_field}} # Auto-detected custom field
sprint: {{sprint_field}} # Auto-detected custom field
# Team Configuration
team:
# Team discovery settings
discovery:
enabled: {{enable_discovery}} # Auto-discover team members
git_history_days: {{history_days}} # Days of Git history to analyze (default: 90)
min_activity_threshold: # Minimum activity to be considered active
commits: {{min_commits}} # Default: 5
jira_actions: {{min_actions}} # Default: 10
auto_role_detection: {{auto_roles}} # Automatically infer roles from activity
# Team composition
size: "{{team_size}}" # small (<5), medium (5-15), large (>15)
distributed: {{is_distributed}} # Team works across timezones
# Team members with roles
members:
{{#each team_members}}
- jira_username: "{{jira_username}}" # JIRA username/email
display_name: "{{display_name}}" # Full name
git_emails: # Git commit emails (can be multiple)
{{#each git_emails}}
- "{{this}}"
{{/each}}
# Role information
primary_role: "{{primary_role}}" # Main role from standard roles
secondary_roles: # Additional responsibilities
{{#each secondary_roles}}
- "{{this}}"
{{/each}}
confidence: {{role_confidence}} # Role detection confidence (0.0-1.0)
# Specializations and expertise
specializations:
{{#each specializations}}
- "{{this}}" # e.g., "frontend", "backend", "database"
{{/each}}
code_ownership: # Primary code areas
{{#each code_areas}}
- "{{this}}" # e.g., "auth/*", "api/users/*"
{{/each}}
# BMAD agent preferences
preferred_agents:
{{#each preferred_agents}}
- "{{this}}" # e.g., "developer", "reviewer", "tester"
{{/each}}
# Activity patterns (auto-detected)
activity:
typical_issue_types:
{{#each issue_types}}
- "{{this}}"
{{/each}}
avg_issues_per_sprint: {{avg_issues}}
code_review_ratio: {{review_ratio}} # Reviews given vs received
# Availability and capacity
availability:
timezone: "{{timezone}}" # e.g., "America/New_York"
typical_hours: "{{work_hours}}" # e.g., "9-5 EST"
capacity_percentage: {{capacity}} # % allocation to this project
{{/each}}
# Standard role definitions
role_definitions:
developer:
permissions: ["browse", "create", "edit", "assign"]
typical_issue_types: ["Story", "Task", "Bug"]
indicators:
- "Creates feature branches"
- "Commits code changes"
- "Opens pull requests"
senior_developer:
inherits_from: "developer"
additional_permissions: ["admin"]
indicators:
- "Reviews others' code"
- "Makes architectural decisions"
- "Mentors team members"
qa_engineer:
permissions: ["browse", "create", "edit", "assign", "close"]
typical_issue_types: ["Bug", "Test", "QA Task"]
indicators:
- "Creates/updates test cases"
- "Reports bugs"
- "Validates fixes"
devops_engineer:
permissions: ["browse", "create", "edit", "admin"]
typical_issue_types: ["Task", "Infrastructure", "Deployment"]
indicators:
- "Modifies CI/CD configs"
- "Handles deployments"
- "Infrastructure commits"
product_owner:
permissions: ["admin", "manage_sprints"]
typical_issue_types: ["Epic", "Story"]
indicators:
- "Creates epics"
- "Prioritizes backlog"
- "Defines acceptance criteria"
scrum_master:
permissions: ["browse", "edit", "manage_sprints"]
typical_issue_types: ["Task", "Impediment"]
indicators:
- "Updates sprint status"
- "Facilitates ceremonies"
- "Removes blockers"
tech_lead:
inherits_from: "senior_developer"
additional_permissions: ["manage_sprints"]
indicators:
- "Approves PRs"
- "Makes technical decisions"
- "Assigns technical tasks"
# Smart Assignment Rules
assignment:
enabled: {{enable_smart_assignment}}
rules:
# Issue type based assignment
by_issue_type:
Bug:
primary: "qa_engineer" # QA gets first look at bugs
fallback: "developer" # Or last code author
Story:
primary: "developer" # Developers handle stories
consider: "specialization" # Match based on code area
Task:
primary: "any" # Anyone can handle tasks
consider: "workload" # Balance across team
Documentation:
primary: "tech_lead" # Tech lead or senior dev
fallback: "developer"
# Component based assignment
by_component:
match_code_ownership: true # Use code ownership patterns
respect_specialization: true # Frontend to frontend devs
# Workload balancing
workload:
max_concurrent_issues: {{max_issues}} # Per person limit
consider_capacity: true # Use capacity percentage
distribute_evenly: {{distribute}} # Try to balance
# Expansion Pack Features
features:
# Core features
git_integration: {{enable_git}}
mcp_tools: {{mcp_available}}
# Team features
team_discovery: {{team_discovery}}
role_based_reports: {{role_reports}}
smart_assignment: {{smart_assign}}
capacity_planning: {{capacity_plan}}
# Notification features
slack_notifications: {{slack_enabled}}
email_notifications: {{email_enabled}}
# Automation features
automated_reports: {{auto_reports}}
automated_assignment: {{auto_assign}}
automated_standup: {{auto_standup}}
# Metadata
metadata:
created_date: {{created_date}}
last_updated: {{last_updated}}
created_by: {{created_by}}
bmad_version: {{bmad_version}}
# Validation Status
validation:
jira_connection: {{jira_status}} # "connected" or "error: <message>"
git_repositories: {{git_status}} # "valid" or "error: <message>"
team_discovery: {{team_status}} # "discovered: X members" or "error: <message>"
role_detection: {{role_status}} # "validated" or "needs_review"
last_validated: {{last_validated}}